Vehicle routing problem
The vehicle routing problem (VRP) is a combinatorial optimization problem seeking to find the optimal set of routes for a fleet of identical vehicles stationed at a central depot to serve a given set of geographically scattered customers, each demanding a specified quantity of goods, while minimizing the total travel distance or cost and respecting constraints such as limited vehicle capacity and maximum route length. Each customer must be visited exactly once by exactly one vehicle, with all vehicles starting and ending their routes at the depot. The VRP was first formally introduced in 1959 by George B. Dantzig and John H. Ramser in their seminal paper "The Truck Dispatching Problem," which addressed the routing of gasoline delivery trucks from a bulk terminal to service stations using a heuristic approach based on linear programming relaxations.[1] Since then, the problem has evolved significantly, with early contributions like the Clarke-Wright savings algorithm in 1964 providing foundational heuristics for practical implementation.[2] As an NP-hard problem, the VRP is computationally challenging, with exact algorithms such as branch-and-cut-and-price capable of solving instances up to around 100-135 customers, while heuristic and metaheuristic methods like tabu search and genetic algorithms are employed for larger-scale real-world applications. It plays a central role in logistics and supply chain management, underpinning efficient operations in sectors including e-commerce delivery, municipal waste collection, and emergency response services, where optimized routing can reduce fuel consumption, operational costs, and environmental impact by up to 20-30% in typical scenarios. To accommodate diverse practical needs, numerous variants of the VRP have been studied, including the capacitated VRP (CVRP) which enforces vehicle load limits, the VRP with time windows (VRPTW) that restricts delivery times, and the pickup and delivery problem (PDP) involving both collection and distribution tasks.[2] These extensions reflect the problem's adaptability to heterogeneous fleets, dynamic environments, and stochastic demands, fostering ongoing research in areas like machine learning integration for route prediction.Problem Description
Basic Setup
The vehicle routing problem (VRP) is a combinatorial optimization problem that seeks to determine optimal routes for a fleet of vehicles to serve a set of customers, starting and ending at a central depot, while minimizing the total cost, typically measured as travel distance or time.[1] This problem arises in distribution and logistics contexts, where efficient route planning reduces operational expenses and improves resource utilization.[2] The core components of the VRP include a single depot serving as the origin and destination for all vehicles, a set of customer locations each with a specific demand to be satisfied, a fleet of homogeneous or heterogeneous vehicles each subject to capacity limits, and a road network modeled as a complete graph with nodes representing locations and edges weighted by travel distances or times.[2] The decision variables in the VRP consist of the assignment of routes to individual vehicles and the sequence in which customers are visited along each route, ensuring that all demands are met without violating vehicle constraints.[1] The primary objective of the VRP is to minimize the total travel distance or cost across all routes, with secondary goals often including the minimization of the number of vehicles used to promote fleet efficiency.[2] The VRP generalizes the traveling salesman problem (TSP), which represents the special case of a single vehicle serving all customers.[2] To illustrate, consider a basic VRP instance with one depot (node 0), five customers (nodes 1 through 5) located at distinct points on a plane, and two vehicles each with a capacity of 100 units. Customer demands are, for example, 20, 30, 25, 40, and 35 units respectively, and distances between nodes form a metric graph. An optimal solution might assign one vehicle to visit customers 1, 2, and 3 (total demand 75) in the sequence 0-1-2-3-0, and the other to 4 and 5 (total 75) as 0-4-5-0, minimizing the combined route length while respecting capacities.[1]Mathematical Formulation
The basic mathematical formulation of the vehicle routing problem (VRP), often referred to as the capacitated VRP (CVRP) and extendable to heterogeneous fleets, is an integer linear programming model that minimizes the total routing cost while respecting capacity limits and ensuring each customer is served exactly once by one vehicle route starting and ending at the depot. This formulation uses three-index decision variables to distinguish routes by vehicle and incorporates the Miller-Tucker-Zemlin (MTZ) constraints to eliminate subtours. The model assumes a complete directed graph with non-negative costs satisfying the triangle inequality, homogeneous or heterogeneous vehicle capacities, and non-negative customer demands.[3]Notation
Let V = \{0, 1, \dots, n\} denote the vertex set, where vertex 0 is the depot and vertices $1, \dots, n are customers; let K = \{1, \dots, m\} be the set of available vehicles. The parameters are c_{ij} \geq 0 (travel cost from i to j in V \times V), q_i \geq 0 (demand at vertex i, with q_0 = 0), and Q_k > 0 (capacity of vehicle k \in K).[3]Decision Variables
- x_{ijk} \in \{0,1\} \ \forall i,j \in V, \, i \neq j, \, k \in K: equals 1 if vehicle k travels directly from i to j, and 0 otherwise.
- u_{ik} \geq 0 \ \forall i \in V, \, k \in K: auxiliary variable representing the cumulative demand served by vehicle k upon leaving vertex i (with u_{0k} = 0 \ \forall k \in K).