robust branch-and-cut-and-price for the capacitated
TRANSCRIPT
Robust Branch-and-Cut-and-Pricefor the
Capacitated Vehicle Routing Problem
�Ricardo Fukasawa GAPSO, Inc.
�Marcus Poggi de Aragão Dep. Informática, PUC-Rio
[email protected]�Marcelo Reis
Dep. Informática, PUC-Rio
Eduardo Uchoa Dep. Engenharia de Produção, UFF
Capacitated Vehicle Routing Problem (CVRP)
Given � An undirected graph G=(V,E) V= {0,1,...,n}
Vertex 0 represents a depot and remaining vertices represent clientsEdge lengths are denoted by c(e)
� Client demands are q(1),...,q(n)� K vehicles with capacity C � Determine routes for each vehicle satisfying the following constraints:
(i) each route starts and ends at the depot, (ii) each client is visited by exactly one vehicle(iii) the total demand of clients visited in a route is at most C
� The objective is to minimize the total route length.
Capacitated Vehicle Routing Problem (CVRP)
Considered one of the hardest combinatorial problems to solve exactly.The evolution of the algorithms has been very slow:
�State of the art in 1978: Exact solution for up to 25 clients.
� State of the art in 2003: Exact solution for up to 50-100 clients.
Problems with many vehicles (k >7) are usually harder.
Algorithms for the CVRP
Best approaches during the 80’s: Column Generation and LagrangeanRelaxation:
� Christofides, Mingozzi, Toth (1981);� Agarwal, Mathur, Salkin (1989);� Fisher (1994).
Branch-and-Cut algorithms were developed in the mid 90’s (1995) and have have been the best since then:
� Augerat, Belenguer, Benavent, Corberan, Naddef, Rinaldi (1995);� Martinhon, Lucena, Maculan (1998);� Blasum, Hochstattler (2000);� Ralphs, Kopman, Pulleyblank, Trotter (2003);� Lysgaard, Letchford, Eglese (2003).
We propose to Branch, Cut and Price in a Robust way.
Robust Branch-and-Cut-and-Price
This work proposes a way to deal with an exponential number of both columns and rows, leading to a branch-and-cut-and-price algorithm.
�The term “robust” refers to the fact that neither branching nor cut separation ever change the pricing subproblem.
Robust Branch-and-Cut-and-Price
� Poggi de Aragão and Uchoa (2003)
mins.t
cx
Ax = b
Dx ≤ d
x ∈ N m
min cx
s.t. x' −x = 0Ax = b
Dx' ≤ d
x' ∈ N m
x ∈ N m
min cx
s.t. Qλ −x = 0Ax = b
1λ = 1λ ≥ 0
x ∈ N m
Formulating the CVRP with an exponential number of constraints
� Let 0 be the root node (depot)� V+={1,...,n} = V \ {0}� k(S): minimum number of vehicles to
serve all clients in S ⊆ V+
� Let Xe be the number of times a vehicle traverses edge e for e ∈ E
CVRP – exponential number of contraints
( )
(0)
( )
min
. . 2 ,
2.
2. ( ) ,
e ee E
ee i
ee
ee s
c x
s t x i V
x K
x k S S V
δ
δ
δ
∈
+∈
∈
+∈
= ∀ ∈
=
≥ ∀ ⊆
�
�
�
�
Ensures that all non root vertices have exactly two incident edges
Eliminates subtours and inforces maximum route capacity
( , )
(0, )
{0,1} , ( , ) , {0,1,2} , (0, )
e i j
e j
x i j E i j V
x j E j V= +
= +
∈ ∀ ∈ ∈∈ ∀ ∈ ∈
Robust formulation for the CVRP
� Let R be the set of all valid routes (total of p)� Let Q be a n X p matrix of the incidence
vectors associate to these routes.� Let qj
e denote the coefficient associated to edge e in route j
� Let λj be a variable indicating whether route j is in the solution or not.
� The x variables can now be expressed as a convex combination of the λ’s
:
( )
(0)
min
. . 0 ,
2 ,
2.
{0,1} ,
e
e ee E
ejj
j R e j
ee i
ee
j
c x
s t q x e E
x i V
x K
j R
�
�
�
�
�
� �
�
�
�
� � ��
� ��
�
� ��
�
�
�
�
{0,1} , \ (0){0,1,2} , (0)
e
e
x e E
x e
δδ
∈ ∀ ∈∈ ∀ ∈
Formulation for the CVRP with an exponential number of variables
:
( )
(0)
min
. . 0 ,
2 ,
2.
0 ,
e
e ee E
ejj
j R e j
ee i
ee
j
c x
s t q x e E
x i V
x K
j R
�
�
�
�
�
� �
�
�
�
� � ��
� ��
�
� ��
�
�
�
�
The λ’s are integer if the x’s are
{0,1} , \ (0){0,1,2} , (0)
e
e
x e E
x e
δδ
∈ ∀ ∈∈ ∀ ∈
:
( )
(0)
( )
min
. . 0 ,
2 ,
2.
2. ( ) ,
e
e ee E
ejj
j R e j
ee i
ee
ee s
c x
s t q x e E
x i V
x K
x k S S V
�
�
�
�
�
� �
�
�
�
�
�
� � ��
� ��
�
� � �
�
�
�
�
�
00 ,
j
e
j R
x e E
λ ≥ ∈≥ ∈
Explicit Master Formulation (LP relaxation)
The pricing subproblem
� Finding a valid route with minimum reduced cost: Prize Collecting TSP (Balas, 1989)
� Strongly NP-hard problem.� Relax that problem to allow cycles, which
allows us to generate the columns by dynamic programming in pseudo-polynomial time.
� Find q-routes (Christofides, Mingozzi, Toth, 1981)
The pricing subproblem
� h(i,q) – Best path with capacity q from i to the depot.
� Complexity O(n2C)� Two cycles can be eliminated (CMT 81)
without changing complexity
{ }( , ) min ( , ( ))ijj
h i q c h j q q j= + −
Cuts
� Separating the Capacity cuts is NP-hard� We used T. Ralphs implementation of
the Augerat et. al. separation heuristic (available at Symphony’s demo).
� We also applied an exact separation (MIP solver) at the root node.
Cuts
� The cuts are added over the x variables only, not affecting the pricing subproblem
� We perform branching on the original variables X, preference for the ones with larger cost and closer to 0.5
Branching
Results
� This approach consistently gets lower bounds better than those from previous algorithms, allowing us to solve to optimality several instances for the first time.
Results
� Using CPLEX 7.1 solver on a Pentium IV, 2 Ghz, 1 GB RAM.
� Tests on instances from the literature available at http://branchandcut.org/VRP/data/
– 108 instances: series A, B, E, F, M
E series (Eilon-Christofides, 1969)
815801.8802.6E-n101-k8
Best Upper Bound
Lower Bound
521517.9519.0E-n51-k5
682668.4666.4E-n76-k7
735725.1717.9E-n76-k8
10711051.61026.9E-n101-k14
10211004.8969.6E-n76-k14
830816.5799.9E-n76-k10
OursLLE03Instance
A series (Augerat et al. 1995)
OursPrevious
1763
1159
1174
1402
1315
1616
1290
1034
1354
1073
1167
1010
Upper Bound
11591138.41114.4A-n69-k9
17631749.71709.6A-n80-k10
14011378.91351.6A-n64-k9
16161603.51580.7A-n63-k9
13141294.51266.6A-n63-k10
12881274.11251.7A-n62-k8
10341018.61010.2A-n61-k913541341.61319.6A-n60-k9
Lower Bound
10101002.2998.7A-n53-k7
11671150.01135.3A-n54-k7
10731066.41058.3A-n55-k9
11741163.41155.2A-n65-k9
OursLLE03Instance
Some open instances from other series
OursPrevious
1034
1275
Upper BoundLower Bound
10341030.81017.4M-n121-k7
12721261.51258.1B-n68-k9
OursLLE03Instance
-We also closed all the remaining 7 open instances from series P.
Remarks� It is clear that the Capacity Constraints
cut significantly the polytope described by the column generation formulation.
� The addition of many other classes of known inequalities (….) is expected to yield even better results.
IP Reformulation
� Let Q be a n X p matrix where each column corresponds to one element of P
� There is a one-to-one correspondence between elements of P and the solutions of:
{ }p
ts
Qx
1,01.
∈=
=
λλ
λ1
IP Reformulation
� The traditional IP reformulation (Gilmore and Gomory, 1961) consists of replacing x by its equivalent expression in (O), a transformation similar to the Dantzig-Wolfe reformulation for LP:
{ }
min ( ). ( )
1
0,1
IP
p
Z cQ
s t AQ b
λλ
λ
λ
===
∈
1
Dantzig-Wolfe Master
� Solving the DWM is equivalent to solving
min ( ). ( )
10
DWMZ cQ
s t AQ b
λλ
λλ
===≥
1( )DWM
{ }
min
.
|
DWM
n
Z cx
s t Ax b
x Conv x N Dx d
==
∈ ∈ ≤