我正在尝试使用两辆相同类型且从同一位置开始的车辆创建VRP。我希望解决方案能够以最具成本效益的方式为问题中的每辆车创建路线。我正在使用GraphHopper计算每个服务地点之间的道路距离和时间,并使用该信息创建运输成本矩阵。
我的问题是所有服务都放在一条路线上,而第二辆车从未使用过。在输出中,我可以看到问题包含两个车辆,但解决方案只显示一个车辆的一条路线。
如果我设置车辆的容量和服务的尺寸,我可以使用两辆车。我明白,如果我不指定它们,它们将被忽略,但这会导致所有服务使用同一车辆吗?
我错过了什么吗?
如果需要,我可以发布代码示例。
谢谢!
答案 0 :(得分:0)
如果没有容量限制,使用单一车辆总是最佳的(如果满足三角形不等式,那么它就是道路距离)。换句话说,没有容量限制的VRP = TSP。
这样想:假设你有两条路线,一条在城市A结束(在返回仓库之前),另一条从城市B开始(在离开仓库之后)。现在想象一下将腿从A移到仓库,将腿从仓库移到B,然后从A到B添加一条腿。通过三角形不等式,c_AB< = c_A,depot + C_depot,B,所以新的解决方案比旧的。