Lineare Programmierung - Freie...
Transcript of Lineare Programmierung - Freie...
![Page 1: Lineare Programmierung - Freie Universitätpage.mi.fu-berlin.de/alt/vorlesungen/sem05/vortrag_lineare... · Lineare Programmierung Simplex-Algorithmus – Initialisierung (2) „Hilfsfunktion“:](https://reader030.fdocument.pub/reader030/viewer/2022041118/5f2e9cef6eb3960d4a628d94/html5/thumbnails/1.jpg)
Lineare ProgrammierungInhalt
Rückblick
Motivation - linearen Programmierung
FlussproblemeMultiple Warenflüsse
Fortsetzung Simplex Algorithmus
InitialisierungFundamentalsatz der linearen Programmierungschwache DualitätDualität der linearen Programmierung
Lineare Programmierung (2) Norman Dziengel- 1 - John Wiesel
![Page 2: Lineare Programmierung - Freie Universitätpage.mi.fu-berlin.de/alt/vorlesungen/sem05/vortrag_lineare... · Lineare Programmierung Simplex-Algorithmus – Initialisierung (2) „Hilfsfunktion“:](https://reader030.fdocument.pub/reader030/viewer/2022041118/5f2e9cef6eb3960d4a628d94/html5/thumbnails/2.jpg)
Lineare ProgrammierungRückblick (1)
Vorbereitung Simplex-Algorithmus
Gesucht ist Lösung, die folgende lin. Funktion in Standardform:
unter den Nebenbedingungen
und i=1,2,...,m
für j=1,2,...,n
maximiert.
Lineare Programmierung (2) Norman Dziengel, John Wiesel - 2 -
∑j=1
n
c j x j
∑j=1
n
aij x jbi
x j0
Beispiel:maximiere 40x1+50x2
Nebenbedingung:
(1) 2x1 + 3x2<= 3(2) 4x1 + 2x2 <= 5/2
(3) x1, x2 >= 0
![Page 3: Lineare Programmierung - Freie Universitätpage.mi.fu-berlin.de/alt/vorlesungen/sem05/vortrag_lineare... · Lineare Programmierung Simplex-Algorithmus – Initialisierung (2) „Hilfsfunktion“:](https://reader030.fdocument.pub/reader030/viewer/2022041118/5f2e9cef6eb3960d4a628d94/html5/thumbnails/3.jpg)
Lineare ProgrammierungRückblick (2)
Vorbereitung Simplex-Algorithmus
Lineare Programmierung (2) Norman Dziengel, John Wiesel - 3 -
Standardform:maximiere 40x1 + 50x2
Nebenbedingung:
(1) 2x1 + 3x2<= 3 nach Schlupfform
(2) 4x1 + 2x2 <= 5/2
(3) x1, x2 >= 0
Schlupfform:z = 40x1 + 50x2
Nebenbedingung:
(1) x3 = 3 - 2x1 – 3x2
(2) x4 = 5/2 - 4x1 - 2x2
(3) x1, x2, x3, x4 >= 0
s=bi−∑j=1
n
aij x j
![Page 4: Lineare Programmierung - Freie Universitätpage.mi.fu-berlin.de/alt/vorlesungen/sem05/vortrag_lineare... · Lineare Programmierung Simplex-Algorithmus – Initialisierung (2) „Hilfsfunktion“:](https://reader030.fdocument.pub/reader030/viewer/2022041118/5f2e9cef6eb3960d4a628d94/html5/thumbnails/4.jpg)
Lineare ProgrammierungRückblick (3)
Simplex-Algorithmus – eine Iteration
Lineare Programmierung (2) Norman Dziengel, John Wiesel - 4 -
z = 40x1+ 50x2
Nebenbedingung: Maximiere x1
=> eng
=> Basisvariablentausch bei (2) x4 gegen x1
etc...
1 x3=3−2 x1−3 x2
2 x4=52−4 x1−2 x2
3 x1 , x2 , x3 x40
z=4058−1
2x2−
14x450 x2=2530 x2−10 x4
1 x3=3−258−1
2x2−
14x4−3 x2=
74−2 x2
12x4
2 x1=58−1
2x2−
14x4
x1maximal32
x1maximal58
![Page 5: Lineare Programmierung - Freie Universitätpage.mi.fu-berlin.de/alt/vorlesungen/sem05/vortrag_lineare... · Lineare Programmierung Simplex-Algorithmus – Initialisierung (2) „Hilfsfunktion“:](https://reader030.fdocument.pub/reader030/viewer/2022041118/5f2e9cef6eb3960d4a628d94/html5/thumbnails/5.jpg)
Lineare ProgrammierungRückblick (4)
Simplex-Algorithmus
Was wissen wir bereits?
FunktionsweiseIteration über Gleichungssysteme- äquivalente Umformungen von einer Schlupfform in die nächste- Zielfunktionswert steigt in der Regel von Iteration zu Iteration
(bei Maximierung)
Eingabe: Schlupfform eines lin. ProgrammsAusgabe: optimale Lösung
Laufzeit: meist polynomial
Lineare Programmierung (2) Norman Dziengel, John Wiesel - 5 -
![Page 6: Lineare Programmierung - Freie Universitätpage.mi.fu-berlin.de/alt/vorlesungen/sem05/vortrag_lineare... · Lineare Programmierung Simplex-Algorithmus – Initialisierung (2) „Hilfsfunktion“:](https://reader030.fdocument.pub/reader030/viewer/2022041118/5f2e9cef6eb3960d4a628d94/html5/thumbnails/6.jpg)
Lineare ProgrammierungRückblick (5)
Simplex-Algorithmus
Was wissen wir bereits?
Terminierung- kreiselt nach Iterationen, weil unbeschränkt- terminiert mit zulässiger Lösung
n : Anzahl der nicht-Basisvariablenm : Anzahl der Basisvariablen
Lineare Programmierung (2) Norman Dziengel, John Wiesel - 6 -
nmm
![Page 7: Lineare Programmierung - Freie Universitätpage.mi.fu-berlin.de/alt/vorlesungen/sem05/vortrag_lineare... · Lineare Programmierung Simplex-Algorithmus – Initialisierung (2) „Hilfsfunktion“:](https://reader030.fdocument.pub/reader030/viewer/2022041118/5f2e9cef6eb3960d4a628d94/html5/thumbnails/7.jpg)
Lineare ProgrammierungWas bleibt zu zeigen?
Simplex-Algorithmus
Umgang mit LP ohne zulässige Lösung
Umgang mit ungültiger initialer Basislösung
Liefert „Simplex“ immer optimales Ergebnis?
Lineare Programmierung (2) Norman Dziengel, John Wiesel - 7 -
![Page 8: Lineare Programmierung - Freie Universitätpage.mi.fu-berlin.de/alt/vorlesungen/sem05/vortrag_lineare... · Lineare Programmierung Simplex-Algorithmus – Initialisierung (2) „Hilfsfunktion“:](https://reader030.fdocument.pub/reader030/viewer/2022041118/5f2e9cef6eb3960d4a628d94/html5/thumbnails/8.jpg)
Lineare ProgrammierungMotivation - lineare Programmierung
Wieso lineare Programmierung, Rechtfertigung?
Lösung für viele reale ProblemeFlussprobleme,
z.B. für die Erstellung von Flugplänen, USA 80er JahreKürzeste PfadeKostenkonstellationen in der Betriebswirtschaft
Sobald ein Problem einmal als lineares Programm mit polynomialer Größe formuliert ist, kann es mit „Simplex“ gelöst werden.
Lineare Programmierung (2) Norman Dziengel, John Wiesel - 8 -
![Page 9: Lineare Programmierung - Freie Universitätpage.mi.fu-berlin.de/alt/vorlesungen/sem05/vortrag_lineare... · Lineare Programmierung Simplex-Algorithmus – Initialisierung (2) „Hilfsfunktion“:](https://reader030.fdocument.pub/reader030/viewer/2022041118/5f2e9cef6eb3960d4a628d94/html5/thumbnails/9.jpg)
Lineare ProgrammierungMotivation - lineare Programmierung
Multiple Warenflüsse (1)
(besser bekannt als „multi“ bzw. „multiple commodity flow“)
Die Firma Lucky Puck möchte mehrere Produkte vertreiben. Zu den Pucks kommen nun Schläger, Helme und anderes Zubehör. Dabei müssen täglich die Waren von der entsprechenden Fabrik zum entsprechenden Großhändler transportiert werden.
Als Transportmittel stehen LKWs zur Verfügung, die sich die Autobahnen und Bundestraßen rund um die Fabrik von Lucky Puck teilen müssen.
Lineare Programmierung (2) Norman Dziengel, John Wiesel - 9 -
![Page 10: Lineare Programmierung - Freie Universitätpage.mi.fu-berlin.de/alt/vorlesungen/sem05/vortrag_lineare... · Lineare Programmierung Simplex-Algorithmus – Initialisierung (2) „Hilfsfunktion“:](https://reader030.fdocument.pub/reader030/viewer/2022041118/5f2e9cef6eb3960d4a628d94/html5/thumbnails/10.jpg)
Lineare ProgrammierungMotivation - lineare Programmierung
Multiple Warenflüsse (2)
Gerichteter Graph G = (V,E)
Jede Kante (u,v) e E besitzt Kapazität c(u,v) >= 0.
Bsp.: k Waren, Ware i mit (si, ti, bi)s = source (Quelle), t = target (Senke), d = demand (Bedarf)
f(u,v) = (Aggregat-Fluss)
Wie sieht nun lineares Programm dazu aus?
Lineare Programmierung (2) Norman Dziengel, John Wiesel - 10 -
∑i=1
k
f i u , v
![Page 11: Lineare Programmierung - Freie Universitätpage.mi.fu-berlin.de/alt/vorlesungen/sem05/vortrag_lineare... · Lineare Programmierung Simplex-Algorithmus – Initialisierung (2) „Hilfsfunktion“:](https://reader030.fdocument.pub/reader030/viewer/2022041118/5f2e9cef6eb3960d4a628d94/html5/thumbnails/11.jpg)
Lineare ProgrammierungMotivation - lineare Programmierung
Multiple Warenflüsse (3)
da keine Optimierung nötig => Zielfunktion: minimiere 0
Nebenbedingungen:
wichtig: „Simplex“ effektivster bekannter Algorithmus Lineare Programmierung (2) Norman Dziengel, John Wiesel - 11 -
![Page 12: Lineare Programmierung - Freie Universitätpage.mi.fu-berlin.de/alt/vorlesungen/sem05/vortrag_lineare... · Lineare Programmierung Simplex-Algorithmus – Initialisierung (2) „Hilfsfunktion“:](https://reader030.fdocument.pub/reader030/viewer/2022041118/5f2e9cef6eb3960d4a628d94/html5/thumbnails/12.jpg)
Lineare ProgrammierungSimplex-Algorithmus – mögliche Probleme
Bisherige Annahme:
Lineares Programm besitzt eine Lösung.
Lineares Programm besitzt eine initiale Basislösung.
Aber, möglich ist auch:
initiale Basislösung ungültig,
LP unlösbar.
Lineare Programmierung (2) Norman Dziengel, John Wiesel - 12 -
![Page 13: Lineare Programmierung - Freie Universitätpage.mi.fu-berlin.de/alt/vorlesungen/sem05/vortrag_lineare... · Lineare Programmierung Simplex-Algorithmus – Initialisierung (2) „Hilfsfunktion“:](https://reader030.fdocument.pub/reader030/viewer/2022041118/5f2e9cef6eb3960d4a628d94/html5/thumbnails/13.jpg)
Lineare ProgrammierungSimplex-Algorithmus – ungültige initiale Basislösung
initiale Basislösung ungültig – Beispiel
(1) maximiere 2x1– x2
(2) 2x1 – x2 <= 2
(3) x1 – 5x2 <= -4
x1, x2 >= 0
Lineare Programmierung (2) Norman Dziengel, John Wiesel - 13 -
(1) (2)
(3)
(1) z = 2x1 – x2
(2) x3 = 2 - 2x1 + x2
(3) x4 = -4 – x1 + 5x2
x1,x2,x3,x4 >= 0
Basislösung: {0,0,-4!,2}
x1
x2
![Page 14: Lineare Programmierung - Freie Universitätpage.mi.fu-berlin.de/alt/vorlesungen/sem05/vortrag_lineare... · Lineare Programmierung Simplex-Algorithmus – Initialisierung (2) „Hilfsfunktion“:](https://reader030.fdocument.pub/reader030/viewer/2022041118/5f2e9cef6eb3960d4a628d94/html5/thumbnails/14.jpg)
Lineare ProgrammierungSimplex-Algorithmus – unlösbar
Nebenbedingungen im „Widerspruch“
Unbeschränkt
Vor der Ausführung von „Simplex“ müssen also die Voraussetzungen für einen fehlerfreien Ablauf des Simplex-Algorithmus geschaffen werden.
Lineare Programmierung (2) Norman Dziengel, John Wiesel - 14 -
![Page 15: Lineare Programmierung - Freie Universitätpage.mi.fu-berlin.de/alt/vorlesungen/sem05/vortrag_lineare... · Lineare Programmierung Simplex-Algorithmus – Initialisierung (2) „Hilfsfunktion“:](https://reader030.fdocument.pub/reader030/viewer/2022041118/5f2e9cef6eb3960d4a628d94/html5/thumbnails/15.jpg)
Lineare ProgrammierungSimplex-Algorithmus – InitialisierungWir benötigen eine Initialisierungsprozedur für jedes Lineare
Programm L, wir nennen es „INITIALIZE-SIMPLEX“ (nach Cormen).
INITIALIZE-SIMPLEX
Schlupfform an Testprozedur übergeben
Basislösung zulässig: Rückgabe der original SchlupfformBasislösung nicht zulässig: weitergeben an Hilfsfunktion
Lineare Programmierung (2) Norman Dziengel, John Wiesel - 15 -
![Page 16: Lineare Programmierung - Freie Universitätpage.mi.fu-berlin.de/alt/vorlesungen/sem05/vortrag_lineare... · Lineare Programmierung Simplex-Algorithmus – Initialisierung (2) „Hilfsfunktion“:](https://reader030.fdocument.pub/reader030/viewer/2022041118/5f2e9cef6eb3960d4a628d94/html5/thumbnails/16.jpg)
Lineare ProgrammierungSimplex-Algorithmus – Initialisierung (2)
„Hilfsfunktion“: ein Lineares Programm, dass prüft, ob L lösbar ist.
Lh hat zusätzlich zu den n Variablen von L, die Hilfsvariable x0.
maximieren -x0 (b : Basisvariablen, a : Koeffizienten, x : Nicht-Basisvariblen)
für i = 1, 2, ...., m
für j = 0, 1, ...., n
Wenn der optimale Zielfunktionswert des Hilfsprogramms negativ ist, dann hat das ursprüngliche lineare Programm keine zulässige Lösung. Ist die Lösung gleich 0, dann hat das ursprüngliche LP eine Lösung.
Lineare Programmierung (2) Norman Dziengel, John Wiesel - 16 -
∑j=1
n
aij x j−x0bi
x j0
![Page 17: Lineare Programmierung - Freie Universitätpage.mi.fu-berlin.de/alt/vorlesungen/sem05/vortrag_lineare... · Lineare Programmierung Simplex-Algorithmus – Initialisierung (2) „Hilfsfunktion“:](https://reader030.fdocument.pub/reader030/viewer/2022041118/5f2e9cef6eb3960d4a628d94/html5/thumbnails/17.jpg)
Lineare ProgrammierungSimplex-Algorithmus – Initialisierung (3)INITIALIZE-SIMPLEX
Schlupfform an Testprozedur übergeben
Basislösung zulässig: Rückgabe der original SchlupfformBasislösung nicht zulässig: weitergeben an Hilfsfunktion
wenn Basislösung x0 = 0: Rückgabe der original Schlupfform
sonst: Rückgabe „L nicht lösbar“
Lineare Programmierung (2) Norman Dziengel, John Wiesel - 17 -
![Page 18: Lineare Programmierung - Freie Universitätpage.mi.fu-berlin.de/alt/vorlesungen/sem05/vortrag_lineare... · Lineare Programmierung Simplex-Algorithmus – Initialisierung (2) „Hilfsfunktion“:](https://reader030.fdocument.pub/reader030/viewer/2022041118/5f2e9cef6eb3960d4a628d94/html5/thumbnails/18.jpg)
Lineare ProgrammierungFundamentalsatz der linearen Programmierung
Für jedes lineare Programm L, dass in Standardform gegeben ist, gilt genau eine der folgenden drei Aussagen:
1. L besitzt eine optimale Lösung (endlicher Zielfunktionswert),2. L ist unlösbar, √3. L ist unbeschränkt.
Lineare Programmierung (2) Norman Dziengel, John Wiesel - 18 -
![Page 19: Lineare Programmierung - Freie Universitätpage.mi.fu-berlin.de/alt/vorlesungen/sem05/vortrag_lineare... · Lineare Programmierung Simplex-Algorithmus – Initialisierung (2) „Hilfsfunktion“:](https://reader030.fdocument.pub/reader030/viewer/2022041118/5f2e9cef6eb3960d4a628d94/html5/thumbnails/19.jpg)
Lineare ProgrammierungFundamentalsatz der linearen Programmierung (2)
3. L ist unbeschränkt, wenn
die Nebenbedingungen den Umfang nicht ausreichend einschränken und „Simplex“ die Eingangsvariablen beliebig erhöhen kann.
Lineare Programmierung (2) Norman Dziengel, John Wiesel - 19 -
![Page 20: Lineare Programmierung - Freie Universitätpage.mi.fu-berlin.de/alt/vorlesungen/sem05/vortrag_lineare... · Lineare Programmierung Simplex-Algorithmus – Initialisierung (2) „Hilfsfunktion“:](https://reader030.fdocument.pub/reader030/viewer/2022041118/5f2e9cef6eb3960d4a628d94/html5/thumbnails/20.jpg)
Lineare ProgrammierungFundamentalsatz der linearen Programmierung
Für jedes lineare Programm L, dass in Standardform gegeben ist, gilt genau eine der folgenden drei Aussagen:
1. L besitzt eine optimale Lösung (endlicher Zielfunktionswert),2. L ist unlösbar, √3. L ist unbeschränkt. √
Lineare Programmierung (2) Norman Dziengel, John Wiesel - 20 -
![Page 21: Lineare Programmierung - Freie Universitätpage.mi.fu-berlin.de/alt/vorlesungen/sem05/vortrag_lineare... · Lineare Programmierung Simplex-Algorithmus – Initialisierung (2) „Hilfsfunktion“:](https://reader030.fdocument.pub/reader030/viewer/2022041118/5f2e9cef6eb3960d4a628d94/html5/thumbnails/21.jpg)
Lineare ProgrammierungDas Prinzip der DualitätBeispiel:
Eine Großbrauerei braut zwei Sorten Bier. 1000 l Biersorte 1 : 1t Hopfen und 3t Malz1000 l Biersorte 2 : 2t Hopfen und 1t Malz
1000 l Bier der Sorte 1 bringen 4 Geld Gewinn.1000 l Bier der Sorte 2 bringen 6 Geld Gewinn.
Vorräte: 8 Tonnen Hopfen und 9 Tonnen Malz.
Lineare Programmierung (2) Norman Dziengel, John Wiesel - 21 -
Biersorte Benötigter Hopfen Benötigter Malz Gewinn1 1 3 62 2 1 4
![Page 22: Lineare Programmierung - Freie Universitätpage.mi.fu-berlin.de/alt/vorlesungen/sem05/vortrag_lineare... · Lineare Programmierung Simplex-Algorithmus – Initialisierung (2) „Hilfsfunktion“:](https://reader030.fdocument.pub/reader030/viewer/2022041118/5f2e9cef6eb3960d4a628d94/html5/thumbnails/22.jpg)
Lineare ProgrammierungDas Prinzip der Dualität (2)
Problem: Rohstoffe verderblich!Brauereibesitzer möchte Rohstoffe versichern:y1 : Versicherungswert für 1 Tonne Malz
y2 : Versicherungswert für 1 Tonne Hopfen
8 y1 + 9 y2 : Versicherungswert aller Vorräte (minimieren)
Um den Gewinn abzusichern, muss also mind. fürBiersorte 1 y1 + 3 y2 >= 6
Biersorte 2 2 y1 + y2 >= 4
eine Versicherung abgeschlossen werden.
Lineare Programmierung (2) Norman Dziengel, John Wiesel - 22 -
![Page 23: Lineare Programmierung - Freie Universitätpage.mi.fu-berlin.de/alt/vorlesungen/sem05/vortrag_lineare... · Lineare Programmierung Simplex-Algorithmus – Initialisierung (2) „Hilfsfunktion“:](https://reader030.fdocument.pub/reader030/viewer/2022041118/5f2e9cef6eb3960d4a628d94/html5/thumbnails/23.jpg)
Lineare ProgrammierungDas Prinzip der Dualität (3)
Problem 2: Einkommen maximieren!Brauereimeister möchte wissen, wieviel Bier von beiden Sorten
gebraut werden soll.x1 : Anzahl 1000 l Biersorte 1
x2 : Anzahl 1000 l Biersorte 2
6 x1 + 4 x2 : Verkaufswert der Biersorte
Um das Einkommen zu maximieren, kann also maximal fürHopfen x1 + 2 x2 <= 8
Malz 3 x1 + x2 <= 9
gebraut werden.
Lineare Programmierung (2) Norman Dziengel, John Wiesel - 23 -
![Page 24: Lineare Programmierung - Freie Universitätpage.mi.fu-berlin.de/alt/vorlesungen/sem05/vortrag_lineare... · Lineare Programmierung Simplex-Algorithmus – Initialisierung (2) „Hilfsfunktion“:](https://reader030.fdocument.pub/reader030/viewer/2022041118/5f2e9cef6eb3960d4a628d94/html5/thumbnails/24.jpg)
Lineare ProgrammierungDas Prinzip der Dualität (4)Problem 1 und 2 beschreiben eine Dualität!
Lineare Programmierung (2) Norman Dziengel, John Wiesel - 24 -
Versicherung Einkommen
Unterversichert Optimum
![Page 25: Lineare Programmierung - Freie Universitätpage.mi.fu-berlin.de/alt/vorlesungen/sem05/vortrag_lineare... · Lineare Programmierung Simplex-Algorithmus – Initialisierung (2) „Hilfsfunktion“:](https://reader030.fdocument.pub/reader030/viewer/2022041118/5f2e9cef6eb3960d4a628d94/html5/thumbnails/25.jpg)
Lineare ProgrammierungDas Prinzip der Dualität (5)
„Primales Programm“
„Duales Programm“
Lineare Programmierung (2) Norman Dziengel, John Wiesel - 25 -
(2)
(3)
(1)
(4)
![Page 26: Lineare Programmierung - Freie Universitätpage.mi.fu-berlin.de/alt/vorlesungen/sem05/vortrag_lineare... · Lineare Programmierung Simplex-Algorithmus – Initialisierung (2) „Hilfsfunktion“:](https://reader030.fdocument.pub/reader030/viewer/2022041118/5f2e9cef6eb3960d4a628d94/html5/thumbnails/26.jpg)
Lineare ProgrammierungSchwache Dualität
Lineare Programmierung (2) Norman Dziengel, John Wiesel - 26 -
![Page 27: Lineare Programmierung - Freie Universitätpage.mi.fu-berlin.de/alt/vorlesungen/sem05/vortrag_lineare... · Lineare Programmierung Simplex-Algorithmus – Initialisierung (2) „Hilfsfunktion“:](https://reader030.fdocument.pub/reader030/viewer/2022041118/5f2e9cef6eb3960d4a628d94/html5/thumbnails/27.jpg)
Lineare ProgrammierungSchwache Dualität
Lineare Programmierung (2) Norman Dziengel, John Wiesel - 27 -
nach (4)
nach (2)
![Page 28: Lineare Programmierung - Freie Universitätpage.mi.fu-berlin.de/alt/vorlesungen/sem05/vortrag_lineare... · Lineare Programmierung Simplex-Algorithmus – Initialisierung (2) „Hilfsfunktion“:](https://reader030.fdocument.pub/reader030/viewer/2022041118/5f2e9cef6eb3960d4a628d94/html5/thumbnails/28.jpg)
Lineare ProgrammierungSchwache Dualität (2)Sei x bzw. y eine zulässige Lösung für das primale Linearprogramm
bzw das duale LP.
Haben beide den gleichen Zielfunktionswert, so ist dieser Wert optimal.
Wenn gilt dann optimal.
Beweis: Nach dem Prinzip der schwachen Dualität kann der Zielfunktionswert des primalen LP nicht den Wert des dualen LP übersteigen. Wenn also x und y den gleichen Zielfunktionswert haben, kann keine mehr verbessert werden.
Lineare Programmierung (2) Norman Dziengel, John Wiesel - 28 -
![Page 29: Lineare Programmierung - Freie Universitätpage.mi.fu-berlin.de/alt/vorlesungen/sem05/vortrag_lineare... · Lineare Programmierung Simplex-Algorithmus – Initialisierung (2) „Hilfsfunktion“:](https://reader030.fdocument.pub/reader030/viewer/2022041118/5f2e9cef6eb3960d4a628d94/html5/thumbnails/29.jpg)
Lineare ProgrammierungDualität der lineare Programmierung
Ausserdem gilt:
Ist x die optimale Lösung des primalen linearen Programms und y die optimale Lösung des dualen, dann haben beide immer den gleichen Zielfunktionswert.
Lineare Programmierung (2) Norman Dziengel, John Wiesel - 29 -
∑j=1
n
c j x j=∑i=1
m
bi y i
![Page 30: Lineare Programmierung - Freie Universitätpage.mi.fu-berlin.de/alt/vorlesungen/sem05/vortrag_lineare... · Lineare Programmierung Simplex-Algorithmus – Initialisierung (2) „Hilfsfunktion“:](https://reader030.fdocument.pub/reader030/viewer/2022041118/5f2e9cef6eb3960d4a628d94/html5/thumbnails/30.jpg)
Lineare ProgrammierungDualität der lineare Programmierung (2)Beweis recht lang und komplex.
Idee:
mittels Simplexalgorithmus finale Schlupfform erzeugen
aus Äquivalenz aller Schlupfformen für bel. Mengen von Werten haben die erste und letzte Schlupfform an einer Stelle den selben Wert.
Lineare Programmierung (2) Norman Dziengel, John Wiesel - 30 -
z=v '∑j∈Nc ' j x j
∑j=1
n
c j x j=v '∑j=1
nm
c ' j x j
![Page 31: Lineare Programmierung - Freie Universitätpage.mi.fu-berlin.de/alt/vorlesungen/sem05/vortrag_lineare... · Lineare Programmierung Simplex-Algorithmus – Initialisierung (2) „Hilfsfunktion“:](https://reader030.fdocument.pub/reader030/viewer/2022041118/5f2e9cef6eb3960d4a628d94/html5/thumbnails/31.jpg)
Lineare ProgrammierungDualität der lineare Programmierung (3)Idee (2):
mittels Umformungen gelangt man zu
Lineare Programmierung (2) Norman Dziengel, John Wiesel - 31 -
∑j=1
n
c j x j=v '∑j=1
nm
c ' j x j
∑j=1
n
c j x j=v '−∑i=1
m
b j y j∑j=1
n
c ' j∑i=1
m
aij y i x j
![Page 32: Lineare Programmierung - Freie Universitätpage.mi.fu-berlin.de/alt/vorlesungen/sem05/vortrag_lineare... · Lineare Programmierung Simplex-Algorithmus – Initialisierung (2) „Hilfsfunktion“:](https://reader030.fdocument.pub/reader030/viewer/2022041118/5f2e9cef6eb3960d4a628d94/html5/thumbnails/32.jpg)
Lineare ProgrammierungDualität der lineare Programmierung (4)Idee (3):
Dann folgt aufgrund dieses Lemma
Lineare Programmierung (2) Norman Dziengel, John Wiesel - 32 -
v '−∑i=1
m
bi yi=0
∑j=1
n
c j x j=v '−∑i=1
m
b j y j∑j=1
n
c ' j∑i=1
m
aij yi x j
Wenn∑i∈ Iai xi=r∑
i∈Ibi xi
c ' j∑i=1
m
aij yi=c j
dann gilt r=0und ai=bi für alle i∈ I
![Page 33: Lineare Programmierung - Freie Universitätpage.mi.fu-berlin.de/alt/vorlesungen/sem05/vortrag_lineare... · Lineare Programmierung Simplex-Algorithmus – Initialisierung (2) „Hilfsfunktion“:](https://reader030.fdocument.pub/reader030/viewer/2022041118/5f2e9cef6eb3960d4a628d94/html5/thumbnails/33.jpg)
Lineare ProgrammierungFundamentalsatz der linearen Programmierung
Für jedes lineare Programm L, dass in Standardform gegeben ist, gilt genau eine der folgenden drei Aussagen:
1. L besitzt eine optimale Lösung (endlicher Zielfunktionswert), √2. L ist unlösbar, √3. L ist unbeschränkt. √
=> Wenn INITIALIZE-SIMPLEX zulässige Lösung zurückgibt undSIMPLEX nicht mit unbeschränkt terminiert, dann ist die Lösungoptimal.
Lineare Programmierung (2) Norman Dziengel, John Wiesel - 33 -
![Page 34: Lineare Programmierung - Freie Universitätpage.mi.fu-berlin.de/alt/vorlesungen/sem05/vortrag_lineare... · Lineare Programmierung Simplex-Algorithmus – Initialisierung (2) „Hilfsfunktion“:](https://reader030.fdocument.pub/reader030/viewer/2022041118/5f2e9cef6eb3960d4a628d94/html5/thumbnails/34.jpg)
Lineare ProgrammierungEnde
Fragen, Anregungen und Beschimpfungen?
Lineare Programmierung (2) Norman Dziengel, John Wiesel - 34 -
![Page 35: Lineare Programmierung - Freie Universitätpage.mi.fu-berlin.de/alt/vorlesungen/sem05/vortrag_lineare... · Lineare Programmierung Simplex-Algorithmus – Initialisierung (2) „Hilfsfunktion“:](https://reader030.fdocument.pub/reader030/viewer/2022041118/5f2e9cef6eb3960d4a628d94/html5/thumbnails/35.jpg)
Lineare ProgrammierungQuellen
Cormen, Thomas; Leiserson, Charles;Rivest, Ronald; Stein, Clifford (2001): Introduction to Algorithms, Second Edition.
Schlipf, Lena; Jankovic, Benjamin (2005): Lineare Programmierung Teil 1, http://page.mi.fu-berlin.de/~alt/vorlesungen/sem05/folien3.pdf
Jiangsheng, Yu (2003): Linear Programming. http://icl.pku.edu.cn/member/yujs/papers/pdf/ComAlg9.pdf
Riegler, Peter (2001): Dualität. Ergänzungen zum Kurs Operations Research, http://people.freenet.de/riegler/dualtext.pdf
Wisniewski, Timothy (1996): The Simplex Java Applet, http://www-fp.mcs.anl.gov/otc/Guide/CaseStudies/simplex/applet/SimplexTool.html
Lineare Programmierung (2) Norman Dziengel, John Wiesel - 35 -