A*算法中的星号是什么意思?

What does the star in the A* algorithm mean?

我很确定 A​​ 算法 中的 * (star) 表示该算法是 admissible,即如果这条路径存在(当使用的启发式是乐观的),它保证找到图中的最短路径。

我说的对吗?我没有成功寻找有关该主题的任何信息,但找不到任何参考。希望这个社区中大多数有经验的用户比我更了解 A* 的历史。

顺便说一下,我认为其他基于 A* 的算法,如 IDA*、D*、SMA*、MOA*、NAMOA* 等,都遵循相同的命名约定。

原因是科学家首先想出了他们称为A1的Dijkstra算法的改进版本。后来,A* 的发明者发现了 A1 的改进,他们称之为 A2。然后,这些人设法证明 A2 在对所用启发式算法的某些假设下实际上是最优的。因为A2是最优的,所以改名为A*。在科学中,特别是在优化中,“*”符号通常用于表示最优解。有些人还将“*”解释为 "any version number" 的意思,因为事实证明不可能构建一个性能优于 A2/A*.

的 "A3" 算法。

顺便说一句,在这种情况下,"optimal"并不意味着它达到了最优解,而是在探索最小节点数的同时达到了最优解。当然,A*也是完备的,这意味着它达到了最优解(如果我们使用可接受的启发式)。