如何在OptaPlanner中为车辆路由添加约束



我正在研究车辆路由问题,我必须实现一个约束,确保特定位置/s不应该是第一个或最后一个要穿越的位置。

有两种方法可以做到:

最简单的方法:

if (Customer.getPreviousStandstill instanceOf Vehicle) // first visit
if (Customer.getNextCustomer == null) // last visit

困难的方法(如果你需要单独列出第37次访问等):

在规划实体Customer中增加一个阴影变量visitNumber,在规划实体Vehicle中增加一个阴影变量visitNumberTotal。然后使用VariableListeners来保持同步

最新更新