Java OptaPlanner中VRP的最小-最大行程

Java OptaPlanner中VRP的最小-最大行程,java,optaplanner,traveling-salesman,Java,Optaplanner,Traveling Salesman,我是OptaPlanner的新手,试图根据自己的需要修改现有的VRP示例 我的问题是:我想要无容量限制的VRP,如示例tutorial/test/tutorial-01-uncapacitated.VRP中所示。在实际实现中,优化器主要只使用一辆车,因为它只考虑最小化总数据量。 我想更改软约束,使最大行程最小化。我的目标是使车辆得到平等的利用 以下是实施的drools软约束: //##########################################################

我是OptaPlanner的新手,试图根据自己的需要修改现有的VRP示例

我的问题是:我想要无容量限制的VRP,如示例tutorial/test/tutorial-01-uncapacitated.VRP中所示。在实际实现中,优化器主要只使用一辆车,因为它只考虑最小化总数据量。 我想更改软约束,使最大行程最小化。我的目标是使车辆得到平等的利用

以下是实施的drools软约束:

//###########################################################################
// Soft constraints
// ############################################################################
rule "distanceToPreviousStandstill"
when
    $customer : Customer(previousStandstill != null,$distanceFromPreviousStandstill : distanceFromPreviousStandstill)
then
    scoreHolder.addSoftConstraintMatch(kcontext, - $distanceFromPreviousStandstill);
end

rule "distanceFromLastCustomerToDepot"
when
    $customer : Customer(previousStandstill != null)
    not Customer(previousStandstill == $customer)
then
    Vehicle vehicle = $customer.getVehicle();
    scoreHolder.addSoftConstraintMatch(kcontext, - $customer.getDistanceTo(vehicle));
end

我试图计算每辆车的距离,并为距离最大的车返回一个软约束。

最小化最大行程后,您还希望它最小化第二个最大行程,以此类推

请参阅文档中的“公平性”和“负载平衡”。还有网球的例子