algorithm - A* 算法 - 起点
问题描述
我在一个二维网格迷宫中,你只能水平和垂直移动。边成本为 1,我使用曼哈顿距离来估计从节点到目标的距离。
我的问题是,如果您从当前节点开始寻找到达目标的路,或者从目标节点开始并找到回到当前节点的路,这是否会有所不同?
解决方案
不,无论您向前还是向后工作都没有任何区别。请记住,在实际应用中,您通常有许多目标节点,但几乎总是有一个起始节点。如果只想到达一个目标节点,最好从起始节点向前搜索。
另外,请注意,如果使用可接受的启发式算法,A* 将产生最佳解决方案。可能有多个同样最优的解决方案,因此向后而不是向前搜索可能会导致您找到不同但同样好的解决方案。
推荐阅读
- opencv - 可以获得图像的距离变换以及角度信息吗?
- windows - 计划的 Powershell 脚本(WindowStyle Hidden)自动终止
- reactjs - 使用 useReducer 向状态数组中的对象添加属性
- javascript - 在构建时临时禁用 Next.js 页面
- keras - 如何连接类似 BERT 的句子表示和词嵌入 - Keras & huggingface
- ffmpeg - 如何使用 Gphoto2 + ffmpeg 捕获电影并将服务重定向到 html 嵌入
- ibm-doors - 在 DXL 中,如何获取我没有在 DXL 脚本中自己打开的模块的句柄
- c# - C# 源代码生成器在 Razor 视图中表现不佳
- javascript - Javascript无法获取元素的内容
- r - 在 R studio 中制作 GO 术语的点图有问题