Sie sind auf Seite 1von 221

Kapitel 3: Exakte Lösung von VRPs

Literatur

Folien zur Vorlesung1


Transportlogistik
Kapitel 3: Exakte Lösung von VRPs

Prof. Timo Gschwind, Prof. Stefan Irnich, Dr. Christian Tilk

1
Version 2.0
1 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Kapitel 3.1: (Wiederholung) Lösung LP und


MIP

Lesen Sie...

(Domschke und Drexl, 2007): Abschnitte 2.3-2.4 und 6


(Grünert und Irnich, 2005): Abschnitte 2.2 und 3.2-3.4
(Zimmermann, 2005): Abschnitt 3-3.3, 3.6 und 5.3

2 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Lernziele

Lernziele:
Simplexverfahren zur Lösung allgemeiner LPs prinzipiell verstehen
Eine Idee haben, welche Faktoren den Lösungsaufwand für lineare
Programme beeinflussen und was tendenziell gute Modelle ausmacht
Schnittebenenverfahren und Branch-&-Bound zur Lösung
allgemeiner gemischt-ganzzahliger Programme verstehen
Eine Idee haben, was gemischt-ganzzahlige Programme schwieriger
zu lösen macht als rein lineare Programme und was gute Modelle
auszeichnet

3 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Lösung allgemeiner LP
→ Simplexalgorithmus

4 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Wiederholung: Einführendes Beispiel


Unser “Standard-Beispiel” in Dimension 2:
Ein Betrieb produziert zwei Produkte, die durch die drei Fertigungsstufen
(I) Teilefertigung (TF) mit 80 Maschinenstunden Kapazität
(II) Vormontage (VM) mit 100 Maschinenstunden Kapazität
(III) Endmontage (EM) mit 75 Maschinenstunden Kapazität
laufen müssen.

5 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Wiederholung: Einführendes Beispiel


Unser “Standard-Beispiel” in Dimension 2:
Ein Betrieb produziert zwei Produkte, die durch die drei Fertigungsstufen
(I) Teilefertigung (TF) mit 80 Maschinenstunden Kapazität
(II) Vormontage (VM) mit 100 Maschinenstunden Kapazität
(III) Endmontage (EM) mit 75 Maschinenstunden Kapazität
laufen müssen.
Die drei Fertigungsstufen werden durch die Produkte (unterschiedlich)
wie folgt belastet:

Produkt 1 Produkt 2
TF: 4 MStd./Stück 2 MStd./Stück
VM: 2 MStd./Stück 3 MStd./Stück
EM: 5 MStd./Stück 1 MStd./Stück

5 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Wiederholung: Einführendes Beispiel


Unser “Standard-Beispiel” in Dimension 2:
Ein Betrieb produziert zwei Produkte, die durch die drei Fertigungsstufen
(I) Teilefertigung (TF) mit 80 Maschinenstunden Kapazität
(II) Vormontage (VM) mit 100 Maschinenstunden Kapazität
(III) Endmontage (EM) mit 75 Maschinenstunden Kapazität
laufen müssen.
Die drei Fertigungsstufen werden durch die Produkte (unterschiedlich)
wie folgt belastet:

Produkt 1 Produkt 2
TF: 4 MStd./Stück 2 MStd./Stück
VM: 2 MStd./Stück 3 MStd./Stück
EM: 5 MStd./Stück 1 MStd./Stück

Durch den Verkauf der Produkte erreicht man einen Gewinn von
12 GE/Stk. für Produkt 1 und 8 GE/Stk. für Produkt 2.
5 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Wiederholung: Einführendes Beispiel


Gesucht: Optimales Produktionsprogramm, d.h. wie viel soll von beiden
Produkten hergestellt werden (→ Entscheidungsvariablen x1 und x2 ),

6 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Wiederholung: Einführendes Beispiel


Gesucht: Optimales Produktionsprogramm, d.h. wie viel soll von beiden
Produkten hergestellt werden (→ Entscheidungsvariablen x1 und x2 ),
so dass
1 der Gesamterlös maximiert wird und
2 die vorhandenen Kapazitäten nicht überfordert werden.

6 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Wiederholung: Einführendes Beispiel


Gesucht: Optimales Produktionsprogramm, d.h. wie viel soll von beiden
Produkten hergestellt werden (→ Entscheidungsvariablen x1 und x2 ),
so dass
1 der Gesamterlös maximiert wird und
2 die vorhandenen Kapazitäten nicht überfordert werden.

Optimierungsmodell:

max 12x1 + 8x2


so dass 4x1 + 2x2 ≤ 80 (I)
2x1 + 3x2 ≤ 100 (II)
5x1 + x2 ≤ 75 (III)
x1 , x2 ≥ 0

⇒ Lineares Programm
6 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Graphische Lösung
Bestimme zulässigen Bereich in einem (x1 , x2 )-Koordinatensystem

x1

20

15

10

x2
10 20 30 40
7 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Graphische Lösung
Bestimme zulässigen Bereich in einem (x1 , x2 )-Koordinatensystem
→ Einzeichnen der Nebenbedingungen als Geraden (→ ≤ wird =)
→ (I) 4x1 + 2x2 = 80 liefert Punkte (x1 , x2 ) = (0, 40) und (20, 0)

x1

20 (I)

15

10

x2
10 20 30 40
7 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Graphische Lösung
Bestimme zulässigen Bereich in einem (x1 , x2 )-Koordinatensystem
→ Einzeichnen der Nebenbedingungen als Geraden (→ ≤ wird =)
→ (I) 4x1 + 2x2 = 80 liefert Punkte (x1 , x2 ) = (0, 40) und (20, 0)
→ (II) 2x1 + 3x2 = 100 liefert Punkte (0, 100/3) und (50, 0)

x1

(II)
20 (I)

15

10

x2
10 20 30 33, 3 40
7 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Graphische Lösung
Bestimme zulässigen Bereich in einem (x1 , x2 )-Koordinatensystem
→ Einzeichnen der Nebenbedingungen als Geraden (→ ≤ wird =)
→ (I) 4x1 + 2x2 = 80 liefert Punkte (x1 , x2 ) = (0, 40) und (20, 0)
→ (II) 2x1 + 3x2 = 100 liefert Punkte (0, 100/3) und (50, 0)
→ (III) 5x1 + x2 = 75 liefert Punkte (0, 75) und (15, 0)

x1

(II)
20 (I)

15

10 (III)

x2
10 20 30 33, 3 40
7 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Graphische Lösung
Bestimme zulässigen Bereich in einem (x1 , x2 )-Koordinatensystem
→ Einzeichnen der Nebenbedingungen als Geraden (→ ≤ wird =)
→ (I) 4x1 + 2x2 = 80 liefert Punkte (x1 , x2 ) = (0, 40) und (20, 0)
→ (II) 2x1 + 3x2 = 100 liefert Punkte (0, 100/3) und (50, 0)
→ (III) 5x1 + x2 = 75 liefert Punkte (0, 75) und (15, 0)
→ Teste (0, 0); zulässiger Bereich

x1

(II)
20 (I)

15 C
B
10 (III)

5 A

D x2
0 10 20 30 33, 3 40
7 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Graphische Lösung
Bestimme zulässigen Bereich in einem (x1 , x2 )-Koordinatensystem
→ Einzeichnen der Nebenbedingungen als Geraden (→ ≤ wird =)
→ (I) 4x1 + 2x2 = 80 liefert Punkte (x1 , x2 ) = (0, 40) und (20, 0)
→ (II) 2x1 + 3x2 = 100 liefert Punkte (0, 100/3) und (50, 0)
→ (III) 5x1 + x2 = 75 liefert Punkte (0, 75) und (15, 0)
→ Teste (0, 0); zulässiger Bereich
Bestimme optimale Lösung
→ Isogewinngeraden: z = 12x1 + 8x2 liegen auf parallelen Graden
x1

(II)
20 (I)

15 C
B
10 (III)

5 A
z = 180
z = 120 D
0 x2
10 20 30 33, 3 40
7 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Graphische Lösung
Bestimme zulässigen Bereich in einem (x1 , x2 )-Koordinatensystem
→ Einzeichnen der Nebenbedingungen als Geraden (→ ≤ wird =)
→ (I) 4x1 + 2x2 = 80 liefert Punkte (x1 , x2 ) = (0, 40) und (20, 0)
→ (II) 2x1 + 3x2 = 100 liefert Punkte (0, 100/3) und (50, 0)
→ (III) 5x1 + x2 = 75 liefert Punkte (0, 75) und (15, 0)
→ Teste (0, 0); zulässiger Bereich
Bestimme optimale Lösung
→ Isogewinngeraden: z = 12x1 + 8x2 liegen auf parallelen Graden
→ Gewinngerade mit maximalem Gewinn z = 300 geht durch Punkt A
x1

(II)
20 (I) z = 300

15 C
B
10 (III)

5 A
z = 180
z = 120 D
0 x2
10 20 30 33, 3 40
7 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Erkenntnisse aus dem Beispiel in Dimension 2


Es ist zu erkennen, dass die optimale Lösung des Problems in der Ecke A
des zulässigen Bereichs X liegt.
Die grundlegende Idee des Simplexalgorithmus ist es,
ausgehend von einer Ecke des Zulässigkeitsbereichs X ,

8 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Erkenntnisse aus dem Beispiel in Dimension 2


Es ist zu erkennen, dass die optimale Lösung des Problems in der Ecke A
des zulässigen Bereichs X liegt.
Die grundlegende Idee des Simplexalgorithmus ist es,
ausgehend von einer Ecke des Zulässigkeitsbereichs X ,
nacheinander benachbarte Ecken zu besuchen und sich dabei
bezüglich des Zielfunktionswerts immer weiter zu verbessern.

8 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Erkenntnisse aus dem Beispiel in Dimension 2


Es ist zu erkennen, dass die optimale Lösung des Problems in der Ecke A
des zulässigen Bereichs X liegt.
Die grundlegende Idee des Simplexalgorithmus ist es,
ausgehend von einer Ecke des Zulässigkeitsbereichs X ,
nacheinander benachbarte Ecken zu besuchen und sich dabei
bezüglich des Zielfunktionswerts immer weiter zu verbessern.
Findet man schließlich an einer Ecke keine benachbarte Ecke, die
einen echt besseren Zielfunktionswert ausweist, so befindet man sich
in einem Optimum und das Verfahren endet.

8 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Erkenntnisse aus dem Beispiel in Dimension 2


Es ist zu erkennen, dass die optimale Lösung des Problems in der Ecke A
des zulässigen Bereichs X liegt.
Die grundlegende Idee des Simplexalgorithmus ist es,
ausgehend von einer Ecke des Zulässigkeitsbereichs X ,
nacheinander benachbarte Ecken zu besuchen und sich dabei
bezüglich des Zielfunktionswerts immer weiter zu verbessern.
Findet man schließlich an einer Ecke keine benachbarte Ecke, die
einen echt besseren Zielfunktionswert ausweist, so befindet man sich
in einem Optimum und das Verfahren endet.

Im unserem Beispiel könnte man


in der Ecke 0 = (0, 0)> starten und
anschließend die Ecken C und B absuchen, bis man an A = (5, 30)>
als optimaler Lösung stehenbleibt.

8 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Erkenntnisse aus dem Beispiel in Dimension 2

Um das Simplexverfaren als allgemeines (rechnerisches) Lösungsverfahren


für LP in beliebig hohen Dimensionen beschreiben zu können, muss man
also insbesondere
den zulässigen Bereich X und vor allem die Ecken des zulässigen
Bereichs geometrisch und algebraisch charakterisieren und
den Schritt von einer Ecke zu einer benachbarten Ecke beschreiben.

9 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Erkenntnisse aus dem Beispiel in Dimension 2

Um das Simplexverfaren als allgemeines (rechnerisches) Lösungsverfahren


für LP in beliebig hohen Dimensionen beschreiben zu können, muss man
also insbesondere
den zulässigen Bereich X und vor allem die Ecken des zulässigen
Bereichs geometrisch und algebraisch charakterisieren und
den Schritt von einer Ecke zu einer benachbarten Ecke beschreiben.

Darauf aufbauend können wir überlegen,


welche Faktoren den Lösungsaufwand für ein LP grundsätzlich
beeinflussen und
was folglich ein gutes Modell tendenziell ausmacht.

9 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Zulässigkeitsbereich eines LPs


Der Zulässigkeitsbereich jedes LPs lässt sich algebraisch als Menge X von
Elementen des Rn definieren, welche eine endliche Zahl von linearen
Ungleichungen erfüllen:

X = {x ∈ Rn : Ax ≤ b} (1)

Dabei ist A eine (m × n)-Matrix und b ∈ Rm stellt die rechten Seiten der
linearen Ungleichungen dar.

10 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Zulässigkeitsbereich eines LPs


Der Zulässigkeitsbereich jedes LPs lässt sich algebraisch als Menge X von
Elementen des Rn definieren, welche eine endliche Zahl von linearen
Ungleichungen erfüllen:

X = {x ∈ Rn : Ax ≤ b} (1)

Dabei ist A eine (m × n)-Matrix und b ∈ Rm stellt die rechten Seiten der
linearen Ungleichungen dar.
Bemerkung: Bei dieser Form der Repräsentation eines Polyeders durch
ausschließlich ≤-Bedingungen lassen sich
die NNB x ≥ 0 als −x ≤ 0 schreiben,
analog ≥-Restriktionen durch Multiplikation mit (−1) in
≤-Restriktionen umwandeln
und =-Restriktionen a> x = b (a ∈ Rn , b ∈ R) durch die zwei
Ungleichungen a> x ≤ b und −a> x ≤ −b repräsentieren.

10 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Zulässigkeitsbereich eines LPs


Der zulässige Bereich X ist entweder
1 die leere Menge X = ∅,

11 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Zulässigkeitsbereich eines LPs


Der zulässige Bereich X ist entweder
1 die leere Menge X = ∅,
2 eine beschränkte Menge (→ Polytop),

Fall 2 :
x1

x2

11 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Zulässigkeitsbereich eines LPs


Der zulässige Bereich X ist entweder
1 die leere Menge X = ∅,
2 eine beschränkte Menge (→ Polytop),
3 unbeschränkt (→ Polyeder), aber in Richtung der Zielfunktion
beschränkt oder

Fall 2 : Fall 3 :
x1 x1

x2 x2

11 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Zulässigkeitsbereich eines LPs


Der zulässige Bereich X ist entweder
1 die leere Menge X = ∅,
2 eine beschränkte Menge (→ Polytop),
3 unbeschränkt (→ Polyeder), aber in Richtung der Zielfunktion
beschränkt oder
4 in Richtung der Zielfunktion unbeschränkt.
Fall 2 : Fall 3 : Fall 4 :
x1 x1 x1

x2 x2 x2

11 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Zulässigkeitsbereich eines LPs


Der zulässige Bereich X ist entweder
1 die leere Menge X = ∅,
2 eine beschränkte Menge (→ Polytop),
3 unbeschränkt (→ Polyeder), aber in Richtung der Zielfunktion
beschränkt oder
4 in Richtung der Zielfunktion unbeschränkt.
Fall 2 : Fall 3 : Fall 4 :
x1 x1 x1

x2 x2 x2

Merke:
Der zulässige Bereich X eines LPs ist entweder leer oder ein
konvexes Polyeder.
11 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Konvexes Polyeder
konvexes Polytop: konvexer Kegel: konvexes Polyeder:

12 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Konvexes Polyeder
konvexes Polytop: konvexer Kegel: konvexes Polyeder:

Definition (konvexes) Polyeder


Sind P ⊂ Rn ein konvexes Polytop und C ⊂ Rn ein konvexer Kegel, so
heißt die Menge

P + C = {x P + x C : x P ∈ P und x C ∈ C }

ein konvexes Polyeder.

12 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Konvexes Polyeder
konvexes Polytop: konvexer Kegel: konvexes Polyeder:

Definition (konvexes) Polyeder


Sind P ⊂ Rn ein konvexes Polytop und C ⊂ Rn ein konvexer Kegel, so
heißt die Menge

P + C = {x P + x C : x P ∈ P und x C ∈ C }

ein konvexes Polyeder.

Bemerkung: Der konvexe Kegel C kann auch aus dem Nullvektor bestehen, d.h.
C = {0}, so dass damit auch jedes konvexe Polytop ein konvexes Polyeder ist.
12 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Existenz einer Ecke


Bemerkung: Nicht jedes konvexe Polyeder besitzt eine Ecke
Es lässt sich zeigen, dass ein Polyeder X = {x ∈ Rn : Ax ≤ b}
genau dann mindestens eine Ecke besitzt, wenn für den Rang der
Matrix A gilt: Rg(A) = n.
Dies ist immer dann der Fall, wenn alle Variablen nicht-negativ sind.

13 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Existenz einer Ecke


Bemerkung: Nicht jedes konvexe Polyeder besitzt eine Ecke
Es lässt sich zeigen, dass ein Polyeder X = {x ∈ Rn : Ax ≤ b}
genau dann mindestens eine Ecke besitzt, wenn für den Rang der
Matrix A gilt: Rg(A) = n.
Dies ist immer dann der Fall, wenn alle Variablen nicht-negativ sind.

Es gilt die folgende zentrale Aussage:


Merke:
Besitzt ein LP mit Zulässigkeitsbereich X = {x : Ax ≤ b} und
Rg(A) = n mindestens eine optimale Lösung, so existiert auch
eine Ecke x des zulässigen Bereichs X , welche eine optimale
Lösung ist.
Die Menge aller optimalen Lösungen eines LPs ist selbst wieder
ein konvexes Polyeder.

13 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Existenz einer Ecke


Bemerkung: Nicht jedes konvexe Polyeder besitzt eine Ecke
Es lässt sich zeigen, dass ein Polyeder X = {x ∈ Rn : Ax ≤ b}
genau dann mindestens eine Ecke besitzt, wenn für den Rang der
Matrix A gilt: Rg(A) = n.
Dies ist immer dann der Fall, wenn alle Variablen nicht-negativ sind.

Es gilt die folgende zentrale Aussage:


Merke:
Besitzt ein LP mit Zulässigkeitsbereich X = {x : Ax ≤ b} und
Rg(A) = n mindestens eine optimale Lösung, so existiert auch
eine Ecke x des zulässigen Bereichs X , welche eine optimale
Lösung ist.
Die Menge aller optimalen Lösungen eines LPs ist selbst wieder
ein konvexes Polyeder.

Damit können wir uns bei der Suche nach optimalen Lösungen eines LP
auf die Ecken konzentrieren.
13 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Standardform

Um die Ecken selbst als einfache algebraische Objekte beschreiben zu


können, arbeiten wir mit Gleichungen statt Ungleichungen als
Restriktionen (→ graphische Lösung).

14 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Standardform

Um die Ecken selbst als einfache algebraische Objekte beschreiben zu


können, arbeiten wir mit Gleichungen statt Ungleichungen als
Restriktionen (→ graphische Lösung).

Definition (Lineares Programm in Standardform)


Die Standardform eines LPs ist

z = max c > x
so dass Ax = b
x ≥ 0.

14 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Standardform

Um die Ecken selbst als einfache algebraische Objekte beschreiben zu


können, arbeiten wir mit Gleichungen statt Ungleichungen als
Restriktionen (→ graphische Lösung).

Definition (Lineares Programm in Standardform)


Die Standardform eines LPs ist

z = max c > x
so dass Ax = b
x ≥ 0.

Die Gleichheitsrestriktionen Ax = b stellen keine Einschränkung des


allgemeinen Falls dar, denn ≤-Restriktionen lassen sich durch Einführen
von Schlupfvariablen in äquivalente =-Restriktionen überführen!

14 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Standardform
Beispiel: Äquivalent sind
z = max 12x1 + 8x2 z = max 12x1 + 8x2 + 0x3 + 0x4 + 0x5
s.d. 4x1 + 2x2 ≤ 80 s.d. 4x1 + 2x2 + x3 = 80
2x1 + 3x2 ≤ 100 2x1 + 3x2 + x4 = 100
5x1 + x2 ≤ 75 5x1 + x2 + x5 = 75
x1 , x2 ≥ 0 x1 , x2 , x3 , x4 , x5 ≥ 0

15 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Standardform
Beispiel: Äquivalent sind
z = max 12x1 + 8x2 z = max 12x1 + 8x2 + 0x3 + 0x4 + 0x5
s.d. 4x1 + 2x2 ≤ 80 s.d. 4x1 + 2x2 + x3 = 80
2x1 + 3x2 ≤ 100 2x1 + 3x2 + x4 = 100
5x1 + x2 ≤ 75 5x1 + x2 + x5 = 75
x1 , x2 ≥ 0 x1 , x2 , x3 , x4 , x5 ≥ 0
Allgemein:
z = max c > x z = max c > x + 0> xs
s.d. Ax ≤ b s.d. Ax + Im xs = b
x ≥0 x , xs ≥ 0
wobei Im die (m × m)-Einheitsmatrix ist.

15 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Standardform
Beispiel: Äquivalent sind
z = max 12x1 + 8x2 z = max 12x1 + 8x2 + 0x3 + 0x4 + 0x5
s.d. 4x1 + 2x2 ≤ 80 s.d. 4x1 + 2x2 + x3 = 80
2x1 + 3x2 ≤ 100 2x1 + 3x2 + x4 = 100
5x1 + x2 ≤ 75 5x1 + x2 + x5 = 75
x1 , x2 ≥ 0 x1 , x2 , x3 , x4 , x5 ≥ 0
Allgemein:
z = max c > x z = max c > x + 0> xs
s.d. Ax ≤ b s.d. Ax + Im xs = b
x ≥0 x , xs ≥ 0
wobei Im die (m × m)-Einheitsmatrix ist.
Strukturvariablen Ursprüngliche Problemvariablen x ∈ Rp
Schlupfvariablen Ausgleichsvariablen xs ∈ Rm zur Überführung von ‘≤’ in ‘=’
mit Zielfunktionskoeffizient 0
Interpretation: Ungenutzte Kapazität
Insgesamt n (= p +m) Variablen, m Restriktionen
→ Gleichungssystem unterbestimmt, Freiheitsgrad: n − m
15 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Standardform

Was ist bis hierher erreicht? Wo wollen wir hin?


Mit Gleichungen Ax = b lässt sich einfacher arbeiten als mit einem
System von Ungleichungen und Gleichungen
Ein Teil der Entscheidungsvariablen in x lässt sich immer eindeutig
durch die übrigen Entscheidungsvariablen ausdrücken
Das Verständnis des Systems Ax = b, x ≥ 0 ermöglicht
→ die algebraische Beschreibung einer Ecke des zulässigen
Bereichs X als sog. Basislösung, d.h. grob gesagt, einer Lösung
mit hinreichend vielen Komponenten mit Wert null
→ die formale Beschreibung des Wechsels von einer Ecke zu einer
benachbarten Ecke und
→ zusammen mit der Zielfunktion max c > x die Analyse der
Auswirkungen des Wechsels auf den Zielfunktionswert und die
Herleitung von Optimalitätsbedingungen

16 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Basis
Es seien die Spalten der Koeffizientenmatrix
 A ∈ Rm×n mit a1 , a2 , . . . , an
1 2 n
bezeichnet, also A = a , a , . . . , a .
Die Indexmenge der Spalten sei J = {1, 2, . . . , n}.

17 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Basis
Es seien die Spalten der Koeffizientenmatrix
 A ∈ Rm×n mit a1 , a2 , . . . , an
1 2 n
bezeichnet, also A = a , a , . . . , a .
Die Indexmenge der Spalten sei J = {1, 2, . . . , n}.

Definition (Basis)
Eine Teil-Matrix B aus m linear unabhängigen Spalten
aB(1) , aB(2) , . . . , aB(m) der Matrix A heißt eine Basis von A. Mit
JB = {B(1), B(2), . . . , B(m)} wird die Menge der Indizes der zugehörigen
Spalten bezeichnet.

17 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Basis
Es seien die Spalten der Koeffizientenmatrix
 A ∈ Rm×n mit a1 , a2 , . . . , an
1 2 n
bezeichnet, also A = a , a , . . . , a .
Die Indexmenge der Spalten sei J = {1, 2, . . . , n}.

Definition (Basis)
Eine Teil-Matrix B aus m linear unabhängigen Spalten
aB(1) , aB(2) , . . . , aB(m) der Matrix A heißt eine Basis von A. Mit
JB = {B(1), B(2), . . . , B(m)} wird die Menge der Indizes der zugehörigen
Spalten bezeichnet.
Anschaulich:
 
| | | |
A =  ··· aB(1) ··· aB(2) ··· ··· aB(j) ··· ··· aB(m) ··· 
| | | |
und  
| | | |
B =  aB(1) aB(2) aB(3) ··· aB(m)  .
| | | |
17 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Basisvariablen und Nicht-Basisvariablen


Definition (Basisvariablen und Nicht-Basisvariablen)
Für eine gegebene Basis B heißen die Entscheidungsvariablen
1 xB(i) für i = 1, . . . , m die Basisvariablen,
2 xj mit j ∈ JN := J \ JB heißen Nicht-Basisvariablen
(alle übrigen Variablen).

18 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Basisvariablen und Nicht-Basisvariablen


Definition (Basisvariablen und Nicht-Basisvariablen)
Für eine gegebene Basis B heißen die Entscheidungsvariablen
1 xB(i) für i = 1, . . . , m die Basisvariablen,
2 xj mit j ∈ JN := J \ JB heißen Nicht-Basisvariablen
(alle übrigen Variablen).

Durch Umordnen von Spalten lässt sich die Koeffizientenmatrix A als


A = (B|N) schreiben. Dabei stehen die Spalten zu Basisvariablen vorn in
der Matrix B und Spalten zu Nicht-Basisvariablen hinten in der Matrix N.

18 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Basisvariablen und Nicht-Basisvariablen


Definition (Basisvariablen und Nicht-Basisvariablen)
Für eine gegebene Basis B heißen die Entscheidungsvariablen
1 xB(i) für i = 1, . . . , m die Basisvariablen,
2 xj mit j ∈ JN := J \ JB heißen Nicht-Basisvariablen
(alle übrigen Variablen).

Durch Umordnen von Spalten lässt sich die Koeffizientenmatrix A als


A = (B|N) schreiben. Dabei stehen die Spalten zu Basisvariablen vorn in
der Matrix B und Spalten zu Nicht-Basisvariablen hinten in der Matrix N.
Zerlegt man auch x ∈ Rn entsprechend in xB und xN , so erhält man:
 
xB
Ax = (B|N) =b
xN
=⇒ BxB + NxN = b
=⇒ xB + B −1 NxN = B −1 b
=⇒ xB = B −1 b − B −1 NxN
18 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Basisvariablen und Nicht-Basisvariablen


Definition (Basisvariablen und Nicht-Basisvariablen)
Für eine gegebene Basis B heißen die Entscheidungsvariablen
1 xB(i) für i = 1, . . . , m die Basisvariablen,
2 xj mit j ∈ JN := J \ JB heißen Nicht-Basisvariablen
(alle übrigen Variablen).

Durch Umordnen von Spalten lässt sich die Koeffizientenmatrix A als


A = (B|N) schreiben. Dabei stehen die Spalten zu Basisvariablen vorn in
der Matrix B und Spalten zu Nicht-Basisvariablen hinten in der Matrix N.
Zerlegt man auch x ∈ Rn entsprechend in xB und xN , so erhält man:
 
xB Beachte: Invertieren ist nur
Ax = (B|N) =b
xN möglich (d.h. B −1
=⇒ BxB + NxN = b existiert), weil die Spalten
von B linear unabhängig
=⇒ xB + B −1 NxN = B −1 b
sind!
=⇒ xB = B −1 b − B −1 NxN
18 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Basislösung
Aus xB = B −1 b − B −1 NxN erhält man für xN = 0 sofort xB = B −1 b.

19 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Basislösung
Aus xB = B −1 b − B −1 NxN erhält man für xN = 0 sofort xB = B −1 b.
Definition (Basislösung)
Ein x > = (xB> , xN> ) ∈ Rn heißt eine Basislösung zur Basis B, falls
Ax = b,
xB = B −1 b und
xN = 0 gilt, d.h. alle Nicht-Basisvariablen identisch null sind.

19 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Basislösung
Aus xB = B −1 b − B −1 NxN erhält man für xN = 0 sofort xB = B −1 b.
Definition (Basislösung)
Ein x > = (xB> , xN> ) ∈ Rn heißt eine Basislösung zur Basis B, falls
Ax = b,
xB = B −1 b und
xN = 0 gilt, d.h. alle Nicht-Basisvariablen identisch null sind.

Beispiel: Finde alle Basislösungen des Systems x1 + x2 = 3 und −x2 + x3 = −1.


Hier ist    
1 1 0 3
A= und b= .
0 −1 1 −1
Wegen m = 2 besteht jede Basis(lösung) aus zwei Spalten/Variablen und es
gibt nur eine (n − m = 3 − 2 = 1) Nicht-Basisvariablen. siehe Tafel!

19 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Basislösung
Aus xB = B −1 b − B −1 NxN erhält man für xN = 0 sofort xB = B −1 b.
Definition (Basislösung)
Ein x > = (xB> , xN> ) ∈ Rn heißt eine Basislösung zur Basis B, falls
Ax = b,
xB = B −1 b und
xN = 0 gilt, d.h. alle Nicht-Basisvariablen identisch null sind.

Beispiel: Finde alle Basislösungen des Systems x1 + x2 = 3 und −x2 + x3 = −1.


Hier ist    
1 1 0 3
A= und b= .
0 −1 1 −1
Wegen m = 2 besteht jede Basis(lösung) aus zwei Spalten/Variablen und es
gibt nur eine (n − m = 3 − 2 = 1) Nicht-Basisvariablen. siehe Tafel!
xN = (x1 ) = (0): ⇒
xN = (x2 ) = (0): ⇒
xN = (x3 ) = (0): ⇒
19 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Basislösung
Aus xB = B −1 b − B −1 NxN erhält man für xN = 0 sofort xB = B −1 b.
Definition (Basislösung)
Ein x > = (xB> , xN> ) ∈ Rn heißt eine Basislösung zur Basis B, falls
Ax = b,
xB = B −1 b und
xN = 0 gilt, d.h. alle Nicht-Basisvariablen identisch null sind.

Beispiel: Finde alle Basislösungen des Systems x1 + x2 = 3 und −x2 + x3 = −1.


Hier ist    
1 1 0 3
A= und b= .
0 −1 1 −1
Wegen m = 2 besteht jede Basis(lösung) aus zwei Spalten/Variablen und es
gibt nur eine (n − m = 3 − 2 = 1) Nicht-Basisvariablen. siehe Tafel!
xN = (x1 ) = (0): ⇒ x2 = 3 ⇒ −3 + x3 = −1 ⇒ x = (0, 3, 2)>
xN = (x2 ) = (0): ⇒
xN = (x3 ) = (0): ⇒
19 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Basislösung
Aus xB = B −1 b − B −1 NxN erhält man für xN = 0 sofort xB = B −1 b.
Definition (Basislösung)
Ein x > = (xB> , xN> ) ∈ Rn heißt eine Basislösung zur Basis B, falls
Ax = b,
xB = B −1 b und
xN = 0 gilt, d.h. alle Nicht-Basisvariablen identisch null sind.

Beispiel: Finde alle Basislösungen des Systems x1 + x2 = 3 und −x2 + x3 = −1.


Hier ist    
1 1 0 3
A= und b= .
0 −1 1 −1
Wegen m = 2 besteht jede Basis(lösung) aus zwei Spalten/Variablen und es
gibt nur eine (n − m = 3 − 2 = 1) Nicht-Basisvariablen. siehe Tafel!
xN = (x1 ) = (0): ⇒ x2 = 3 ⇒ −3 + x3 = −1 ⇒ x = (0, 3, 2)>
xN = (x2 ) = (0): ⇒ x1 = 3 und x3 = −1 ⇒ x = (3, 0, −1)>
xN = (x3 ) = (0): ⇒
19 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Basislösung
Aus xB = B −1 b − B −1 NxN erhält man für xN = 0 sofort xB = B −1 b.
Definition (Basislösung)
Ein x > = (xB> , xN> ) ∈ Rn heißt eine Basislösung zur Basis B, falls
Ax = b,
xB = B −1 b und
xN = 0 gilt, d.h. alle Nicht-Basisvariablen identisch null sind.

Beispiel: Finde alle Basislösungen des Systems x1 + x2 = 3 und −x2 + x3 = −1.


Hier ist    
1 1 0 3
A= und b= .
0 −1 1 −1
Wegen m = 2 besteht jede Basis(lösung) aus zwei Spalten/Variablen und es
gibt nur eine (n − m = 3 − 2 = 1) Nicht-Basisvariablen. siehe Tafel!
xN = (x1 ) = (0): ⇒ x2 = 3 ⇒ −3 + x3 = −1 ⇒ x = (0, 3, 2)>
xN = (x2 ) = (0): ⇒ x1 = 3 und x3 = −1 ⇒ x = (3, 0, −1)>
xN = (x3 ) = (0): ⇒ x2 = 1 ⇒ x1 + 1 = 3 ⇒ x = (2, 1, 0)>
19 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Zulässige Basislösung
Es fehlen nur noch die NNB x ≥ 0!

20 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Zulässige Basislösung
Es fehlen nur noch die NNB x ≥ 0!

Definition (zulässige Basislösung)


Erfüllen alle Komponenten einer Basislösung x zusätzlich die Nicht-
Negativitätsbedingungen x ≥ 0, so spricht man von einer zulässigen Ba-
sislösung (wegen xN = 0, reicht es xB = B −1 b ≥ 0 zu fordern).

20 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Zulässige Basislösung
Es fehlen nur noch die NNB x ≥ 0!

Definition (zulässige Basislösung)


Erfüllen alle Komponenten einer Basislösung x zusätzlich die Nicht-
Negativitätsbedingungen x ≥ 0, so spricht man von einer zulässigen Ba-
sislösung (wegen xN = 0, reicht es xB = B −1 b ≥ 0 zu fordern).

Merke:
Es sei X ein nicht-leeres Polyeder, welches durch den zulässigen
Bereich X = {x : Ax = b, x ≥ 0} definiert ist und x ein Element
von X . Dann ist x genau dann eine Ecke von X , wenn x eine
zulässige Basislösung ist.

20 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Zulässige Basislösung
Es fehlen nur noch die NNB x ≥ 0!

Definition (zulässige Basislösung)


Erfüllen alle Komponenten einer Basislösung x zusätzlich die Nicht-
Negativitätsbedingungen x ≥ 0, so spricht man von einer zulässigen Ba-
sislösung (wegen xN = 0, reicht es xB = B −1 b ≥ 0 zu fordern).

Merke:
Es sei X ein nicht-leeres Polyeder, welches durch den zulässigen
Bereich X = {x : Ax = b, x ≥ 0} definiert ist und x ein Element
von X . Dann ist x genau dann eine Ecke von X , wenn x eine
zulässige Basislösung ist.

Merke:
Besitzt ein LP mindestens eine optimale Lösung, so existiert auch
eine zulässige Basislösung x , welche eine optimale Lösung ist.
20 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Zulässige Basislösung
Einführendes Beispiel:

x1
z = max 12x1 + 8x2
s.d. 4x1 + 2x2 + x3 = 80 (II)
20 (I)
2x1 + 3x2 + x4 = 100
15 C
B
5x1 + x2 + x5 = 75 10 (III)

x1 , x2 , x3 , x4 , x5 ≥ 0 5 A

D x2
0 10 20 30 33, 3 40

4 2 1 0 0
!
A= 2 3 0 1 0
5 1 0 0 1
Betrachte 0-Punkt: siehe Tafel!

>
Nicht-Basisvariablen xN = (x1 , x2 ) x1 = x2 = 0

21 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Zulässige Basislösung
Einführendes Beispiel:

x1
z = max 12x1 + 8x2
s.d. 4x1 + 2x2 + x3 = 80 (II)
20 (I)
2x1 + 3x2 + x4 = 100
15 C
B
5x1 + x2 + x5 = 75 10 (III)

x1 , x2 , x3 , x4 , x5 ≥ 0 5 A

D x2
0 10 20 30 33, 3 40

4 2 1 0 0
!
A= 2 3 0 1 0
5 1 0 0 1
Betrachte 0-Punkt: siehe Tafel!

>
Nicht-Basisvariablen xN = (x1 , x2 ) x1 = x2 = 0

>
Basisvariablen xB = (x3 , x4 , x5 ) x3 = 80, x4 = 100, x5 = 75 ≥ 0

21 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Zulässige Basislösung
Einführendes Beispiel:

x1
z = max 12x1 + 8x2
s.d. 4x1 + 2x2 + x3 = 80 (II)
20 (I)
2x1 + 3x2 + x4 = 100
15 C
B
5x1 + x2 + x5 = 75 10 (III)

x1 , x2 , x3 , x4 , x5 ≥ 0 5 A

D x2
0 10 20 30 33, 3 40

4 2 1 0 0
!
A= 2 3 0 1 0
5 1 0 0 1
Betrachte 0-Punkt: siehe Tafel!

>
Nicht-Basisvariablen xN = (x1 , x2 ) x1 = x2 = 0

>
Basisvariablen xB = (x3 , x4 , x5 ) x3 = 80, x4 = 100, x5 = 75 ≥ 0

>
Basislösung x = (0, 0, 80, 100, 75) xB ≥ 0, also zulässige Basislösung!

21 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Zulässige Basislösung
Einführendes Beispiel:

x1
z = max 12x1 + 8x2
s.d. 4x1 + 2x2 + x3 = 80 (II)
20 (I)
2x1 + 3x2 + x4 = 100
15 C
B
5x1 + x2 + x5 = 75 10 (III)

x1 , x2 , x3 , x4 , x5 ≥ 0 5 A

D x2
0 10 20 30 33, 3 40

4 2 1 0 0
!
A= 2 3 0 1 0
5 1 0 0 1
Betrachte Punkt C: siehe Tafel!

>
Nicht-Basisvariablen xN = (x2 , x5 ) x2 = x5 = 0

22 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Zulässige Basislösung
Einführendes Beispiel:

x1
z = max 12x1 + 8x2
s.d. 4x1 + 2x2 + x3 = 80 (II)
20 (I)
2x1 + 3x2 + x4 = 100
15 C
B
5x1 + x2 + x5 = 75 10 (III)

x1 , x2 , x3 , x4 , x5 ≥ 0 5 A

D x2
0 10 20 30 33, 3 40

4 2 1 0 0
!
A= 2 3 0 1 0
5 1 0 0 1
Betrachte Punkt C: siehe Tafel!

>
Nicht-Basisvariablen xN = (x2 , x5 ) x2 = x5 = 0

>
Basisvariablen xB = (x1 , x3 , x4 ) (III): 5x1 + 0 + 0 = 75 ⇒ x1 = 15 ≥ 0.

22 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Zulässige Basislösung
Einführendes Beispiel:

x1
z = max 12x1 + 8x2
s.d. 4x1 + 2x2 + x3 = 80 (II)
20 (I)
2x1 + 3x2 + x4 = 100
15 C
B
5x1 + x2 + x5 = 75 10 (III)

x1 , x2 , x3 , x4 , x5 ≥ 0 5 A

D x2
0 10 20 30 33, 3 40

4 2 1 0 0
!
A= 2 3 0 1 0
5 1 0 0 1
Betrachte Punkt C: siehe Tafel!

>
Nicht-Basisvariablen xN = (x2 , x5 ) x2 = x5 = 0

>
Basisvariablen xB = (x1 , x3 , x4 ) (III): 5x1 + 0 + 0 = 75 ⇒ x1 = 15 ≥ 0.

>
Basislösung x = (15, 0, 20, 70, 0) (I): x3 = 20 ≥ 0, (II): x4 = 70 ≥ 0 zulässig

22 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Zulässige Basislösung
Einführendes Beispiel:

x1
z = max 12x1 + 8x2
s.d. 4x1 + 2x2 + x3 = 80 (II)
20 (I)
2x1 + 3x2 + x4 = 100
15 C
B
5x1 + x2 + x5 = 75 10 (III)

x1 , x2 , x3 , x4 , x5 ≥ 0 5 A

D x2
0 10 20 30 33, 3 40

4 2 1 0 0
!
A= 2 3 0 1 0
5 1 0 0 1
Betrachte Punkt A: siehe Tafel!

>
Nicht-Basisvariablen xN = (x3 , x4 ) x3 = x4 = 0

23 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Zulässige Basislösung
Einführendes Beispiel:

x1
z = max 12x1 + 8x2
s.d. 4x1 + 2x2 + x3 = 80 (II)
20 (I)
2x1 + 3x2 + x4 = 100
15 C
B
5x1 + x2 + x5 = 75 10 (III)

x1 , x2 , x3 , x4 , x5 ≥ 0 5 A

D x2
0 10 20 30 33, 3 40

4 2 1 0 0
!
A= 2 3 0 1 0
5 1 0 0 1
Betrachte Punkt A: siehe Tafel!

>
Nicht-Basisvariablen xN = (x3 , x4 ) x3 = x4 = 0

>
Basisvariablen xB = (x1 , x2 , x5 ) 2·(II)-(I): 4x2 = 120 ⇒ x2 = 30 ⇒ x1 = 5.

23 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Zulässige Basislösung
Einführendes Beispiel:

x1
z = max 12x1 + 8x2
s.d. 4x1 + 2x2 + x3 = 80 (II)
20 (I)
2x1 + 3x2 + x4 = 100
15 C
B
5x1 + x2 + x5 = 75 10 (III)

x1 , x2 , x3 , x4 , x5 ≥ 0 5 A

D x2
0 10 20 30 33, 3 40

4 2 1 0 0
!
A= 2 3 0 1 0
5 1 0 0 1
Betrachte Punkt A: siehe Tafel!

>
Nicht-Basisvariablen xN = (x3 , x4 ) x3 = x4 = 0

>
Basisvariablen xB = (x1 , x2 , x5 ) 2·(II)-(I): 4x2 = 120 ⇒ x2 = 30 ⇒ x1 = 5.

>
Basislösung x = (5, 30, 0, 0, 20) (III): 5 · 5 + 30 + x5 = 75 ⇒ x5 = 20 ≥ 0 zulässig

23 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Nicht zulässige Basislösung


Einführendes Beispiel:

x1
z = max 12x1 + 8x2
s.d. 4x1 + 2x2 + x3 = 80 (II)
20 (I)
2x1 + 3x2 + x4 = 100
15 C
B
5x1 + x2 + x5 = 75 10 E
(III)

x1 , x2 , x3 , x4 , x5 ≥ 0 5 A

D x2
0 10 20 30 33, 3 40

4 2 1 0 0
!
A= 2 3 0 1 0
5 1 0 0 1
Betrachte Punkt E: siehe Tafel!

Nicht-Basisvariablen xN = (x4 , x5 )> x4 = x5 = 0

24 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Nicht zulässige Basislösung


Einführendes Beispiel:

x1
z = max 12x1 + 8x2
s.d. 4x1 + 2x2 + x3 = 80 (II)
20 (I)
2x1 + 3x2 + x4 = 100
15 C
B
5x1 + x2 + x5 = 75 10 E
(III)

x1 , x2 , x3 , x4 , x5 ≥ 0 5 A

D x2
0 10 20 30 33, 3 40

4 2 1 0 0
!
A= 2 3 0 1 0
5 1 0 0 1
Betrachte Punkt E: siehe Tafel!

Nicht-Basisvariablen xN = (x4 , x5 )> x4 = x5 = 0

Basisvariablen xB = (x1 , x2 , x3 )> 3·(III)-(II): 13x1 = 125 ⇒ x1 = 9,61.. ⇒ x2 = 26,92...

24 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Nicht zulässige Basislösung


Einführendes Beispiel:

x1
z = max 12x1 + 8x2
s.d. 4x1 + 2x2 + x3 = 80 (II)
20 (I)
2x1 + 3x2 + x4 = 100
15 C
B
5x1 + x2 + x5 = 75 10 E
(III)

x1 , x2 , x3 , x4 , x5 ≥ 0 5 A

D x2
0 10 20 30 33, 3 40

4 2 1 0 0
!
A= 2 3 0 1 0
5 1 0 0 1
Betrachte Punkt E: siehe Tafel!

Nicht-Basisvariablen xN = (x4 , x5 )> x4 = x5 = 0

Basisvariablen xB = (x1 , x2 , x3 )> 3·(III)-(II): 13x1 = 125 ⇒ x1 = 9,61.. ⇒ x2 = 26,92...

Basislösung x = (9,61.., 26,92.., −12,306.., 0, 0)> (I): ⇒ x3 = −12,30.. 6≥ 0


nicht zulässig

24 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Benachbarte Basislösungen

Definition benachbarte Basislösung


Zwei Basen xB und xB 0 heißen benachbart, falls sie sich in genau einer
Komponenten unterscheiden.
Zwei Basislösungen x und x 0 sind benachbart, falls ihre Basen xB und xB 0
benachbart sind.

Die Basis xB 0 entstehen also aus xB , indem eine Variable xj entfernt und
durch eine Variable xk ersetzt wird. Es gilt xB 0 = (xB \ {xj }) ∪ {xk }.

25 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Benachbarte Basislösungen

Definition benachbarte Basislösung


Zwei Basen xB und xB 0 heißen benachbart, falls sie sich in genau einer
Komponenten unterscheiden.
Zwei Basislösungen x und x 0 sind benachbart, falls ihre Basen xB und xB 0
benachbart sind.

Die Basis xB 0 entstehen also aus xB , indem eine Variable xj entfernt und
durch eine Variable xk ersetzt wird. Es gilt xB 0 = (xB \ {xj }) ∪ {xk }.
Beispiel: siehe Tafel!

25 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Benachbarte Basislösungen

Definition benachbarte Basislösung


Zwei Basen xB und xB 0 heißen benachbart, falls sie sich in genau einer
Komponenten unterscheiden.
Zwei Basislösungen x und x 0 sind benachbart, falls ihre Basen xB und xB 0
benachbart sind.

Die Basis xB 0 entstehen also aus xB , indem eine Variable xj entfernt und
durch eine Variable xk ersetzt wird. Es gilt xB 0 = (xB \ {xj }) ∪ {xk }.
Beispiel: siehe Tafel!
Punkt A mit Basis (a1 , a2 , a5 ) ist benachbart zu Punkt B mit Basis (a1 , a2 , a4 )

25 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Benachbarte Basislösungen

Definition benachbarte Basislösung


Zwei Basen xB und xB 0 heißen benachbart, falls sie sich in genau einer
Komponenten unterscheiden.
Zwei Basislösungen x und x 0 sind benachbart, falls ihre Basen xB und xB 0
benachbart sind.

Die Basis xB 0 entstehen also aus xB , indem eine Variable xj entfernt und
durch eine Variable xk ersetzt wird. Es gilt xB 0 = (xB \ {xj }) ∪ {xk }.
Beispiel: siehe Tafel!
Punkt A mit Basis (a1 , a2 , a5 ) ist benachbart zu Punkt B mit Basis (a1 , a2 , a4 )
Punkt B mit Basis (a1 , a2 , a4 ) ist benachbart zu Punkt C mit Basis (a1 , a3 , a4 )

25 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Benachbarte Basislösungen

Definition benachbarte Basislösung


Zwei Basen xB und xB 0 heißen benachbart, falls sie sich in genau einer
Komponenten unterscheiden.
Zwei Basislösungen x und x 0 sind benachbart, falls ihre Basen xB und xB 0
benachbart sind.

Die Basis xB 0 entstehen also aus xB , indem eine Variable xj entfernt und
durch eine Variable xk ersetzt wird. Es gilt xB 0 = (xB \ {xj }) ∪ {xk }.
Beispiel: siehe Tafel!
Punkt A mit Basis (a1 , a2 , a5 ) ist benachbart zu Punkt B mit Basis (a1 , a2 , a4 )
Punkt B mit Basis (a1 , a2 , a4 ) ist benachbart zu Punkt C mit Basis (a1 , a3 , a4 )

Punkt A mit Basis (a1 , a2 , a5 ) ist nicht benachbart zu Punkt C mit Basis (a1 , a3 , a4 )

25 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Benachbarte Basislösungen

Definition benachbarte Basislösung


Zwei Basen xB und xB 0 heißen benachbart, falls sie sich in genau einer
Komponenten unterscheiden.
Zwei Basislösungen x und x 0 sind benachbart, falls ihre Basen xB und xB 0
benachbart sind.

Die Basis xB 0 entstehen also aus xB , indem eine Variable xj entfernt und
durch eine Variable xk ersetzt wird. Es gilt xB 0 = (xB \ {xj }) ∪ {xk }.
Beispiel: siehe Tafel!
Punkt A mit Basis (a1 , a2 , a5 ) ist benachbart zu Punkt B mit Basis (a1 , a2 , a4 )
Punkt B mit Basis (a1 , a2 , a4 ) ist benachbart zu Punkt C mit Basis (a1 , a3 , a4 )

Punkt A mit Basis (a1 , a2 , a5 ) ist nicht benachbart zu Punkt C mit Basis (a1 , a3 , a4 )

benachbarte Basislösungen ←→ algebraisch definiert


Beachte:
benachbarte Ecke ←→ geometrisch definiert

25 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Benachbarte Basislösungen

Definition benachbarte Basislösung


Zwei Basen xB und xB 0 heißen benachbart, falls sie sich in genau einer
Komponenten unterscheiden.
Zwei Basislösungen x und x 0 sind benachbart, falls ihre Basen xB und xB 0
benachbart sind.

Die Basis xB 0 entstehen also aus xB , indem eine Variable xj entfernt und
durch eine Variable xk ersetzt wird. Es gilt xB 0 = (xB \ {xj }) ∪ {xk }.
Beispiel: siehe Tafel!
Punkt A mit Basis (a1 , a2 , a5 ) ist benachbart zu Punkt B mit Basis (a1 , a2 , a4 )
Punkt B mit Basis (a1 , a2 , a4 ) ist benachbart zu Punkt C mit Basis (a1 , a3 , a4 )

Punkt A mit Basis (a1 , a2 , a5 ) ist nicht benachbart zu Punkt C mit Basis (a1 , a3 , a4 )

benachbarte Basislösungen ←→ algebraisch definiert


Beachte:
benachbarte Ecke ←→ geometrisch definiert
Vorsicht: Nicht immer genau dasselbe (→ Degeneration!)

25 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Kriteriumselement und Optimalitätsbedingungen


Was ist die Auswirkung eines Basiswechsels auf die Zielfunktion?

26 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Kriteriumselement und Optimalitätsbedingungen


Was ist die Auswirkung eines Basiswechsels auf die Zielfunktion?

Beispiel: 0-Punkt
xB = (x3 , x4 , x5 )> , xN = (x1 , x2 )>

x3 = 80 − 4x1 − 2x2
x4 = 100 − 2x1 − 3x2
x5 = 75 − 5x1 − x2

26 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Kriteriumselement und Optimalitätsbedingungen


Was ist die Auswirkung eines Basiswechsels auf die Zielfunktion?

Beispiel: 0-Punkt Allgemein:  


xN
xB = (x3 , x4 , x5 )> , xN = (x1 , x2 )> Ax = (N|B) =b
xB
x3 = 80 − 4x1 − 2x2 ⇒NxN + BxB = b
x4 = 100 − 2x1 − 3x2 ⇒B −1 NxN + xB = B −1 b
x5 = 75 − 5x1 − x2
⇒xB = B −1 b − B −1 NxN

26 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Kriteriumselement und Optimalitätsbedingungen


Was ist die Auswirkung eines Basiswechsels auf die Zielfunktion?

Beispiel: 0-Punkt Allgemein:  


xN
xB = (x3 , x4 , x5 )> , xN = (x1 , x2 )> Ax = (N|B) =b
xB
x3 = 80 − 4x1 − 2x2 ⇒NxN + BxB = b
x4 = 100 − 2x1 − 3x2 ⇒B −1 NxN + xB = B −1 b
x5 = 75 − 5x1 − x2
⇒xB = B −1 b − B −1 NxN
In der Zielfunktion:
z = 12x1 + 8x2 + 0x3 + 0x4 + 0x5
= (12 − 0)x1 + (8 − 0)x2 +0

26 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Kriteriumselement und Optimalitätsbedingungen


Was ist die Auswirkung eines Basiswechsels auf die Zielfunktion?

Beispiel: 0-Punkt Allgemein:  


xN
xB = (x3 , x4 , x5 )> , xN = (x1 , x2 )> Ax = (N|B) =b
xB
x3 = 80 − 4x1 − 2x2 ⇒NxN + BxB = b
x4 = 100 − 2x1 − 3x2 ⇒B −1 NxN + xB = B −1 b
x5 = 75 − 5x1 − x2
⇒xB = B −1 b − B −1 NxN
In der Zielfunktion:
z = 12x1 + 8x2 + 0x3 + 0x4 + 0x5 z = c > x = cN> xN + cB> xB
= (12 − 0)x1 + (8 − 0)x2 +0 = cN> xN + cB> (B −1 b − B −1 NxN )
= (cN> − cB> B −1 N)xN +cB> B −1 b
| {z }
Komponenten:
(cj − cB> B −1 aj )xj

26 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Kriteriumselement und Optimalitätsbedingungen


Was ist die Auswirkung eines Basiswechsels auf die Zielfunktion?

Beispiel: 0-Punkt Allgemein:  


xN
xB = (x3 , x4 , x5 )> , xN = (x1 , x2 )> Ax = (N|B) =b
xB
x3 = 80 − 4x1 − 2x2 ⇒NxN + BxB = b
x4 = 100 − 2x1 − 3x2 ⇒B −1 NxN + xB = B −1 b
x5 = 75 − 5x1 − x2
⇒xB = B −1 b − B −1 NxN
In der Zielfunktion:
z = 12x1 + 8x2 + 0x3 + 0x4 + 0x5 z = c > x = cN> xN + cB> xB
= (12 − 0)x1 + (8 − 0)x2 +0 = cN> xN + cB> (B −1 b − B −1 NxN )
= (cN> − cB> B −1 N)xN +cB> B −1 b
| {z }
Komponenten:
(cj − cB> B −1 aj )xj

Die marginale Veränderung des Zielfunktionswertes bei Aufnahme der


Nicht-Basisvariablen xj in die Basis ist (cj − cB> B −1 aj )xj
→ 12 bei Aufnahme von x1 → 8 bei Aufnahme von x2
26 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Kriteriumselement und Optimalitätsbedingungen


Beispiel: Punkt C Allgemein:  
> > xN
xB = (x1 , x3 , x4 ) , xN = (x2 , x5 ) Ax = (N|B) =b
xB
x1 = 15 − 1/5x2 − 1/5x5 ⇒NxN + BxB = b
x3 = 20 − 6/5x2 + 4/5x5 ⇒B −1 NxN + xB = B −1 b
x4 = 70 − 13/5x + 2/5x
⇒xB = B −1 b − B −1 NxN
2 5

27 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Kriteriumselement und Optimalitätsbedingungen


Beispiel: Punkt C Allgemein:  
> > xN
xB = (x1 , x3 , x4 ) , xN = (x2 , x5 ) Ax = (N|B) =b
xB
x1 = 15 − 1/5x2 − 1/5x5 ⇒NxN + BxB = b
x3 = 20 − 6/5x2 + 4/5x5 ⇒B −1 NxN + xB = B −1 b
x4 = 70 − 13/5x + 2/5x
⇒xB = B −1 b − B −1 NxN
2 5

In der Zielfunktion:
z = 12x1 + 8x2 + 0x3 + 0x4 + 0x5 z = c > x = cN> xN + cB> xB
= 12(15 − 1/5x2 − 1/5x5 ) + 8x2 = cN> xN + cB> (B −1 b − B −1 NxN )
= (8 − 12/5)x2 + (0 − 12/5)x5 + 112 · 15 = (cN> − cB> B −1 N)xN +cB> B −1 b
= 28/5x2 − 12/5x5 + 180
| {z }
Komponenten:
(cj − cB> B −1 aj )xj

27 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Kriteriumselement und Optimalitätsbedingungen


Beispiel: Punkt C Allgemein:  
> > xN
xB = (x1 , x3 , x4 ) , xN = (x2 , x5 ) Ax = (N|B) =b
xB
x1 = 15 − 1/5x2 − 1/5x5 ⇒NxN + BxB = b
x3 = 20 − 6/5x2 + 4/5x5 ⇒B −1 NxN + xB = B −1 b
x4 = 70 − 13/5x + 2/5x
⇒xB = B −1 b − B −1 NxN
2 5

In der Zielfunktion:
z = 12x1 + 8x2 + 0x3 + 0x4 + 0x5 z = c > x = cN> xN + cB> xB
= 12(15 − 1/5x2 − 1/5x5 ) + 8x2 = cN> xN + cB> (B −1 b − B −1 NxN )
= (8 − 12/5)x2 + (0 − 12/5)x5 + 112 · 15 = (cN> − cB> B −1 N)xN +cB> B −1 b
= 28/5x2 − 12/5x5 + 180
| {z }
Komponenten:
(cj − cB> B −1 aj )xj

Die marginale Veränderung des Zielfunktionswertes bei Aufnahme der


Nicht-Basisvariablen xj in die Basis ist (cj − cB> B −1 aj )xj
→ 28/5 bei Aufnahme von x2 → −12/5 bei Aufnahme von x5
27 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Kriteriumselement und Optimalitätsbedingungen


Maximierungsproblem: Minimierungsproblem:
Kriteriumselement ∆zj Kriteriumselement c̃j

∆zj := −cj + cB> B −1 aj c̃j := cj − cB> B −1 aj

28 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Kriteriumselement und Optimalitätsbedingungen


Maximierungsproblem: Minimierungsproblem:
Kriteriumselement ∆zj Kriteriumselement c̃j

∆zj := −cj + cB> B −1 aj c̃j := cj − cB> B −1 aj

Mit jeder Einheit, um die die Nicht-Basisvariable xj erhöht wird,

verkleinert sich erhöht sich


der Zielfunktionswert um den Wert des Kriteriumselements.

28 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Kriteriumselement und Optimalitätsbedingungen


Maximierungsproblem: Minimierungsproblem:
Kriteriumselement ∆zj Kriteriumselement c̃j

∆zj := −cj + cB> B −1 aj c̃j := cj − cB> B −1 aj

Mit jeder Einheit, um die die Nicht-Basisvariable xj erhöht wird,

verkleinert sich erhöht sich


der Zielfunktionswert um den Wert des Kriteriumselements.

Interpretation:
Negative ∆zj und negative c̃j bedeuten, dass bei einem Basistausch, bei
dem die Nicht-Basisvariable xj aufgenommen wird, sich der
Zielfunktionswert verbessert.
→ Die unterschiedlichen Definitionen für max- und min-Probleme
gestatten eine einheitliche Interpretation.

28 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Kriteriumselement und Optimalitätsbedingungen


Maximierungsproblem: Minimierungsproblem:
Kriteriumselement ∆zj Kriteriumselement c̃j

∆zj := −cj + cB> B −1 aj c̃j := cj − cB> B −1 aj

Mit jeder Einheit, um die die Nicht-Basisvariable xj erhöht wird,

verkleinert sich erhöht sich


der Zielfunktionswert um den Wert des Kriteriumselements.

Interpretation:
Negative ∆zj und negative c̃j bedeuten, dass bei einem Basistausch, bei
dem die Nicht-Basisvariable xj aufgenommen wird, sich der
Zielfunktionswert verbessert.
→ Die unterschiedlichen Definitionen für max- und min-Probleme
gestatten eine einheitliche Interpretation.
Optimalität: x > = (xB> , xN> ) ist eine optimale Lösung des LPs, wenn gilt

∆zj ≥ 0 für alle j ∈ JN c̃j ≥ 0 für alle j ∈ JN


28 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Simplexalgorithmus
Annahme für Simplexalgorithmus
Gegeben: Standardproblem der linearen Programmierung in kanonischer
Form
z = max c T x
so dass Ax = b
x ≥0
mit den Eigenschaften
1 ein Maximierungsproblem
2 ausschließlich nicht-negativen Entscheidungsvariablen x ≥ 0
3 nicht-negativer rechter Seite b ≥ 0
4 (m × n)-Koeffizientenmatrix A, welche die (m × m)-Einheitsmatrix
Im als Basis enthält, d.h. A = (N|Im ).

29 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Simplexalgorithmus
Annahme für Simplexalgorithmus
Gegeben: Standardproblem der linearen Programmierung in kanonischer
Form
z = max c T x
so dass Ax = b
x ≥0
mit den Eigenschaften
1 ein Maximierungsproblem
2 ausschließlich nicht-negativen Entscheidungsvariablen x ≥ 0
3 nicht-negativer rechter Seite b ≥ 0
4 (m × n)-Koeffizientenmatrix A, welche die (m × m)-Einheitsmatrix
Im als Basis enthält, d.h. A = (N|Im ).

Bemerkung: Jedes beliebige LP lässt sich in ein Standardproblem in


kanonischer Form transformieren!
29 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Simplexalgorithmus
Grundidee (G. Dantzig, 1947):
Starte in zulässiger Basislösung
→ Kann beim Standardproblem in kanonischer Form direkt aus der
Einheitsmatrix Im als Basis angegeben werden: xB = B −1 b = Im b = b
Iteration: Gehe zu benachbarter Basislösung (ersetze eine
Basisvariable durch eine Nicht-Basisvariable), die einen besseren
(nicht-schlechteren) Zielfunktionswert hat

30 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Simplexalgorithmus
Grundidee (G. Dantzig, 1947):
Starte in zulässiger Basislösung
→ Kann beim Standardproblem in kanonischer Form direkt aus der
Einheitsmatrix Im als Basis angegeben werden: xB = B −1 b = Im b = b
Iteration: Gehe zu benachbarter Basislösung (ersetze eine
Basisvariable durch eine Nicht-Basisvariable), die einen besseren
(nicht-schlechteren) Zielfunktionswert hat

Ablauf einer Iteration:


1 Bestimme aufzunehmende Variable mit Aufnahmeregel
→ Wenn keine aufzunehmende Variable gefunden: STOPP,
Lösung ist optimal
2 Bestimme mit Eliminationsregel, welche Variable die Basis verlässt:
→ Wenn keine zu eliminierende Variable gefunden: STOPP, Problem
ist unbeschränkt
3 Führe Basistausch durch, d.h. bestimme neue Basislösung
30 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Darstellung mit Simplextableau


Allgemein: bei Aufteilung A = (N|B) zu Basis B

cN 1 ... cN p cB 1 ... cB m
cB xB xN 1 ... xN p xB 1 ... xB m b0
cB 1 xB 1 b10
.. .. ..
. . B −1 N Im .
0
cB m xB m bm
∆zj −cN> + cB> B −1 N z0

31 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Darstellung mit Simplextableau


Allgemein: bei Aufteilung A = (N|B) zu Basis B

cN 1 ... cN p cB 1 ... cB m
cB xB xN 1 ... xN p xB 1 ... xB m b0
cB 1 xB 1 b10
.. .. ..
. . B −1 N Im .
0
cB m xB m bm
∆zj −cN> + cB> B −1 N z0

Beispiel: zu xB> = (x3 , x4 , x5 ) und xN> = (x1 , x2 )

cj 12 8 0 0 0
cB xB x1 x2 x3 x4 x5 b0
0 x3 4 2 1 80
0 x4 2 3 1 100
0 x5 5 1 1 75
∆zj −12 −8 0

31 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Darstellung mit Simplextableau


Allgemein: bei Aufteilung A = (N|B) zu Basis B

cN 1 ... cN p cB 1 ... cB m
cB xB xN 1 ... xN p xB 1 ... xB m b0
cB 1 xB 1 b10
.. .. ..
. . B −1 N Im .
0
cB m xB m bm
∆zj −cN> + cB> B −1 N z0

Beispiel: zu xB> = (x3 , x4 , x5 ) und xN> = (x1 , x2 )


aktuelle Koeffizientenmatrix
0 −1
cj 12 8 0 0 0 A := B A
0
cB xB x1 x2 x3 x4 x5 b
0 x3 4 2 1 80
0 x4 2 3 1 100
0 x5 5 1 1 75
∆zj −12 −8 0

31 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Darstellung mit Simplextableau


Allgemein: bei Aufteilung A = (N|B) zu Basis B

cN 1 ... cN p cB 1 ... cB m
cB xB xN 1 ... xN p xB 1 ... xB m b0
cB 1 xB 1 b10
.. .. ..
. . B −1 N Im .
0
cB m xB m bm
∆zj −cN> + cB> B −1 N z0

Beispiel: zu xB> = (x3 , x4 , x5 ) und xN> = (x1 , x2 )


aktuelle Koeffizientenmatrix
0 −1
cj 12 8 0 0 0 A := B A
0
cB xB x1 x2 x3 x4 x5 b
0 x3 4 2 1 80
0 x4 2 3 1 100
0 x5 5 1 1 75
∆zj −12 −8 0
aktuelle Basisvariablen
31 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Darstellung mit Simplextableau


Allgemein: bei Aufteilung A = (N|B) zu Basis B

cN 1 ... cN p cB 1 ... cB m
cB xB xN 1 ... xN p xB 1 ... xB m b0
cB 1 xB 1 b10
.. .. ..
. . B −1 N Im .
0
cB m xB m bm
∆zj −cN> + cB> B −1 N z0

Beispiel: zu xB> = (x3 , x4 , x5 ) und xN> = (x1 , x2 )


aktuelle Koeffizientenmatrix
0 −1
cj 12 8 0 0 0 A := B A
0 aktuelle rechte
cB xB x1 x2 x3 x4 x5 b
0 −1
0 x3 4 2 1 80 Seite b := B b

= Wert der BV
0 x4 2 3 1 100
0 x5 5 1 1 75
∆zj −12 −8 0
aktuelle Basisvariablen
31 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Darstellung mit Simplextableau


Allgemein: bei Aufteilung A = (N|B) zu Basis B

cN 1 ... cN p cB 1 ... cB m
cB xB xN 1 ... xN p xB 1 ... xB m b0
cB 1 xB 1 b10
.. .. ..
. . B −1 N Im .
0
cB m xB m bm
∆zj −cN> + cB> B −1 N z0

Beispiel: zu xB> = (x3 , x4 , x5 ) und xN> = (x1 , x2 )


aktuelle Koeffizientenmatrix
ZF-Koeff. cj 12 8 0 0
0
0 A := B A
−1

(Hilfszeile) 0
cB xB x1 x2 x3 x4 x5 b aktuelle rechte
0 −1
0 x3 4 2 1 80 Seite b := B b

= Wert der BV
ZF-Koeff. 0 x4 2 3 1 100
der BV 0 x5 5 1 1 75
(Hilfsspalte) ∆zj −12 −8 0
aktuelle Basisvariablen
31 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Darstellung mit Simplextableau


Allgemein: bei Aufteilung A = (N|B) zu Basis B

cN 1 ... cN p cB 1 ... cB m
cB xB xN 1 ... xN p xB 1 ... xB m b0
cB 1 xB 1 b10
.. .. ..
. . B −1 N Im .
0
cB m xB m bm
∆zj −cN> + cB> B −1 N z0

Beispiel: zu xB> = (x3 , x4 , x5 ) und xN> = (x1 , x2 )


aktuelle Koeffizientenmatrix
ZF-Koeff. cj 12 8 0 0
0
0 A := B A
−1

(Hilfszeile) 0
cB xB x1 x2 x3 x4 x5 b aktuelle rechte
0 −1
0 x3 4 2 1 80 Seite b := B b

= Wert der BV
ZF-Koeff. 0 x4 2 3 1 100
der BV 0 x5 5 1 1 75
(Hilfsspalte) ∆zj −12 −8 0
aktuelle Basisvariablen Kriteriumselemente −c + c > B −1 aj
j B 31 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Darstellung mit Simplextableau


Allgemein: bei Aufteilung A = (N|B) zu Basis B

cN 1 ... cN p cB 1 ... cB m
cB xB xN 1 ... xN p xB 1 ... xB m b0
cB 1 xB 1 b10
.. .. ..
. . B −1 N Im .
0
cB m xB m bm
∆zj −cN> + cB> B −1 N z0

Beispiel: zu xB> = (x3 , x4 , x5 ) und xN> = (x1 , x2 )


aktuelle Koeffizientenmatrix
ZF-Koeff. cj 12 8 0 0
0
0 A := B A
−1

(Hilfszeile) 0
cB xB x1 x2 x3 x4 x5 b aktuelle rechte
0 −1
0 x3 4 2 1 80 Seite b := B b

= Wert der BV
ZF-Koeff. 0 x4 2 3 1 100
der BV 0 x5 5 1 1 75 aktueller ZF-Wert
(Hilfsspalte) ∆zj −12 −8 0 z 0 := cB> b 0
aktuelle Basisvariablen Kriteriumselemente −c + c > B −1 aj
j B 31 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Simplextableau: Aufnahmeregel

Marginale Änderung der Zielfunktion bei Aufnahme von xj in Basis: ∆zj

cj 12 8
cB xB x1 x2 x3 x4 x5 b0
x3 4 2 1 80
x4 2 3 1 100
x5 5 1 1 75
∆zj −12 −8 0

32 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Simplextableau: Aufnahmeregel

Marginale Änderung der Zielfunktion bei Aufnahme von xj in Basis: ∆zj


Wenn alle ∆zj ≥ 0: Keine Verbesserung möglich, aktuelle Lösung
optimal!

cj 12 8
cB xB x1 x2 x3 x4 x5 b0
x3 4 2 1 80
x4 2 3 1 100
x5 5 1 1 75
∆zj −12 −8 0

32 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Simplextableau: Aufnahmeregel

Marginale Änderung der Zielfunktion bei Aufnahme von xj in Basis: ∆zj


Wenn alle ∆zj ≥ 0: Keine Verbesserung möglich, aktuelle Lösung
optimal!
Aufnahmeregel: Wähle im Simplextableau die Spalte ` mit betragsmäßig
größtem negativem ∆z`

cj 12 8
cB xB x1 x2 x3 x4 x5 b0
x3 4 2 1 80
x4 2 3 1 100
x5 5 1 1 75
∆zj −12 −8 0

32 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Simplextableau: Aufnahmeregel

Marginale Änderung der Zielfunktion bei Aufnahme von xj in Basis: ∆zj


Wenn alle ∆zj ≥ 0: Keine Verbesserung möglich, aktuelle Lösung
optimal!
Aufnahmeregel: Wähle im Simplextableau die Spalte ` mit betragsmäßig
größtem negativem ∆z`
Hier: ∆z1 = −12, ∆z2 = −8
→ wähle Spalte 1 bzw. x1 zur Aufnahme in Basis

cj 12 8
cB xB x1 x2 x3 x4 x5 b0
x3 4 2 1 80
Pivotspalte
x4 2 3 1 100
x5 5 1 1 75
∆zj −12 −8 0

32 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Simplextableau: Eliminationsregel
Die NBV x` soll in die Basis aufgenommen werden.
Erhöhe x` so weit wie möglich, um ZF so weit wie möglich zu verbessern

cj 12 8
cB xB x1 x2 x3 x4 x5 b0 bi0 /ai1
0

x3 4 2 1 80 20
x4 2 3 1 100 50
x5 5 1 1 75 15
∆zj −12 −8 0
33 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Simplextableau: Eliminationsregel
Die NBV x` soll in die Basis aufgenommen werden.
Erhöhe x` so weit wie möglich, um ZF so weit wie möglich zu verbessern
Bedingung: Neue Basislösung muss zulässig sein, d.h. Ax = b und xB 0 ≥ 0
0
→ x` ist beschränkt durch rechte Seiten der Gleichungen: ai` x` ≤ bi0
Hier: aus 5x1 + x2 + x5 = 75 und x5 ≥ 0 ⇒ x1 ≤ 15

cj 12 8
cB xB x1 x2 x3 x4 x5 b0 bi0 /ai1
0

x3 4 2 1 80 20
x4 2 3 1 100 50
x5 5 1 1 75 15
∆zj −12 −8 0
33 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Simplextableau: Eliminationsregel
Die NBV x` soll in die Basis aufgenommen werden.
Erhöhe x` so weit wie möglich, um ZF so weit wie möglich zu verbessern
Bedingung: Neue Basislösung muss zulässig sein, d.h. Ax = b und xB 0 ≥ 0
0
→ x` ist beschränkt durch rechte Seiten der Gleichungen: ai` x` ≤ bi0
Hier: aus 5x1 + x2 + x5 = 75 und x5 ≥ 0 ⇒ x1 ≤ 15
Setze x` in neuer Basislösung auf den Wert mini:a0 >0 bi0 /ai`
0
i`
Damit ist eine Variable xB(k) bestimmt, die die Basis verlässt
(Eliminationsregel)

cj 12 8
cB xB x1 x2 x3 x4 x5 b0 bi0 /ai1
0

x3 4 2 1 80 20
x4 2 3 1 100 50
x5 5 1 1 75 15
∆zj −12 −8 0
33 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Simplextableau: Eliminationsregel
Die NBV x` soll in die Basis aufgenommen werden.
Erhöhe x` so weit wie möglich, um ZF so weit wie möglich zu verbessern
Bedingung: Neue Basislösung muss zulässig sein, d.h. Ax = b und xB 0 ≥ 0
0
→ x` ist beschränkt durch rechte Seiten der Gleichungen: ai` x` ≤ bi0
Hier: aus 5x1 + x2 + x5 = 75 und x5 ≥ 0 ⇒ x1 ≤ 15
Setze x` in neuer Basislösung auf den Wert mini:a0 >0 bi0 /ai`
0
i`
Damit ist eine Variable xB(k) bestimmt, die die Basis verlässt
(Eliminationsregel)
Hier: x5 verlässt die Basis

cj 12 8
cB xB x1 x2 x3 x4 x5 b0 bi0 /ai1
0

x3 4 2 1 80 20
Pivotelement x4 2 3 1 100 50
x5 5 1 1 75 15 Pivotzeile
∆zj −12 −8 0
33 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Simplextableau: Eliminationsregel
Die NBV x` soll in die Basis aufgenommen werden.
Erhöhe x` so weit wie möglich, um ZF so weit wie möglich zu verbessern
Bedingung: Neue Basislösung muss zulässig sein, d.h. Ax = b und xB 0 ≥ 0
0
→ x` ist beschränkt durch rechte Seiten der Gleichungen: ai` x` ≤ bi0
Hier: aus 5x1 + x2 + x5 = 75 und x5 ≥ 0 ⇒ x1 ≤ 15
Setze x` in neuer Basislösung auf den Wert mini:a0 >0 bi0 /ai`
0
i`
Damit ist eine Variable xB(k) bestimmt, die die Basis verlässt
(Eliminationsregel)
Hier: x5 verlässt die Basis
0
Bemerkung: Sind alle ai` ≤ 0, so kann x` beliebig erhöht werden
(Problem ist unbeschränkt!)
cj 12 8
cB xB x1 x2 x3 x4 x5 b0 bi0 /ai1
0

x3 4 2 1 80 20
Pivotelement x4 2 3 1 100 50
x5 5 1 1 75 15 Pivotzeile
∆zj −12 −8 0
33 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Simplextableau: Basistausch
Die neue Basis ist xB 0 = (xB \ {xB(k) }) ∪ {x` }
Die neue (zulässige) Basislösung kann durch Umformen des
Gleichungssystems bestimmt werden:
→ k-te Restriktion ist x` = bk0 /ak`
0 0 0
P
− j6=` akj xj /ak`
→ Einsetzen von x` in die restlichen Restriktionen und ZF-Gleichung
→ Hier: Restriktion (III): x1 = 15 − 1/5x2 − 1/5x5 einsetzen in
Restriktion (I): 4(15 − 1/5x2 − 1/5x5 ) + 2x2 + x3 = 80
⇔ 6/5x − 4/5x + x = 20
2 5 3

34 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Simplextableau: Basistausch
Die neue Basis ist xB 0 = (xB \ {xB(k) }) ∪ {x` }
Die neue (zulässige) Basislösung kann durch Umformen des
Gleichungssystems bestimmt werden:
→ k-te Restriktion ist x` = bk0 /ak`
0 0 0
P
− j6=` akj xj /ak`
→ Einsetzen von x` in die restlichen Restriktionen und ZF-Gleichung
→ Hier: Restriktion (III): x1 = 15 − 1/5x2 − 1/5x5 einsetzen in
Restriktion (I): 4(15 − 1/5x2 − 1/5x5 ) + 2x2 + x3 = 80
⇔ 6/5x − 4/5x + x = 20
2 5 3

Die Zeilenumformungen stellen folgenden Zustand her:


→ Pivotspalte ` wird zu Einheitsvektor ek
→ übrige Basisspalten behalten ihre Form bei
cj 12 8
cB xB x1 x2 x3 x4 x5 b0
x3 6/5 1 −4/5 20
x4 13/5 1 −2/5 70
12 x1 1 1/5 1/5 15
∆zj −28/5 12/5 180

34 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Simplextableau: Übersicht eine Iteration


Ablauf einer Iteration:

35 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Simplextableau: Übersicht eine Iteration


Ablauf einer Iteration:
1 Bestimme Pivotspalte `
→ ` = arg minj {∆zj : j ∈ JN }
→ Alle ∆zj ≥ 0: STOPP, Lösung optimal!

35 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Simplextableau: Übersicht eine Iteration


Ablauf einer Iteration:
1 Bestimme Pivotspalte `
→ ` = arg minj {∆zj : j ∈ JN }
→ Alle ∆zj ≥ 0: STOPP, Lösung optimal!
2 Bestimme Pivotzeile k
→ k = arg mini {bi0 /ai`
0 0
: ai` > 0}
0
→ Alle ai` ≤ 0: STOPP, Problem unbeschränkt!
0
⇒ Pivotelement ist ak`

35 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Simplextableau: Übersicht eine Iteration


Ablauf einer Iteration:
1 Bestimme Pivotspalte `
→ ` = arg minj {∆zj : j ∈ JN }
→ Alle ∆zj ≥ 0: STOPP, Lösung optimal!
2 Bestimme Pivotzeile k
→ k = arg mini {bi0 /ai`
0 0
: ai` > 0}
0
→ Alle ai` ≤ 0: STOPP, Problem unbeschränkt!
0
⇒ Pivotelement ist ak`
3 ¯ 0 , z̄ 0 )
Transformation des Tableaus (neue Werte āij0 , b̄i0 , ∆z j
→ Tausche bisherige BV xB(k) gegen bisherige NBV x`

35 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Simplextableau: Übersicht eine Iteration


Ablauf einer Iteration:
1 Bestimme Pivotspalte `
→ ` = arg minj {∆zj : j ∈ JN }
→ Alle ∆zj ≥ 0: STOPP, Lösung optimal!
2 Bestimme Pivotzeile k
→ k = arg mini {bi0 /ai`
0 0
: ai` > 0}
0
→ Alle ai` ≤ 0: STOPP, Problem unbeschränkt!
0
⇒ Pivotelement ist ak`
3 ¯ 0 , z̄ 0 )
Transformation des Tableaus (neue Werte āij0 , b̄i0 , ∆z j
→ Tausche bisherige BV xB(k) gegen bisherige NBV x`
→ Pivotzeile k:
0 0 0
ākj = akj /ak` und b̄k0 = bk0 /ak` 0 0
(Division durch ak` )
→ Übrige Zeilen i 6= k:
āij0 = aij0 − (ai`
0 0
akj )/ak`0
und b̄i0 = bi0 − (ai`
0 0 0
bk )/ak` (‘Kreis-Regel’)
→ ZF-Zeile:
¯ j = ∆zj − (∆z` akj
∆z 0 0
)/ak` und z̄ 0 = z 0 − (∆z` bk0 )/ak`
0
(‘Kreis-Regel’)
35 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Simplexalgorithmus mit Simplextableau


Erstes Tableau: entspricht 0-Punkt
Basis (x3 , x4 , x5 )
Verbesserung durch Aufnahme von x1 oder x2

cj 12 8
cB xB x1 x2 x3 x4 x5 b0 bi0 /ai`
0

x3 4 2 1 80
x4 2 3 1 100
x5 5 1 1 75
∆zj −12 −8 0
Transformation: Zeilenumformungen: Kreis-Regel: z.B. siehe Tafel!

36 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Simplexalgorithmus mit Simplextableau


Erstes Tableau: entspricht 0-Punkt
Basis (x3 , x4 , x5 )
Verbesserung durch Aufnahme von x1 oder x2
Aufnahme x` = x1

cj 12 8
cB xB x1 x2 x3 x4 x5 b0 bi0 /ai`
0

x3 4 2 1 80
x4 2 3 1 100
x5 5 1 1 75
∆zj −12 −8 0
Transformation: Zeilenumformungen: Kreis-Regel: z.B. siehe Tafel!

36 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Simplexalgorithmus mit Simplextableau


Erstes Tableau: entspricht 0-Punkt
Basis (x3 , x4 , x5 )
Verbesserung durch Aufnahme von x1 oder x2
Aufnahme x` = x1
Elimination xB(k) = x5

cj 12 8
cB xB x1 x2 x3 x4 x5 b0 bi0 /ai`
0

x3 4 2 1 80 20
x4 2 3 1 100 50
x5 5 1 1 75 15
∆zj −12 −8 0
Transformation: Zeilenumformungen: Kreis-Regel: z.B. siehe Tafel!

36 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Simplexalgorithmus mit Simplextableau


Erstes Tableau: entspricht 0-Punkt
Basis (x3 , x4 , x5 )
Verbesserung durch Aufnahme von x1 oder x2
Aufnahme x` = x1
Elimination xB(k) = x5
0
Pivotelement a31 =5
cj 12 8
cB xB x1 x2 x3 x4 x5 b0 bi0 /ai`
0

x3 4 2 1 80 20
x4 2 3 1 100 50
x5 5 1 1 75 15
∆zj −12 −8 0
Transformation: Zeilenumformungen: Kreis-Regel: z.B. siehe Tafel!

36 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Simplexalgorithmus mit Simplextableau


Erstes Tableau: entspricht 0-Punkt
Basis (x3 , x4 , x5 )
Verbesserung durch Aufnahme von x1 oder x2
Aufnahme x` = x1
Elimination xB(k) = x5
0
Pivotelement a31 =5
cj 12 8
cB xB x1 x2 x3 x4 x5 b0 bi0 /ai`
0

x3 4 2 1 80 20
x4 2 3 1 100 50
x5 5 1 1 75 15
∆zj −12 −8 0
Transformation: Zeilenumformungen: Kreis-Regel: z.B. siehe Tafel!
(I): Rechne: (I) minus 4/5·(III);

36 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Simplexalgorithmus mit Simplextableau


Erstes Tableau: entspricht 0-Punkt
Basis (x3 , x4 , x5 )
Verbesserung durch Aufnahme von x1 oder x2
Aufnahme x` = x1
Elimination xB(k) = x5
0
Pivotelement a31 =5
cj 12 8
cB xB x1 x2 x3 x4 x5 b0 bi0 /ai`
0

x3 4 2 1 80 20
x4 2 3 1 100 50
x5 5 1 1 75 15
∆zj −12 −8 0
Transformation: Zeilenumformungen: Kreis-Regel: z.B. siehe Tafel!
(I): Rechne: (I) minus 4/5·(III);
(II): Rechne: (II) minus 2/5·(III);

36 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Simplexalgorithmus mit Simplextableau


Erstes Tableau: entspricht 0-Punkt
Basis (x3 , x4 , x5 )
Verbesserung durch Aufnahme von x1 oder x2
Aufnahme x` = x1
Elimination xB(k) = x5
0
Pivotelement a31 =5
cj 12 8
cB xB x1 x2 x3 x4 x5 b0 bi0 /ai`
0

x3 4 2 1 80 20
x4 2 3 1 100 50
x5 5 1 1 75 15
∆zj −12 −8 0
Transformation: Zeilenumformungen: Kreis-Regel: z.B. siehe Tafel!
(I): Rechne: (I) minus 4/5·(III);
(II): Rechne: (II) minus 2/5·(III);
(III) Division durch 5;

36 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Simplexalgorithmus mit Simplextableau


Erstes Tableau: entspricht 0-Punkt
Basis (x3 , x4 , x5 )
Verbesserung durch Aufnahme von x1 oder x2
Aufnahme x` = x1
Elimination xB(k) = x5
0
Pivotelement a31 =5
cj 12 8
cB xB x1 x2 x3 x4 x5 b0 bi0 /ai`
0

x3 4 2 1 80 20
x4 2 3 1 100 50
x5 5 1 1 75 15
∆zj −12 −8 0
Transformation: Zeilenumformungen: Kreis-Regel: z.B. siehe Tafel!
(I): Rechne: (I) minus 4/5·(III); 0 = a0 − a0 · a0 /a0
ā12 12 11 32 31
(II): Rechne: (II) minus 2/5·(III);
(III) Division durch 5;

36 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Simplexalgorithmus mit Simplextableau


Erstes Tableau: entspricht 0-Punkt
Basis (x3 , x4 , x5 )
Verbesserung durch Aufnahme von x1 oder x2
Aufnahme x` = x1
Elimination xB(k) = x5
0
Pivotelement a31 =5
cj 12 8
cB xB x1 x2 x3 x4 x5 b0 bi0 /ai`
0

x3 4 2 1 80 20
x4 2 3 1 100 50
x5 5 1 1 75 15
∆zj −12 −8 0
Transformation: Zeilenumformungen: Kreis-Regel: z.B. siehe Tafel!
(I): Rechne: (I) minus 4/5·(III); 0 = a0 − a0 · a0 /a0
ā12 12 11 32 31
(II): Rechne: (II) minus 2/5·(III); = 2 − 4 · 1/5 = 6/5
(III) Division durch 5;

36 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Simplexalgorithmus mit Simplextableau


Erstes Tableau: entspricht 0-Punkt
Basis (x3 , x4 , x5 )
Verbesserung durch Aufnahme von x1 oder x2
Aufnahme x` = x1
Elimination xB(k) = x5
0
Pivotelement a31 =5
cj 12 8
cB xB x1 x2 x3 x4 x5 b0 bi0 /ai`
0

x3 4 2 1 80 20
x4 2 3 1 0 100 50
x5 5 1 1 75 15
∆zj −12 −8 0
Transformation: Zeilenumformungen: Kreis-Regel: z.B. siehe Tafel!
(I): Rechne: (I) minus 4/5·(III); 0 = a0 − a0 · a0 /a0
ā12 12 11 32 31
(II): Rechne: (II) minus 2/5·(III); = 2 − 4 · 1/5 = 6/5
(III) Division durch 5; 0 0 0 0 /a0
ā25 = a25 − a21 · a35 31

36 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Simplexalgorithmus mit Simplextableau


Erstes Tableau: entspricht 0-Punkt
Basis (x3 , x4 , x5 )
Verbesserung durch Aufnahme von x1 oder x2
Aufnahme x` = x1
Elimination xB(k) = x5
0
Pivotelement a31 =5
cj 12 8
cB xB x1 x2 x3 x4 x5 b0 bi0 /ai`
0

x3 4 2 1 80 20
x4 2 3 1 0 100 50
x5 5 1 1 75 15
∆zj −12 −8 0
Transformation: Zeilenumformungen: Kreis-Regel: z.B. siehe Tafel!
(I): Rechne: (I) minus 4/5·(III); 0 = a0 − a0 · a0 /a0
ā12 12 11 32 31
(II): Rechne: (II) minus 2/5·(III); = 2 − 4 · 1/5 = 6/5
(III) Division durch 5; 0 0 0 0 /a0
ā25 = a25 − a21 · a35 31
= 0 − 2 · 1/5 = −2/5
36 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Simplexalgorithmus mit Simplextableau


Zweites Tableau: entspricht Punkt C
Basis (x1 , x3 , x4 )
Verbesserung nur durch Aufnahme von x2

cj 12 8
cB xB x1 x2 x3 x4 x5 b0 bi0 /ai`
0

x3 6/5 1 −4/5 20
x4 13/5 1 −2/5 70
12 x1 1 1/5 1/5 15
∆zj −28/5 12/5 180
Transformation: Zeilenumformungen: Kreis-Regel: z.B. siehe Tafel!

37 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Simplexalgorithmus mit Simplextableau


Zweites Tableau: entspricht Punkt C
Basis (x1 , x3 , x4 )
Verbesserung nur durch Aufnahme von x2
Aufnahme x` = x2

cj 12 8
cB xB x1 x2 x3 x4 x5 b0 bi0 /ai`
0

x3 6/5 1 −4/5 20
x4 13/5 1 −2/5 70
12 x1 1 1/5 1/5 15
∆zj −28/5 12/5 180
Transformation: Zeilenumformungen: Kreis-Regel: z.B. siehe Tafel!

37 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Simplexalgorithmus mit Simplextableau


Zweites Tableau: entspricht Punkt C
Basis (x1 , x3 , x4 )
Verbesserung nur durch Aufnahme von x2
Aufnahme x` = x2
Elimination xB(k) = x3

cj 12 8
cB xB x1 x2 x3 x4 x5 b0 bi0 /ai`
0

x3 6/5 1 −4/5 20 50/3

x4 13/5 1 −2/5 70 350/13

12 x1 1 1/5 1/5 15 75
∆zj −28/5 12/5 180
Transformation: Zeilenumformungen: Kreis-Regel: z.B. siehe Tafel!

37 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Simplexalgorithmus mit Simplextableau


Zweites Tableau: entspricht Punkt C
Basis (x1 , x3 , x4 )
Verbesserung nur durch Aufnahme von x2
Aufnahme x` = x2
Elimination xB(k) = x3
0
Pivotelement a12 = 6/5
cj 12 8
cB xB x1 x2 x3 x4 x5 b0 bi0 /ai`
0

x3 6/5 1 −4/5 20 50/3

x4 13/5 1 −2/5 70 350/13

12 x1 1 1/5 1/5 15 75
∆zj −28/5 12/5 180
Transformation: Zeilenumformungen: Kreis-Regel: z.B. siehe Tafel!

37 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Simplexalgorithmus mit Simplextableau


Zweites Tableau: entspricht Punkt C
Basis (x1 , x3 , x4 )
Verbesserung nur durch Aufnahme von x2
Aufnahme x` = x2
Elimination xB(k) = x3
0
Pivotelement a12 = 6/5
cj 12 8
cB xB x1 x2 x3 x4 x5 b0 bi0 /ai`
0

x3 6/5 1 −4/5 20 50/3

x4 13/5 1 −2/5 70 350/13

12 x1 1 1/5 1/5 15 75
∆zj −28/5 12/5 180
Transformation: Zeilenumformungen: Kreis-Regel: z.B. siehe Tafel!
(I) Division durch 6/5;

37 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Simplexalgorithmus mit Simplextableau


Zweites Tableau: entspricht Punkt C
Basis (x1 , x3 , x4 )
Verbesserung nur durch Aufnahme von x2
Aufnahme x` = x2
Elimination xB(k) = x3
0
Pivotelement a12 = 6/5
cj 12 8
cB xB x1 x2 x3 x4 x5 b0 bi0 /ai`
0

x3 6/5 1 −4/5 20 50/3

x4 13/5 1 −2/5 70 350/13

12 x1 1 1/5 1/5 15 75
∆zj −28/5 12/5 180
Transformation: Zeilenumformungen: Kreis-Regel: z.B. siehe Tafel!
(I) Division durch 6/5;
(II): Rechne: (II) minus 13/5 : 6/5·(I);

37 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Simplexalgorithmus mit Simplextableau


Zweites Tableau: entspricht Punkt C
Basis (x1 , x3 , x4 )
Verbesserung nur durch Aufnahme von x2
Aufnahme x` = x2
Elimination xB(k) = x3
0
Pivotelement a12 = 6/5
cj 12 8
cB xB x1 x2 x3 x4 x5 b0 bi0 /ai`
0

x3 6/5 1 −4/5 20 50/3

x4 13/5 1 −2/5 70 350/13

12 x1 1 1/5 1/5 15 75
∆zj −28/5 12/5 180
Transformation: Zeilenumformungen: Kreis-Regel: z.B. siehe Tafel!
(I) Division durch 6/5;
(II): Rechne: (II) minus 13/5 : 6/5·(I);
(III): Rechne: (III) minus 1/5 : 6/5·(I);

37 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Simplexalgorithmus mit Simplextableau


Zweites Tableau: entspricht Punkt C
Basis (x1 , x3 , x4 )
Verbesserung nur durch Aufnahme von x2
Aufnahme x` = x2
Elimination xB(k) = x3
0
Pivotelement a12 = 6/5
cj 12 8
cB xB x1 x2 x3 x4 x5 b0 bi0 /ai`
0

x3 6/5 1 −4/5 20 50/3

x4 13/5 1 −2/5 70 350/13

12 x1 1 1/5 1/5 15 75
∆zj −28/5 12/5 180
Transformation: Zeilenumformungen: Kreis-Regel: z.B. siehe Tafel!
(I) Division durch 6/5; ¯ 5 = ∆z5 − ∆z2 · a0 /a0
∆z 15 12
(II): Rechne: (II) minus 13/5 : 6/5·(I);
(III): Rechne: (III) minus 1/5 : 6/5·(I);

37 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Simplexalgorithmus mit Simplextableau


Zweites Tableau: entspricht Punkt C
Basis (x1 , x3 , x4 )
Verbesserung nur durch Aufnahme von x2
Aufnahme x` = x2
Elimination xB(k) = x3
0
Pivotelement a12 = 6/5
cj 12 8
cB xB x1 x2 x3 x4 x5 b0 bi0 /ai`
0

x3 6/5 1 −4/5 20 50/3

x4 13/5 1 −2/5 70 350/13

12 x1 1 1/5 1/5 15 75
∆zj −28/5 12/5 180
Transformation: Zeilenumformungen: Kreis-Regel: z.B. siehe Tafel!
(I) Division durch 6/5; ¯ 5 = ∆z5 − ∆z2 · a0 /a0
∆z 15 12
(II): Rechne: (II) minus 13/5 : 6/5·(I); = 12/5 − (−28/5) · (−4/5) : 6/5 = −4/3
(III): Rechne: (III) minus 1/5 : 6/5·(I);

37 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Simplexalgorithmus mit Simplextableau


Zweites Tableau: entspricht Punkt C
Basis (x1 , x3 , x4 )
Verbesserung nur durch Aufnahme von x2
Aufnahme x` = x2
Elimination xB(k) = x3
0
Pivotelement a12 = 6/5
cj 12 8
cB xB x1 x2 x3 x4 x5 b0 bi0 /ai`
0

x3 6/5 1 −4/5 20 50/3

x4 13/5 1 −2/5 70 350/13

12 x1 1 1/5 1/5 15 75
∆zj −28/5 12/5 180
Transformation: Zeilenumformungen: Kreis-Regel: z.B. siehe Tafel!
(I) Division durch 6/5; ¯ 5 = ∆z5 − ∆z2 · a0 /a0
∆z 15 12
(II): Rechne: (II) minus 13/5 : 6/5·(I); = 12/5 − (−28/5) · (−4/5) : 6/5 = −4/3
(III): Rechne: (III) minus 1/5 : 6/5·(I); b̄20 = b20 − a22
0 · b 0 /a0
1 12

37 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Simplexalgorithmus mit Simplextableau


Zweites Tableau: entspricht Punkt C
Basis (x1 , x3 , x4 )
Verbesserung nur durch Aufnahme von x2
Aufnahme x` = x2
Elimination xB(k) = x3
0
Pivotelement a12 = 6/5
cj 12 8
cB xB x1 x2 x3 x4 x5 b0 bi0 /ai`
0

x3 6/5 1 −4/5 20 50/3

x4 13/5 1 −2/5 70 350/13

12 x1 1 1/5 1/5 15 75
∆zj −28/5 12/5 180
Transformation: Zeilenumformungen: Kreis-Regel: z.B. siehe Tafel!
(I) Division durch 6/5; ¯ 5 = ∆z5 − ∆z2 · a0 /a0
∆z 15 12
(II): Rechne: (II) minus 13/5 : 6/5·(I); = 12/5 − (−28/5) · (−4/5) : 6/5 = −4/3
(III): Rechne: (III) minus 1/5 : 6/5·(I); b̄20 = b20 − a22
0 · b 0 /a0
1 12
= 70 − 13/5 · 20 : 6/5 = 80/3
37 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Simplexalgorithmus mit Simplextableau


Drittes Tableau: entspricht Punkt B
Basis (x1 , x2 , x4 )
Verbesserung nur durch Aufnahme von x5

cj 12 8
cB xB x1 x2 x3 x4 x5 b0 bi0 /ai`
0

8 x2 1 5/6 −2/3 50/3

x4 −13/6 1 4/3 80/3

12 x1 1 −1/6 1/3 35/3

∆zj 14/3 −4/3 273 1/3


Transformation: Zeilenumformungen: Kreis-Regel: z.B. siehe Tafel!

38 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Simplexalgorithmus mit Simplextableau


Drittes Tableau: entspricht Punkt B
Basis (x1 , x2 , x4 )
Verbesserung nur durch Aufnahme von x5
Aufnahme x` = x5

cj 12 8
cB xB x1 x2 x3 x4 x5 b0 bi0 /ai`
0

8 x2 1 5/6 −2/3 50/3

x4 −13/6 1 4/3 80/3

12 x1 1 −1/6 1/3 35/3

∆zj 14/3 −4/3 273 1/3


Transformation: Zeilenumformungen: Kreis-Regel: z.B. siehe Tafel!

38 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Simplexalgorithmus mit Simplextableau


Drittes Tableau: entspricht Punkt B
Basis (x1 , x2 , x4 )
Verbesserung nur durch Aufnahme von x5
Aufnahme x` = x5
Elimination xB(k) = x4

cj 12 8
cB xB x1 x2 x3 x4 x5 b0 bi0 /ai`
0

8 x2 1 5/6 −2/3 50/3 —


x4 −13/6 1 4/3 80/3 20
12 x1 1 −1/6 1/3 35/3 35
∆zj 14/3 −4/3 273 1/3
Transformation: Zeilenumformungen: Kreis-Regel: z.B. siehe Tafel!

38 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Simplexalgorithmus mit Simplextableau


Drittes Tableau: entspricht Punkt B
Basis (x1 , x2 , x4 )
Verbesserung nur durch Aufnahme von x5
Aufnahme x` = x5
Elimination xB(k) = x4
0
Pivotelement a25 = 4/3
cj 12 8
cB xB x1 x2 x3 x4 x5 b0 bi0 /ai`
0

8 x2 1 5/6 −2/3 50/3 —


x4 −13/6 1 4/3 80/3 20
12 x1 1 −1/6 1/3 35/3 35
∆zj 14/3 −4/3 273 1/3
Transformation: Zeilenumformungen: Kreis-Regel: z.B. siehe Tafel!

38 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Simplexalgorithmus mit Simplextableau


Drittes Tableau: entspricht Punkt B
Basis (x1 , x2 , x4 )
Verbesserung nur durch Aufnahme von x5
Aufnahme x` = x5
Elimination xB(k) = x4
0
Pivotelement a25 = 4/3
cj 12 8
cB xB x1 x2 x3 x4 x5 b0 bi0 /ai`
0

8 x2 1 5/6 −2/3 50/3 —


x4 −13/6 1 4/3 80/3 20
12 x1 1 −1/6 1/3 35/3 35
∆zj 14/3 −4/3 273 1/3
Transformation: Zeilenumformungen: Kreis-Regel: z.B. siehe Tafel!
(I): Rechne: (I) minus (−2/3) : 4/3·(II);

38 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Simplexalgorithmus mit Simplextableau


Drittes Tableau: entspricht Punkt B
Basis (x1 , x2 , x4 )
Verbesserung nur durch Aufnahme von x5
Aufnahme x` = x5
Elimination xB(k) = x4
0
Pivotelement a25 = 4/3
cj 12 8
cB xB x1 x2 x3 x4 x5 b0 bi0 /ai`
0

8 x2 1 5/6 −2/3 50/3 —


x4 −13/6 1 4/3 80/3 20
12 x1 1 −1/6 1/3 35/3 35
∆zj 14/3 −4/3 273 1/3
Transformation: Zeilenumformungen: Kreis-Regel: z.B. siehe Tafel!
(I): Rechne: (I) minus (−2/3) : 4/3·(II);
(II) Division durch 4/3;

38 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Simplexalgorithmus mit Simplextableau


Drittes Tableau: entspricht Punkt B
Basis (x1 , x2 , x4 )
Verbesserung nur durch Aufnahme von x5
Aufnahme x` = x5
Elimination xB(k) = x4
0
Pivotelement a25 = 4/3
cj 12 8
cB xB x1 x2 x3 x4 x5 b0 bi0 /ai`
0

8 x2 1 5/6 −2/3 50/3 —


x4 −13/6 1 4/3 80/3 20
12 x1 1 −1/6 1/3 35/3 35
∆zj 14/3 −4/3 273 1/3
Transformation: Zeilenumformungen: Kreis-Regel: z.B. siehe Tafel!
(I): Rechne: (I) minus (−2/3) : 4/3·(II);
(II) Division durch 4/3;
(III) Rechne: (III) minus 1/3) : 4/3·(II);

38 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Simplexalgorithmus mit Simplextableau


Drittes Tableau: entspricht Punkt B
Basis (x1 , x2 , x4 )
Verbesserung nur durch Aufnahme von x5
Aufnahme x` = x5
Elimination xB(k) = x4
0
Pivotelement a25 = 4/3
cj 12 8
cB xB x1 x2 x3 x4 x5 b0 bi0 /ai`
0

8 x2 1 5/6 −2/3 50/3 —


x4 −13/6 1 4/3 80/3 20
12 x1 1 −1/6 1/3 35/3 35
∆zj 14/3 −4/3 273 1/3
Transformation: Zeilenumformungen: Kreis-Regel: z.B. siehe Tafel!
(I): Rechne: (I) minus (−2/3) : 4/3·(II); 0 = a0 − a0 · a0 /a0
ā13 13 15 23 25
(II) Division durch 4/3;
(III) Rechne: (III) minus 1/3) : 4/3·(II);

38 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Simplexalgorithmus mit Simplextableau


Drittes Tableau: entspricht Punkt B
Basis (x1 , x2 , x4 )
Verbesserung nur durch Aufnahme von x5
Aufnahme x` = x5
Elimination xB(k) = x4
0
Pivotelement a25 = 4/3
cj 12 8
cB xB x1 x2 x3 x4 x5 b0 bi0 /ai`
0

8 x2 1 5/6 −2/3 50/3 —


x4 −13/6 1 4/3 80/3 20
12 x1 1 −1/6 1/3 35/3 35
∆zj 14/3 −4/3 273 1/3
Transformation: Zeilenumformungen: Kreis-Regel: z.B. siehe Tafel!
(I): Rechne: (I) minus (−2/3) : 4/3·(II); 0 = a0 − a0 · a0 /a0
ā13 13 15 23 25
(II) Division durch 4/3; = 5/6 − (−2/3) · (−13/6) : 4/3 = −1/4
(III) Rechne: (III) minus 1/3) : 4/3·(II);

38 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Simplexalgorithmus mit Simplextableau


Drittes Tableau: entspricht Punkt B
Basis (x1 , x2 , x4 )
Verbesserung nur durch Aufnahme von x5
Aufnahme x` = x5
Elimination xB(k) = x4
0
Pivotelement a25 = 4/3
cj 12 8
cB xB x1 x2 x3 x4 x5 b0 bi0 /ai`
0

8 x2 1 5/6 −2/3 50/3 —


x4 −13/6 1 4/3 80/3 20
12 x1 1 −1/6 1/3 35/3 35
∆zj 14/3 −4/3 273 1/3
Transformation: Zeilenumformungen: Kreis-Regel: z.B. siehe Tafel!
(I): Rechne: (I) minus (−2/3) : 4/3·(II); 0 = a0 − a0 · a0 /a0
ā13 13 15 23 25
(II) Division durch 4/3; = 5/6 − (−2/3) · (−13/6) : 4/3 = −1/4
(III) Rechne: (III) minus 1/3) : 4/3·(II); z̄ 0 = z̄ 0 − ∆z5 · b2 : a25
0

38 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Simplexalgorithmus mit Simplextableau


Drittes Tableau: entspricht Punkt B
Basis (x1 , x2 , x4 )
Verbesserung nur durch Aufnahme von x5
Aufnahme x` = x5
Elimination xB(k) = x4
0
Pivotelement a25 = 4/3
cj 12 8
cB xB x1 x2 x3 x4 x5 b0 bi0 /ai`
0

8 x2 1 5/6 −2/3 50/3 —


x4 −13/6 1 4/3 80/3 20
12 x1 1 −1/6 1/3 35/3 35
∆zj 14/3 −4/3 273 1/3
Transformation: Zeilenumformungen: Kreis-Regel: z.B. siehe Tafel!
(I): Rechne: (I) minus (−2/3) : 4/3·(II); 0 = a0 − a0 · a0 /a0
ā13 13 15 23 25
(II) Division durch 4/3; = 5/6 − (−2/3) · (−13/6) : 4/3 = −1/4
(III) Rechne: (III) minus 1/3) : 4/3·(II); z̄ 0 = z̄ 0 − ∆z5 · b2 : a25
0

= 273 1/3 − (−4/3) · 80/3 : 4/3 = 300


38 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Simplexalgorithmus mit Simplextableau


Viertes Tableau: entspricht Punkt A
Basis (x1 , x2 , x5 )
Keine Verbesserung durch Aufnahme von x3 oder x4

cj 12 8
cB xB x1 x2 x3 x4 x5 b0
8 x2 1 −1/4 1/2 30
x5 −13/8 3/4 1 20
12 x1 1 3/8 −1/4 5
∆zj 5/2 1 300

Ergebnisse: siehe Tafel!

39 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Simplexalgorithmus mit Simplextableau


Viertes Tableau: entspricht Punkt A
Basis (x1 , x2 , x5 )
Keine Verbesserung durch Aufnahme von x3 oder x4

cj 12 8
cB xB x1 x2 x3 x4 x5 b0
8 x2 1 −1/4 1/2 30
x5 −13/8 3/4 1 20
12 x1 1 3/8 −1/4 5
∆zj 5/2 1 300

Ergebnisse: siehe Tafel!

Optimale Basislösung (x1 , x2 , x3 , x4 , x5 ) = (5, 30, 0, 0, 20)

39 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Simplexalgorithmus mit Simplextableau


Viertes Tableau: entspricht Punkt A
Basis (x1 , x2 , x5 )
Keine Verbesserung durch Aufnahme von x3 oder x4

cj 12 8
cB xB x1 x2 x3 x4 x5 b0
8 x2 1 −1/4 1/2 30
x5 −13/8 3/4 1 20
12 x1 1 3/8 −1/4 5
∆zj 5/2 1 300

Ergebnisse: siehe Tafel!

Optimale Basislösung (x1 , x2 , x3 , x4 , x5 ) = (5, 30, 0, 0, 20)


Gewinn z = 300

39 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Simplexalgorithmus mit Simplextableau


Viertes Tableau: entspricht Punkt A
Basis (x1 , x2 , x5 )
Keine Verbesserung durch Aufnahme von x3 oder x4

cj 12 8
cB xB x1 x2 x3 x4 x5 b0
8 x2 1 −1/4 1/2 30
x5 −13/8 3/4 1 20
12 x1 1 3/8 −1/4 5
∆zj 5/2 1 300

Ergebnisse: siehe Tafel!

Optimale Basislösung (x1 , x2 , x3 , x4 , x5 ) = (5, 30, 0, 0, 20)


Gewinn z = 300
Restriktionen (I) und (II) sind bindend (Schlupf ist x3 = x4 = 0)

39 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Simplexalgorithmus mit Simplextableau


Viertes Tableau: entspricht Punkt A
Basis (x1 , x2 , x5 )
Keine Verbesserung durch Aufnahme von x3 oder x4

cj 12 8
cB xB x1 x2 x3 x4 x5 b0
8 x2 1 −1/4 1/2 30
x5 −13/8 3/4 1 20
12 x1 1 3/8 −1/4 5
∆zj 5/2 1 300

Ergebnisse: siehe Tafel!

Optimale Basislösung (x1 , x2 , x3 , x4 , x5 ) = (5, 30, 0, 0, 20)


Gewinn z = 300
Restriktionen (I) und (II) sind bindend (Schlupf ist x3 = x4 = 0)
Restriktion (III) ist nicht bindend (Schlupf ist x5 = 20 > 0)
39 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Basisinverse im Simplextableau

Merke:
Die Basisinverse steht (in jeder Iteration) genau in den Spalten,
die in der Ausgangslösung die Einheitsmatrix Im enthalten haben.

40 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Basisinverse im Simplextableau

Merke:
Die Basisinverse steht (in jeder Iteration) genau in den Spalten,
die in der Ausgangslösung die Einheitsmatrix Im enthalten haben.

Die vier Iterationsschritte haben somit die folgenden Basisinversen B −1 :


1 Erste Iteration B −1 = Im
2 Zweite Iteration: xB = (x3 , x4 , x1 )> bzw. xB = (x1 , x3 , x4 )> :
1 0 −4/5 0 0 1/5
! !
0 1 −2/5 bzw. nach Umordnen B −1 = 1 0 −4/5
0 0 1/5 0 1 −2/5
3 Dritte Iteration: xB = (x2 , x4 , x1 )> bzw. xB = (x1 , x2 , x4 )>
5/6 0 −2/3 −1/6 0 1/3
! !
−1
−13/6 1 4/3 bzw. nach Umordnen B = 5/6 0 −2/3
−1/6 0 1/3 − /6
13 1 4/3

4 Vierte Iteration: xB = (x2 , x5 , x1 )> bzw. xB = (x1 , x2 , x5 )> (. . . selbst!)

40 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Komplexität des Simplexalgorithmus


Aufwand des Simplexalgorithmus hängt ab von:
1 der Anzahl der Iterationen
→ Anzahl der zulässigen Basislösungen (Ecken), Worst Case: 2m
→ Average Case: linear in m (oft zwischen m und 4m)

41 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Komplexität des Simplexalgorithmus


Aufwand des Simplexalgorithmus hängt ab von:
1 der Anzahl der Iterationen
→ Anzahl der zulässigen Basislösungen (Ecken), Worst Case: 2m
→ Average Case: linear in m (oft zwischen m und 4m)
2 dem Aufwand der einzelnen Iterationen
→ Bestimmung der aktuellen Koeffizienten im Gleichungs-
system: proportional zu nm
→ moderne Implementierungen nutzen spezielle, hoch-
performante Techniken; Aufwand bleibt proportional zu nm

41 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Komplexität des Simplexalgorithmus


Aufwand des Simplexalgorithmus hängt ab von:
1 der Anzahl der Iterationen
→ Anzahl der zulässigen Basislösungen (Ecken), Worst Case: 2m
→ Average Case: linear in m (oft zwischen m und 4m)
2 dem Aufwand der einzelnen Iterationen
→ Bestimmung der aktuellen Koeffizienten im Gleichungs-
system: proportional zu nm
→ moderne Implementierungen nutzen spezielle, hoch-
performante Techniken; Aufwand bleibt proportional zu nm
3 Dichte der Koeffizientenmatrix: Dünn besetzte Matrizen A
→ vereinfachen die Berechnungen zum Basistausch und
→ bedeuten oftmals weniger zulässige Basislösungen.

41 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Komplexität des Simplexalgorithmus


Aufwand des Simplexalgorithmus hängt ab von:
1 der Anzahl der Iterationen
→ Anzahl der zulässigen Basislösungen (Ecken), Worst Case: 2m
→ Average Case: linear in m (oft zwischen m und 4m)
2 dem Aufwand der einzelnen Iterationen
→ Bestimmung der aktuellen Koeffizienten im Gleichungs-
system: proportional zu nm
→ moderne Implementierungen nutzen spezielle, hoch-
performante Techniken; Aufwand bleibt proportional zu nm
3 Dichte der Koeffizientenmatrix: Dünn besetzte Matrizen A
→ vereinfachen die Berechnungen zum Basistausch und
→ bedeuten oftmals weniger zulässige Basislösungen.

Merke:
Modelle mit weniger Variablen und insbesondere weniger
Nebenbedingungen sind tendenziell einfacher zu lösen!
41 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

42 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Lösung allgemeiner MIP


→ Schnittebenenverfahren
→ Branch-&-Bound (B&B)

43 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Lösung allgemeiner MIP


Betrachte das folgende ganzzahlige Programm (IP):
z= max 5x1 + 3x2
so dass 3x1 + 8x2 ≤ 24
6x1 − 2x2 ≤ 6
x1 , x2 ≥ 0 und ganzzahlig

44 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Lösung allgemeiner MIP


Betrachte das folgende ganzzahlige Programm (IP):
z= max 5x1 + 3x2
so dass 3x1 + 8x2 ≤ 24
6x1 − 2x2 ≤ 6
x1 , x2 ≥ 0 und ganzzahlig
x1

3x1 + 8x2 ≤ 24
Die Restriktionen beschreiben 3
implizit die Menge der zulässigen
6x1 − 2x2 ≤ 6
Lösungen: 2
S = (0, 0)> , (0, 1)> , (0, 2)> ,

1
(0, 3)> , (1, 0)> , (1, 1)> , (1, 2)>
x2
1 2 3 4

44 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Lösung allgemeiner MIP


Betrachte das folgende ganzzahlige Programm (IP):
z= max 5x1 + 3x2
so dass 3x1 + 8x2 ≤ 24
6x1 − 2x2 ≤ 6
x1 , x2 ≥ 0 und ganzzahlig
x1

3x1 + 8x2 ≤ 24
Die Restriktionen beschreiben 3
implizit die Menge der zulässigen
6x1 − 2x2 ≤ 6
Lösungen: 2
S = (0, 0)> , (0, 1)> , (0, 2)> ,

1
(0, 3)> , (1, 0)> , (1, 1)> , (1, 2)>
x2
1 2 3 4

Bemerkung: Im Gegensatz zu LPs gibt es für (M)IPs kein algebraisches


Verfahren, das diese ‘direkt’ lösen kann.
44 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

LP-Relaxation eines MIP


Durch Weglassen der Ganzzahligkeitsbedingungen eines IP erhält man
x1
ein LP, die sog. LP-Relaxation.

3
zLP = max 5x1 + 3x2
so dass 3x1 + 8x2 ≤ 24 2
6x1 − 2x2 ≤ 6
1
x1 , x2 ≥0
x2
1 2 3 4

45 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

LP-Relaxation eines MIP


Durch Weglassen der Ganzzahligkeitsbedingungen eines IP erhält man
x1
ein LP, die sog. LP-Relaxation.

3
zLP = max 5x1 + 3x2
so dass 3x1 + 8x2 ≤ 24 2
6x1 − 2x2 ≤ 6
1
x1 , x2 ≥0
x2
Beobachtungen: 1 2 3 4

S ist enthalten im Zulässigkeitsbereich der LP-Relaxation


→ Lösungswert zLP der LP-Relax. ist eine obere Schranke für zIP

45 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

LP-Relaxation eines MIP


Durch Weglassen der Ganzzahligkeitsbedingungen eines IP erhält man
x1
ein LP, die sog. LP-Relaxation.

3
zLP = max 5x1 + 3x2
so dass 3x1 + 8x2 ≤ 24 2
(16/9, 7/3)> ⇒ zLP = 15 98
6x1 − 2x2 ≤ 6
1
x1 , x2 ≥0
x2
Beobachtungen: 1 2 3 4

S ist enthalten im Zulässigkeitsbereich der LP-Relaxation


→ Lösungswert zLP der LP-Relax. ist eine obere Schranke für zIP
Optimale LP-Lösung ist i.A. nicht ganzzahlig, also unzulässig für IP

45 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

LP-Relaxation eines MIP


Durch Weglassen der Ganzzahligkeitsbedingungen eines IP erhält man
x1
ein LP, die sog. LP-Relaxation.

3
zLP = max 5x1 + 3x2
so dass 3x1 + 8x2 ≤ 24 2
(16/9, 7/3)> ⇒ zLP = 15 98
6x1 − 2x2 ≤ 6
1
x1 , x2 ≥0
x2
Beobachtungen: 1 2 3 4

S ist enthalten im Zulässigkeitsbereich der LP-Relaxation


→ Lösungswert zLP der LP-Relax. ist eine obere Schranke für zIP
Optimale LP-Lösung ist i.A. nicht ganzzahlig, also unzulässig für IP
Einfaches Runden liefert i.A. nicht die optimale Lösung; nicht
einmal Zulässigkeit ist garantiert

45 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

LP-Relaxation eines MIP


Durch Weglassen der Ganzzahligkeitsbedingungen eines IP erhält man
x1
ein LP, die sog. LP-Relaxation.

3
zLP = max 5x1 + 3x2
so dass 3x1 + 8x2 ≤ 24 2
(16/9, 7/3)> ⇒ zLP = 15 98
6x1 − 2x2 ≤ 6
1
x1 , x2 ≥0
x2
Beobachtungen: 1 2 3 4

S ist enthalten im Zulässigkeitsbereich der LP-Relaxation


→ Lösungswert zLP der LP-Relax. ist eine obere Schranke für zIP
Optimale LP-Lösung ist i.A. nicht ganzzahlig, also unzulässig für IP
Einfaches Runden liefert i.A. nicht die optimale Lösung; nicht
einmal Zulässigkeit ist garantiert
Bemerkung: Binärbedingungen xi ∈ {0, 1} werden in der LP-Relaxation
durch 0 ≤ xi ≤ 1 ersetzt.
45 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Konvexe Hülle von Ganzzahligen Punkten


x1

x2
Beobachtungen: 1 2 3 4

Die konvexe Hülle X = conv (S) der ganzzahligen Punkte S bildet


ein konvexes Polyeder

46 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Konvexe Hülle von Ganzzahligen Punkten


x1

x2
Beobachtungen: 1 2 3 4

Die konvexe Hülle X = conv (S) der ganzzahligen Punkte S bildet


ein konvexes Polyeder
Alle Eckpunkte von X = conv (S) sind ganzzahlig

46 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Konvexe Hülle von Ganzzahligen Punkten


x1

x2
Beobachtungen: 1 2 3 4

Die konvexe Hülle X = conv (S) der ganzzahligen Punkte S bildet


ein konvexes Polyeder
Alle Eckpunkte von X = conv (S) sind ganzzahlig
Für eine vollständige Darstellung von X , gegeben durch zusätzliche
Ungleichungen (hier: x1 + x2 ≤ 3 und x1 ≤ 1), liefert der
Simplexalgorithmus eine optimale ganzzahlige Lösung

46 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Konvexe Hülle von Ganzzahligen Punkten


x1

x2
Beobachtungen: 1 2 3 4

Die konvexe Hülle X = conv (S) der ganzzahligen Punkte S bildet


ein konvexes Polyeder
Alle Eckpunkte von X = conv (S) sind ganzzahlig
Für eine vollständige Darstellung von X , gegeben durch zusätzliche
Ungleichungen (hier: x1 + x2 ≤ 3 und x1 ≤ 1), liefert der
Simplexalgorithmus eine optimale ganzzahlige Lösung

Bemerkung: Die vollständige Beschreibung des ganzzahligen Polyeder ist


im Allgemeinen nicht bekannt!
46 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Schnittebenenverfahren
Idee: Füge gültige Ungleichungen zu einem (M)IP hinzu, um ‘störende’
nicht-ganzzahlige Lösungen abzuschneiden.
⇒ Annährung an die konvexe Hülle der ganzzahligen Punkte

47 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Schnittebenenverfahren
Idee: Füge gültige Ungleichungen zu einem (M)IP hinzu, um ‘störende’
nicht-ganzzahlige Lösungen abzuschneiden.
⇒ Annährung an die konvexe Hülle der ganzzahligen Punkte
Definition (gültige Ungleichung)
Gegeben sei die Menge S ⊂ Rn aller (ganzzahligen) Lösungen eines
(gemischt-)ganzzahligen Programms (M)IP.
Eine Ungleichung a> x ≤ b mit a ∈ Rn und b ∈ R heißt gültige Unglei-
chung für (M)IP, falls a> x ≤ b für alle x ∈ S gilt.

47 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Schnittebenenverfahren
Idee: Füge gültige Ungleichungen zu einem (M)IP hinzu, um ‘störende’
nicht-ganzzahlige Lösungen abzuschneiden.
⇒ Annährung an die konvexe Hülle der ganzzahligen Punkte
Definition (gültige Ungleichung)
Gegeben sei die Menge S ⊂ Rn aller (ganzzahligen) Lösungen eines
(gemischt-)ganzzahligen Programms (M)IP.
Eine Ungleichung a> x ≤ b mit a ∈ Rn und b ∈ R heißt gültige Unglei-
chung für (M)IP, falls a> x ≤ b für alle x ∈ S gilt.

Beispiele gültiger Ungleichungen: x1

x1 ≤ 10 und x2 ≥ −1
3
x1 + 2x2 ≤ 7
2x1 + x2 ≤ 4 (Seite) 2

x1 + x2 ≤ 3 (Facette) 1
x1 ≤ 1 (Facette)
x2
1 2 3 4
47 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Schnittebenenverfahren
Ablauf Schnittebenenverfahren für (M)IP:

1 Löse die LP-Relaxation LP des (M)IP;


die Lösung von LP sei x̂

x1

2
(16/9, 7/3)>
1

x2
1 2 3 4

48 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Schnittebenenverfahren
Ablauf Schnittebenenverfahren für (M)IP:

1 Löse die LP-Relaxation LP des (M)IP;


die Lösung von LP sei x̂
2 Haben alle ganzzahligen Variablen von x̂
x1
ganzzahlige Werte?
→ STOPP, Lösung ist optimal für (M)IP
3

2
(16/9, 7/3)>
1

x2
1 2 3 4

48 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Schnittebenenverfahren
Ablauf Schnittebenenverfahren für (M)IP:

1 Löse die LP-Relaxation LP des (M)IP;


die Lösung von LP sei x̂
2 Haben alle ganzzahligen Variablen von x̂
x1
ganzzahlige Werte?
→ STOPP, Lösung ist optimal für (M)IP
3
3 Bestimme eine verletzte gültige
Ungleichung, d.h. eine Ungleichung 2
(16/9, 7/3)>
a> x ≤ b (a ∈ Rn , b ∈ R) mit a> x̂ > b
1
x1 ≤ 1
x2
1 2 3 4

48 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Schnittebenenverfahren
Ablauf Schnittebenenverfahren für (M)IP:

1 Löse die LP-Relaxation LP des (M)IP;


die Lösung von LP sei x̂
2 Haben alle ganzzahligen Variablen von x̂
x1
ganzzahlige Werte?
→ STOPP, Lösung ist optimal für (M)IP
3
3 Bestimme eine verletzte gültige
Ungleichung, d.h. eine Ungleichung 2
(16/9, 7/3)>
a> x ≤ b (a ∈ Rn , b ∈ R) mit a> x̂ > b
1
x1 ≤ 1
4 Füge die verletzte gültige Ungleichung
zu LP hinzu x2
1 2 3 4

48 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Schnittebenenverfahren
Ablauf Schnittebenenverfahren für (M)IP:

1 Löse die LP-Relaxation LP des (M)IP;


die Lösung von LP sei x̂
2 Haben alle ganzzahligen Variablen von x̂
x1
ganzzahlige Werte?
→ STOPP, Lösung ist optimal für (M)IP
3
3 Bestimme eine verletzte gültige
Ungleichung, d.h. eine Ungleichung 2
a> x ≤ b (a ∈ Rn , b ∈ R) mit a> x̂ > b (2.625, 1)>
1
x1 ≤ 1
4 Füge die verletzte gültige Ungleichung
zu LP hinzu x2
1 2 3 4
5 Reoptimiere LP und gehe zu 2
→ falls (dualer) Simplexalgorithmus
keine Lösung findet, hat (M)IP keine
zulässige ganzzahlige Lösung
48 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Schnittebenenverfahren
Ablauf Schnittebenenverfahren für (M)IP:

1 Löse die LP-Relaxation LP des (M)IP;


die Lösung von LP sei x̂
2 Haben alle ganzzahligen Variablen von x̂
x1
ganzzahlige Werte?
→ STOPP, Lösung ist optimal für (M)IP
3
x1 + x2 ≤ 3
3 Bestimme eine verletzte gültige
Ungleichung, d.h. eine Ungleichung 2
a> x ≤ b (a ∈ Rn , b ∈ R) mit a> x̂ > b (2.625, 1)>
1
x1 ≤ 1
4 Füge die verletzte gültige Ungleichung
zu LP hinzu x2
1 2 3 4
5 Reoptimiere LP und gehe zu 2
→ falls (dualer) Simplexalgorithmus
keine Lösung findet, hat (M)IP keine
zulässige ganzzahlige Lösung
48 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Schnittebenenverfahren
Ablauf Schnittebenenverfahren für (M)IP:

1 Löse die LP-Relaxation LP des (M)IP;


die Lösung von LP sei x̂
2 Haben alle ganzzahligen Variablen von x̂
x1
ganzzahlige Werte?
→ STOPP, Lösung ist optimal für (M)IP
3
x1 + x2 ≤ 3
3 Bestimme eine verletzte gültige
Ungleichung, d.h. eine Ungleichung 2
a> x ≤ b (a ∈ Rn , b ∈ R) mit a> x̂ > b (2, 1)>
1
x1 ≤ 1
4 Füge die verletzte gültige Ungleichung
zu LP hinzu x2
1 2 3 4
5 Reoptimiere LP und gehe zu 2
→ falls (dualer) Simplexalgorithmus
keine Lösung findet, hat (M)IP keine
zulässige ganzzahlige Lösung
48 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Typen von gültigen Ungleichungen

Man unterscheidet:
Gültige Ungleichungen für generelle (M)IP
→ vollkommen unabhängig von der Struktur des Problems
→ typischerweise keine Facetten, oft eher schwache Ungleichungen
→ Beispiel: Gomory Cuts (Idee: Runden von Koeffizienten)

49 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Typen von gültigen Ungleichungen

Man unterscheidet:
Gültige Ungleichungen für generelle (M)IP
→ vollkommen unabhängig von der Struktur des Problems
→ typischerweise keine Facetten, oft eher schwache Ungleichungen
→ Beispiel: Gomory Cuts (Idee: Runden von Koeffizienten)
Gültige Ungleichungen, die sich aus speziellen Restriktionen ableiten
→ gültig aufgrund spezieller Restriktionen im Modell
→ Restriktionen, die in vielen Modellen vorkommen
→ Beispiel: Cover Cuts (für Rucksack-Bedingungen)

49 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Typen von gültigen Ungleichungen

Man unterscheidet:
Gültige Ungleichungen für generelle (M)IP
→ vollkommen unabhängig von der Struktur des Problems
→ typischerweise keine Facetten, oft eher schwache Ungleichungen
→ Beispiel: Gomory Cuts (Idee: Runden von Koeffizienten)
Gültige Ungleichungen, die sich aus speziellen Restriktionen ableiten
→ gültig aufgrund spezieller Restriktionen im Modell
→ Restriktionen, die in vielen Modellen vorkommen
→ Beispiel: Cover Cuts (für Rucksack-Bedingungen)
Problemspezifische gültige Ungleichungen
→ nur gültig, wenn ein bestimmtes Optimierungsproblem vorliegt
oder als Teilproblem in einem größeren Problem auftaucht
→ haben manchmal die Facetten-Eigenschaft, starke Ungleichungen
→ Beispiel: Comb Inequalities (für das TSP)

49 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Branch-&-Bound (B&B): Allgemeines Prinzip


B&B-Algorithmen stellen eine allgemeine Methodik zur Lösung von
Optimierungsproblemen dar. Die Grundidee dieser Methodik besteht in der
hierarchischen Zerlegung eines Optimierungsproblems P in Teilprobleme.

50 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Branch-&-Bound (B&B): Allgemeines Prinzip


B&B-Algorithmen stellen eine allgemeine Methodik zur Lösung von
Optimierungsproblemen dar. Die Grundidee dieser Methodik besteht in der
hierarchischen Zerlegung eines Optimierungsproblems P in Teilprobleme.
Der Zulässigkeitsbereich des Problems bzw. einer Relaxation des
Problems wird so in Teile zerlegt, dass die bzw. eine optimale Lösung des
übergeordneten Problems in einem der Teilprobleme enthalten ist.
P

··· ··· ··· ··· ··· ··· ··· ··· ··· ··· ··· ···

50 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Branch-&-Bound (B&B): Allgemeines Prinzip


B&B-Algorithmen stellen eine allgemeine Methodik zur Lösung von
Optimierungsproblemen dar. Die Grundidee dieser Methodik besteht in der
hierarchischen Zerlegung eines Optimierungsproblems P in Teilprobleme.
Der Zulässigkeitsbereich des Problems bzw. einer Relaxation des
Problems wird so in Teile zerlegt, dass die bzw. eine optimale Lösung des
übergeordneten Problems in einem der Teilprobleme enthalten ist.
P

··· ··· ··· ··· ··· ··· ··· ··· ··· ··· ··· ···

Im Allgemeinen reicht es nicht aus, eine Zerlegung in Teilprobleme einmal


durchzuführen. Deshalb baut man eine Hierarchie auf, in der ein durch
Zerlegung entstandenes Problem wiederum in neue Teilprobleme zerlegt
wird. Die hierarchische Zerlegung in Teilprobleme lässt sich durch einen
Baum, den sog. Branch-&-Bound-Baum, veranschaulichen.
50 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Branch-&-Bound (B&B): Allgemeines Prinzip


P0

P 01 P 02 P 03

P 011 P 012 P 021 P 022 P 031 P 032

··· ··· ··· ··· ··· ··· ··· ··· ··· ··· ··· ···

Das ursprüngliche Problem P 0 bildet die Wurzel des Baums

51 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Branch-&-Bound (B&B): Allgemeines Prinzip


P0

P 01 P 02 P 03

P 011 P 012 P 021 P 022 P 031 P 032

··· ··· ··· ··· ··· ··· ··· ··· ··· ··· ··· ···

Das ursprüngliche Problem P 0 bildet die Wurzel des Baums


Die Knoten des Baums korrespondieren mit den Teilproblemen, wobei
zwei Knoten des Baums genau dann verbunden sind, wenn ein
Teilproblem durch Zerlegung eines anderen Teilproblems entstanden ist
Die Zerlegung entspricht der Bildung neuer Zweige des Baums, daher
wird die Zerlegung auch als Verzweigung (engl: Branching) bezeichnet

51 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Branch-&-Bound (B&B): Allgemeines Prinzip


P0
x1 = 0 x1 = 2
x1 = 1
P 01 P 02 P 03

P 011 P 012 P 021 P 022 P 031 P 032

··· ··· ··· ··· ··· ··· ··· ··· ··· ··· ··· ···

Das ursprüngliche Problem P 0 bildet die Wurzel des Baums


Die Knoten des Baums korrespondieren mit den Teilproblemen, wobei
zwei Knoten des Baums genau dann verbunden sind, wenn ein
Teilproblem durch Zerlegung eines anderen Teilproblems entstanden ist
Die Zerlegung entspricht der Bildung neuer Zweige des Baums, daher
wird die Zerlegung auch als Verzweigung (engl: Branching) bezeichnet
Beispiel: Ein IP mit ganzzahligen Variablen x1 ∈ {0, 1, 2}, x2 ∈ {5, 6}, x3 ∈ . . .
wird auf der ersten Ebene in drei Zweige zerlegt:
P 01 mit x4 = 0, P 02 mit x4 = 1 und P 03 mit x4 = 2

51 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Branch-&-Bound (B&B): Allgemeines Prinzip


P0
x1 = 0 x1 = 2
x1 = 1
P 01 P 02 P 03
x2 = 5 x2 = 6
P 011 P 012 P 021 P 022 P 031 P 032

··· ··· ··· ··· ··· ··· ··· ··· ··· ··· ··· ···

Das ursprüngliche Problem P 0 bildet die Wurzel des Baums


Die Knoten des Baums korrespondieren mit den Teilproblemen, wobei
zwei Knoten des Baums genau dann verbunden sind, wenn ein
Teilproblem durch Zerlegung eines anderen Teilproblems entstanden ist
Die Zerlegung entspricht der Bildung neuer Zweige des Baums, daher
wird die Zerlegung auch als Verzweigung (engl: Branching) bezeichnet
Beispiel: Ein IP mit ganzzahligen Variablen x1 ∈ {0, 1, 2}, x2 ∈ {5, 6}, x3 ∈ . . .
wird auf der ersten Ebene in drei Zweige zerlegt:
P 01 mit x4 = 0, P 02 mit x4 = 1 und P 03 mit x4 = 2
auf der zweiten Ebene in jeweils zwei Zweige mit x2 = 5 oder x2 = 6 usw.
51 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Branch-&-Bound (B&B): Allgemeines Prinzip

Versucht man nun ein Problem durch rekursive Zerlegung in Teilprobleme


zu lösen, so besteht die Gefahr, dass der Baum sehr groß wird.
(→ kombinatorische Explosion) siehe Tafel!

52 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Branch-&-Bound (B&B): Allgemeines Prinzip

Versucht man nun ein Problem durch rekursive Zerlegung in Teilprobleme


zu lösen, so besteht die Gefahr, dass der Baum sehr groß wird.
(→ kombinatorische Explosion) siehe Tafel!

Bei einer Zerlegung in jeweils 3 Teilprobleme hat die i-te Ebene des
B&B-Baums bereits 3i Teilprobleme.

52 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Branch-&-Bound (B&B): Allgemeines Prinzip

Versucht man nun ein Problem durch rekursive Zerlegung in Teilprobleme


zu lösen, so besteht die Gefahr, dass der Baum sehr groß wird.
(→ kombinatorische Explosion) siehe Tafel!

Bei einer Zerlegung in jeweils 3 Teilprobleme hat die i-te Ebene des
B&B-Baums bereits 3i Teilprobleme.
für i = 6 sind das schon 36 = 729 Teilprobleme,
für i = 10 sind das schon 310 = 59049 Teilprobleme und
für i = 15 sind das schon > 14 Mio Teilprobleme.

52 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Branch-&-Bound (B&B): Allgemeines Prinzip

Versucht man nun ein Problem durch rekursive Zerlegung in Teilprobleme


zu lösen, so besteht die Gefahr, dass der Baum sehr groß wird.
(→ kombinatorische Explosion) siehe Tafel!

Bei einer Zerlegung in jeweils 3 Teilprobleme hat die i-te Ebene des
B&B-Baums bereits 3i Teilprobleme.
für i = 6 sind das schon 36 = 729 Teilprobleme,
für i = 10 sind das schon 310 = 59049 Teilprobleme und
für i = 15 sind das schon > 14 Mio Teilprobleme.

Dies kann dadurch vermieden werden, wenn man zeigt, dass die optimale
Lösung in einem Teilproblem nicht mehr vorhanden sein kann. In diesem
Falle braucht dieses Problem nicht mehr betrachtet zu werden.

52 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Branch-&-Bound (B&B): Allgemeines Prinzip

Versucht man nun ein Problem durch rekursive Zerlegung in Teilprobleme


zu lösen, so besteht die Gefahr, dass der Baum sehr groß wird.
(→ kombinatorische Explosion) siehe Tafel!

Bei einer Zerlegung in jeweils 3 Teilprobleme hat die i-te Ebene des
B&B-Baums bereits 3i Teilprobleme.
für i = 6 sind das schon 36 = 729 Teilprobleme,
für i = 10 sind das schon 310 = 59049 Teilprobleme und
für i = 15 sind das schon > 14 Mio Teilprobleme.

Dies kann dadurch vermieden werden, wenn man zeigt, dass die optimale
Lösung in einem Teilproblem nicht mehr vorhanden sein kann. In diesem
Falle braucht dieses Problem nicht mehr betrachtet zu werden.
Der Nachweis, dass ein Teilproblem nicht (weiter) untersucht werden
muss, korrespondiert mit dem Abschneiden (engl.: Bounding) des
Baum-Astes. Dies erfolgt durch Anwendung logischer Regeln.

52 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Dakin Algorithmus: B&B-Verfahren für allgemeine MIP


Der Dakin-Algorithmus ist ein B&B-Verfahren zur exakten Lösung allgemeiner
gemischt-ganzzahliger linearer Programme (MIP).
Hauptkomponenten:
1 In jedem Knoten P i wird die LP-Relaxation des Teilproblems gelöst.
→ liefert (bei Maximierung) eine obere Schranke zUB (i)
→ wenn zUB (i) nicht größer als eine globale untere Schranke (z.B. eine
bekannte zulässige Lösung) ⇒ Bounding

53 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Dakin Algorithmus: B&B-Verfahren für allgemeine MIP


Der Dakin-Algorithmus ist ein B&B-Verfahren zur exakten Lösung allgemeiner
gemischt-ganzzahliger linearer Programme (MIP).
Hauptkomponenten:
1 In jedem Knoten P i wird die LP-Relaxation des Teilproblems gelöst.
→ liefert (bei Maximierung) eine obere Schranke zUB (i)
→ wenn zUB (i) nicht größer als eine globale untere Schranke (z.B. eine
bekannte zulässige Lösung) ⇒ Bounding
2 Verzweigungsregel (= Zerlegung in Teilprobleme): Wenn die Lösung der
LP-Relaxation nicht ganzzahlig ist, wähle eine ganzzahlige Variable xj mit
Wert x̄j = bx̄j c + f¯j und 0 < f¯j < 1 in der aktuellen LP-Lösung und bilde
die beiden Teilprobleme xj ≤ bx̄j c und xj ≥ dx̄j e durch hinzufügen der
jeweligen Ungleichung
→ optimale LP-Lösung wird in beiden Teilproblemen unzulässig

53 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Dakin Algorithmus: B&B-Verfahren für allgemeine MIP


Der Dakin-Algorithmus ist ein B&B-Verfahren zur exakten Lösung allgemeiner
gemischt-ganzzahliger linearer Programme (MIP).
Hauptkomponenten:
1 In jedem Knoten P i wird die LP-Relaxation des Teilproblems gelöst.
→ liefert (bei Maximierung) eine obere Schranke zUB (i)
→ wenn zUB (i) nicht größer als eine globale untere Schranke (z.B. eine
bekannte zulässige Lösung) ⇒ Bounding
2 Verzweigungsregel (= Zerlegung in Teilprobleme): Wenn die Lösung der
LP-Relaxation nicht ganzzahlig ist, wähle eine ganzzahlige Variable xj mit
Wert x̄j = bx̄j c + f¯j und 0 < f¯j < 1 in der aktuellen LP-Lösung und bilde
die beiden Teilprobleme xj ≤ bx̄j c und xj ≥ dx̄j e durch hinzufügen der
jeweligen Ungleichung
→ optimale LP-Lösung wird in beiden Teilproblemen unzulässig
Weitere Komponenten: (z.B.)
Variablenauswahl Auf welcher Variablen wird verzweigt?
Knotenauswahl Welches Teilproblem wird als nächstes abgearbeitet?
Initialisierung (Wie) wird eine initiale Lösung/untere Schranke bestimmt?
Fixierung Können Variablen auf bestimmte Werte fixiert werden?
53 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Dakin Algorithmus: Beispiel


x1
zUB = 15 89
3
2
(16/9, 7/3)>
1
x2
1 2 3 4
x2 ≤ 2 x2 ≥ 3
x1 x1
zUB = 12 23 zUB = 9
3 3
2 2
(2, 5/3)>
1 1
(3, 0)>
x2 x2
1 2 3 4 1 2 3 4
x1 ≤ 1 x1 ≥ 2
x1 x1
zUB = 11
3 3
2 2
(2, 1)>
1 1
x2 x2
1 2 3 4 1 2 3 4

54 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Dakin Algorithmus: Beispiel


x1
zUB = 15 89
3
2
(16/9, 7/3)>
1
x2
1 2 3 4
x2 ≤ 2 x2 ≥ 3
x1 x1
zUB = 12 23 zUB = 9
3 3
2 2
(2, 5/3)>
1 1
(3, 0)>
x2 x2
1 2 3 4 1 2 3 4
x1 ≤ 1 x1 ≥ 2
x1 x1
zUB = 11
3 3
2 2
(2, 1)>
1 1
x2 x2
1 2 3 4 1 2 3 4

54 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Dakin Algorithmus: Beispiel


x1
zUB = 15 89
3
2
(16/9, 7/3)>
1
x2
1 2 3 4
x2 ≤ 2 x2 ≥ 3
x1 x1
zUB = 12 23 zUB = 9
3 3
2 2
(2, 5/3)>
1 1
(3, 0)>
x2 x2
1 2 3 4 1 2 3 4
x1 ≤ 1 x1 ≥ 2
x1 x1
zUB = 11
3 3
2 2
(2, 1)>
1 1
x2 x2
1 2 3 4 1 2 3 4

54 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Dakin Algorithmus: Beispiel


x1
zUB = 15 89
3
2
(16/9, 7/3)>
1
x2
1 2 3 4
x2 ≤ 2 x2 ≥ 3
x1 x1
zUB = 12 23 zUB = 9
3 3
2 2
(2, 5/3)>
1 1
(3, 0)>
x2 x2
1 2 3 4 1 2 3 4
x1 ≤ 1 x1 ≥ 2
x1 x1
zUB = 11
3 3
2 2
(2, 1)>
1 1
x2 x2
1 2 3 4 1 2 3 4

54 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Dakin Algorithmus: Beispiel


x1
zUB = 15 89
3
2
(16/9, 7/3)>
1
x2
1 2 3 4
x2 ≤ 2 x2 ≥ 3
x1 x1
zUB = 12 23 zUB = 9
3 3
2 2
(2, 5/3)>
1 1
(3, 0)>
x2 x2
1 2 3 4 1 2 3 4
x1 ≤ 1 x1 ≥ 2
x1 x1
zUB = 11
3 3
2 2
(2, 1)>
1 1
x2 x2
1 2 3 4 1 2 3 4

54 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Dakin Algorithmus: Beispiel


x1
zUB = 15 89
3
2
(16/9, 7/3)>
1
x2
1 2 3 4
x2 ≤ 2 x2 ≥ 3
x1 x1
zUB = 12 23 zUB = 9
3 3
2 2
(2, 5/3)>
1 1
(3, 0)>
x2 x2
1 2 3 4 1 2 3 4
x1 ≤ 1 x1 ≥ 2
x1 x1
zUB = 11
3 3
2 2
(2, 1)>
1 1
x2 x2
1 2 3 4 1 2 3 4

54 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Dakin Algorithmus: Beispiel


x1
zUB = 15 89
3
2
(16/9, 7/3)>
1
x2
1 2 3 4
x2 ≤ 2 x2 ≥ 3
x1 x1
zUB = 12 23 zUB = 9
3 3
2 2
(2, 5/3)>
1 1
(3, 0)>
x2 x2
1 2 3 4 1 2 3 4
x1 ≤ 1 x1 ≥ 2
x1 x1
zUB = 11
3 3
2 2
(2, 1)>
1 1
x2 x2
1 2 3 4 1 2 3 4

54 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Schnittebenenverfahren und Branch-&-Bound


Vergleich Schnittebenenverfahren und B&B-Verfahren:
Beide Verfahren sind exakt und benötigen im Worst Case
exponentiell viele Schritte.
Schnittebenen schneiden am Rand einen Teil (des LP-zulässigen
aber (M)IP-unzulässigen Bereichs) weg.
B&B-Verfahren teilen den zulässigen Bereich in zwei Teile und
schneideen dabei ‘in der Mitte’ einen (LP-zulässigen aber
(M)IP-unzulässigen) Streifen weg.

55 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Schnittebenenverfahren und Branch-&-Bound


Vergleich Schnittebenenverfahren und B&B-Verfahren:
Beide Verfahren sind exakt und benötigen im Worst Case
exponentiell viele Schritte.
Schnittebenen schneiden am Rand einen Teil (des LP-zulässigen
aber (M)IP-unzulässigen Bereichs) weg.
B&B-Verfahren teilen den zulässigen Bereich in zwei Teile und
schneideen dabei ‘in der Mitte’ einen (LP-zulässigen aber
(M)IP-unzulässigen) Streifen weg.
Branch-&-Cut (B&C) ist die Kombination aus Schnittebenenverfahren
und B&B:
In jedem Knoten wird die LP-Relaxation durch zusätzliche gültige
Ungleichungen gestärkt
Es entsteht ein Trade-Off zwischen dem Aufwand in den einzelnen
Knoten und der größe des Branch-&-Bound-Baumes
→ mehr Schnittebenen ⇒ schärfere Schranken ⇒ kleinerer Baum
→ weniger Schnittebenen ⇒ schnellere Lösung der einzelnen Knoten
55 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Erinnerung: Lösung allgemeiner MIP


Alle drei Verfahren (Schnittebenenverfahren, B&B, B&C) funktionieren in der
Regel umso besser, je besser die LP-Relaxation das ganzzahligen Polyeder und
damit die optimale ganzzahlige Lösung annährt:
Für Schnittebenenverfahren: Weniger Iterationen nötig, weniger gültige
Ungleichungen werden benötigt (→ Modell kleiner)
Für B&B: Weniger Zerlegungen nötig, d.h. Baum ist kleiner
Für B&C: beides

56 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Erinnerung: Lösung allgemeiner MIP


Alle drei Verfahren (Schnittebenenverfahren, B&B, B&C) funktionieren in der
Regel umso besser, je besser die LP-Relaxation das ganzzahligen Polyeder und
damit die optimale ganzzahlige Lösung annährt:
Für Schnittebenenverfahren: Weniger Iterationen nötig, weniger gültige
Ungleichungen werden benötigt (→ Modell kleiner)
Für B&B: Weniger Zerlegungen nötig, d.h. Baum ist kleiner
Für B&C: beides

Merke:
Formulierungen mit exponentiell vielen Nebenbedingungen und/oder
Variablen weisen oftmals eine kleinere Ganzzahligkeitslücke (engl.:
integrality gap, Abstand der optimalen LP- und (M)IP-Lösungen) auf
als kompakte Modelle und sind deswegen schneller zu lösen!

56 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Erinnerung: Lösung allgemeiner MIP


Alle drei Verfahren (Schnittebenenverfahren, B&B, B&C) funktionieren in der
Regel umso besser, je besser die LP-Relaxation das ganzzahligen Polyeder und
damit die optimale ganzzahlige Lösung annährt:
Für Schnittebenenverfahren: Weniger Iterationen nötig, weniger gültige
Ungleichungen werden benötigt (→ Modell kleiner)
Für B&B: Weniger Zerlegungen nötig, d.h. Baum ist kleiner
Für B&C: beides

Merke:
Formulierungen mit exponentiell vielen Nebenbedingungen und/oder
Variablen weisen oftmals eine kleinere Ganzzahligkeitslücke (engl.:
integrality gap, Abstand der optimalen LP- und (M)IP-Lösungen) auf
als kompakte Modelle und sind deswegen schneller zu lösen!

Weitere Einflussfaktoren: z.B.:


Größe des Modells: beeinflusst die Zeit zur Lösung der LP-Relaxationen
Symmetrie: Abschneiden/Verzweigen einer Lösung führt zu einer Lösung
die symmetrisch zur aktuellen ist und somit zu keiner Verbesserung
56 / 57
Kapitel 3: Exakte Lösung von VRPs
Kapitel 3.1: (Wiederholung) Lösung LP und MIP
Literatur

Kommerzielle MIP-Solver
Kommerzielle MIP-Solver (z.B. CPLEX, Gurobi, SCIP, XPress, . . .)
nutzen im Kern einen B&C-Algorithmus zur Lösung genereller MIP.
Techniken zur Performancesteigerung:
Preprocessing/Presolving
→ Verkleinern/verstärken des Modells (z.B. Eliminieren von Variablen/
Nebenbedingungen, Wertebereiche einschränken, . . .)
→ Finden zulässiger Lösungen mit Heuristiken
Gültige Ungleichungen für generelle (M)IP
Erkennen von (Teil)strukturen
→ Spezielle gültige Ungleichungen (z.B. Cover Cuts, Clique Cuts)
→ Symmetriereduktion
→ Spezielle Verfahren zur Lösung von LP (z.B. Network Simplex)
Techniken zur Auswahl besserer Branching-Entscheidungen
→ Strong Branching, Lookahead Branching, . . .
Fixieren von Variablen aufgrund verschiedener Kriterien
Cut- und Column-Pools
→ Nicht alle Nebenbedingungen/Variablen werden zu jeder Zeit betrachtet
57 / 57
Kapitel 3: Exakte Lösung von VRPs
Literatur

[Domschke und Drexl 2007] Domschke, W. ; Drexl, A.: Einführung in


Operations Research. 7. Auflage. Berlin : Springer, 2007
[Grünert und Irnich 2005] Grünert, T. ; Irnich, S.: Optimierung im Transport
Band I: Grundlagen. Aachen : Shaker Verlag, 2005
[Zimmermann 2005] Zimmermann, H.J.: Operations Research Methoden und
Modelle. Wiesbaden : Vieweg, 2005

57 / 57

Das könnte Ihnen auch gefallen