c – A *跳转点搜索 – 修剪如何真正起作用?

前端之家收集整理的这篇文章主要介绍了c – A *跳转点搜索 – 修剪如何真正起作用?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我遇到了 Jump Point Search,对我来说似乎很甜蜜.但是,我不确定他们的修剪规则是如何实际工作的.更具体地说,在图1中,它表明了这一点

we can immediately prune all grey neighbours as these can be reached optimally from the parent of x without ever going through node x

然而,这似乎有些不一致.在第二图像中,可以通过首先经过节点7并且完全通过对称路径跳过x来达到节点5,即6→5. x – > 5似乎与6 – >对称. 7 – >这与如何在不经过第一图像中的x的情况下如何到达节点3相同.因此,我不明白这两个图像是如何完全等效的,而不仅仅是彼此的旋转版本.

其次,我想了解这个算法如何推广到三维搜索量.

解决方法

第二张图像显示不正确.如果你看一下附带的文字:“在这两种情况下,我们都可以立即修剪所有灰色邻居,因为这些邻居可以从x的父节点最佳地到达,而无需通过节点x.”

强调’两种情况’.

在将概念应用于三维空间(或者即使是n维空间)方面,该算法与A *没有区别,因为它只是节点和连接的网格.维度完全由您自行决定.

猜你在找的C&C++相关文章