Modeling real-world vehicle routing problems with dependencies

The basic Vehicle Routing Problem is an optimization problem in which a number of customers have to be served with a fleet of vehicles, while minimizing the cost for doing so. As this problem has many applications in the fields of transportation, logistics and distribution, several specializations exist. The Vehicle Routing Problem with Dependencies (VRPD) adds restrictions to the order in which customers are served. A dependency between customers indicates a “must happen before”-relationship: tc1 < tc2. The Capacitated Vehicle Routing Problem (CVRP) constrains the maximum amount of cargo that a vehicle can carry at any time. The Vehicle Routing Problem with Pick-up and Delivery (VRPPD) is a further specialization of the CVRP and the VRPD, in which cargo is picked up at a customer’s location, and has to be delivered to another customer. The delivery event can only happen after the pickup event has been completed. The Vehicle Routing Problem with Time Windows (VRPTW) is a variation in which each event has a time window in which it has to be completed: when the vehicle arrives before the earliest allowed time, it has to wait at that location until the time window opens. Ending an event after the time window is prohibited. In the basic VRP, all vehicles start and end at the same location, called the depot. In the Multiple Depot Verhicle Routing Problem (MDVRP), this restriction is loosened, and each vehicle can have its own location.