生成最短路径

时间:2018-01-06 23:09:22

标签: algorithm graph graph-algorithm shortest-path path-finding

我有兴趣尝试(快速)给定网格的最短路径。网格是n乘m,其中每个节点对应于x,y的位置。每个节点可以由所有相邻节点行进,其成本为1或来自相邻节点的无穷大(意味着它是未加权的图,其中一些节点是不可通过的)。我还没有选择n或m的约束,但我希望能够找到一个100乘100的图形。我已经尝试了几种选择,但没有一种方法足够快。但是,对问题的限制(未加权,易启发)使我认为有人可能有更好的解决方案。

我想到的一个选项(如果可能的话,我想做)是为0和100之间的所有n和m选项预先生成所有路径。显然,这需要相当长的时间,但我我想知道是否有某种在线资源,我可以找到路径。或者,如果任何人都有一种方法可以合理地快速计算所有图形的所有路径,那将是很好的。

1 个答案:

答案 0 :(得分:-1)

似乎没有人对这个问题发表任何非常有用的评论,但我想注意上面给出的评论并不完全正确,因为A *是最好的解决方案。这不是一个答案,但我想我会用我发现的一些信息回答我的问题。

JPS,一个跳跃点搜索:https://gamedevelopment.tutsplus.com/tutorials/how-to-speed-up-a-pathfinding-with-the-jump-point-search-algorithm--gamedev-5818可用于8路网格(做任何笛卡尔网格的逻辑方式),当然也是提高A *的一种方法(尽管可能还有其他一些人更多有关该主题的信息可以提供)

此外,将图形问题本地化到较小的区域可能有助于解决一般图形寻路算法的问题