使用Mapbox优化API的多个驱动程序?

使用Mapbox优化API的多个驱动程序?,mapbox,Mapbox,使用可以优化多个驾驶员之间的路线吗? 示例:添加了6个位置,添加了2个驱动程序,两个驱动程序之间的路线被分割/优化 我还处于计划阶段,所以我自己还没有做太多的尝试,但我看到的代码和所有示例都只针对单驱动程序优化。。。以前有人做过这样的事吗?有什么建议可以给我指出正确的方向吗?Mapbox的优化API返回输入坐标之间的持续时间优化路由,这也称为解决所谓的问题。这是一个众所周知的图论问题,也就是说,对于这个问题没有通用的多项式时间解 用于计算上述持续时间优化路线的基础数据是连接坐标输入到API请求的

使用可以优化多个驾驶员之间的路线吗?

示例:添加了6个位置,添加了2个驱动程序,两个驱动程序之间的路线被分割/优化


我还处于计划阶段,所以我自己还没有做太多的尝试,但我看到的代码和所有示例都只针对单驱动程序优化。。。以前有人做过这样的事吗?有什么建议可以给我指出正确的方向吗?

Mapbox的优化API返回输入坐标之间的持续时间优化路由,这也称为解决所谓的问题。这是一个众所周知的图论问题,也就是说,对于这个问题没有通用的多项式时间解

用于计算上述持续时间优化路线的基础数据是连接
坐标
输入到API请求的边的成本函数。您可以使用检索一组坐标位置之间的成本值(包括流量)

在问题中添加第二个驱动程序/销售人员会使问题的解决难度呈指数级增长,如在问题的答案中所述

这里讨论的是解决这个问题的可能方法

正如研究界所证明的那样,解决方案并不容易实现。如果您不想参与实现一个能为您解决问题的算法的非平凡任务,您可以实现一个函数,该函数将对如何在两个驱动程序之间分割目标
坐标进行有根据的猜测。这种“有根据的猜测”可以基于从矩阵API获得的值。您可以为每个驱动程序指定一个时间,然后从每个坐标的两个持续时间中取较小的一个,并将坐标指定给相应的驱动程序。然后,您可以使用Mapbox的优化API分别解决这两个独立的旅行商问题


即使您实现了一种算法来解决多旅行商问题,该问题的复杂性也会随着驾驶员数量和航路点数量呈指数增长。因此,您可能最终得到一个可行的解决方案,但不一定要在可靠的时间内进行计算。这些性能限制是在实施解决方案时必须牢记的。

哇,我没有意识到解决这个问题有多么复杂。。。不过,我喜欢你建议的“有根据的猜测”方法的想法,并且最终可能不得不按照这些思路进行。对于你建议的一对多请求选项,我认为这必须从每个位置重新调用?(例如,
driver_1
被分配
dest_a
driver_2
被分配
dest_b
dest_a
dest_b
更接近
dest_c
,因此
driver_1
必须下一步去那里)。