robust branch-and-cut-and-price for the capacitated

33
Robust Branch-and-Cut-and-Price for 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

Upload: others

Post on 16-Mar-2022

1 views

Category:

Documents


0 download

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.

Example - Instance A-n62-k8

Vehicle Capacity: 100

Optimal Solution A-n62-k8

Optimal Solution Value: 1288

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)

1

2 ( 0 )

0

pej j

j

j

q e

j R

λ δ

λ=

≤ ∈

≥ ∈

D-W Master Formulation

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.

TAK !

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

==

∈ ∈ ≤