1

我似乎无法解决大多数时候 A* 优于 IDA* 的原因。我的教授说原因不是因为早期(更接近根)节​​点在达到 f 限制后随着 IDA* 回溯而不断被重新探索,而是因为 A* 维护了一个开放和封闭的列表,因此给定状态不会通过树多次探索,而在 IDA* 中,如果树中有多个路径到给定节点,它将一次又一次地探索这些节点。我的问题与 IDA* 相同,即。是否可以使用开放和封闭列表来实施 IDA*,如果不是,为什么?

4

1 回答 1

3

我不确定您是否完全了解 IDA*。IDA* 使用重复的有限深度深度优先搜索来减少与 A* 相关的内存需求(其中 A* 通常使用更多类似广度优先搜索 (BFS)的过程)。

如果您修改 IDA* 以使用开放和封闭列表,您可能会回到类似 BFS 的过程,因此您基本上会回到 A*。

于 2014-01-29T04:25:41.337 回答