A* 优化算法

功能

减少搜索次数

\[------------- \]

A*算法有多种结合形式。

如依靠BFS + A*,这两个结合就可以有一个搜索方向,朝着那个方向去搜索可能会减少某些不必要的搜索。

\[------------- \]

再如可以IDDFS + A*,即迭代加深搜索A*的结合(IDA*)。如果在进行DFS时给他加一个评估函数,即可预测到此时按照这个状态是否能到达可行解,如果不能,则直接返回,提高了效率。

抽象来想差不多就是前几层不符合条件的直接砍掉,将答案固定在某几层的深度中考虑。

定义

x为当前状态,f(x)是对x的评估函数

f(x) = g(x) + h(x)

g(x)表示从初始状态到x的实际代价,h(x)表示x到终点最优路径的评估

简要概述

A*算法是一种贪心思想,在进行搜索时可以根据当时情形加入A*的评估函数进行优化剪枝

posted @ 2021-04-11 19:21  Jude_Zhang  阅读(478)  评论(1编辑  收藏  举报