我正在尝试学习A*算法(在网格图案中应用),并认为在找到最短路径之前,需要计算离起点的距离。我正在按照此处指南进行操作:https://medium.com/@nicholas.w.swift/easy-a-star-pathfinding-7e6689c7f7b2 该指南显示了每个正方形的曼哈顿距离的图像,以及起始正方形为绿色,结束正方形为蓝色。然而,确定距离是否有更好的方法时,倒过来计算距离是不是更合理?A*选择连接到目标的最短距离的正方形,对吗?因此,如果我们从终点开始,询问连接到起点的最低值(在这种情况下为17),那么就可以去那里,然后依次去15等等。 子问题:图像中远离起点的距离似乎基于通过Von Neumann邻居移动,因此在返回过程中您肯定不能对角线行进,对吗?
其实很简单: F = G + H F 是节点的总成本。 G 是当前节点和起始节点之间的距离。 H 是启发式——从当前节点到终点节点的估计距离。 网格中的数字代表G(而不是启发式)。G 是从起点到实际距离。 H 应该计算到终点。