使用 or-tools 和 C# 的车辆技能

Vehicle skills using or-tools with C#

我正在尝试通过 C# 使用 or-tool 解决 Vehicle Routing with Pickups and Deliveries。是否可以为车辆添加某种技能(产品类型)? 示例:

所以pickup1只能被vehicle2接走,pickup2可以被vehicle1或者vehicle2接走

可以限制每个节点的车辆var来过滤不熟练的车辆。

对于给定的节点,车辆变量有一个域 [-1, 0, .., num_vehicle - 1]

-1 如果节点未被访问,则分配给车辆变量。

所以如果你有n辆车,你想禁止车辆i访问节点j,你需要从车辆var [=的域中删除i 14=].

删除后,如果节点不是可选的,车辆变量的域应该是 [0, .., i - 1, i + 1, .. , n - 1],如果节点是可选的,则应该是 [-1, .., i - 1, i + 1, .. , n - 1]