1 Der Simplex Algorithmus I

Ähnliche Dokumente
Dualitätssätze der linearen Optimierung

Eigenschaften von LPs

Wiederholung. Wir gehen von LP s in Standardform aus, wobei A R m n vollen Zeilenrang hat: minc T x A x = b

Kombinatorische Optimierung

Teil I. Lineare Optimierung

3.2.5 Dualität der linearen Optimierung I

3.1. Existenzsatz und Struktur der Lösungsmenge

VORLESUNG 14 Lineare Optimierung, Dualität (Viele Folien nach Ulf Lorenz, jetzt TU Darmstadt)

Optimale Steuerung 1 Prozessoptimierung 1

Kap. 4: Lineare Programmierung

Optimierung für Wirtschaftsinformatiker: Dualität, Ganzzahlige lineare Optimierung

Numerische Lineare Algebra

VORLESUNG 11 Lineare Optimierung (Viele Folien nach Ulf Lorenz, jetzt TU Darmstadt)

mit. Wir definieren (Skalarprodukt = Winkel).

Optimierung für Nichtmathematiker

Operations Research. Die Simplexmethode. LP-Dualität. Die Simplexmethode. Rainer Schrader. 18. Juni Zur Erinnerung: Gliederung

Optimierung. Optimierung. Vorlesung 8 Lineare Programmierung III: Simplex Algorithmus Fabian Kuhn

Kap. 4.3: Das Dualitätstheorem der linearen Optimierung

4.3.3 Simplexiteration

Lineare (Un-)Gleichungen und lineare Optimierung

Studientag zur Algorithmischen Mathematik

3. Grundlagen der Linearen Programmierung

Die duale Simplexmethode zur Lösung rein ganzzahliger linearer Programme

Simplex-Verfahren. Kapitel 4. Simplex-Verfahren. Peter Becker (H-BRS) Operations Research I Sommersemester / 298

6 Korrektheit des Simplexalgorithmus

Optimierung für Wirtschaftsinformatiker: Lineare Programme

Minimumproblem. Definition 4.7. Ein LP der Form. unter den Nebenbedingungen. d ij x j b i (i =1,...,m)

Lineare Programmierung Teil I

Proseminar Lineare Algebra WS 08/09 Prof. Dr. O. Bogopolski 1. Vortrag: Lineare Gleichungen. am 11. März von Maximilian Wahner

Mathematik II für Studierende der Informatik. Wirtschaftsinformatik (Analysis und lineare Algebra) im Sommersemester 2015

Diskrete Optimierung

Lösung allgemeiner linearer Programme

Optimierung. Optimierung. Vorlesung 7 Lineare Programmierung II Thomas Brox, Fabian Kuhn

1 Lineare Optimierung, Simplex-Verfahren

Geometrische Interpretation

Grundlagen der Optimierung. Übung 6

Vorlesung Wirtschaftsmathematik I WS 2007/2008, Wirtschaftingenieurwesen. Kapitel IV: Grundlagen der Linearen Optimierung

Der Begriff der konvexen Menge ist bereits aus Definition 1.4, Teil I, bekannt.

Aufgaben zu Kapitel 23

Algorithmik WS 07/ Vorlesung, Andreas Jakoby Universität zu Lübeck

3 Systeme linearer Gleichungen

Zugeordneter bipartiter Graph

Computer Science Department - High Performance and Web Computing Group. Optimierungsprobleme

Ausgewählte Lösungen zu den Übungsblättern 4-5

Lineare Optimierung Teil 2

Analyis I -Metrische Räume - eine Einführung in die Topologie

Das Lagrange-duale Problem

Innere-Punkt-Methoden

Kapitel 5. Peter Becker (H-BRS) Operations Research I Sommersemester / 298

Bestimmung einer ersten

2 Die Dimension eines Vektorraums

6 Lineare Optimierung

Kuhn-Tucker-Bedingung

Vorlesung Lineare Optimierung (Sommersemester 2010)

Standard-/kanonische Form Simplex Dualität Kompl./Sensitivität Spaltengen. Schnittebenen Welchen? Inhalt

Einführung in die Lineare Programmierung

4.4 Quadratische Optimierungsprobleme

Übungsaufgaben. Grundkurs Höhere Mathematik für Wirtschaftswissenschaftler. Teil 1: Lineare Algebra und Optimierung.

05. Lineare Gleichungssysteme

Insbesondere sind nach dieser Definition also auch die leere Menge und einpunktige Teilmengen konvex.

Übungen zur Linearen Algebra 1

3 Lineare Algebra (Teil 1): Lineare Unabhängigkeit

Lineare Algebra I (WS 12/13)

Übung 3, Simplex-Algorithmus

Abbildung 1: Graphische Lösung der ersten Übungsaufgabe

4. ggt und kgv. Chr.Nelius: Zahlentheorie (SS 2007) 9

5.7 Lineare Abhängigkeit, Basis und Dimension

7.1 Matrizen und Vektore

8. Lineare Optimierung

λ i x i λ i 0, x i X, nur endlich viele λ i 0}.

4 Lineare Optimierung

Vektorräume. Kapitel Definition und Beispiele

z = c T x : Ax = b, x 0 }, - die Darstellung der Nichtbasisvektoren durch die Basis ist

Operations Research. Flüsse in Netzwerken. Flüsse in Netzwerken. Unimodularität. Rainer Schrader. 2. Juli Gliederung.

1. EINFÜHRUNG INS STATE-PRICING 1

Lineare Optimierung und Simplex-Algorithmus

GEOMETRIE DER POLYEDER

Lineare Optimierung Dantzig 1947

Skalarprodukt, Norm & Metrik

6 Lineare Gleichungssysteme

Vorlesung Lineare Optimierung (Sommersemester 2009)

Teil 5: Lineare Programmierung. (Blum, Kapitel 8)

technische universität dortmund Dortmund, im Dezember 2011 Fakultät für Mathematik Prof. Dr. H. M. Möller

Lineare Algebra I (WS 13/14)

Vortrag 20: Kurze Vektoren in Gittern

Lineare Gleichungssysteme

Einführung in die Wirtschaftsinformatik VO WS 2008 / 2009

Der Kern einer Matrix

KAPITEL 13. Polynome. 1. Primfaktorzerlegung in den ganzen Zahlen. ,, p r

Klausur zur Vorlesung Mathematische Grundlagen für Wirtschaftswissenschaftler

Computer Vision I. Nikos Canterakis. Lehrstuhl für Mustererkennung, Universität Freiburg

Lineare Programmierung (2)

OPERATIONS-RESEARCH (OR)

Kapitel V. Affine Geometrie

Transkript:

1 Nicoletta Andri 1 Der Simplex Algorithmus I 1.1 Einführungsbeispiel In einer Papiermühle wird aus Altpapier und anderen Vorstoffen feines und grobes Papier hergestellt. Der Erlös pro Tonne feines Papier beläuft sich auf 1 SFr. und für grobes Papier auf 7.5 SFr. Der Altpapierverbrauch beträgt.6 Tonnen pro Tonne grobes Papier und eine Tonne pro Tonne feines Papier. Maximal können 15 Tonnen Altpapier verarbeitet werden. Die Herstellung von einer Tonne feinem Papier erfordert 5 Kilogramm Vorstoffe und für eine Tonne grobes Papier werden 1 Kilogramm Vorstoffe benötigt. Es stehen höchstens 5 Kilogramm Vorstoffe zur Verfügung. Welches Produktionsprogramm bringt den grössten Erlös, wenn maximal 2 Tonnen grobes Papier abgesetzt werden können? Wir bezeichnen nun mit x 1 die Anzahl produzierter Tonnen feines Papier und mit x 2 die Anzahl Tonnen grobes Papier. Dann ist der Erlös Dies ist die sogenannte Zielfunktion. 1x 1 + 7.5x 2 Die Zielfunktion soll maximiert werden unter den folgenden Nebenbedingungen x 1 +.6x 2 15 (Altpapier 5x 1 + 1x 2 5 (Vorstoffe x 2 2 (Grobpapier Ausserdem müssen wir sicherstellen, dass die Variablen x 1 und x 2 nicht negativ sind. Wir fordern also zusätzlich x 1, x 2 Da sowohl Zielfunktion wie auch Nebenbedingungen linear in x 1 und x 2 sind, sprechen wir bei diesem Problem von einem linearen Programm oder kurz (LP. Wir möchten also folgendes (LP lösen: max 1x 1 + 7.5x 2 unter x 1 +.6x 2 15 5x 1 + 1x 2 5 x 2 2 x 1, x 2

2 Nicoletta Andri Graphische Interpretation Damit ein Punkt zulässig ist, muss er gleichzeitig alle Nebenbedingungen erfüllen, einschliesslich Nichtnegativität. Deshalb nennt man diese Punkte zulässige Lösungen und die Menge aller zulässigen Lösungen heisst zulässiges Gebiet. Offensichtlich stellt jede Nebenbedingung ein Halbraum dar, in unserem 2D- Beispiel die eine Seite der entsprechenden Gerade. Das zulässige Gebiet ist demnach der Durchschnitt dieser Halbräume, also ein konvexes Polyeder. Abbildung 1: Graphische Lösung des (LP Besitzt eine Grenze einer Nebenbedingung keinen gemeinsamen Punkt mit dem zulässigen Gebiet, so heisst diese Nebenbedingung redundant. Redundante Nebenbedingungen können ohne Einschränkung aus den Betrachtungen gestrichen werden. Die Zielfunktion ist eine Kurvenschar. Sie beschreibt den Term, der maximiert werden soll. In unserem Beispiel ist dies der Erlös ZF: z = 1x 1 + 7.5x 2 Im 2D-Fall sind die Niveaulinien für beliebige z-werte Geraden. Ändert sich der Wert von z, so verschiebt sich die Niveaulinie parallel dazu. Eine optimale Lösung findet man, indem man die Niveaulinie der Zielfunktion parallel in Richtung zunehmender Zielfunktionswerte verschiebt, bis sie das zulässige Gebiet gerade noch berührt. Für die Papiermühle ist die optimale Lösung folglich der Punkt C mit (x 1, x 2 = (3, 2. Der Erlös beträgt somit 18 SFr. Die Optimallösung wird in einem Eckpunkt oder sogenanntem Extremalpunkt angenommen.

3 Nicoletta Andri Mathematische Formulierung Kanonische Struktur eines linearen Programms: max z = c j x j unter Einhaltung der Nebenbedingungen a ij x j b i, i = 1,..., m x j, j = 1,..., n. Hierbei bezeichnet n die Anzahl Variablen und m die Anzahl Nebenbedingungen. In Matrixschreibweise: unter max z = c T x Ax b x Wobei wir mit v 1 v 2 meinen, dass komponentenweise gelten soll. Durch die Einführung von sogenannten Schlupfvariablen y i, i = 1,..., m lässt sich die kanonische Form auf die sogenannte Standardform bringen, nämlich max z = c j x j unter Einhaltung der Nebenbedingungen a ij x j + y i = b i, i = 1,..., m x j, j = 1,..., n y i, i = 1,..., m In Matrixschreibweise: unter max z = c T x Ax + y = b x Die Einführung von Schlupfvariablen würde bei unserem Beispiel folgendermassen aussehen: x 1 +.6x 2 + y 1 = 15 (Altpapier 5x 1 + 1x 2 + y 2 = 5 (Vorstoffe x 2 + y 3 = 2 (Grobpapier

4 Nicoletta Andri 1.2 Wiederholung: Lineare Algebra Wir müssen oft Gleichungssysteme der folgenden Form lösen: Ax = b, Hierzu bietet sich das Gaussverfahren an. A R m n, b R m Um die Anzahl Lösungen von Ax = b zu bestimmen, muss man eine Fallunterscheidung machen. 1. r(a b > r(a Ax = b hat keine Lösung, weil sich b nicht als Linearkombination der Spaltenvektoren von A darstellen lässt. 2. r(a b = r(a = min(m, n, n m Ax = b hat genau eine Lösung. 3. r(a b = r(a = min(m, n, m < n Ax = b hat unendlich viele Lösungen. 4. r(a b = r(a < min(m, n Ax = b enthält k = min(m, n r(a redundante Gleichungen, die gestrichen werden können. Nach dem Streichen dieser Gleichungen befinden wir uns entweder im zweiten oder im dritten Fall. Uns interessiert offensichtlich nur der dritte Fall. Wir gehen also im Folgenden von r(a = m aus. Dann können wir A folgendermassen umordnen. A = [B N], Entsprechend müssen wir auch x umordnen. ( xb x = B R m m regulär, N R m (n m Die Komponenten von x B heissen Basisvariablen, x N sind die Nichtbasisvariablen. x N Dann gilt ( xb Ax = [B N] x N = Bx B + Nx N = b Der (n m-dimensionale Lösungsraum lässt sich folglich beschreiben als L = { (x B, x N T x B = B 1 b B 1 Nx N, x N R n m beliebig } Eine sogenannte Basislösung von Ax = b erhält man, indem man die Nichtbasisvariablen gleich Null setzt: ( B x = 1 b Da die Wahl von B nicht eindeutig ist, gibt es natürlich mehrere Basislösungen.

5 Nicoletta Andri 1.3 Polyedrische Mengen Definition: (Polyeder Eine Menge P R n heisst polyedrische Menge oder einfach Polyeder, falls P ein endlicher Durchschnitt von Halbräumen ist, das heisst von der Form P = {x R n Ax b} { ( y = x R n [I A] x } = b, y Wenn man noch zusätzlich Nichtnegativität fordert, dann gilt { ( } y P = x R n [I A] = b, x, y x {( ( } y y = R m+n [I A] = b, x, y x x Ein Polyeder ist offensichtlich konvex. Definition: (Extremalpunkt Ein Punkt x einer konvexen Menge X heisst Extremalpunkt, falls aus x = λx 1 + (1 λx 2, x 1, x 2 X, λ (, 1 folgt, dass x 1 = x 2 = x. Satz: (Zusammenhang Basislösung-Extremalpunkt Betrachte P = {x Ax = b, x }, A R m n, b R m, r(a = m( n. x P ist Extremalpunkt ( ( Es gibt eine Zerlegung A = [B N] mit B xb B regulär, x = = 1 b mit B 1 b. x N Beweis: = : ( xb Sei A = [B N], B regulär, x = Zu zeigen: x ist extremal x N = ( B 1 b, B 1 b Sei x = λx 1 ( + (1 λx 2, x 1 (, x 2 P, λ (, 1. x1b x2b Setze x 1 =, x 2 =. Dann gelten x 1N x 2N B 1 b = λx 1B + (1 λx 2B = λx 1N + (1 λx 2N Weil x 1, x 2 P gilt, sind alle Komponenten nichtnegativ. Deshalb folgt aus der zweiten Gleichung x 1N = x 2N =

6 Nicoletta Andri Weil B regulär ist, folgt aus der ersten Gleichung Damit ist die eine Richtung gezeigt. x 1B = x 2B = B 1 b = : Sei x P extremal. Zu zeigen: Es gibt eine entsprechende Zerlegung A = [B N] und x = mit B 1 b. ( B 1 b Ordne A so, dass x = (x 1,..., x k,,..., T Behauptung: Die ersten k Kolonnen von A sind linear unabhängig. Annahme: Die ersten k Kolonnen von A sind linear abhängig. Dann gibt es ein λ R k, λ mit ( k λ i=1 λ ia i = bzw. A =. ( ( λ λ Setze x = x + α, x = x α mit α > klein genug, so dass x, x immer noch zulässig sind. Dies kann folgendermassen konstruiert werden: Definiere { α 1 := min x } i 1 i k λ i λ i < { } xi α 2 := min 1 i k λ i > λ i Wähle α (, min {α 1, α 2 } { } Weil λ ist, können die beiden Mengen x i λ i λ i < nicht beide leer sein. α ist entsprechend wohldefiniert. Weil λ und α > sind, ist x x. x, x sind in P, weil Ax = ( λ Ax + α A = Ax = b }{{} Ax = = ( λ Ax α A = Ax = b }{{} = und { } x i λ i λ i > Nun gilt aber x = 1 2 x + 1 2 x. Dies ist ein Widerspruch zur Extremalität von x. Die ersten k Kolonnen von A müssen also tatsächtlich linear unabhängig sein.

7 Nicoletta Andri Weil r(a = m ist, kann man (a 1,..., a k durch weitere (m k Vektoren a k+1,..., a m A\ {a 1,..., a k } zu einer Basis ergänzen. Definiere B = (a 1,..., a k, a k+1,..., a m und zerlege A entsprechend: A = [B N] Weil x P ist, gilt Wegen der Regularität von B gilt ( xb Ax = [B N] x N = b B 1 b = x = (x 1,..., x k,..., T Damit ist auch die zweite Richtung gezeigt. q.e.d. Jede zulässige Basislösung entspricht also einem Extremalpunkt des Polyeders, und umgekehrt lässt sich jedem Extremalpunkt des Polyeders eine Basislösung zuordnen. Diese Zuordnung ist eindeutig, falls die Basislösung nichtdegeneriert ist. Definition: (Degeneriertheit Eine (zulässige Basis B heisst degeneriert, falls es ein i gibt mit (B 1 b i =, und nichtdegeneriert, falls B 1 b >. Abbildung 2: Degenerierte Basislösung Definition: (Extremalrichtung Sei X R n eine nichtleere, konvexe und abgeschlossene Menge. Dann heisst d R n Richtung in X, falls x + λd X, für alle λ und x X. Eine Richtung d heisst Extremalrichtung, falls für Richtungen d 1, d 2 dass aus d = λ 1 d 1 + λ 2 d 2, λ 1, λ 2 > folgt, dass d 1 = αd 2, für ein α >. gilt,

8 Nicoletta Andri Satz: (Darstellungssatz von Polyeder Jedes Polyeder P kann eindeutig geschrieben werden als P = Q + C, Q := conv {x 1, x 2,..., x k }, C := cone {d 1, d 2,..., d l } 1.4 Dualität Primale Aufgabe (LP: Duale Aufgabe (LD: max c T x unter Ax b x min b T y unter A T y c y In unserem Einführungsbeispiel ist die duale Aufgabe min 15y 1 + 5y 2 + 15y 3 unter y 1 + 5y 2 1.6y 1 + 1y 2 + y 3 7.5 y 1, y 2, y 3 Lemma: (Schwache Dualität Sei x eine zulässige Lösung von (LP, y eine zulässige Lösung von (LD. Dann gilt c T x b T y Beweis: c T x (y T Ax = y T Ax y T b = b T y q.e.d. Korollar: (Zertifikat Seien x, y zulässig für (LP resp. (LD und es gelte b T y = c T x. Dann sind x, y optimal für (LP resp. (LD. Satz: (Dualitätssatz der linearen Programmierung Seien A R m n, b R m, c R n. Dann gilt max { c T x Ax b, x } = min { b T y A T y c, y } sofern beide Aufgaben zulässige Lösungen besitzen. Beweis: Für den Beweis dieses Satzes verwenden wir das Lemma von Farkas, das wir hier ohne Beweis aufführen.

9 Nicoletta Andri Lemma: (Farkas Gegeben seien eine Matrix A R m n und ein Vektor b R m. Dann hat genau eines der beiden folgenden Systeme eine Lösung: 1. x mit Ax b 2. y mit y T A und y T b < Um den Satz zu beweisen, reicht es zu zeigen, dass es ein x und ein y gibt mit Ax b, A T y c, c T x b T y. (Mit der schwachen Dualität folgt nämlich c T x = b T y. ( x Das heisst, wir müssen zeigen, dass es ein z := gibt mit y A ( b Âz := c T b T x =: A T y ˆb. c Gemäss Farkas-Lemma hat genau eines der folgenden zwei Systeme eine Lösung: 1. z mit Âz ˆb 2. s mit s T Â und s Tˆb <. Zu zeigen: Das zweite System hat keine Lösung. Das heisst, wir zeigen, dass für alle (u, v, w, u R m, v R, w R n mit u T A vc T vb T w T A T gilt u T b w T c. Hierzu machen wir eine Fallunterscheidung. 1. Fall: v > u T b = 1 v vut b = 1 v ut vb }{{} Aw 1 v ut }{{} A w vc T = 1 v vct w = c T w = w T c.

1 Nicoletta Andri 2. Fall: v = In diesem Fall gilt u T A w T A T Weil (LP und (LD zulässig sind, gibt es ein x und ein y mit Ax b und A T y c. Folglich gilt u T b u}{{} T A x (w T A T y = w T A T y }{{} c = w T c. q.e.d. Korollar: Besitzt (LP eine endliche Optimallösung x, so besitzt auch (LD eine endliche Optimallösung y und es gilt c T x = b T y. Beweis: Es genügt zu zeigen, dass (LD eine zulässige Lösung besitzt. Annahme: Es gibt kein y mit A T y c. Das heisst, ( es gibt kein y ( und kein s mit A T y s = c bzw. es gibt y y kein v := mit [A s T I] = c. s Nach dem Farkas-Lemma muss es folglich ein z geben mit z T [A T I] und z T c >. Also gilt z Az c T z > Dies bedeutet aber, dass z eine Richtung mit wachsendem Zielfunktionswert für (LP ist. Denn für alle λ ist x + λz zulässig: A(x + λz = }{{} Ax + λ b }{{} }{{} Az b

11 Nicoletta Andri Für den Zielfunktionswert gilt c T (x + λz = c T x + λ }{{} c T z c T x. > Man kann also λ immer grösser machen, bleibt immer im zulässigen Bereich und der Zielfunktionswert wächst immer mehr an. Dies ist ein Widerspruch zur Endlichkeit der Optimallösung x von (LP. q.e.d. Satz: (Komplementaritätssatz Sei x eine zulässige Lösung von (LP und y eine zulässige Lösung von (LD. (x, y sind genau dann Optimallösungen der entsprechenden Probleme, falls 1. 2. m a ij yi = c j oder x j =, j = 1,..., n i=1 a ij x j = c i oder yi =, i = 1,..., m. Beweis: Seien x, y primal bzw. dual zulässig. Dann gelten 1. ( m c j x j a ij yi x j, i=1 j = 1..., n 2. ( a ij x j yi b i yi, i = 1..., m. Summieren wir die erste Ungleichung über j = 1,..., n und die zweite Ungleichung über i = 1,..., m, so erhalten wir 1. c j x j ( m a ij yi i=1 x j 2. ( m a ij x j yi i=1 m b i yi. i=1 Folglich gilt c j x j m b i yi. i=1 Damit Gleichheit gilt, müssen beide Ungleichungen mit Gleichheit erfüllt sein. Dies ist nur der Fall, wenn für alle i und für alle j gilt

12 Nicoletta Andri 1. 2. x j = und/oder c j = y i = und/oder b i = m a ij yi, i=1 a ij x j. q.e.d. Zulässigkeit und Komplementarität lassen sich auch folgendermassen zusammenfassen. Satz: (Kuhn-Tucker (x, y sind genau dann ein Paar von Optimallösungen zu (LP und (LD, wenn sie die nachfolgenden Gleichungen erfüllen. 1. Ax b, x 2. A T y c, y 3. (x T (A T y c = (y T ( Ax + b =