3D配置空间中的星型算法

时间:2015-08-25 13:52:02

标签: c++ algorithm graph path-finding a-star

我做了一些关于A *算法和其他基于图形的算法的研究,但是大多数教程和实现是用2D网格和2个参数(x,y坐标)制作的。

是否有人在不同的配置空间中使用示例(C ++或Java)或关于A *的链接提供了很好的教程。例如3D环境或非网格,具有x,y,z坐标或x,y,方向或其他任何内容......

谢谢

1 个答案:

答案 0 :(得分:1)

一般A *算法不包括网格或维度。它是加权图的最短路径算法。该图的节点和边缘是完全特定于场景的。

在2D网格的情况下,节点是网格单元,边缘指定邻接。可以从3D网格构建类似的图形。如果您不想限制自己使用网格,则可以使用任意连接构建任何图形。

节点不一定需要对应于位置,并且权重不一定需要与距离相对应。例如,Pinocchio System使用A *来增加骨架嵌入。这里的距离是嵌入质量/能量(尽管能量不沿路径累积)。节点对应于部分嵌入。