- 54
- 0
- 约3.53千字
- 约 5页
- 2021-10-28 发布于天津
- 举报
人工智能( A* 算法)
、 A* 算法概述
A*算法是到目前为止最快的一种计算最短路径的算法,但它一种’较优’算法,即它
一般只能找到较优解,而非最优解,但由于其高效性,使其在实时系统、人工智能等方面 应用极其广泛。
A* 算法结合了启发式方法(这种方法通过充分利用图给出的信息来动态地作出决 定而使搜索次数大大降低) 和形式化方法 (这种方法不利用图给出的信息,而仅通过数学的 形式分析,如 Dijkstra 算法)。它通过一个估价函数( Heuristic Function ) f(h) 来估计 图中的当前点p到终点的距离(带权值),并由此决定它的搜索方向,当这条路径失败时, 它会尝试其它路径。
因而我们可以发现,A*算法成功与否的关键在于估价函数的正确选择,从理论上
说,一个完全正确的估价函数是可以非常迅速地得到问题的正确解答,但一般完全正确的
估价函数是得不到的,因而 A*算法不能保证它每次都得到正确解答。一个不理想的估价函 数可能会使它工作得很慢,甚至会给出错误的解答。
为了提高解答的正确性,我们可以适当地降低估价函数的值,从而使之进行更多 的搜索,但这是以降低它的速度为代价的,因而我们可以根据实际对解答的速度和正确性 的要求而设计出不同的方案,使之更具弹性。
、 A* 算法分析
众所周知,对图的表示可以采用数组或链表,而且这些表示法也各也优缺点,数组可 以方便地实现对其中
原创力文档

文档评论(0)