Lineare Optimierung Teil 2 - HTW Berlin · PPP-3 Zur Fertigung von P 1 werden die drei Maschinen M...
Transcript of Lineare Optimierung Teil 2 - HTW Berlin · PPP-3 Zur Fertigung von P 1 werden die drei Maschinen M...
1
Lineare Optimierung Teil 2
•Duale Degeneration = Mehrdeutigkeit
HTW-Berlin
FB3 Prof. Dr .F. Hartl
•Primale Degeneration
•Duale Simplexmethode
•Normalform – kanonische Form
2
Primale Degeneration/1
Spezialfall der Redundanz der Nebenbedingungen.
Geometrisch gesehen ist dann ein Eckpunkt durch mehr als n Hyperebenen bestimmt (ist überbestimmt).
Primale Degeneration wird durch das Auftreten von Nullen in der RHS Spalte ersichtlich. Basisvariable hat Wert Null
Wenn das Folgetableau degeneriert ist, so wird das bereits im vorangehenden Tableau erkennbar:
Besitzt eine zulässige Basislösung genau m (=Anzahl NB) positive Komponenten, wird sie nichtausgeartet (nichtdegeneriert) genannt.
Die PZ-Regel liefert mehrere kleinste Quotienten Pivotzeile nicht eindeutig würfeln als günstigster Kompromiß
3
Primale Degeneration/2
Theoretisch besteht ein „Kreisen“ in degenerierten Ecken
ist praktisch jedoch irrelevant.
4
Duale Degeneration =Mehrdeutigkeit
Duale Degeneration, wenn Nichtbasisvariable im optimalen Tableau einen Zielzeilenkoeffizienten (=Opportunitätskosten) gleich Null hat.
wenn die Zielfunktion auf einer Nebenbedingung “liegt”,
Das Problem hat zwei Eckpunklösungen (und damit auch alle auf der Kante liegenden Punkte) als optimale Basislösungen.
5
Bsp. Mehrdeutigkeit
Basis x1 x2 x3 x4 x5 RHS
x3 2 4 1 0 0 40
x4 3 2 0 1 0 24
x5 1 0 0 0 1 6
Z -500 -1000 0 0 0 0
x2 1/2 1 1/4 0 0 10
x4 2 0 -1/2 1 0 4
x5 1 0 0 0 1 6
Z 0 0 250 0 0 10.000
x2 0 1 3/8 -1/4 0 9
x1 1 0 -1/4 1/2 0 2
x5 0 0 1/4 -1/2 1 4
Z 0 0 250 0 0 10.000
Zwei Eckpunktlösungen und zusätzlich alle Punkte auf der Verbindungsgeraden, d.h.
Ergebnis:
Eckpunktlösung 1
Eckpunktlösung 2 bei gleichem Z-Wert
Normalerweise sind wegen drei BV auch drei Nullen in der Z-Zeile, hier aber unter der NBV x1 eine weitere Null
neue Basis-Transformation mit x1
x = Eckpunktlösung1 + (1- ) Eckpunktlösung2 mit 0 1 sind optimal
6
Unbegrenzte Lösungen
Die Lösungsmenge ist unendlich.
wenn in der Pivotspalte nur negative Koeffizienten bei positiver RHS vorhanden sind.
Merke: Pivotelement darf niemals Null und negativ sein.
7
keine Lösungen des LOP
Zulässiger Lösungsbereich X ist leer, wenn die Nebenbedingungen widersprüchlich formuliert sind.
8
wenn primaler Simplex angewendet wird, dann Standardform
(1) Maximierung der Zielfunktion:
(2) „“ in strukturellen Nebenbedingungen:
(3) Definitionsbereiche der strukturellen Variablen:
max cTx
Ax b
x 0
b 0(4) Nichtnegative RHS
9
andere Formen in Standardform übertragbar
max -cTx
- aTx - b
(3) x u
(1) min cTx
(2) aTx b
x - u 0 mit x+ 0
x o x- := o - x mit x- 0
x unbeschränkt x := x+ - x-
mit x+ 0 mit x- 0
x = g x g, x g
x+ := x - u
0 o - x
10
andere Formen in Standardform übertragbar
b 0 nicht erzwingbar
aber ausgehend vom Anfangstableau eine erste zulässige Basislösung über mehrere Basistransformationen (BT) ermitteln
Wie ?
Zeilen mit negativen b-Werten durch BT beseitigen
Umkehrung der Auswahlregel-Reihenfolge für das Pivotelement:
Erst PZ, dann PS.
11
Bearbeitungszeit in
h/t
Maschine P1 P2
M1 2 4
M2 3 2
M3 1 0
PPP-3
Zur Fertigung von P1 werden die drei Maschinen M1, M2 und M3 eingesetzt. Für das Produkt P2 werden nur die Maschinen M1 und M2 benötigt .
M1 soll höchstens 40 Stunden [h], M2 mindestens 24 [h] und M3 genau 6 [h] arbeiten.
Die Stückkosten pro Tonne P1 betragen 200 € bzw. pro Tonne P2 300 €.
Die Bearbeitungszeiten in Stunden [h] je Tonne durch die jeweilige Maschine sind der folgenden Tabelle zu entnehmen:
Gesucht ist das PP(x1, x2) mit minimalen Kosten.
12
Bezeichnung: xi - Menge des Produktes Pi (i=1,2)
Minimiere Zielfunktion: z(x1, x2) = 200 x1 + 300 x2
Mathematisches Modell von PPP-3
NNB: x1 x2 0.
M1-Restriktion: 2 x1 + 4 x2 40
M2-Restriktion: 3 x1 + 2 x2 24
M3-Restriktion: x1 = 6
NB:
13
Erzeugen der Standardform
x1 6
-x1 -6
2 x1 + 4 x2 40
-3 x1 - 2 x2 -24
Min z = 200 x1 + 300 x2
2 x1 + 4 x2 403 x1 + 2 x2 24
x1 = 6
Max –z = -200 x1 - 300 x2
aus wird
14
Erzeugen der kanonischen Form
x1 + x5 = 6
-x1 + x6 = -6
2 x1 + 4 x2 + x3 = 40
-3 x1 - 2 x2 + x4 = -24
x1 , x2 , x3 , x4 , x5 , x6 0
200 x1 + 300 x2 -z = 0
15
Tabellenform
Unzulässige RHS
Basis x1 x2 x3 x4 x5 x6 RHS
x3 2 4 1 0 0 0 40
x4 -3 -2 0 1 0 0 -24
x5 1 0 0 0 1 0 6
x6 -1 0 0 0 0 1 -6
- Z 200 300 0 0 0 0 0
16
zulässige Basislösung erzeugenmittels dualer Simplexmethode
Min[RHS]
Max[Q]
Min[RHS]
Basistransformation x4 x1
BV x1 x2 x3 x4 x5 x6 z RHS
x3 2 4 1 0 0 0 0 40
x4 -3 -2 0 1 0 0 0 -24
x5 1 0 0 0 1 0 0 6
x6 -1 0 0 0 0 1 0 -6
-z 200 300 0 0 0 0 1 0
BV x1 x2 x3 x4 x5 x6 z RHS
x3 0 8/3 1 2/3 0 0 0 24
x1 1 2/3 0 - 1/3 0 0 0 8
x5 0 - 2/3 0 1/3 1 0 0 -2
x6 0 2/3 0 - 1/3 0 1 0 2
-z 0 500/3 0 200/3 0 0 1 -1600
Basistransformation x5 x2
Zulässige RHS
und optimales Tableau, da nicht negative Z-Zeile
BV x1 x2 x3 x4 x5 x6 z RHS
x3 0 0 1 2 4 0 0 16
x1 1 0 0 0 1 0 0 6
x2 0 1 0 - 1/2 -3/2 0 0 3
x6 0 0 0 0 1 1 0 0
-z 0 0 0 150 250 0 1 -2100
-66,67 -150
17
Ein relativ einfaches Eröffnungsverfahren zur Auffindung einer zulässigen Startlösung.
Allgemeines zur Dualen Simplexmethode
Es kommt zu einer Umkehrung der Auswahlregel-Reihenfolge: Erst PZ, dann PS.
Wird eine primal unzulässige Basislösung mit optimaler Zielzeile dualisiert, dann ergibt sich im Dualen eine zulässige Basislösung
18
Jede Iteration besteht aus folgenden drei Schritten:
Der Iterationsprozess wird beendet, wenn alle Elemente der RHS-Spalte nichtnegativ sind.
Dualer Simplex-Algorithmus zur Erzeugung nichtnegativer Basislösungen
Schritt 3: Basistransformation
Schritt 2:Wahl der NBV xs, die in BV xs umgewandelt werden soll (Pivotspalte s) Suche den maximalen Quotienten crs/ars aus den Werten der z-Zeile sowie den zugehörigen negativen Werten der Pivotzeile r: Das Element ars heißt Pivotelement.
Schritt 1:
Wahl einer negativen BV xr, die in NBV xr umgewandelt werdensoll (Pivotzeile r)Suche in der RHS-Spalte den „negativsten“ Wert: br = min{bj:bi < 0}
Zur Bestimmung der optimalen Lösung wird dann der primale Simplexalgorithmus angewendet.
19
2x1+4x2 <= 40
3x1+2x2>=24
x1 = 6
Z=2.100
XMinimum
Grafische Lösung von PPP-3
min Z = 200x1 + 300x2
min für x1 = 6, x2 = 3
20
weiteres Bsp. zurTransformation in Standardform
min z = 8x1 + 7x2
2x1 - 4x2 4
1x1 5
4x1 + 3x2 = 42
x1 0
x2 R
max –z = -8x1 - 7x2
2x1 - 4x2 4
4x1 + 3x2 42
-5x1 + 4x2 25
x1 0
-1x1 - 5
max –z = -8x1 – 7(x2+ -x2
- )
2x1 - 4 (x2+ -x2
- ) 4
4x1 + 3 (x2+ - x2
-) 42
-4x1 - 3 (x2+ - x2
-) -42
x1 0
x2 = x2+ - x2
-
-1x1 - 5
x2+ , x2
- 0
-5x1 + 4x2 25
- 4x1 - 3x2 - 42
-5x1 + 4(x2+ - x2
-) 25
x2 = x2+ - x2
-
x2+ , x2
- 0
21
optimale Personaleinsatzplanung
Der Personalbedarf in einem Unternehmen sei in den Wochentagen wie folgt :
Das Personal arbeitet jeweils fünf Tage hintereinander und hat dann zwei Tage frei.
Bestimmen Sie die Anzahl der Arbeitskräfte, die ihre Arbeitswoche am Montag oder Dienstag,...bzw. Sonntag beginnen so, dass die Gesamtpersonenzahl minimal ist.
22
Mathematisches Modell
Ges.: xi = Anzahl der Arbeitskräfte, die ihre 5-Tage-Arbeitswoche am Anfang des Zeitintervalls i, i=1,...,7 beginnen
(1=Montag, 2=Dienstag,…,7=Sonntag)
Ziel: Minimierung der Gesamtanzahl der Arbeitskräfte
Z =x1+x2+x3+x4+x5+x6+x7 min
Nb: Zeitintervall Tag Bedarf1 Mo 152 Di 103 Mi 94 Do 135 Fr 146 Sa 107 So 9
NNB:
x1 + x4 +x5 +x6 + x7 = 15x1 + x2 +x5 +x6 + x7 = 10x1 + x2 +x3 +x6 + x7 = 9x1 + x2 +x3 +x4 + x7 = 13x1 + x2 +x3 +x4 + x5 = 14x2 + x3 +x4 +x5 + x6 = 10x3 + x4 +x5 +x6 + x7 = 9
xi ≥ 0
23
Lösung
x_Mo x_Di x_Mi x_Do x_Fr x_Sa x_So Ist Rel RHS
Zielfkt: 1 1 1 1 1 1 1 = 16 Min
Personal Lösung 6 1 0 6 1 2 0
Mo 1 1 1 1 1 15 = 15
Di 1 1 1 1 1 10 = 10
Mi 1 1 1 1 1 9 = 9
Do 1 1 1 1 1 13 = 13
Fr 1 1 1 1 1 14 = 14
Sa 1 1 1 1 1 10 = 10
So 1 1 1 1 1 9 = 9
Lösung:
Dienstbeginn Mo Di Mi Do Fr Sa So
Anzahl Personen 6 1 6 1 2
zusätzlich 9 9 9 7 13 8 9
Anzahl Personen insgesamt 15 10 9 13 14 10 9
= = = = = = =
Personalbedarf 15 10 9 13 14 10 9
Umsetzung des mathematischen Modells in Excel-Tabellenform
24
In einem Werk besteht ein Zeitplan der Mindestausstattung an Reparaturspezialisten pro Zeitintervall:
Zeitintervall Uhrzeit Mindestanzahl1 0 – 4 32 4 – 8 83 8 – 12 104 12 – 16 85 16 – 20 146 20 – 24 5
Welcher Schichtplan minimiert die Zahl der Reparaturspezialisten,wenn eine Schicht jeweils 8 Stunden umfasst?
Bsp. aus Vahrenkamp, Logistik
Schichtplanung
25
Mathematisches Modell
Ges.: xi = Anzahl der Reparaturspezialisten, die am Anfang des Zeitintervalls i, i=1,...,6 ihre 8-Stunden-Schicht beginnen
Ziel: Minimierung der Anzahl der Reparaturspezialisten
Z =x1+x2+x3+x4+x5+x6
Nb: Zeitintervall Uhrzeit Mindestanzahl1 0 – 4 32 4 – 8 83 8 – 12 104 12 – 16 85 16 – 20 146 20 – 24 5
NNB:
x1 + x6 ≥ 3x1 + x2 ≥ 8x2 + x3 ≥ 10x3 + x4 ≥ 8x4 + x5 ≥ 14x5 + x6 ≥ 5
xi ≥ 0
26
Ausgangstableau mit Wahl des Pivotelementes
1 X1 X2 X3 X4 X5 X6 Y1 Y2 Y3 Y4 Y5 Y6 RHS
Y1 -1 0 0 0 0 -1 1 0 0 0 0 0 -3
Y2 -1 -1 0 0 0 0 0 1 0 0 0 0 -8
Y3 0 -1 -1 0 0 0 0 0 1 0 0 0 -10
Y4 0 0 -1 -1 0 0 0 0 0 1 0 0 -8
Y5 0 0 0 -1 -1 0 0 0 0 0 1 0 -14
Y6 0 0 0 0 -1 -1 0 0 0 0 0 1 -5
-Z 1 1 1 1 1 1 0 0 0 0 0 0 0
Xi - EntscheidungsvariableYi – Schlupfvariable
27
optimales Tableau:
BV X1 X2 X3 X4 X5 X6 Y1 Y2 Y3 Y4 Y5 Y6 RHS
X1 1 0 0 0 0 1 -1 0 0 0 0 0 3
Y2 0 0 1 0 0 1 -1 1 -1 0 0 0 5
x2 0 1 1 0 0 0 0 0 -1 0 0 0 10
Y4 0 0 -1 0 0 -1 0 0 0 1 -1 1 1
X4 0 0 0 1 0 -1 0 0 0 0 -1 1 9
X5 0 0 0 0 1 1 0 0 0 0 0 -1 5
-Z 0 0 0 0 0 0 1 0 1 0 1 0 -27
X1 = 3
X2 = 10
X3 = 0
X4 = 9
X5 = 5
X6 = 0
Z = 27
x1 x2 x3 x4 x5 x6 Ist >=
Personen 3 10 0 9 5 0
0-4 1 1 3 =>= 3
4-8 1 1 13 >= 8
8-12 1 1 10 =>= 10
12-16 1 1 9 >= 8
16-20 1 1 14 =>= 14
20-24 1 1 5 =>= 5
z 1 1 1 1 1 1 27
28
Opportunitätskostenauswertung
--------
========
wenn in der 3. Schicht ein Reparaturspezialist eingesetzt wird, folgt: X3 =1
BV X1 X2 X3 X4 X5 X6 Y1 Y2 Y3 Y4 Y5 Y6 RHS
X1 1 0 0 0 0 1 -1 0 0 0 0 0 3
Y2 0 0 1 0 0 1 -1 1 -1 0 0 0 5
X2 0 1 1 0 0 0 0 0 -1 0 0 0 10
Y4 0 0 -1 0 0 -1 0 0 0 1 -1 1 1
X4 0 0 0 1 0 -1 0 0 0 0 -1 1 9
X5 0 0 0 0 1 1 0 0 0 0 0 -1 5
-Z 0 0 0 0 0 0 1 0 1 0 1 0 -27
X3
0
1
1
-1
0
0
0
3
4
9
2
9
5
-27
x3 hat Opportunitätskosten 0 mehrere optimale Lösungen
x1 x2 x3 x4 x5 x6 Ist >=
Personen 3 9 1 9 5 0
1 0-4 1 1 3 =>= 3
2 4-8 1 1 12 >= 8
3 8-12 1 1 10 =>= 10
4 12-16 1 1 10 >= 8
5 16-20 1 1 14 =>= 14
6 20-24 1 1 5 =>= 5
z 1 1 1 1 1 1 27
29
Übung
min z = 8x1 + 7x2
2x1 - 4x2 4
1x1 5
4x1 + 3x2 = 42
x1 0
x2 R
-5x1 + 4x2 25
30
Analytische Lösung
-2/1 -7/3
x1 x2+ x2- x3 x4 x5 x6 x7 z b
x3 2 -4 4 1 0 0 0 0 0 4
x4 -1 0 0 0 1 0 0 0 0 -5
x5 -5 4 -4 0 0 1 0 0 0 25
x6 4 3 -3 0 0 0 1 0 0 42
x7 -4 -3 3 0 0 0 0 1 0 -42
-z 8 7 -7 0 0 0 0 0 1 0
x1 x2+ x2- x3 x4 x5 x6 x7 z b
x3 0 - 11/2 11/2 1 0 0 0 1/2 0 -17/1
x4 0 3/4 - 3/4 0 1 0 0 -1/4 0 11/2
x5 0 31/4 - 31/4 0 0 1 0 -5/4 0 155/2
x6 0 0/1 0/1 0 0 0 1 1/1 0 0/1
x1 1 3/4 - 3/4 0 0 0 0 -1/4 0 21/2
-z 0 1 -1 0 0 0 0 2 1 -84
x2+ 0 1 -1 - 2/11 0 0 0 - 1/11 0 3,09
x4 0 -0 0 3/22 1 0 0 - 2/11 0 3,18
x5 0 -0 0 31/22 0 1 0 - 6/11 0 53,55
x6 0 0 0 0/1 0 0 1 1 0 0,00
x1 1 -0 0 3/22 0 0 0 - 2/11 0 8,18
-z 0 0 0 2/11 0 0 0 23/11 1 -87,09
max –z = -8x1 – 7(x2+ -x2
- )
2x1 - 4 (x2+ -x2
- ) 4
4x1 + 3 (x2+ - x2
-) 42
-4x1 - 3 (x2+ - x2
-) -42
-5x1 + 4(x2+ - x2
-) 25
-1x1 - 5
31
Hinweis
•Da Minimierungsprobleme mit Nebenbedingungen im allg. aufwendig zu lösen sind, ist es effizienter, die Lösung dem O-Tableau der entsprechenden dualen Aufgabe zu entnehmen.
32
Das duale Problem verwendet die gleichen Parameter wie das primale Problem, aber in unterschiedlicher Position.
Primales Problem Duales Problem
Max Min
n
1j
jj ,xcZ
m
1i
ii ,ybF
n
1j
ijij ,bxa
m
1i
,jiij cya
für .m,,2,1i
.n,,2,1j
,0x j ,0yi
Das Duale Problem zum Primalen-Problem
m NB.
n NNB.
n NB.
für .m,,2,1i
.n,,2,1j
m NNB.
33
Primale Aufgabeduale Aufgabe
x1 + x6 ≥ 3x1 + x2 ≥ 8x2 + x3 ≥ 10x3 + x4 ≥ 8x4 + x5 ≥ 14x5 + x6 ≥ 5
Min F =x1+x2+x3+x4+x5+x6
NB:
xi ≥ 0
NNB:
Max Z =3y1+8y2+10y3+8y4+14y5+5y6
y1 + y6 ≤ 1y1 + y2 ≤ 1y2 + y3 ≤ 1y3 + y4 ≤ 1y4 + y5 ≤ 1y5 + y6 ≤ 1
NNB: yi ≥ 0
34
Ansatz und Lösung für max-Aufgabe
y1 y2 y3 y4 y5 y6 x1 x2 x3 x4 x5 x6 bx1
x2
x3
x4
x5
x6
Z
y1
y3
x3
y5
y6
x6
Z
Optimales Tableau nach der 4.Iteration
Opt. Lösung für das primale Problem: x1 x2 x3 x4 x5 x6 z(In diesem Fall auch 4 Iterationen, wenn als primale Aufgabe gelöst.)
Schlupfvariable