我正在学习A*路径寻找算法,而我发现的所有示例都是基于网格的。因此,他们所有的启发式函数都依赖于某种物理距离(如曼哈顿距离、对角线距离或欧几里得距离)。
但是,如果我们不是用网格,而是用自由形式的图形呢?比如下面的示例,其中S
是起点,G
是终点:
S---A
|
| G
| |
B---C---D
在这种情况下,“直线距离”近似值并没有意义,因为这个图表等同于。
S---A
|
B---C---D
|
G
那么在这种情况下,我可以使用什么样的启发式函数?