Part I Introduction
8.2 Basic VRP Variants
8 The Vehicle-Routing Problem
Farzaneh Daneshzand
Department of Industrial Engineering, Amirkabir University of Technology, Tehran, Iran
In brief, the solution of vehicle-routing problem (VRP) determines a set of routes that starts and ends at its own depot, each performed by a single vehicle in a way that minimizes the global transportation cost and fulfills the demands of the custo- mers and operational constraints (Figure 8.1) [1].
Other VRP variants that have been studied recently in the literature are open VRP (OVRP), multidepot VRP (MDVRP), mix fleet VRP (MFVRP), split-delivery VRP (SDVRP), periodic VRP (PVRP), stochastic VRP (SVRP), and fuzzy VRP (VRPF).
In the following sections, we will discuss these variants and their most important formulations.
8.2.1 The Capacitated VRP
The basic version of VRP is CVRP. In this problem, each vehicle has a capacity that is known in advance, so loading the vehicle more than its capacity is not allowed. There are two versions of CVRP: ACVRP, when the cost matrix is asym- metric, and SCVRP, when the cost matrix is symmetric.
The integer linear programming formulation of ACVRP proposed by Toth and Vigo [4] is presented as follows.
Model Assumptions
G The demands are deterministic.
G The demands may not be split.
G The vehicles are identical.
G The vehicles are based at a single central depot.
G The capacity restrictions for the vehicles are imposed.
Model Inputs
G5(V,A): A complete graph V5{0,. . .,n}: The vertex set A: The arc set
dj: The demand of each customer (d050)
cij: The nonnegative travel cost spent to go from vertexito vertexj SDV: The customer set
d(S)5P
di: The total demand of the set K: The number of identical vehicles C: The capacity of each vehicle
Kmin,r(S): The minimum number of vehicles needed to serve all customers Depot
Figure 8.1 The scheme of the VRP [2].
Model Output
xij51 if arc (i,j)AAbelongs to the optimal solution and 0 otherwise.
Objective Function and Its Constraints
minX
iAV
X
jAV
cijxij ð8:1Þ
X
jAV
xij51 ’iAV=f0g ð8:2Þ
X
jAV
xij51 ’iAV=f0g ð8:3Þ
X
iAV
xi05K ð8:4Þ
X
jAV
x0j5K ð8:5Þ
X
i2S=
X
jAS
xij$rðsÞ ’SDV=f0g; S6¼φ ð8:6Þ
xij5f0;1g ’i; jAV ð8:7Þ
Equations (8.2) and (8.3) are indegree and outdegree constraints, respectively.
Constraints (8.4) and (8.5) impose the degree requirement for the depot vertex.
Inequalities (Eqn (8.6)) are called capacity cut constraints (CCCs), and they impose vehicle capacity requirements while ensuring the connectivity of the solution. In fact, they stipulate that each cut (V/S, S) defined by a customer setS is crossed by a number of arcs not smaller thanr(S).
An alternative formulation may be obtained by transferring the CCCs into sub- tour elimination constraints (SECs):
X
iAS
X
jAS
xij#j jS 2rðSÞ ð8:8Þ
This constraint indicates that at least r(S) arcs leave each customer set S. Both families of constraints (8.6) and (8.8) grow exponentially withn. It means that it is practically impossible to solve the linear programming relaxation of the problem directly (Eqns (8.18.7)). A possible way to solve these problems is to consider only some of these constraints and to add the remaining ones only if needed.
8.2.2 Distance-Constrained and Capacitated VRP
The DCVRP is a variant of CVRP on which both vehicle capacity and maximum distance constraints are imposed. In such problems, each tour length should not exceed the quantity known before. The symmetric DCVRP model of Laporte et al.
[5] is presented as follows.
Model Assumptions (Other Than Assumptions of CVRP)
G Distance restrictions are imposed.
Model Inputs (Other Than Inputs of CVRP)
r0(S): Given a subsetS of customer vertices, the quantityr0(S) represents the mini- mum number of vehicles needed to serve all the customers inS.
Model Output
xij51 if arc (i,j)AAbelongs to the optimal solution and 0 otherwise.
Objective Function andits Constraints
min X
iAV=fng
X
j.i
cijxij ð8:9Þ
X
h,i
xhi1X
j.i
xij52 ’iAV=f0g ð8:10Þ
X
jAV=f0g
x0j52K ð8:11Þ
X
iAS
X
j.i jAS
xij#j jS 2r0ðSÞ ’SDV=f0g; S6¼φ ð8:12Þ
xijAf0;1g ’i;jAV=f0g; i,j ð8:13Þ
x0jAf0;1;2g ’iAV=f0g ð8:14Þ
Constraints (8.10) and (8.11) are the degree constraints. Inequality (Eqn (8.12)) is an SEC that imposes the connectivity of solution, the vehicle capacity, and the maximum route length requirements by forcing a sufficient number of edges to leave each subset of vertices.
8.2.3 VRP with Time Windows
The VRPTW is the extension of CVRP where the service at each customer must start within a specified time window and the vehicle must remain at the customer’s location during service. The model of Toth and Vigo [4] for VRPTW is presented here.
Model Assumptions (Other Than Assumptions of CVRP)
G For each customeri, the service starts within the time window, [ai, bi], and the vehicle stops forsitime instants.
Model Inputs (Other Than Inputs of CVRP)
E: The earliest possible departure from the depot L: The latest possible arrival at the depot
[a0,b0]5[an11,bn11]5[E,L]: The time window associated with node 0,n11 Δ1(i): The vertices that are directly reachable fromi, the forward start ofi Δ2(i): The vertices from whichiis directly reachable, the backward start ofi Si: The service time for customeri
tij: The travel time for each arc (i,j)AA
wik: The start of service at nodeiwhen serviced by vehiclek.
Model Outputs
xijk51 if arc (i,j) is used by vehiclek, (i,j)AA,kAK.
Note that the depot is presented by two nodes: 0,n11.
Objective Function and its Constraints minX
kAK
X
ði;jÞAA
cijxijk ð8:15Þ
X
kAK
X
jAr1ðiÞ
xijk51 ’iAN ð8:16Þ
X
jAr1ð0Þ
x0jk51 ’kAK ð8:17Þ
X
iAr2ðjÞ
xijk2 X
iAr1ðjÞ
xjik50 ’kAK; jAN ð8:18Þ
X
iAr2ðn11Þ
xi;n11;k51 ’kAK ð8:19Þ
xijkðwik1Si1tij2wikÞ#0 ’kAK; ði;jÞAA ð8:20Þ
ai
X
jAr1ðiÞ
xijk#wik#bi
X
jAr1ðiÞ
xijk ’kAK; iAN ð8:21Þ
E#wik#L ’kAK; iAf0;n11g ð8:22Þ
X
iAN
di X
jAr1ðiÞ
xijk#C ’kAK ð8:23Þ
xijk$0 ’kAK; ði;jÞAA ð8:24Þ
xijkAf0;1g ’kAK; ði;jÞAA ð8:25Þ
The objective function (Eqn (8.15)) expresses the total cost. Constraint (8.16) restricts the assignment of each customer to exactly one vehicle route. Constraints (8.178.19) characterize the flow on the path to be followed by vehicle k.
Constraints (8.208.23) guarantee schedule feasibility according to time and capacity considerations, respectively, and the last constraint imposes binary condi- tions on flow variables.
8.2.4 VRP with Backhauls
In VRPB, customers can demand or return some commodities. In fact, it is an extension of the CVRP in which the customers are partitioned into two subsets:
line-haul and back-haul customers. Each line-haul customer requires a given quan- tity to be delivered while a given quantity of products must be picked up from back-haul customers.
This kind of mixed distribution causes a significant saving in transportation costs, because one is able to visit back-haul customers while delivering the pro- ducts to the line-haul customers. The assumption is that on each route, all deliveries are made before any pickups [6].
Here, we present the formulation of Toth and Vigo [4] for VRPB as an asym- metric problem.
Model Assumptions (Other Than Assumptions of CVRP)
G The sum of demands of the line-haul and back-haul vertices visited by a circuit does not exceed separately the vehicle capacity,C.
G In each circuit, the line-haul vertices precede the back-haul vertices, if any.
Model Inputs (Other Than Inputs of CVRP)
L5{1,. . .,n}: Line-haul customer subset
B5{n11,. . .,n1m}: Back-haul customer subset
F5L,B
Cij: The nonnegative cost associated with each arc (i,j)ЄA L05L,{0}
B05B,{0}
G5ðV;AÞ: A directed graph obtained fromGby definingV5V A5ðA1,A2,A3Þ
A15{(i,j)ЄA:iЄL0,jЄL}
A25{(i,j)ЄA:iЄB,jЄB0} A35{(i,j)ЄA:iЄL,jЄB0} Model Outputs
xij51 if and only if arc (i,j) is in the optimal solution and 0 otherwise.
Objective Function and Its Constraints
min X
ði;jÞAA
cijxij ð8:26Þ
X
iArj2
xij51 ’jAV=f0g ð8:27Þ
X
iAri1
xij51 ’iAV=f0g ð8:28Þ
X
iAr02
xi05K ð8:29Þ
X
iAr01
x0j5K ð8:30Þ
X
jAS
X
iArj2=S
xij$rðSÞ ’SAF ð8:31Þ
X
iAS
X
iArj1=S
xij$rðSÞ ’SAF ð8:32Þ
xijAf0;1g ’ði;jÞAA ð8:33Þ
The objective function minimizes the total cost. Equations (8.278.30) impose indegree and outdegree constraints for the customer and the depot vertices, respec- tively. Constraints (8.31) and (8.32) are CCCs and impose the connectivity and the capacity constraints. Because of the degree constraints, for any given S, the left- hand side of Eqns (8.31) and (8.32) are equal. Hence, if constraint (8.31) is imposed, constraint (8.32) is redundant and vice versa.
8.2.5 VRP with Pickup and Delivery
In VRPPD, the vehicles have two sets of tasks, one delivering goods to customers and the other picking goods up at customer locations.
In the VRPPD, a heterogeneous vehicle fleet must satisfy a set of transportation requests. Each request is defined by a pickup point, a corresponding delivery point, and a demand to be transported between these locations.
VRPPD can be formulated as a mixed-integer linear programming model. The integer linear model proposed by Hoff, Gribkovskaia, Laporte, and Lokketangen is presented [7].
Model Assumptions (Other Than Assumptions of CVRP)
G There arencustomers;irepresents two verticesiandn1i. It means that vertexiis used to perform a delivery, and vertexi1nis used to perform a pickup.
G pi5di1nfori51, 2,. . .n
G Visiting i, i1n in succession by the same vehicle is, in fact, making a simultaneous pickup and delivery operation at customeri. Otherwise, the two operations are performed separately by the same vehicle or by two different vehicles.
Model Inputs (Other Than Inputs of CVRP) The extended cost matrixC5ðcijÞð2n11Þð2n11Þ
cij5
cij if i#n and j#n ci2n;j if i$n11 and j#n; j6¼i2n ci;j2n if i#n; j$n11; i6¼j2n ci2n;j2n if i$n11; j$n11
0 if j5i2n or i5j2n 8>
>>
><
>>
>>
:
uik: An upper bound on the total pickup demand accumulated in vehicle k on leaving vertexi(i50, 1,. . ., 2n;k51,. . .,m)
vik: An upper bound on the total delivery demand remaining in vehicle k on leaving vertexi
qij: The distance between customeriandj di: The demand of customeri
pi: The supply of customeri
D: The maximum distance that the vehicles may cover in a tour C: The maximum capacity of a vehicle.
Model Outputs
xijk: 1 if vehiclektravels directly from vertexito vertexj(i,j50,. . ., 2n,i6¼j, k51, 2,. . .,m) and 0 otherwise.
Yik: 1 if vehiclekperforms a delivery at vertexi(i51, 2,. . .,n,k51, 2,. . .,m).
Zikis 1 if vehiclekperforms a pickup at vertexi(i511n,. . ., 2n,k51, 2,. . .,m).
Objective Function and its Constraints
minXm
k51
X2n
i50
X2n
j50
cijxijk ð8:34Þ
X2n
j50
xojk51 k51;2;. . .;m ð8:35Þ
X2n
j50
xijk5X2n
j50
xijik ði50;. . .;2n; k51;2. . .;mÞ ð8:36Þ
Xm
k51
X2n
j50
xijk51 ði50;. . .;2nÞ ð8:37Þ
u0k50 ðk51;2;. . .;mÞ ð8:38Þ
v0k5Xn
i51
diyik ðk51;2; :::;mÞ ð8:39Þ
0#uik1vik#Qk ði50;. . .;2n; k51;2;. . .;mÞ ð8:40Þ
ujk$uik1pjzjk2ð12xijkÞQk ði50; . . .; 2n; j51;. . .;2n; k51;2; . . .; mÞ ð8:41Þ vjk$vik2djyjk2ð12xijkÞQk ði50;...;2n; j51;...;2n; k51;2;...;mÞ
ð8:42Þ
xijk#yik1zik ði51;. . .;2n; j50;. . .;2n; k51;2;. . .;mÞ ð8:43Þ xijkAf0;1g ði; j50;. . .;2n; i6¼j; k51;. . .;mÞ ð8:44Þ yijkAf0;1g ði51;. . .;n; k51;. . .;mÞ ð8:45Þ
zikAf0;1g ði5n11;. . .;2n; k51;2;. . .;mÞ ð8:46Þ Constraint (8.35) implies that m vehicles leave the depot. Constraint (8.36) ensures that the incoming flow at each customer vertex is equal to the outgoing flow and that the same vehicle enters and leaves the vertex. Constraint (8.37) means that each vertex is visited exactly once, and constraints (8.38) and (8.39) are used to initialize the pickup and delivery demands in the vehicles. Constraint (8.40) guarantees that the vehicle load never exceeds the vehicle capacity. Inequalities (Eqns (8.41 and 8.42)) control the upper bounds on the amounts of pickup and delivery demands in the vehicle on leaving each vertex. These constraints are, in fact, SECs. Constraint (8.43) states that if a vehicle performs no delivery and no pickup at vertex i, then it does not travel along any arc (i, j). Because constraint (8.37) forces each vertex to be visited by exactly one vehicle, there necessarily exists an indexk, for which both sides of Eqn (8.43) will be equal to 1.
Constraints (8.388.42) ensure that theuikandvikvariables are nonnegative.