New feature: balance activities

We are excited to announce a new feature for the Optimization API. This feature allows you to balance the number activities over your drivers. To use it, just specify the following objective:

"objectives": [
    {
      "type": "min-max",
      "value": "activities"
    }
]

This minimizes the maximum number of activities over all vehicle routes.

This is a nice alternative to

"objectives": [
    {
      "type": "min-max",
      "value": "completion_time"
    }
]

which minimizes the maximum completion_time over all routes. However, sometimes, one cannot reduce completion_time by employing another driver, but still there are idle drivers which got paid and need to work. In these cases, one might be better off balancing activities.

3 Likes

@stefan: Could you please advice how to set the objective to min-max by calling java functions (instead of passing the JSON options). For example, my program currently has:

VehicleRoutingProblem vrp = vrpBuilder.build();
VehicleRoutingAlgorithm vra = new GreedySchrimpfFactory().createAlgorithm(vrp);

Where should I add the command for setting the min-max objective? Thank you.

This topic is about the Route Optimization API. For usage questions of our open source projects please create a new topic with jsprit as category.

Thanks Karussell. I will create a topic in sprit now.