我在做一个旅行计划。该旅游计划员将获得所有地点的行程、所有地点的开业和关闭时间以及每个地点的停留/处理时间的旅行时间矩阵。我正在使用Google的OR工具来解决这个问题
我已经成功地添加了时间窗口约束,但无法将停留/处理时间约束添加到求解器中。google OR tools上的文档展示了如何解决具有时间窗口约束的车辆路径问题,但没有提到如何为问题添加更多约束。
到目前为止,我一直在学习本教程。https://developers.google.com/optimization/routing/vrptw
计划员的预期输出应该考虑上面提到的所有三个时间约束:打开时间、关闭时间和停留/处理时间
发布于 2019-07-20 20:25:59
这实际上非常简单。由于停留时间/处理时间将仅取决于目的节点,因此可以将其直接添加到将用于解决问题的时间矩阵中。对于N*N时间矩阵(其中N是问题中的节点数)和1*N停留时间矩阵,必须将停留时间矩阵添加到时间矩阵的每一行,以获得既包括时间矩阵又包括停留时间矩阵的矩阵。把这篇文章留给任何可能面临同样问题的人。
发布于 2020-12-04 18:57:02
您的中转回调需要返回服务时间和出行时间之和。即transit(i, j) == service_time(i) + travel_time(i, j)
如果您的服务时间取决于车辆,您可以为每个车辆类型注册一个运输回调,然后使用AddDimension()重载,它接受一个运输回调索引数组。
https://stackoverflow.com/questions/57124497
复制相似问题