algorithm - 最快路径算法

标签 algorithm path-finding

我目前正在实现一个导航系统来穿越欧洲。到目前为止,我已经实现了最短路径(Dijkstra 和 A*)。这是最简单的部分,现在我需要一些最快路径的算法。它必须快速可靠。

我知道这可以通过为道路质量分配值(例如 1 条高速公路,2 条主干道......),然后将这些值乘以路线成本并最终使用 Dijkstra 或 A* 来完成,但这并不复杂够了。

我正在寻找更准确的算法。 map 本身包含各种数据,如道路质量、限速、红绿灯位置等,我想用它。

有什么好的算法吗?或者至少是对 A* 的良好修改?

最佳答案

在最短路径的实现中,您选择距离作为边的权重。

现在,如果您想找到最快的路径,您只需选择预期行程时间作为边的权重。同样,如果您想要最可靠的路径,您可以选择一些“可靠性”度量作为边缘的权重。

A*(尽管并不总是最优的,因为它依赖于启发式函数)可能是此类应用程序的最佳选择。如果您的 A* 不够准确,我建议您要么选择 Dijkstras,要么花一些时间调整和改进您的启发式函数。

关于algorithm - 最快路径算法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3825142/

相关文章:

java - Ford-Fulkerson 不规则性(多个顶点与回流)

path-finding - 如何处理A *寻路中的障碍以达到 'next best'目标?

optimization - 在 Prolog 中查找连接到顶点的所有节点

algorithm - 获取所有可能路径的有效方法+特殊细节

algorithm - 找到以下递归方法的 theta 符号

c++ - 在容器中找到最大现值的算法

algorithm - 理解递归/子问题如何组合(最大子数组算法)

algorithm - 在视锥中找到所有大小为 L 的立方体的方法?

javascript - 如何用easystarjs尽可能的走路

algorithm - 沿着兴趣点寻找路线