A 算法简介

A *(星号)是一种搜索算法,用于查找从一个节点到另一个节点的路径。因此,它可以与广度优先搜索 ,或 Dijkstra 算法 ,或深度优先搜索 ,或最佳优先搜索进行比较。A *算法广泛用于图搜索,以提高效率和准确性,其中图预处理不是一种选择。

A *是 Best First Search 的专业化,其中评估函数 f 以特定方式定义。

f(n)= g(n)+ h(n) 是从初始节点到目标条件的思想节点 n 的最小成本。

g(n) 是从初始节点到 n 的最小成本。

H(N) 是从最小成本 N 到最接近目标到 N

A *是一种知情搜索算法,它始终保证在最短的时间内找到最小路径(具有最低成本的路径)(如果使用允许的启发式算法 )。所以它既完整优化。以下动画演示 A *搜索 -

https://i.stack.imgur.com/TGfc9.gif