搜索之A*算法

搜索—A*算法

1. 概述

这是一种经典的寻路算法;
简而言之,重点在于估算距离

搜索之A*算法
搜索之A*算法


问题描述:

假设起点a, 终点b, 当前结点为n
F(n) = G(n) + H(n)
G(n)表示起点到n实际距离;
H(n)表示n到终点预估距离;
在所有结点中选择F值最小非障碍物走下去即可。


缺陷:
  1. 显然,A*算法的效率很大程度取决于H(n)的计算,即对未来距离的预估;
  2. 未完待续…

2. A*算法细节

2.1 对于H(n)估算函数的选择

曼哈顿距离:横纵坐标差之和 (推荐使用)
欧氏距离:即两点间的实际距离
ps: 这两种估算方式,会导致无法避开障碍物

2.2 A*算法实现