A cplex code for multi-vehicle multi-depot version of CVRP with time windows
Hi, this is an implementation of CPLEX that can be applied on multi-depot and multi-vehicle veriosn of CVRPTW. The main file initially reads the provided data, which is an instance of Solomon dataset. However, you can apply it on any routing instance or even randomly generating one.
Here are the formulations used for the objective function and the constraints:
Typically considered in the vehicle routing problem, the objective function tries to minimize the overall distance of the routes taken by the vehicles.
The followings are the paramters considered in modeling the problem:
N: Number of Customers
K: Number of Vehicles
V: Number of Vertices (including both depots and customers)
A: List of all the possible edges in the graph
M: A large positive number
Customer Visit Constraint
Route and Flow Conservation, and Depot Constraints
Capacity Constraint
Time Constraints
and Each vehicle should start its new route from a depot where it has returned.
The followings are some results returned by the CPLEX problem solver. As I have considered a time limit of 20-30 minutes, these can be feasible solutions rather than optimal ones when the number of customers exceed 10.