Aufgabe 5.3 Duale Simplexverfahren

Aufgabe 5.3 Duale Simplexverfahren Knut Krause Thomas Siwczyk Stefan Tittel Technische Universität Dortmund Fakultät für Informatik Algorithmen un...
22 downloads 0 Views 196KB Size
Aufgabe 5.3 Duale Simplexverfahren Knut Krause

Thomas Siwczyk

Stefan Tittel

Technische Universität Dortmund Fakultät für Informatik

Algorithmen und Datenstrukturen 15. Januar 2009

Knut Krause, Thomas Siwczyk, Stefan Tittel

Duale Simplexverfahren

Aufgabenstellung und Motivation Erläuterung und Beispiel

Gliederung

1

Aufgabenstellung und Motivation

2

Erläuterung und Beispiel Allgemeines Vorgehen Tableau-Methode Revidierte Simplex-Methode

Knut Krause, Thomas Siwczyk, Stefan Tittel

Duale Simplexverfahren

Aufgabenstellung und Motivation Erläuterung und Beispiel

Gliederung

1

Aufgabenstellung und Motivation

2

Erläuterung und Beispiel Allgemeines Vorgehen Tableau-Methode Revidierte Simplex-Methode

Knut Krause, Thomas Siwczyk, Stefan Tittel

Duale Simplexverfahren

Aufgabenstellung und Motivation Erläuterung und Beispiel

Aufgabenstellung

Erläutern Sie das duale Simplexverfahren (Tableau-Methode und revidierte Simplex-Methode) und veranschaulichen Sie das Verfahren anhand eines Beispiels.

Knut Krause, Thomas Siwczyk, Stefan Tittel

Duale Simplexverfahren

Aufgabenstellung und Motivation Erläuterung und Beispiel

Motivation Lösung eines LPs, welches weder in kanonischer Form vorliegt, noch leicht in diese transformiert werden kann Beispiel max s. t.

F(x1 , x2 ) x1 + x2 3x1 + x2 x1 + x2 x1 , x2

= ≥ ≥ ≤ ≥

2x1 + x2 8 12 10 0

Erweiterung eines LPs, zu dem eine optimale Lösung besteht, die nach der Erweiterung des LPs keine Lösung mehr ist Knut Krause, Thomas Siwczyk, Stefan Tittel

Duale Simplexverfahren

Aufgabenstellung und Motivation Erläuterung und Beispiel

Allgemeines Vorgehen Tableau-Methode Revidierte Simplex-Methode

Gliederung

1

Aufgabenstellung und Motivation

2

Erläuterung und Beispiel Allgemeines Vorgehen Tableau-Methode Revidierte Simplex-Methode

Knut Krause, Thomas Siwczyk, Stefan Tittel

Duale Simplexverfahren

Aufgabenstellung und Motivation Erläuterung und Beispiel

Allgemeines Vorgehen Tableau-Methode Revidierte Simplex-Methode

Gliederung

1

Aufgabenstellung und Motivation

2

Erläuterung und Beispiel Allgemeines Vorgehen Tableau-Methode Revidierte Simplex-Methode

Knut Krause, Thomas Siwczyk, Stefan Tittel

Duale Simplexverfahren

Aufgabenstellung und Motivation Erläuterung und Beispiel

Allgemeines Vorgehen Tableau-Methode Revidierte Simplex-Methode

Überblick

finde zulässige (nicht notwendigerweise optimale) Basislösung für das Problem übergib diese Basislösung an primalen Simplex falls Start mit dual zulässiger1 Lösung, so ist erste primal zulässige Basislösung zugleich optimal Schritt 1 und 2 (Wahl von Pivotzeile und Pivotspalte) anders als beim primalen Algorithmus Schritt 3 (Tableautransformation/Matrizenrechnung) identisch zum primalen Algorithmus

1

alle Eintragungen in der F-Zeile ≥ 0 Knut Krause, Thomas Siwczyk, Stefan Tittel

Duale Simplexverfahren

Aufgabenstellung und Motivation Erläuterung und Beispiel

Allgemeines Vorgehen Tableau-Methode Revidierte Simplex-Methode

Umwandlung des Ausgangsproblems

Umformung des Ausgangsproblems in kanonische Form mit Schlupfvariablen, aber negative bi zulässig Beispiel – der kanonischen Form zugrundeliegendes LGS F x3 x4 x5

= = = =

2x1 + x2 x1 + x2 − 8 3x1 + x2 − 12 −x1 − x2 + 10

Knut Krause, Thomas Siwczyk, Stefan Tittel

Duale Simplexverfahren

Aufgabenstellung und Motivation Erläuterung und Beispiel

Allgemeines Vorgehen Tableau-Methode Revidierte Simplex-Methode

Start-Tableau/-Matrix für Tableau-Methode: x1 x2 x3 x4 x5 bi x3 −1 −1 1 −8 1 −12 x4 −3 −1 x5 1 1 1 10 F −2 −1 0 0 0 0 für revidierte Simplex-Methode: 

−1 −1 1 0 0 −3 −1 0 1 0    1 1 0 0 1 −2 −1 0 0 0 Knut Krause, Thomas Siwczyk, Stefan Tittel



0 −8 0 −12   0 10  1 0

Duale Simplexverfahren

Aufgabenstellung und Motivation Erläuterung und Beispiel

Allgemeines Vorgehen Tableau-Methode Revidierte Simplex-Methode

Wahl der Pivotzeile

Voraussetzung Basislösung eines LPs (muss nicht zulässig sein); aktuelle Eintragungen im Simplextableau seien mit aij′ , bi′ , cj′ bezeichnet 1

gibt es kein bi′ < 0: zulässige Basislösung liegt vor ⇒ Abbruch

2

sonst: wähle Zeile s mit kleinstem bs′ als Pivotzeile (bei mehreren mit gleichem kleinsten Wert wähle beliebige)

Knut Krause, Thomas Siwczyk, Stefan Tittel

Duale Simplexverfahren

Aufgabenstellung und Motivation Erläuterung und Beispiel

Allgemeines Vorgehen Tableau-Methode Revidierte Simplex-Methode

Wahl der Pivotspalte 1

gibt es kein asj′ < 0 in Pivotzeile s: Problem hat keine zulässige Basislösung ⇒ Abbruch des gesamten Verfahrens

2

ansonsten wähle Spalte t mit n c′ o ct′ j ′ = max j = 1, . . . , n mit a < 0 st ′ ast asj′

als Pivotspalte Anmerkung Beim primalen Simplex wird zuerst die Pivotspalte, dann die Pivotzeile ausgewählt, beim dualen ist es andersherum.

Knut Krause, Thomas Siwczyk, Stefan Tittel

Duale Simplexverfahren

Aufgabenstellung und Motivation Erläuterung und Beispiel

Allgemeines Vorgehen Tableau-Methode Revidierte Simplex-Methode

Gliederung

1

Aufgabenstellung und Motivation

2

Erläuterung und Beispiel Allgemeines Vorgehen Tableau-Methode Revidierte Simplex-Methode

Knut Krause, Thomas Siwczyk, Stefan Tittel

Duale Simplexverfahren

Aufgabenstellung und Motivation Erläuterung und Beispiel

Allgemeines Vorgehen Tableau-Methode Revidierte Simplex-Methode

Beispiel – Tableau 1

x3 x4 x5 F

x1 −1 −3 1 −2

x2 x3 x4 x5 −1 1 −1 1 1 1 −1 0 0 0

bi −8 − 12 10 0

1

Test: Basis-Lösung zulässig? Nein: x3 = −8 und x4 = −12!

2

bi = −12 ist minimal, Zeile 2 wird Pivotzeile

3 4

c1′ ′ a21 ′ a22

=

−2 −3

=

2 3

und

c2′ ′ a22

=

−1 −1

= 1 ⇒ Spalte 2 wird Pivotspalte

wird Pivotelement

Jetzt: Transformation (wie beim primalen Simplex)! Knut Krause, Thomas Siwczyk, Stefan Tittel

Duale Simplexverfahren

Aufgabenstellung und Motivation Erläuterung und Beispiel

Allgemeines Vorgehen Tableau-Methode Revidierte Simplex-Methode

Beispiel – Tableau 2

x3 x2 x5 F

x1 x2 x3 2 1 3 1 −2 1 0 0

x4 x5 −1 −1 −1 1 −1 0

bi 4 12 −2 12

1

Test: Basis-Lösung zulässig? Nein: x5 = −2!

2

bi = −2 ist minimal, Zeile 3 wird Pivotzeile

3

′ ist einzige Auswahlmöglichkeit, Spalte 1 wird Pivotspalte a31

4

′ wird Pivotelement a31

Jetzt: Transformation (wie beim primalen Simplex)! Knut Krause, Thomas Siwczyk, Stefan Tittel

Duale Simplexverfahren

Aufgabenstellung und Motivation Erläuterung und Beispiel

Allgemeines Vorgehen Tableau-Methode Revidierte Simplex-Methode

Beispiel – Tableau 3

x3 x2 x1 F 1

x1 x2 x3 x4 1 1 1 2 1 − 12 0 0 0 − 12

x5 1 3 2

− 21 1 2

bi 2 9 1 11

Test: Basis-Lösung zulässig? Ja! Nun primaler Simplex: x1 x2 x3 x4 x5 bi x3 1 1 2 x4 2 1 3 18 1 10 x1 1 1 F 0 1 0 0 2 20

Optimal: x1 = 10, x3 = 2, x4 = 18, x2 = x5 = 0, F = 20 Knut Krause, Thomas Siwczyk, Stefan Tittel

Duale Simplexverfahren

Aufgabenstellung und Motivation Erläuterung und Beispiel

Allgemeines Vorgehen Tableau-Methode Revidierte Simplex-Methode

Gliederung

1

Aufgabenstellung und Motivation

2

Erläuterung und Beispiel Allgemeines Vorgehen Tableau-Methode Revidierte Simplex-Methode

Knut Krause, Thomas Siwczyk, Stefan Tittel

Duale Simplexverfahren

Aufgabenstellung und Motivation Erläuterung und Beispiel

Allgemeines Vorgehen Tableau-Methode Revidierte Simplex-Methode

A˜1 x1



x2 x3 x4 x5 F

−1 −1 1 0 0 0

bi −8



   −3 −1 0 1 0 0 −12     1 1 0 0 1 0 10    −2 −1 0 0 0 1

B1

0

B1−1 x2 x3 x5 F x2



−1 1 0 0

 x3  −1 0 0 0  x5   1 0 1 0 F

−1 0 0 1

x2 x3 x5 F

     

Knut Krause, Thomas Siwczyk, Stefan Tittel

x2

 

0 −1 0 0

 

x3  1 −1 0 0     x5   0 1 1 0  F 0 −1 0 1 Duale Simplexverfahren

Aufgabenstellung und Motivation Erläuterung und Beispiel

Allgemeines Vorgehen Tableau-Methode Revidierte Simplex-Methode

A˜1 · B1−1 x1 x2 x3 x4 x5 F



3

bi

1 0 −1 0 0 12



   2 0 1 −1 0 0 4       −2 0 0 1 1 0 −2    1

0 0 −1 0 1 12

B2

B2−1 x1 x2 x3 F x1



3

1 0 0



    2 0 1 0   x3  −2 0 0 0   x2  F

1

0 0 1

x1

x1 x2 x3

F

− 21

0

0 0

 

x2  1 0 

x3  0 1 F

Knut Krause, Thomas Siwczyk, Stefan Tittel

  

0 0

Duale Simplexverfahren

3 2

1 1 2



  0    0   1

Allgemeines Vorgehen Tableau-Methode Revidierte Simplex-Methode

Aufgabenstellung und Motivation Erläuterung und Beispiel

A˜2 · B2−1 x1 x2 x3 x4

x5

− 12

− 12

0

1

1 2

3 2

0

9

1

1

0

2

− 21

1 2

1 11



 1 0 0   0 1 0    0 0 1  0 0 0

F bi

       

Lösung ist gültige primale Basislösung Algorithmusstop

Knut Krause, Thomas Siwczyk, Stefan Tittel

Duale Simplexverfahren

Literatur

Literatur

Wolfgang Domschke und Andreas Drexl. Einführung in Operations Research. Springer, Berlin [u.a.], 2005.

Knut Krause, Thomas Siwczyk, Stefan Tittel

Duale Simplexverfahren