我如何通过可选的航路点计算从起点到目的地的地图路线?

时间:2016-04-18 20:57:17

标签: algorithm google-maps osrm

让我们说我想绘制从旧金山到纽约的导航路线。大约有一千种服务可以免费提供。还有许多服务可以解决旅行商问题并计算通过6个城市的路线,找出最佳订单。这些都是解决的问题。

现在让我们说我想绘制一条从SF到NY的路线,沿途从数据库停止EV充电器。

这比一堆航点更难,因为我不需要停在每一个航点上。我只需要限制我的路线从一个跳到另一个。

我怎么能搞清楚这一点?是否有可用于简化此算法的算法?或许我可以使用OSRM(https://github.com/Project-OSRM/osrm-backend)以某种方式帮助我,而不是依赖于公共API。我们可以对此进行暴力破解,并继续计算路线,直到找到最短的路线,但我可以看到它很快就会崩溃。

1 个答案:

答案 0 :(得分:3)

构建有向图。航点是节点,如果距离可以由充满电的汽车覆盖,则可以将航路点A的有向加权边缘设置为航点B.然后,您需要在加权有向图中找到最短路径。