Custom VRP for food delivery

Using the Routing template, I created a custom VRP model for a food delivery/retailer example with a custom constraint and value function. I started by initializing the Routing template and selecting some of the pre-built constraints (start and end locations, shifts, service times, unassignment penalties).

In order to account for a unique business logic related to store size, I added a custom constraint to the model such that the resulting routes now reflect this logic.

Finally, I created a custom value function that sought to balance stop distribution across vehicles while also minimizing time on road. With this, the resulting routes are more balanced across drivers than before.

You can read the full blog post here.

You can get all of the files on GitHub here.