A* (a-star) 寻找最短路径的问题 - 具体示例

A* (a-star) issues finding shortest path - specific example

在此示例中(请参见图片),曼哈顿启发式算法延迟了路径,因为目标块以西的块不可行走。

我的问题是我该如何解决这个问题?我是否需要在找到目的地后继续检查开放列表中的块(灰色块)?如果必须这样做,我还不如使用 dijkstra。如果我选择 A-Star 还是有解决方案,我是否必须忍受这样的不完美?

我已经对此进行了研究并实现了我自己的算法,该算法的工作原理与网络上的教程/文章所解释的完全相同,但我将 运行 保留在像这样的特定实例中,其中 a* 找不到最短路径。

您的启发式需要改为 admissible but is not. Use Diagonal or Euclidean distance