前置知识——A ∗ 算法 \color{green}{\text{前置知识——A}^{*} \text{算法}} 前置知识——A∗算法
A*算法
,就是启发式的 BFS
算法。它依赖于以下几个函数:
- g g g 函数:即从开始到当前状态的花费。
- g ∗ g^* g∗ 函数:估计的从开始到当前状态的花费。由于
BFS
的特殊性,我们一定有 g = g ∗ g=g^* g=g∗。 - h h h 函数:从当前状态到结束状态的实际花费。
- h ∗ h^* h∗ 函数:从当前状态到结束状态的估计花费。
- f f f 函数:从起始状态到当前状态再到结束状态的总花费。即 f = g + h f=g+h f=g+h。
- f ∗ f^* f∗ 函数:从起始状态到当前状态再到结束状态的估计花费。即 f ∗ = g ∗ + h ∗ = g + h ∗ f^* = g^*+h^* = g +h^* f∗=g∗+h