我不懂A *寻路

| 据我了解: 将当前节点添加到关闭列表中。 查找当前节点的相邻节点,如果它们不是不可移动节点且不在关闭列表中,则将该节点添加到打开列表中,并将父节点作为当前节点,并计算F,G和H值。如果该节点已经存在于打开列表中,请检查通过当前节点转到该节点是否会导致G值降低-如果是,请将该节点的父节点设为当前节点。 在打开的列表中找到具有最高F值的节点,并将当前节点设为该节点。 重复该操作,直到最终到达目标位置,然后遍历目标节点的父级,然后回到起始节点。那将是最好的道路。 因此,这对我的大脑来说很有意义,但是当我在图表上实际尝试时,我认为我没有正确理解它。 (从下图开始)从起始的绿色磁贴向下,一个F值为60的磁贴。在打开的列表中,其F值比右下方74的F值低。为什么选择74而不是60?     
已邀请:
        我认为,您应该看一下Amit的A *页面。他们真的很能解释算法如何工作以及如何使其工作。 对于您的情况,该图显示了打开列表上第一个节点的G得分。当您查看该网站时,整个图首先是为第一个节点评估而构建的,并且作者表明,第一个最佳节点是右侧的节点。然后,前进将基于当前节点的得分加上下一个节点的移动成本使用G得分,该得分未在图中显示。 虽然在网站上说:   然后检查当前正方形最左边的最后一个正方形,以查看如果您通过当前正方形到达那里,G分数是否更低。没有骰子。 如果我没记错的话,它的G分数实际上是24(14(当前成本)+ 10(水平移动成本)),就像它下面的正方形一样。     
        之所以不能移动到F值为60的正方形,是因为它位于“封闭列表”中。 F值为88和74的正方形位于“开放列表”中,可以进行下一步检查。     

要回复问题请先登录注册