我正致力于实现A * JPS (跳转搜索点), 虽然我理解它的基础知识,但似乎我仍然缺少一点。
尝试查找起始节点(标记为 S )与目标节点之间的路径(请参阅附图) (标记为 G )。 具有黑色棋盘格的单元格是被探索的节点,而具有箭头的白色单元格是跳跃点(具有关联方向)。所有细胞的旅行费用都是1,除了蓝色的是障碍物。
但是,正如您所看到的,某些区域尚未被探索,因此无法找到目标节点存在的路径。它似乎是由于它没有在一些跳跃点上对角线探测而引起的,但从我的理解,我们应该只考虑当前的方向(即按照图片上的箭头)
所以我的问题是,这次尝试有什么不对?我是否错过了跳跃点或误解了它的工作方式?
Attached image : A* JPS attempt (无法嵌入图片:P)
感谢您的回答。
线性(垂直和水平,但不是对角线)强迫邻居失踪。 C.F. BlueRaja的帖子图2