我试图将跳点搜索(Jump-Point Search)整合到我已实现的A*路径查找代码中,但我并不完全理解它的工作原理。我找到的唯一相关网站这里并没有详细解释如何剪枝或如何确定跳点后继者。能有人详细解释这两点吗?
回答:
技术细节可以在研究论文中找到,该论文位于Alban Grastien的网页上。
在aigamedev.com上还有一个教程。
据悉,一篇改进的论文将在ICAPS 2014上发布,但我认为这些论文尚未在线发布。
如果这些资源还不够,一个更有针对性的问题(你不理解的具体是什么)会更容易得到回答。但需要注意的一点是,JPS会扫描状态空间寻找障碍物。在此过程中,它可能检查的状态比A*多得多。但它的时间节省来自于不将大多数状态放入OPEN列表中。