【问题标题】:Does AStar grid algorithm only handle square grids?AStar 网格算法是否只处理方形网格?
【发布时间】:2021-01-05 21:36:38
【问题描述】:

寻找一些澄清,因为我似乎无法得到答案。在为网格编写 astar 算法时,我想知道它是否适用于任何大小的矩形或只是完美的方形网格? 如果有处理矩形启发式的特定方法,它是什么?

如果人们需要知道我正在用 C++ 编写它以便在 UE4 中使用。

谢谢大家!

【问题讨论】:

  • 您必须为您的节点(矩形)调整成本和启发式。
  • A* 应该适用于任何类型的布局,只要您使用准确的启发式方法
  • 感谢大家的回复!这让我对这个问题有了一些清晰的认识!谢谢

标签: c++ algorithm shortest-path path-finding a-star


【解决方案1】:

不,A* 根本不需要网格。您可以使用节点的任何位置,只要您的启发式是可接受的,A* 应该可以工作。

事实上,如果你能保证你的启发式是可以接受的(即保证永远不会高估距离),你的节点实际上根本不需要位置。当然,许多实际应用中确实存在具有特定位置的节点,而欧几里得距离是一种方便的可接受的启发式方法。

要使矩形网格正常工作,您唯一需要做的就是确保您的指标是正确的。也就是说:您的节点到节点距离和欧几里得距离计算必须正确反映网格的水平和垂直间距。

【讨论】:

    猜你喜欢
    • 2013-10-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-07-13
    • 1970-01-01
    • 1970-01-01
    • 2016-05-14
    相关资源
    最近更新 更多