将车辆添加到车辆路径示例

时间:2016-07-27 09:13:52

标签: optaplanner

我们的情况类似于车辆路线示例。不同之处在于我们希望能够即时添加车辆。通过问题更改(使用BeforeEntityAdded& AfterEntityAdded)添加车辆时,日志会验证问题事实更改是否已完成,但计划员似乎并未将新车辆考虑在内。它使用下面的代码完成(depot是现有的软件仓库)。任何想法如何解决这个问题?

Vehicle vehicle = new Vehicle();
vehicle.setId(id);
vehicle.setCapacity(5);
vehicle.setDepot(depot);
scoreDirector.beforeEntityAdded(vehicle);
solution.getVehicleList().add(vehicle);
scoreDirector.afterEntityAdded(vehicle);
scoreDirector.triggerVariableListeners();

由于

1 个答案:

答案 0 :(得分:0)

如果您查看下一个最佳解决方案事件,在该问题事实发生更改后,并且该列表中包含该车辆,则应该可以使用。你确定容量足够高并且有一种方法可以使用车辆获得更好的分数吗?

尝试解决一个容量小于所需要求的VRP集,然后添加一辆车 - 它应该立即使用,因为使用它会提高硬分。