在ORTools中为每辆卡车设置不同的约束

时间:2020-04-09 16:06:35

标签: python routing or-tools restrict here-maps-rest

我们正在开发使用HERE Maps的路线优化软件,我们需要进行以下操作:

  • 某些卡车可以通过所有国家/地区(它们具有通过所需的所有许可证)
  • 有些需要绕过特定国家/地区,这意味着要找到到达目的地的二级或三级路径

我有两个问题:

  1. 是否可以指定哪个卡车具有什么许可权,以便将它们传递给求解器 组合?
  2. 如果没有,实现此结果的最佳方法是什么?还有其他办法吗?

到目前为止,我们已经尝试通过在HERE Maps API密钥中将其列入黑名单来限制国家/地区,但是求解器不会考虑到这一点。

谢谢。

2 个答案:

答案 0 :(得分:0)

在OR-Tools中,您可以提供每辆车的运输回调索引,因此,如果一堆车辆无法到达几个位置,只需在与这些车辆相关的回调中返回MAX_INT64 ...

答案 1 :(得分:0)

如果我没有误解这个问题,那么我不知道问题是VRP还是路由。

  • 如果问题是VRP,则表明Mizux是正确的, 您只需要在回调中返回该取货和交付的有效车辆清单。
  • 如果问题与路由有关(即从您经过的地方),则可以在诺基亚此处解决路由限制问题。