Christian Gruber - Johannes Reiter

21
Robust Branch-Cut-and-Price Algorithms for Vehicle Routing Problems A. Pessoa, M. Poggi de Aragao und E. Uchoa Christian Gruber - Johannes Reiter

description

Robust Branch-Cut-and-Price Algorithms for Vehicle Routing Problems A. Pessoa, M. Poggi de Aragao und E. Uchoa. Christian Gruber - Johannes Reiter. AGENDA. Einleitung Problem Definitionen & Formulierungen Robust Branch-Cut-and-Price Algorithums Ergebnisse Fazit. Einleitung. - PowerPoint PPT Presentation

Transcript of Christian Gruber - Johannes Reiter

Page 1: Christian Gruber  -  Johannes Reiter

Robust Branch-Cut-and-Price Algorithms

for Vehicle Routing ProblemsA. Pessoa, M. Poggi de Aragao und E. Uchoa

Christian Gruber - Johannes Reiter

Page 2: Christian Gruber  -  Johannes Reiter

Robust Branch-Cut-and-Price Algorithms for Vehicle Routing Problems 2

AGENDA

• Einleitung

• Problem Definitionen & Formulierungen

• Robust Branch-Cut-and-Price Algorithums

• Ergebnisse

• Fazit

Page 3: Christian Gruber  -  Johannes Reiter

Robust Branch-Cut-and-Price Algorithms for Vehicle Routing Problems 3

Einleitung

• Branch and Cut um 1980 entwickelt

• Branch and Price erst 1993 entwickelt

• Kombination erst nach Jahrtausendwende erfolgreich

• Was ist nun Branch-cut-and-price?

• Folgende Ideen basieren auf ACVRP„Asymmetric Capacitated Vehicle Routing Problem“

Page 4: Christian Gruber  -  Johannes Reiter

Robust Branch-Cut-and-Price Algorithms for Vehicle Routing Problems 4

AGENDA

• Einleitung

• Problem Definitionen & Formulierungen

• Robust Branch-Cut-and-Price Algorithm

• Ergebnisse

• Fazit

Page 5: Christian Gruber  -  Johannes Reiter

Robust Branch-Cut-and-Price Algorithms for Vehicle Routing Problems 5

Definitionen

• Gerichteter Graph G = (V,A)

V = {0,1,…,n} m = |A| 0 … Depot

• Jeder Client Bedarf d(i) - Bedarf d(0) = 0

• C … max. Kapazität einer Tour

• Jede Route startet und endet beim Depot

• Jeder Client wir nur in einer Tour besucht

• Ziel ist Minimierung der Kosten aller Routen

Page 6: Christian Gruber  -  Johannes Reiter

Robust Branch-Cut-and-Price Algorithms for Vehicle Routing Problems 6

Definitionen (2)

• Menge aller Clients V+ = {1,…,n}

• Bedarf der Teilmenge S

• Mind. Anzahl an Touren

• Kanten in S

• Eing. Kanten

• Ausg. Kanten

VS

Si

idSd )()(

C

SdSk

)()(

SjiAjiSA ,:),()(

SVjSiAjiS \,:),()(

SjSViAjiS ,\:),()(

Page 7: Christian Gruber  -  Johannes Reiter

Robust Branch-Cut-and-Price Algorithms for Vehicle Routing Problems 7

Aa

aaxcMinimize

..tS

)(}1,0{

,)()())((

),(1}))({(

),(1}))({(

Aax

VSSkSx

Viix

Viix

a

LP – Formulierung:

Arc Formulation

Page 8: Christian Gruber  -  Johannes Reiter

Robust Branch-Cut-and-Price Algorithms for Vehicle Routing Problems 8

Aa

C

d

daa xcMinimize

0

..tS

),,1;(0

),,,1;(}1,0{

),,),(;(0

),(1

),(1

)0,(

})({ })({

)(

})({ 1

})({ 1

CdVix

CdAax

CiddVixx

Vix

Vix

di

da

ia ia

idda

da

ia

C

d

da

ia

C

d

da

LP – Formulierung:

Introducing Capacity-Indexed Variables

Page 9: Christian Gruber  -  Johannes Reiter

Robust Branch-Cut-and-Price Algorithms for Vehicle Routing Problems 9

Extended Capacity Cuts

• Für alle gilt:

• Wenn bekommt man die „capacity-balance equation over S“ :

• Definition: An Extended Capacity Cut (ECC) over S is any inequality valid for P(S), the polyhedron given by the convex hull of the 0-1 solutions of the „capacity-balance equation over S“.

Vi )()( )(

iddxdxia ia

da

da

d d

VS

)()()(

SddxdxSa

da

Sa

da

dd

Page 10: Christian Gruber  -  Johannes Reiter

Robust Branch-Cut-and-Price Algorithms for Vehicle Routing Problems 10

• Genau 3 Knoten von

• Definiert über Variablen xad,

mit

• Erstellen kompatiblen Graphen G = (V,E) ,wo falls

Fall 1: if , then

Fall 2: if , then

Fall 3: if , and then

Fall 4: if , and then

)),(,),(( 21dd kijie

)),(,),(( 21dd kijie

)),(,),(( 21dd kijie

)),(,),(( 21dd kijie

e

e),(21 jddd e),(21 jddd e

Triangle Clique Cuts

SjiAjia Cdd ,;),(

VS

),( 22

11

dd aae

Page 11: Christian Gruber  -  Johannes Reiter

Robust Branch-Cut-and-Price Algorithms for Vehicle Routing Problems 11

Triangle Clique Cuts (2)

Für jede unabhängige Menge I V gilt:1

Ia

da

d

x

Page 12: Christian Gruber  -  Johannes Reiter

Robust Branch-Cut-and-Price Algorithms for Vehicle Routing Problems 12

AGENDA

• Einleitung

• Problem Definitionen & Formulierungen

• Robust Branch-Cut-and-Price Algorithm

• Ergebnisse

• Fazit

Page 13: Christian Gruber  -  Johannes Reiter

Robust Branch-Cut-and-Price Algorithms for Vehicle Routing Problems 13

• R ist eine C x n Matrix

• jeder Eintrag repräsentiert den günstigsten Weg beginnend beim Knoten v und endet beim Depot mit dem Verbrauch d

• jeder Eintrag ist gekennzeichnet durch einen Knoten (v), die Kosten des Wegs ( ) und einem Zeiger auf einen Eintrag, der den nächsten Knoten des Wegs repräsentiert

Column Generation

})),((({min)),((})({

dvw

vwcwvddRcvdRc

)),(( vdRc

),( vdR

Erzeugung der Matrix:

Page 14: Christian Gruber  -  Johannes Reiter

Robust Branch-Cut-and-Price Algorithms for Vehicle Routing Problems 14

• Eine unabhängige Menge I V in G welchemaximiert

• Fakt 1: Der Graph G ist eine Menge von Verkettungen für jede ACVRP Instanz.

• Fakt 2: Eine Menge I ist die schwerste, unabhängige Menge für eine Menge von Verkettungen falls es die einzige, schwerste, unabhängige Menge für jede einzelne Verkettung ist.

Separation Routines

Ia

da

d

x

Page 15: Christian Gruber  -  Johannes Reiter

Robust Branch-Cut-and-Price Algorithms for Vehicle Routing Problems 15

Branching with Route Enumeration

Traditionelles branching:

• Man wählt ein Paar {i,j}, sodass der Wert

am nähersten zu 0.65 ist

• Beim linken Ast:

• Beim rechten Ast:

C

d

dij

djiji xxx

0),(),(},{ )(

0},{ jix

1},{ jix

Page 16: Christian Gruber  -  Johannes Reiter

Robust Branch-Cut-and-Price Algorithms for Vehicle Routing Problems 16

Branching with Route Enumeration (2)

• Kombination um Performance zu erhöhen

• Wenn Differenz der besten, bekannten, zulässigen Lösung und der aktuellen LP Relaxierung klein ist=> Enumeration aller relevanten, elementaren q-Routen

– Deren reduzierten Kosten nicht größer sind

– Keine Route mit den gleichen Clients, aber geringeren Kosten existiert

• Hybride Strategie soll robusten Ansatz bieten

Page 17: Christian Gruber  -  Johannes Reiter

Robust Branch-Cut-and-Price Algorithms for Vehicle Routing Problems 17

AGENDA

• Einleitung

• Problem Definitionen & Formulierungen

• Robust Branch-Cut-and-Price Algorithm

• Ergebnisse

• Fazit

Page 18: Christian Gruber  -  Johannes Reiter

Robust Branch-Cut-and-Price Algorithms for Vehicle Routing Problems 18

Ergebnisse bei ACVRP

Instance k C Fuk. LB Fuk. Time New LB New

TimePrev .

UBNew UB

a036-18f 18 150 4046.00 0.8 4046.00 0.2 4046 4046

a056-17f 17 150 4974.21 2.9 4976.69 25.2 4998 4998

a036-10f 10 250 3306.09 1.9 3313.51 29.2 3338 3338

a056-10f 10 250 3258.57 5.8 3262.08 89.3 3263 3263

a036-05f 5 500 2084.27 4.9 2088.17 67.6 2110 2110

a056-05f 5 500 2144.09 30.9 2152.87 695.9 2165 2165

a036-03f 3 1000 1635.27 22.9 1638.46 1009.4 1644 1644

a056-03f 3 1000 1725.28 256.5 1727.60 5441.1 1739 -

Page 19: Christian Gruber  -  Johannes Reiter

Robust Branch-Cut-and-Price Algorithms for Vehicle Routing Problems 19

Ergebnisse bei ACVRP (2)

• Neuer Ansatz effektiv bei kleinen Instanzen und wenigen Fahrzeugen

• Probleme mit großen Instanzen (teilweise nicht beendet)

Page 20: Christian Gruber  -  Johannes Reiter

Robust Branch-Cut-and-Price Algorithms for Vehicle Routing Problems 20

AGENDA

• Einleitung

• Problem Definitionen & Formulierungen

• Robust Branch-Cut-and-Price Algorithm

• Ergebnisse

• Fazit

Page 21: Christian Gruber  -  Johannes Reiter

Robust Branch-Cut-and-Price Algorithms for Vehicle Routing Problems 21

FAZIT

• RBCP-Ansatz für das ACVRP effizient bei verschiedenen Problemstellungen

• Tiefe des Branching-Tree kann durch die Hyprid-Strategie verringert werden.