Mathematische Optimierung. Volker John



Ähnliche Dokumente
Bestimmung einer ersten

Hauptsatz und Optimalitätskriterium der Simplexmethode

Teil I. Lineare Optimierung

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

3. Grundlagen der Linearen Programmierung

Lineare Gleichungssysteme

50. Mathematik-Olympiade 2. Stufe (Regionalrunde) Klasse Lösung 10 Punkte

Primzahlen und RSA-Verschlüsselung

Lineargleichungssysteme: Additions-/ Subtraktionsverfahren

Die Gleichung A x = a hat für A 0 die eindeutig bestimmte Lösung. Für A=0 und a 0 existiert keine Lösung.

Matrizennorm. Definition 1. Sei A M r,s (R). Dann heißt A := sup die Matrixnorm. Wir wissen zunächst nicht, ob A eine reelle Zahl ist.

7 Rechnen mit Polynomen

OPERATIONS-RESEARCH (OR)

Im Jahr t = 0 hat eine Stadt Einwohner. Nach 15 Jahren hat sich die Einwohnerzahl verdoppelt. z(t) = at + b

Optimierung für Nichtmathematiker

Lineare Gleichungssysteme

1 Mathematische Grundlagen

Optimalitätskriterien

Mathematik 1 für Wirtschaftsinformatik

Lernmaterial für die Fernuni Hagen effizient und prüfungsnah

Optimierung und Simulation ökonomischer Problemlagen privater Haushalte 3. Vorlesung

- Wie lauten notwendige und hinreichende Bedingungen für die Existenz von

Die reellen Lösungen der kubischen Gleichung

Einführung in die Algebra

Fachschaft Mathematik und Informatik (FIM) LA I VORKURS. Herbstsemester gehalten von Harald Baum

13. Lineare DGL höherer Ordnung. Eine DGL heißt von n-ter Ordnung, wenn Ableitungen y, y, y,... bis zur n-ten Ableitung y (n) darin vorkommen.

1. Man schreibe die folgenden Aussagen jeweils in einen normalen Satz um. Zum Beispiel kann man die Aussage:

Grundlagen der höheren Mathematik Einige Hinweise zum Lösen von Gleichungen

4. Dynamische Optimierung

Lineare Funktionen. 1 Proportionale Funktionen Definition Eigenschaften Steigungsdreieck 3

Lineare Gleichungssysteme

Optimierung für Wirtschaftsinformatiker: Analytische Optimierung ohne Nebenbedingungen

Kapitel 15. Lösung linearer Gleichungssysteme

Informationsblatt Induktionsbeweis

Musterlösungen zur Linearen Algebra II Blatt 5

Division Für diesen Abschnitt setzen wir voraus, dass der Koeffizientenring ein Körper ist. Betrachte das Schema

Gleichungen Lösen. Ein graphischer Blick auf Gleichungen

Aufgabe 1. Zunächst wird die allgemeine Tangentengleichung in Abhängigkeit von a aufgestellt:

x 2 2x + = 3 + Es gibt genau ein x R mit ax + b = 0, denn es gilt

Lineare Gleichungssysteme

Rekursionen. Georg Anegg 25. November Methoden und Techniken an Beispielen erklärt

Nichtlineare Optimierung ohne Nebenbedingungen

9.2. DER SATZ ÜBER IMPLIZITE FUNKTIONEN 83

Lineare Algebra und Lösung linearer zeitinvarianter Differentialgleichungssysteme

6.2 Scan-Konvertierung (Scan Conversion)

Zeichen bei Zahlen entschlüsseln

Lösungen zum 3. Aufgabenblatt

Lineare Differentialgleichungen erster Ordnung erkennen

Extrema von Funktionen in zwei Variablen

Eigenwerte und Eigenvektoren von Matrizen

8. Quadratische Reste. Reziprozitätsgesetz

Vorlesung Diskrete Strukturen Graphen: Wieviele Bäume?

Frohe Weihnachten und ein gutes neues Jahr!

5 Eigenwerte und die Jordansche Normalform

Optimierung für Wirtschaftsinformatiker: Analytische Optimierung mit Ungleichungsnebenbedingungen

Stackelberg Scheduling Strategien


Mathematik I für Wirtschaftswissenschaftler

Anmerkungen zur Übergangsprüfung

Behörde für Bildung und Sport Abitur 2008 Lehrermaterialien zum Leistungskurs Mathematik

Das Briefträgerproblem

3. Zusammenhang. 22 Andreas Gathmann

Mathematischer Vorbereitungskurs für Ökonomen

OECD Programme for International Student Assessment PISA Lösungen der Beispielaufgaben aus dem Mathematiktest. Deutschland

DIFFERENTIALGLEICHUNGEN

Grundlagen der Theoretischen Informatik, SoSe 2008

u + v = v + u. u + (v + w) = (u + v) + w. 0 V + v = v + 0 V = v v + u = u + v = 0 V. t (u + v) = t u + t v, (t + s) u = t u + s u.

Elemente der Analysis I Kapitel 2: Einführung II, Gleichungen

Lineare Gleichungssysteme I (Matrixgleichungen)

Skript und Aufgabensammlung Terme und Gleichungen Mathefritz Verlag Jörg Christmann Nur zum Privaten Gebrauch! Alle Rechte vorbehalten!

4. Versicherungsangebot

Optimierungsprobleme mit Nebenbedingungen - Einführung in die Theorie, Numerische Methoden und Anwendungen

Basis und Dimension. Als nächstes wollen wir die wichtigen Begriffe Erzeugendensystem und Basis eines Vektorraums definieren.

Übungen zum Ferienkurs Lineare Algebra WS 14/15

Lösungsmethoden gewöhnlicher Differentialgleichungen (Dgl.)

6 Allgemeine Theorie des elektromagnetischen Feldes im Vakuum

Welche Lagen können zwei Geraden (im Raum) zueinander haben? Welche Lagen kann eine Gerade bezüglich einer Ebene im Raum einnehmen?

Absolute Stetigkeit von Maßen

LU-Zerlegung. Zusätze zum Gelben Rechenbuch. Peter Furlan. Verlag Martina Furlan. Inhaltsverzeichnis. 1 Definitionen.

Austausch- bzw. Übergangsprozesse und Gleichgewichtsverteilungen

Erinnerung/Zusammenfassung zu Abbildungsmatrizen

LANGFRISTIGE HAUSAUFGABE (LINEARE GLEICHUNGSSYSTEME)

!(0) + o 1("). Es ist damit möglich, dass mehrere Familien geschlossener Orbits gleichzeitig abzweigen.

Lineare Programmierung. Beispiel: Wahlkampf. Beispiel: Wahlkampf. Mathematische Schreibweise. Lineares Programm. Datenstrukturen & Algorithmen

Die Verbindung von Linearer Programmierung und Graphentheorie

Inhaltsverzeichnis. Optimierung. I Lineare Optimierung 6. Volker John. 19. Juli II Nichtlineare Optimierung Einführung 3.

Einführung in die Vektor- und Matrizenrechnung. Matrizen

V 2 B, C, D Drinks. Möglicher Lösungsweg a) Gleichungssystem: 300x y = x + 500y = 597,5 2x3 Matrix: Energydrink 0,7 Mineralwasser 0,775,

Plotten von Linien ( nach Jack Bresenham, 1962 )

1 topologisches Sortieren

3.3 Eigenwerte und Eigenräume, Diagonalisierung

Lösungsvorschlag für die Probeklausuren und Klausuren zu Algebra für Informations- und Kommunikationstechniker bei Prof. Dr.

Algorithmen II Vorlesung am

Definition 3.1: Ein Differentialgleichungssystem 1. Ordnung

Würfelt man dabei je genau 10 - mal eine 1, 2, 3, 4, 5 und 6, so beträgt die Anzahl. der verschiedenen Reihenfolgen, in denen man dies tun kann, 60!.

Übungsklausur. Bitte wählen Sie fünf Aufgaben aus! Aufgabe 1. Übungsklausur zu Mathematik I für BWL und VWL (WS 2008/09) PD Dr.

Abiturprüfung Mathematik 2008 (Baden-Württemberg) Berufliche Gymnasien ohne TG Analysis, Aufgabe 1

Modellbildungssysteme: Pädagogische und didaktische Ziele

Mathematik für Studierende der Biologie und des Lehramtes Chemie Wintersemester 2013/14. Auswahl vorausgesetzter Vorkenntnisse

Transkript:

Mathematische Optimierung Volker John Sommersemester 2007

Inhaltsverzeichnis 1 Einführung 3 I Lineare Optimierung 6 1 Grundlagen 7 2 Geometrische Deutung des Linearen Programms 10 3 Basislösungen eines linearen Programms in Normalform 15 4 Hauptsatz und Optimalitätskriterium der Simplexmethode 19 5 Die Simplexmethode 23 6 Bestimmung einer ersten zulässigen Basislösung 28 7 Zur Ausartung 32 71 Die Methode der ε Störung 32 72 Die lexikographische Simplexmethode 35 8 Zur Effizienz der Simplexmethode 37 81 Maße für die Effizienz 37 82 Zur worst case Komplexität der Simplexmethode 38 9 Dualitätssätze der linearen Optimierung 44 10 Die duale Simplexmethode 49 11 Die duale Simplexmethode zur Lösung rein ganzzahliger linearer Programme 56 12 Innere Punkt Verfahren 61 121 Das Newton Verfahren 62 122 Ein Kurz Schritt Algorithmus 62 II Nichtlineare Optimierung 70 1 Einleitung 71 2 Nichtlineare Optimierung ohne Nebenbedingungen 74 21 Minimierung nichtglatter Funktionen in einer Variablen 74 22 Differenzierbare Funktionen 79 1

3 Konvexität 80 31 Konvexe Mengen 80 32 Konvexe und konkave Funktionen 82 33 Ungleichungen und konvexe Mengen 85 34 Extrema von konvexen Funktionen 86 4 Optimalitätskriterien 87 41 Einleitung 87 42 Lokale Minima für Optimierungsprobleme ohne Einschränkungen an das zulässige Gebiet 88 43 Lokale Minima für Optimierungsprobleme, bei denen das zulässige Gebiet durch Ungleichungen gegeben ist 91 44 Globale Theorie der Lagrange Multiplikatoren 95 5 Lösungsverfahren 99 51 Projektionsverfahren 99 52 Penalty Verfahren (Strafverfahren) 102 53 Barrieremethoden 103 54 SQP Verfahren 106 2

Kapitel 1 Einführung Die Optimierung oder Programmierung untersucht die Fragestellung: Gesucht ist die optimale Lösung eines Problems unter irgendwelchen Bedingungen Die mathematische Formulierung ist: Gegeben seien Funktionen f : R n R, g i : S R, i = 1,, m, S R n, suche f(x) Extremum unter den Bedingungen g i (x) 0, i = 1,, m Sind alle Funktionen linear, so hat man ein Problem der linearen Optimierung oder linearen Programmierung, siehe Teil I Bei Optimierungsproblemen müssen folgende Fragestellungen untersucht werden: - Wie lauten notwendige und hinreichende Bedingungen für die Existenz von Lösungen? - Wie kann man Lösungen mit möglichst geringem Aufwand berechnen? Was sind die effizientesten Algorithmen? In der Einführung werden einige typische Beispiele von Optimierungsproblemen angegeben Beispiel 11 Rundreiseproblem Gegeben sind n verschiedene Orte O i, i = 1,, n Die Entfernung zwischen den Orten O i und O j sei a ij Anstelle der Entfernung können auch andere Parameter wie Kosten oder Zeit genommen werden Man nimmt im allgemeinen auch a ij a ji an Das Rundreiseproblem oder auch Traveling Salesman Problem kann nun wie folgt formuliert werden: Ein Reisender, der in einem Ort startet, möchte alle restlichen Orte genau einmal besuchen und zum Ausgangsort zurückkehren In welcher Reihenfolge hat er die Orte zu besuchen, damit die Gesamtlänge des Reiseweges minimal wird? Beispiel 12 Landwirtschaft, Anbauoptimierung Es stehen 100 ha Ackerland zur Verfügung, die mit Kartoffeln x 1 ha und Getreide x 2 ha bestellt werden sollen Ein Teil der Anbaufläche kann auch brach bleiben Die Betriebskosten sind wie folgt (GE = Geldeinheit): Kartoffeln Getreide insgesamt verfügbar Anbaukosten GE/ha 10 20 1100 GE Arbeitstage/ha 1 4 160 Tage Reingewinn GE/ha 40 120 Bei welcher Bewirtschaftung erzielt man den größten Gewinn? 3

Die mathematische Formulierung des Problems ist wie folgt: z = 40x 1 + 120x 2 max (11) 10x 1 + 20x 2 1100 (12) x 1 + 4x 2 160 (13) x 1 + x 2 100 (14) x 1, x 2 0 (15) Diese Aufgabe kann man graphisch lösen x 2 100 55 (2) (4) 40 (5) max (5) (1) (3) 100 110 160 x 1 Abbildung 11: Darstellung der Nebenbedingungen und der Zielfunktion zum Beispiel 12 Die Nebenbedingungen beschreiben Halbebenen und der Durchschnitt der Halbebenen ist gerade die Menge der Paare (x 1, x 2 ), in denen man das Maximum sucht Zur graphischen Darstellung der Zielfunktion z wähle man sich einen beliebigen Punkt (x 1, x 2 ) und berechne die Gerade z durch diesen Punkt In diesem Beispiel soll die Zielfunktion maximiert werden, das heißt, der Zielfunktionswert steigt, wenn man die Gerade orthogonal zu ihrem Anstieg nach oben verschiebt Der letzte Punkt, der alle Nebenbedingungen erfüllt und der auf einer parallelen Geraden zur dargestellten Geraden liegt, ist der mit einem Kreis gekennzeichnete Punkt (x 1, x 2 ) = (60, 25) Die Lösung dieses linearen Optimierungsproblems ist demzufolge x 1 = 60 ha, x 2 = 25 ha und der Gewinn ist 5400 GE Beispiel 13 Ernährungsprogramm Es stehen die folgenden drei Nahrungsmittel zur Verfügung (alle Angaben jeweils für 100 Gramm): Eiweiß Fett Kohlenhyd Wasser Preis 1 Weißbrot 8 1 49 42 10 2 Wurst 12 20 0 68 80 3 Milch 3 3 5 89 7 Ein Ernährungsprogramm wird nur zugelassen, wenn es folgende Mindestanforderungen erfüllt: Eiweiß: 90 g, Fett: 80 g, Kohlenhydrate: 500 g, Wasser 2500 g Ziel ist es, das kostengünstigste Ernährungsprogramm zu finden, welches diese Anforde- 4

rungen erfüllt Das zugehörige Optimierungsproblem lautet: z = 10x 1 + 80x 2 + 7x 3 min 8x 1 + 12x 2 + 3x 3 90 x 1 + 20x 2 + 3x 3 80 49x 1 + 5x 3 500 42x 1 + 68x 2 + 89x 3 2500 x 1, x 2, x 3 0, wobei die Maßeinheit für x 1, x 2, x 3 hier 100 g ist Die (gerundete) Lösung lautet: x 1 = 771, x 2 = 0, x 3 = 2445, also 771 g Weißbrot und 2445 g Milch, das heißt vegetarisch Die Kosten sind rund 248 GE Beispiel 14 Rucksackproblem Ein Wanderer kann in seinem Rucksack ein Gesamtgewicht von N tragen Er hat n Gegenstände, die er mitnehmen möchte und jeder Gegenstand hat einen gewissen Nutzen n i, i = 1,, n Das Gesamtgewicht aller Gegenstände übersteigt das zulässige Maximalgewicht Das Optimierungsproblem des Wanderers besteht nun darin, eine Teilmenge von Gegenständen mit maximalem Nutzen zu finden, so dass das Gesamtgewicht dieser Teilmenge höchstens N ist Dabei kann als zusätzliche Nebenbedingung auftreten, dass gewisse Lösungskomponenten ganzzahlig sein müssen, zum Beispiel die Anzahl der Paar Schuhe, die er mitnehmen soll Beispiel 15 Zuordnungsproblem In einer Firma stehen zur Fertigung von n Produkten n Maschinen zur Verfügung Jede Maschine eignet sich zur Herstellung jedes Produktes unterschiedlich gut Es ergeben sich je nach Zuordnung verschiedene Arbeitszeiten Jeder Maschine soll genau ein Produkt zugeordnet werden Das Optimierungsproblem besteht darin, die Gesamtfertigungszeit der Produkte zu minimieren Bemerkung 16 Operations Research In der Fachliteratur werden Optimierungsaufgaben oft unter dem Begriff Operations Research (Optimalplanung) geführt Literaturempfehlungen sind: Jarre und Stoer [JS04], Borgwardt [Bor01], Elster, Reinhardt, Schäuble, Donath [ERSD77], vor allem über das Gebiet der linearen Optimierung gibt es auch eine Reihe älterer Lehrbücher, die man verwenden kann 5

Teil I Lineare Optimierung 6

Kapitel 1 Grundlagen Definition 11 Lineares Optimierungsproblem, lineares Programm Eine Aufgabenstellung wird lineares Optimierungsproblem oder lineares Programm genannt, wenn das Extremum einer linearen Funktion z = n c i x i = c T x (11) zu bestimmen ist, über der durch das lineare Ungleichungssystem i=1 n a ij x j (>) b i, i = 1,, m (12) j=1 x j 0, j = 1,, n, (13) definierten Punktmenge Seien x, y R n Dann wird die Bezeichnung verwendet x (>)y x i (>)y i, i = 1,, n, Definition 12 Zulässiger Bereich Die Menge M aller Punkte, die das Ungleichungssystem (12) (13) erfüllen, heißt zulässiger Bereich Beispiel 13 Der zulässige Bereich, der durch lineare Nebenbedingungen beschrieben ist, ist der Durchschnitt von Halbräumen Für n = 2 sind das Halbebenen und ein Beispiel ist in Abbildung 11 zu sehen Der zulässige Bereich ist nicht notwendig beschränkt Er kann auch leer sein Definition 14 Konvexität Eine Punktmenge M heißt konvex, wenn mit beliebigem x 1, x 2 M auch alle Punkte der Gestalt λx 1 + (1 λ)x 2, 0 λ 1, zu M gehören Für den R n bedeutet Konvexität, dass mit zwei Punkten x 1, x 2 aus M auch ihre Verbindungsstrecke in M liegt Satz 15 Die durch das lineare Ungleichungssystem (12) (13) definierte Punktmenge ist konvex 7

Beweis: Seien x 1, x 2 M gegeben Dann gelten Mit λ [0, 1] gelten Ax 1 b, x 1 0, Ax 2 b, x 2 0 λax 1 λb, (1 λ)ax 2 (1 λ)b Addition und Linearität der Matrizenmultiplikation ergibt A (λx 1 + (1 λ)x 2 ) b Analog folgt λx 1 + (1 λ)x 2 0 Der Durchschnitt beliebig vieler konvexer Mengen ist wieder konvex Übungsaufgabe Definition 16 Konvexe Hülle Die kleinstmögliche konvexe Menge M, die eine vorgegebene Punktmenge P enthält, heißt deren konvexe Hülle Beispiel 17 Die dick umrandete Menge ist die konvexe Hülle der gestrichelt umrandeten Menge Beispiel 18 Die Menge M = { } 1 n : n N ist nicht konvex, da sie aus diskreten Punkten besteht Ihre konvexe Hülle ist (0, 1] Definition 19 Konvexe Linearkombination Gegeben seien q Punkte x 1,, x q Betrachtet werden alle Punkte der Gestalt q x = λ i x i, 0 λ i 1, i=1 q λ i = 1 (14) i=1 Dann heißt die mit (14) erklärte Menge konvexe Linearkombination der Punkte x 1,, x q Welche Punkte einer konvexen Menge sollen ausgezeichnet werden? Definition 110 Eckpunkt oder Extrempunkt einer konvexen Menge Gegeben sei eine konvexe Menge M Der Punkt x M heißt Eckpunkt oder Extrempunkt von M, wenn aus x = λx 1 + (1 λ)x 2, x 1, x 2 M, 0 < λ < 1, folgt x = x 1 = x 2 Man sagt, x lässt sich nicht als echte konvexe Linearkombination von Punkten x 1, x 2 M darstellen 8

Beispiel 111 Bei einem Viereck im R 2 sind die Eckpunkte gerade die vier Ecken Bei einer Kugel im R n, n 1, sind alle Randpunkte Eckpunkte Definition 112 Konvexes Polyeder Eine beschränkte konvexe Menge M mit endlich vielen Eckpunkten heißt konvexes Polyeder Beispiel 113 Konvexe Polyeder in R n, n = 1, 2, 3 Ein konvexes Polyeder in R 1 ist ein abgeschlossenes Intervall In R 2 und R 3 kann man sich konvexe Polyeder noch gut vorstellen Ein Beispiel in R 2 findet man in Abbildung 11 Satz 114 Sei M eine konvexe, abgeschlossene und beschränkte Menge, P sei die Menge der Eckpunkte von M Dann ist M die konvexe Hülle von P Beweis: Satz 248] Literatur Beweisidee mit trennenden Hyperebenen siehe [ERSD77, Satz 115 Ist der Lösungsbereich M = {x : Ax b, x 0} beschränkt, so ist er ein konvexes Polyeder Beweis: Siehe später, Folgerung 37 9

Kapitel 2 Geometrische Deutung des Linearen Programms In diesem Abschnitt wird gezeigt, dass sich das anschauliche Merkmal des zweidimensionalen linearen Programms aus Beispiel 12, nämlich dass das Optimum auf dem Rand angenommen wird, verallgemeinern lässt Historie zur Untersuchung linearer Optimierungsprobleme: - 1939 Leonid V Kantorovitch (1912 1986); Methode der Auflösungskoeffizienten - 1941 Frank L Hitchcock, Transportproblem - 1949 George Dantzig (1914 2005), Simplexmethode - 1984 Narendra Karmarkar (geb 1957), Innere Punkt Methoden für lineare Programme Definition 21 Lineares Optimierungsproblem in 1 Normalform, lineares Programm in Normalform Gesucht werden die Werte der n Variablen x 1,, x n so, dass die lineare Funktion z = n c j x j = c T x (21) j=1 die sogenannte Zielfunktion, unter den Nebenbedingungen n a ij x j b i, i = 1,, m, (Ax b), (22) j=1 x j 0, j = 1,, n, (x 0), (23) ein Minimum annimmt Alle Koeffizienten sind reell Das System (21) (23) heißt lineares Optimierungsproblem oder lineares Programm in 1 Normalform Bemerkung 22 1 Ob (21) in min oder max Form benutzt wird, ist im allgemeinen ohne Belang, in [JS04] wird beispielsweise die max Form verwendet 2 Die Relationen, =, im System der Nebenbedingungen sind im wesentlichen äquivalent 3 Fehlt zum Beispiel für einen Index k die Bedingung x k 0, so setzt man x k := x k ˆx k mit x k, ˆx k 0 Man erhöht damit die Anzahl der Variablen um Eins 10

Definition 23 Zulässiger Punkt, zulässiger Bereich Ein Punkt x = (x 1,, x n ) T heißt zulässig, wenn er die Nebenbedingungen (22), (23) erfüllt Die Gesamtheit aller zulässigen Punkte heißt zulässiger Bereich Für die Lösung von (21) (23) kommen nur zulässige Punkte in Betracht Der zulässige Bereich ist konvex Ist er beschränkt, so ist er ein konvexes Polyeder Ist der zulässige Bereich nicht beschränkt ist, dann gilt: - entweder ist (21) über diesen Bereich selbst nicht beschränkt, Beispiel: Minimiere 2x 1 x 2 im Bereich {(x 1, x 2 ) : x 1 0, x 2 0}, - oder (21) ist über dem unbeschränkten Bereich beschränkt Dann kann man Zusatzbedingungen an den zulässigen Bereich stellen, die das Optimum nicht ändern, so dass der neue zulässige Bereich beschränkt ist Beispiel: Minimiere 2x 1 + x 2 im Bereich {(x 1, x 2 ) : x 1 0, x 2 0} Weitere Beispiele findet man in Beispiel 26 Wenn von einem konvexen Polyeder gesprochen wird, ist ab sofort immer ein abgeschlossenes konvexes Polyeder gemeint Satz 24 Extremwertannahme Eine auf einem konvexen Polyeder definierte lineare Funktion z = f(x) nimmt ihren kleinsten Wert in (mindestens) einem Eckpunkt an Beweis: Seien x 1, x p die Eckpunkte des konvexen Polyeders M Die Funktion f(x) nehme ihr Minimum in x 0 M an, das heißt f(x 0 ) f(x) (24) für alle Punkte x des konvexen Polyeders Dass das Minimum angenommen wird, folgt nach dem Satz von Bolzano Weierstraß (stetige Funktion in einem kompakten Gebiet nimmt ihre Extremwerte an) Ist x 0 kein Eckpunkt, so existiert eine Darstellung (Satz 114) p x 0 = λ j x j, 0 λ j 1, j=1 p λ j = 1 j=1 Aus der Linearität von f folgt p f (x 0 ) = f λ j x j = Sei ein Index l definiert durch Dann folgt j=1 f(x l ) = f (x 0 ) f(x l ) p λ j f (x j ) j=1 min f(x j) j=1,,p p λ j = f(x l ) (25) Wegen (24) und (25) wird das Minimum für x l angenommen j=1 Folgerung 25 Wird das Minimum in mehr als einem Eckpunkt des konvexen Polyeders angenommen, so wird es auf der konvexen Hülle dieser Eckpunkte angenommen 11

Beweis: Ohne Beschränkung der Allgemeinheit seien die Eckpunkte so numeriert, dass die Zielfunktion f(x) ihr Minimum in den Eckpunkten x 1,, x q annehme Die konvexe Hülle dieser Eckpunkte ist { } q q x : x = λ i x i, 0 λ i 1, λ i = 1 i=1 Aus der Linearität von f folgt ( q ) f( x) = f λ i x i = i=1 womit die Folgerung bewiesen ist Geometrische Interpretation i=1 q λ i f(x i ) = f(x 1 ) i=1 q λ i = f(x 1 ), Die Gleichung z = c T x d mit einer vorgegebenen Konstanten d ist die Gleichung einer Hyperebene in R n Für n = 3, hat man beispielsweise die Normalform einer Ebenengleichung, wobei c ein Normalenvektor der Ebene ist Sei z = c T x die Zielfunktion Es ist gerade c = z = ( z x 1,, ) T z x n Außerdem ist c orthogonal zu den Hyperebenen c T x = const Sei nämlich ein beliebiger Vektor einer Hyperebene gegeben, etwa zwischen den Punkten x und ˆx, dann gilt c T x = const, c T ˆx = const = c T ( x ˆx) = 0 Aus der Menge {c T x = const} wählen wir diejenige Hyperebene, die einen vorgegebenen zulässigen Punkt x 0 M, nicht notwendig einen Eckpunkt, enthält: c T x = c T x 0 Wir definieren g := {x : x = x 0 + tc, t R} Diese Gerade enthält x 0 und sie ist orthogonal zu c T x = const Für alle x g gilt bezüglich der Zielfunktion i=1 z = c T x = c T (x 0 + tc) = c T x 0 + t c 2 2 =: z 0 + t c 2 2, wobei z 0 der Startwert der Zielfunktion ist Sei t > 0 Dann folgt z > z 0, das heißt, der Wert der Zielfunktion wächst streng monoton in Richtung von c Wenn man z zu maximieren hat, so verschiebe man die Hyperebene in Richtung ihres Gradienten Also, ausgehend von c T (x x 0 ) = 0 konstruiere man in Richtung von c eine Schar zu c T (x x 0 ) = 0 paralleler Hyperebenen mit dem Ziel, diejenige Hyperebene aus der Schar zu finden, die {x : Ax b, x 0} berührt mit der Eigenschaft, dass {x : Ax b, x 0} ganz im negativen Halbraum der berührenden Hyperebene liegt Berührung bedeutet, dass {x : Ax b, x 0} { c T x = const } eine Teilmenge des Randes des Polyeders ist, zum Beispiel ein Eckpunkt Beispiel 26 Beispiele für Situationen die in linearen Programmen auftreten können a) Es gibt unendlich viele Lösungen (eine gesamte Kante) 12

x 2 b) Es gibt überflüssig Nebenbedingungen Die Zielfunktion nimmt ihren Extremwert in (0, 0) an und die drei oberen Nebenbedingungen sind überflüssig x 2 x 1 z z c) Der zulässige Bereich ist leer x 2 x 1 d) Der Optimalwert ist nicht beschränkt x 1 13

x 2 z x 1 14

Kapitel 3 Basislösungen eines linearen Programms in Normalform Definition 31 Lineares Programm in 2 Normalform, einfache Normalform Gegeben sei das lineare Programm unter den folgenden Bedingungen z = c T x min! (31) Ax = b (32) x 0 (33) mit x R n, b R m und A R m n Dieses Problem wird lineares Programm in (2) Normalform genannt Bemerkung 32 Wenn man die lineare Ungleichung a i jx j b i n j=1 gegeben hat, so kann man eine sogenannte Schlupfvariable einführen a i jx j + x n +1 = b i, x n +1 0 n j=1 Mit Hilfe der Schlupfvariablen gelingt es aus dem linearen Programm in 1 Normalform ein lineares Programm in 2 Normalform zu machen Diese sind äquivalent Die Kosten der Einführung von Schlupfvariablen bestehen darin, dass man die Dimension des Lösungsvektors erhöht Wir machen jetzt die folgenden Voraussetzungen: 1 m < n, das heißt weniger Nebenbedingungen als Unbekannte 2 rg(a) = m, das heißt, A hat vollen Zeilenrang 3 Ax = b, x 0 sei widerspruchsfrei, das heißt, der zulässige Bereich ist nicht leer Definition 33 Basislösung Basislösungen des linearen Programms (31) (33) sollen die Lösungsvektoren x = (x i1,, x im, 0,, 0) T heißen, für die die m Variablen x i1,, x im eine nicht singuläre Koeffizientenmatrix A m,m = (a i1,, a im ) besitzen, wobei (a j ), j = 1,, n, die Spaltenvektoren von A bezeichne 15

Die ersten m Variablen einer Basislösung können beliebige reelle Zahlen sein Definition 34 zulässige Basislösung, ausgeartete (entartete) Basislösung Gilt für eine Basislösung x = (x i1,, x im, 0,, 0) T, dass x ij 0 für alle j = 1,, m, dann heißt sie zulässig Verschwindet sie in mindestens einer der Variablen x i1,, x im, so heißt sie ausgeartet oder entartet Die Komponenten einer Basislösung werden Basisvariable genannt, die zugehörigen Spaltenvektoren heißen Basisvektoren Entsprechend spricht man von Nichtbasisvariablen und Nichtbasisvektoren Beispiel 35 z = x 1 x 2 min! x 1 + 3x 2 + x 3 = 3 3x 1 + x 2 + x 4 = 3 x 0 Zulässige, nicht ausgeartete Basislösungen sind (i1 = 3, i2 = 4) ( ) x = (0, 0, 3, 3) T 1 0, A 2,2 =, z = 0 0 1 oder (i1 = 1, i2 = 2) x = (3/4, 3/4, 0, 0) T, A 2,2 ( 1 3 3 1 ), z = 3 2 x 2 3 1 ( 3 4, 3 4 ) z 1 3 x 1 Wir führen jetzt die weitere Nebenbedingung x 1 + x 2 3 2 ein Die Nebenbedingungen des erweiterten linearen Programms haben die Gestalt 1 3 1 0 0 x 1 x 2 3 1 0 1 0 x 3 1 1 0 0 1 x 4 = 3 3 15 x 5 Dann ist eine ausgeartete zulässige Basislösung des erweiterten linearen Programms (i1 = 1, i2 = 2, i3 = 5) (3/4, 3/4, 0, 0, 0) T, A 3,3 = 1 3 0 3 1 0, z = 3 2 1 1 1 16

Im Bild erkennt man, was Ausartung bedeutet Die Ecke (3/4, 3/4) des zulässigen Bereichs ist bereits durch die ersten beiden Nebenbedingungen bestimmt Durch die neue Nebenbedingung ist diese Ecke nun wahlweise durch die ersten beiden, durch die erste und die dritte oder die zweite und die dritte Nebenbedingung bestimmt Die Nebenbedingungen, die diese Ecke des zulässigen Bereichs bestimmen, sind nicht mehr eindeutig Satz 36 Ein Eckpunkt eines zulässigen Bereichs M = {x : Ax = b, x 0} liegt genau dann vor, wenn seine Koordinaten eine zulässige Basislösung bilden Beweis: a) Aus Basislösung folgt Eckpunkt Sei x = (x 1, x 2,, x m, 0,, 0) T eine zulässige Basislösung, das heißt a 1 x 1 + a 2 x 2 + + a m x m = b, die Vektoren a 1,, a m sind linear unabhängig und die Nichtbasisvariablen x m+1,, x n sind gleich Null Der Beweis wird indirekt geführt, indem angenommen wird, dass x = (x 1,, x m, 0,, 0) kein Eckpunkt ist Dann gibt es Punkte x 1, x 2 M mit λx 1 + (1 λ)x 2 = x, x 1 x 2, 0 < λ < 1 Da die letzten n m Komponenten von x verschwinden, muss das auch für entsprechenden Komponenten von x 1 und x 2 gelten, da alle Komponenten dieser Vektoren nichtnegativ sind Seien nun x 1 = ( T ( T x (1) 1, x(1) 2,, x(1) m, 0,, 0), x2 = x (2) 1, x(2) 2,, x(2) m, 0,, 0) Da diese Punkte zulässig sind, folgt a 1 x (1) 1 + a 2 x (1) 2 + + a m x (1) m = b, a 1 x (2) 1 + a 2 x (2) 2 + + a m x (2) m = b Wegen der linearen Unabhängigkeit der Vektoren a 1,, a m folgt daraus x 1 = x 2, was im Widerspruch zur Annahme steht Also ist x ein Eckpunkt b) Aus Eckpunkt folgt Basislösung Sei x ein Eckpunkt des zulässigen Bereichs mit den positiven Koordinaten x 1,, x k, das heißt, es gilt a 1 x 1 + a 2 x 2 + + a k x k = b mit x j > 0, j = 1,, k n Ohne Beschränkung der Allgemeinheit seien die verschwindenden Komponenten die hinteren Es ist zu zeigen, dass a 1,, a k linear unabhängig sind Der Beweis ist wieder indirekt Wir nehmen also an, dass es ein y R k gibt mit a 1 y 1 + a 2 y 2 + + a k y k = 0 und mindestens einem y i 0 Für jede reelle Zahl µ gilt damit k a j (x j + µy j ) = b j=1 Das bedeutet, die Punkte und k a j (x j µy j ) = b j=1 x 1 = (x 1 + µy 1,, x k + µy k, 0,, 0), x 2 = (x 1 µy 1,, x k µy k, 0,, 0) 17

erfüllen die Nebenbedinungen (32) Falls man µ > 0 hinreichend klein wählt, sind alle Komponenten dieser Punkte nichtnegativ und x 1, x 2 sind zulässig Aus der Konstruktion von x 1, x 2 folgt, dass x = 05x 1 + 05x 2 gilt Das ist im Widerspruch zur Eckpunktannahme von x Diese Darstellung für den Eckpunkt x kann nur existieren, wenn x 1 = x 2 Da µ positiv ist, muss also y 1 = = y k = 0 gelten Also sind a 1,, a k linear unabhängig Die Basislösung verlangt jedoch m linear unabhängige Vektoren: - Fall k > m m + 1 Vektoren des R m sind stets linear abhänging Dieser Fall kann also nicht eintreten - Fall k = m In diesem Fall besitzt die zulässige Basislösung m positiven Komponenten, sie ist also nicht ausgeartet - Fall k < m In diesem Fall hat man eine zulässige Basislösung mit weniger als m positiven Komponenten, also eine ausgeartete Basislösung Aus den restlichen Spalten von A konstruiert man eine Menge von linear unabhängigen Vektoren a 1,, a m, für welche offensichtlich a 1 x 1 + + a k x k + a k+1 0 + a m 0 = b gilt Diese Konstruktion ist möglich, da rg(a) = m ist Folgerung 37 Satz 115 Ist der Lösungsbereich M = {x : Ax = b, x 0} beschränkt, so ist er ein konvexes Polyeder Beweis: Man kann nur endlich viele Mengen von m linear unabhängigen Spaltenvektoren der Matrix A bilden (Maximalanzahl ist Übungsaufgabe) Mit dem eben bewiesenen Satz hat damit M nur endlich viele Ecken Eine weitere Folgerung des eben bewiesenen Satzes, zusammen mit Satz 24 ist wie folgt Folgerung 38 Eine über einem konvexen Polyeder M = {x : Ax = b, x 0} definierte lineare Funktion z = c T x nimmt ihr Minimum für wenigstens eine zulässige Basislösung an Mit Hilfe der bisherigen Resultate können wir versuchen, ein Verfahren zur Lösung von min x R n { z = c T x : Ax = b, x 0 } zu konstruieren: ( ) n 1 Aufstellung der linearen Gleichungssysteme der Dimension m aus m Ax = b 2 Ist die so generierte Matrix A m,m regulär? 3 Angabe der Lösung für reguläre A m,m 4 Auswahl der zulässigen Lösungen 5 Bestimmung der Lösung(en), die das Minimum liefern Diese Herangehensweise ist jedoch schon bei relativ kleiner Anzahl von Unbekannten und Nebenbedingungen viel zu aufwendig Zum Beispiel hätte man bei n = 20, m = 10 schon 184 756 Gleichungssysteme aufzustellen und diese zu untersuchen Das Ziel wird nun sein, ein Verfahren zu finden, welches einen cleveren Weg zum Optimum findet, unter Nutzung von zulässigen Basislösungen 18

Kapitel 4 Hauptsatz und Optimalitätskriterium der Simplexmethode In diesem Abschnitt wird das wichtigste Verfahren zur Lösung linearer Optimierungsprobleme eingeführt die Simplexmethode Es existiere für { min z = c T x : Ax = b, x 0 } x R n eine zulässige Basislösung mit x > 0 Definition 41 Simplex Ein Simplex ist die Menge aller Punkte x = (x 1,, x n ) T mit n x i 1, x i 0, i = 1,, n i=1 Simplizes sind spezielle konvexe Polyeder Für n = 2 ist das Dreieck mit den Eckpunkten (0, 0), (1, 0), (0, 1) ein Simplex Das geometrische Prinzip der Simplexmethode ist wie folgt: 1 Man beginnt an einer Ecke des zulässigen Bereichs mit einer Startlösung x 1 und dem Zielfunktionswert z(x 1 ) 2 Dann geht man entlang einer absteigenden Kante, dass heisst, bei welcher der Zielfunktionswert kleiner wird, z(x 1 ) > z(x 2 ) zu einer sogenannten benachbarten Ecke x 2 3 Wiederhole Schritt 2 so lange, bis es keine absteigende Kante mehr gibt Dieses geometrische Prinzip muss in die algebraische Terminologie mit Basislösungen usw transformiert werden Wir werden später auch diskutieren, dass man Simplexschritte ausführen kann, bei denen der Zielfunktionswert gleich bleibt In diesem Fall ist die Beschreibung des zweiten Schritts auch abzuändern, da man nicht zu einer benachbarten Ecke geht, sondern auf der gegebenen Ecke die Basis ändert Diese Situation kann im Falle der Ausartung eintreten Man nennt zwei Basislösungen benachbart, wenn sie sich nur in einem Basisvektor unterscheiden Sei x = (x 1,, x m, 0,, 0) T eine erste zulässige Basislösung Es gilt a 1 x 1 + a 2 x 2 + + a m x m = b (41) Dabei sind {a 1,, a m } linear unabhängige Vektoren Der Zielfunktionswert ist demzufolge z 0 = c 1 x 1 + + c m x m (42) 19

Alle Nichtbasisvektoren a m+1,, a n werden durch die Basis dargestellt a j = x 1j a 1 + + x mj a m, j = m + 1,, n (43) Mit diesen Darstellungskoeffizienten x ij, die nichts mit den Werten x 1,, x m der Basislösung zu tun haben, werden die Hilfsgrößen eingeführt z j = c 1 x 1j + c 2 x 2j + + c m x mj, j = m + 1,, n, (44) Satz 42 Hauptsatz der Simplexmethode Sei z 0 der Wert der Zielfunktion für die zulässige Basislösung x = (x 1,, x m, 0,, 0) T, x i > 0, i = 1,, m Gilt für ein k mit m + 1 k n, dass z k c k > 0, so existiert wenigstens eine zulässige Basislösung mit einem Zielfunktionswert kleiner als z 0 Beweis: Sei θ > 0 vorerst beliebig gewählt Man multipliziere (43) und (44) für j = k mit θ und bilde (41) - θ (43) und (42) - θ (44): a 1 (x 1 θx 1k ) + a 2 (x 2 θx 2k ) + + a m (x m θx mk ) + θa k = b, (45) c 1 (x 1 θx 1k ) + c 2 (x 2 θx 2k ) + + c m (x m θx mk ) + θc k = z 0 θz k + θc k = z 0 + θ (c k z k ) (46) In der Gleichung (45) steht ein Vektor, der Ax = b erfüllt: (x 1 θx 1k,, x m θx mk, 0,, θ,, 0) T (47) Es wird in den Lemmata 43 und 46 gezeigt, dass man mit diesem Vektor eine Basislösung konstruieren kann Man hätte eine zulässige Basislösung, wenn x i θx ik 0, i = 1,, m Der zugehörige Zielfunktionswert ist durch die Gleichung (46) gegeben Er ist kleiner als z 0 falls θ > 0 und z k c k > 0 Unter der Annahme, dass der Hauptsatz bereits vollständig bewiesen ist, haben wir ein hinreichendes Kriterium um zu entscheiden, ob es eine zulässige Basislösung mit einem kleineren Zielfunktionswert gibt Man benötigt jetzt noch eine Methode zur Konstruktion dieser zulässigen Basislösung Diese erfolgt mit Hilfe von θ Lemma 43 Sei θ = Dann ist die Lösung (47) zulässig Beweis: Man hat ( a 1 x 1 x l x 1k x lk min i=1,,m,x ik >0 x i x ik =: ) + + a l 1 ( x l 1 x l x lk x l 1,k x l x lk (48) ) + a l ( x l x l ) x l,k x lk } {{ } ( +a l+1 x l+1 x ) ( l x l+1,k + + a m x m x ) l x mk + x l a k = b, x lk x lk x lk und die neue Lösung ˆx i = x i x l x lk x ik, i = 1,, m, i l, ˆx k = x l x lk (49) Alle Komponenten sind auf Grund der Konstruktion nichtnegativ und bei Ausschluss der Entartung sogar positiv Damit hat man eine zulässige Lösung erhalten Man hat also die Komponente x l aus der Basisliste gestrichen und durch die Komponente x k ersetzt =0 20

Bemerkung 44 Damit die Wahl (48) von θ überhaupt funktioniert, brauchen wir ein x ik > 0 Falls es kein solches x ik gibt, dann folgt, dass die Zielfunktion nach unten unbeschränkt ist Man kann nämlich in diesem Fall θ beliebig groß wählen, da stets x i θx ik 0 Aus (46) folgt dann, dass unter der Bedingung c k z k < 0 die Zielfunktion unbeschränkt nach unten ist Fazit: Falls für ein z k c k > 0 alle x ik 0, dann ist die Zielfunktion nicht von unten beschränkt und man breche die Simplexmethode ab Bemerkung 45 Wenn man Entartung ausschließt, dann ist θ eindeutig bestimmt, das heißt, das Minimum in (48) wird für genau einen Index l angenommen Es gilt auch die Umkehrung, dass falls der Index l in (48) nicht eindeutig bestimmt ist, dann hat man Ausartung Ausartung kann zur Folge haben, dass gilt z(x i ) = z(x i+1 ) = Das nennt man einen Basiszyklus Es gilt also, (49) ist eine zulässige Lösung mit einem kleineren Zielfunktionswert als die ursprüngliche Lösung Damit bleibt nur noch die Basiseigenschaft von {a 1,, a l 1, a k, a l+1,, a m } zu prüfen Lemma 46 Sei {w 1,, w m } ein System linear unabhängiger Vektoren und sei w = m µ i w i, µ l 0 (410) i=1 Dann ist auch {w 1,, w l 1, w, w l+1, w m } ein System linear unabhängiger Vektoren Beweis: Indirekter Beweis Sei {w 1,, w l 1, w, w l+1, w m } kein System linear unabhängiger Vektoren Dann gibt es Zahlen α 1,, α l 1, α l+1,, α m, α, von denen wenigstens eine ungleich Null ist, so dass m i=1,i l α i w i + αw = 0 In diese Gleichung wird (410) eingesetzt Es folgt m i=1,i l (α i + αµ i ) w i + αµ l w l = 0 Die Vektoren {w 1,, w m } sind linear unabhängig, das heißt, alle Koeffizienten in dieser Gleichung müssen Null sein Wegen µ l 0 folgt dann α = 0 und daraus α i = 0 für alle i Damit ist gezeigt, dass {w 1,, w l 1, w, w l+1, w m } ein System linear unabhängiger Vektoren ist Da in der Linearkombination (43) der Faktor vor a l gleich x lk (= µ l ) ist und wir x lk > 0 bei der Definition von l vorausgesetzt haben, lässt sich dieses Lemma anwenden und die Basiseigenschaft von {a 1,, a l 1, a k, a l+1,, a m } gewährleistet Im allgemeinen ist der Hauptsatz der Simplexmethode solange anzuwenden, wie noch wenigstens ein z k c k > 0 ist Dabei kann man im allgemeinen nicht erwarten, falls noch q Größen z j c j > 0 existieren, dass man noch q Schritte auszuführen hat Gilt für alle z j c j 0, j Index von Nichtbasisvariablen, so ist man in dem Sinne fertig, dass der Hauptsatz nicht mehr anwendbar ist Der Hauptsatz gibt aber bisher nur ein hinreichendes und kein notwendiges Kriterium für die Existenz einer Basislösung mit einem kleineren Zielfunktionswert Im folgenden Satz wird gezeigt, dass das Kriterium auch notwendig ist Satz 47 Optimalitätskriterium Eine zulässige Basislösung x R n mit z 0 = m i=1 c ix i ist optimale Basislösung, wenn für alle j = m + 1,, n gilt z j c j 0 21

Beweis: Sei x = (x 1,, x m, 0,, 0) T Des weiteren sei y = (y 1,, y n ) T eine beliebige zulässige Lösung a 1 y 1 + a 2 y 2 + + a n y n = b, y 0, (411) n mit z = c i y i (412) Zu zeigen ist, dass z 0 z für alle y Durch (43) ist jeder Nichtbasisvektor mit Hilfe der Basis dargestellt Jetzt wird diese Darstellung auf die Basisvektoren ausgedehnt wobei i=1 a j = x 1j a 1 + + x mj a m, j = 1,, n, x ij = { 1 für i = j 0 für i j, i = 1,, m (413) Weiter gilt die Darstellung (44) für z j, j = m + 1,, n Mit (413) hat man eine analoge Darstellung für j = 1,, m, die sich letztlich auf z j = c j reduziert Zusammen mit der Voraussetzung gilt jetzt z j c j, j = 1,, n Mit (412) folgt nun n z i y i z (414) i=1 Nun wird in (411) die Darstellung aller Spaltenvektoren durch die ersten m Spaltenvektoren eingesetzt y 1 m i=1 x i1 a i + y 2 m i=1 x i2 a i + + y n Durch Umordnung nach den Basisvektoren folgt a 1 n j=1 y j x 1j + a 2 n j=1 y j x 2j + + a m m i=1 n j=1 x in a i = b y j x mj = b (415) Analog schreibt man (414) mit Hilfe von (44) und der entsprechenden Darstellung für j = 1,, m, mit (413) (z j = c j, j = 1,, m) c 1 n j=1 y j x 1j + c 2 n j=1 y j x 2j + + c m n j=1 Der Vektor x ist eine zulässige Basislösung, das heißt, es gilt y j x mj z (416) a 1 x 1 + a 2 x 2 + + a m x m = b (417) Da {a 1,, a m } eine Basis ist, ist die Darstellung von b mit Hilfe dieser Vektoren eindeutig Damit folgt aus (415) und (417) x i = n y j x ij, i = 1,, m j=1 Setzt man dies in (416), so erhält man z 0 = m c i x i z i=1 22

Kapitel 5 Die Simplexmethode Es werden folgende Bezeichnungen verwendet: - das untersuchte Problem ist min x R n { z = c T x : Ax = b, x 0 }, - die erste zulässige Basislösung sei x = (x 1, x 2,, x m, 0,, 0) T, x 0, mit z 0 = c T x, - die Basisvektoren sind A B = (a 1,, a m ), - die Nichtbasisvektoren sind A N = (a m+1,, a n ), - die Darstellung der Nichtbasisvektoren durch die Basis ist - die Hilfsgrößen z j sind a j = x 1j a 1 + + x mj a m, j = m + 1,, n, z j = c 1 x 1j + c 2 x 2j + + c m x mj, j = m + 1,, n Diese Größen werden in der sogenannten Simplextabelle eingetragen: m + 1 m + 2 k n i c i x i c m+1 c m+2 c k c n 1 c 1 x 1 x 1,m+1 x 1,m+2 x 1,k x 1,n 2 c 2 x 2 x 2,m+1 x 2,m+2 x 2,k x 2,n l c l x l x l,m+1 x l,m+2 x l,k x l,n m c m x m x m,m+1 x m,m+2 x m,k x m,n z 0 z m+1 c m+1 z m+2 c m+2 z k c k z n c n Basisteil Nichtbasisteil Bei der Simplexmethode folgt man jetzt im wesentlichen dem Beweis des Hauptsatzes Sei z k c k > 0 Gilt für mehrere Indizes j {m+1,, n}, dass z j c j > 0, so nehme man zum Beispiel einen Index, bei dem die Differenz maximal ist z k c k := max z j c j j=m+1,,n, Dann liegt x k als Nichtbasisvariable vor, die in die Basis soll Nun bestimmt man θ = das heißt, x l soll aus der Basis raus min i=1,,m,x ik >0 x i x ik =: x l x lk, 23

Definition 51 Hauptspalte, Hauptzeile, Hauptelement, Pivotelement Die Spalte k nennt man Hauptspalte, die Zeile l heißt Hauptzeile und das Element x lk heißt Hauptelement oder Pivotelement Die neue Basislösung sei (ˆx 1,, ˆx l 1, ˆx k, ˆx l+1,, ˆx m, 0,, 0) T (51) Nun müssen die Elemente der neuen Simplextabelle bestimmt werden: 1 Man benötigt insbesondere eine Darstellung von (51) Aus (49) erhält man 2 Aus (43) folgt für j = k ˆx i = x i x l x lk x ik, i = 1,, m; i l; ˆx k = x l x lk (52) a l = 1 x lk (a k x 1k a 1 x l 1,k a l 1 x l+1,k a l+1 x mk a m ) = x 1k a 1 x l 1,k a l 1 + a k x l+1,k a l+1 x mk a m (53) x lk x lk x lk x lk Damit haben wir eine Darstellung des neuen Nichtbasisvektors a l durch die neue Basis und die neuen Elemente der alten Hauptspalte sind x lk ˆx kl = 1 x lk, ˆx il = x ik x lk, i = 1,, m, i k (54) 3 Für den Rest erhält man, beispielhaft an a n gezeigt, die folgende Darstellung, wobei man in der ersten Gleichung die alte Basisdarstellung (43) nutzt: a n = x 1n a 1 + + x l 1,n a l 1 + x l+1,n a l+1 + + x mn a n + x ln a l }{{} = ( x 1n x 1kx ln + + x lk ) ( a 1 + + ( x mn x mkx ln x lk ) a m x l 1,n x l 1,kx ln x lk (53) ) a l 1 + x ln x lk a k Man erhält also die folgenden Koeffizienten für die neue Basisdarstellung ˆx kj = x lj x lk, j = m + 1,, n, j k, (55) ˆx ij = x ij x lj x ik, x }{{} lk ˆx kj i = 1,, m, i k, j = m + 1,, n, j l(56) 4 Die Elemente z 0, z m+1 c m+1,, z n c n transformieren sich ebenfalls nach den obigen Regeln Übungsaufgabe Damit sind alle Elemente der neuen Simplextabelle berechnet Zur Berechnung von ˆx ij benötigt man die im Rechteck angeordneten Elemente x ij, x lj, x lk und x ik der alten Simplextabelle Deshalb spricht man auch von der Rechteckregel Die Basisform der Simplexmethode ist wie folgt: 24

1 Normalform des linearen Programms herstellen 2 Erste zulässige Basislösung angeben 3 Simplextabelle zu dieser Basislösung erstellen 4 Existieren Bewertungen z j c j > 0? Wenn ja, gehe zu 6 5 Sind alle Bewertungen z j c j < 0? - Wenn ja, einzige Optimallösung gefunden, Simplexmethode beendet - Wenn nicht, dann gibt es außer negativen Bewertungen z j c j nur noch verschwindende Das Optimum nicht eindeutig Man hat ein Optimum gefunden, beende Simplexmethode 6 Wähle die Hauptspalte, also die Spalte, zu der das größte z j c j > 0, j = k gehört 7 Falls x ik 0 für alle i = 1,, m, so ist die Zielfunktion nach unten nicht beschränkt, beende Simplexmethode 8 Bestimme θ zur Festlegung der Hauptzeile und des Pivotelements 9 Basistransformation: 91 Ersetze das Pivotelement durch seinen Kehrwert, siehe (54) 92 Multipliziere die übrigen Elemente der Hauptzeile mit diesem Kehrwert, einschließlich x l, siehe (52) und (55) 93 Multipliziere die übrigen Elemente der Hauptspalte mit dem negativen Kehrwert, siehe (54) 94 Vermindere die nicht in einer Hauptreihe stehenden Elemente, einschließlich der übrigen Werte von x i und der letzten Zeile, um das Produkt der zugehörigen Hauptreihenelemente (Rechteckregel) Dabei nimmt man für das Pivotelement schon den neuen Wert und für die übrigen Elemente die alten Werte, siehe (52) und (56) 10 Gehe zu 4 Beispiel 52 Wir betrachten das lineare Programm z = 3x 1 2x 2 4x 3 x 4 min! x 1 2 2 3 0 1 0 0 x 2 x 3 1 3 0 2 0 1 0 x 4 = 700 400 1 1 5 2 0 0 1 x 5 500 x 6 x 7 x 0 Bekannt sei eine erste zulässige Basislösung x 1 = 350, x 4 = 25, x 7 = 100, die den Zielfunktionswert z = 1075 besitzt Die Basisvektoren sind demzufolge a 1 = 2 1 1, a 4 = 0 2 2, a 7 = 0 0 1 Gesucht ist nun die Darstellung der Nichtbasisvektoren durch die Basisvektoren Setze A B = (a 1, a 4, a 7 ) und A N = (a 2, a 3, a 5, a 6 ) Dann ist die Matrix X der Simplexkoeffizienten gesucht, für die gilt Man erhält hier A N = A B X = X = A 1 B A N X = 1 3/2 1/2 0 1 3/4 1/4 1/2 2 5 0 1 25

Daraus ergibt sich und somit z 2 = c 1 x 12 + c 4 x 42 + c 7 x 72 = ( 3)1 + ( 1)1 + 0( 2) = 4, z 3 = 9/2 + 3/4 + 0 = 15/4, z 5 = 3/2 + 1/4 + 0 = 5/4, z 6 = 0 1/2 + 0 = 1/2 z 2 c 2 = 2, z 3 c 3 = 1/4, z 5 c 5 = 5/4, z 6 c 6 = 1/2 Damit erhält man folgende Simplextabelle: 2 3 5 6 i c i x i -2-4 0 0 1-3 350 1 3/2 1/2 0 4-1 25 1-3/4-1/4 1/2 7 0 100-2 5 0-1 -1075-2 1/4-5/4-1/2 Es gibt nur einen Index k mit z k c k > 0, nämlich k = 3 Damit ist die Hauptspalte bestimmt (Schritt 6) Zur Bestimmung der Hauptzeile (Schritt 8) berechnet man θ: ( ) { xi 350 θ = min = min x i3>0,i {1,4,7} 3/2, 100 } = 20 5 x i3 für i = 7 Damit ist der Hauptzeilenindex l = 7 und das Pivotelement x 73 = 5 Nun führt man die Basistransformation aus (Schritt 9): 2 7 5 6 i c i x i -2 0 0 0 1-3 320 8/5-3/10 1/2 3/10 4-1 40 7/10 3/20-1/4 7/20 3-4 20-2/5 1/5 0-1/5-1080 -19/10-1/20-5/4-9/20 Den neuen Wert für x 1 erhält man beispielsweise aus x 1 = 350 3 2 1001 = 350 30 = 320 5 Da in der neuen Simplextabelle alle Werte z j c j < 0, j {2, 5, 6, 7}, hat man die einzige Optimallösung bestimme: x = (320, 0, 20, 40, 0, 0, 0) T Bemerkung 53 Angenommen, man hat in einer Simplextabelle mehrere z j c j > 0 Zu einer dieser Spalten mögen nur Koeffizienten x ij 0 gehören Dann ist die Zielfunktion unbeschränkt Beispiel 54 Zur Ausartung Wir betrachten das lineare Programm ( 1 1 1 0 4 1 0 1 z = x 1 min! ) x 1 ( ) x 2 1 x 3 = 4 x 4 x 0 26

Eine zulässige Basislösung, die gleichzeitig ein Optimum ist, ist x = (1, 0, 0, 0) T Wir nehmen als Basisvariablen x 1 und x 2 Da x 2 verschwindet, ist die Basislösung ausgeartet Man hat A B = und erhält die Simplextabelle ( 1 1 4 1 ) ( 1 0, A N = 0 1 3 4 i c i x i 0 0 1-1 1-1/3 1/3 2 0 0 4/3-1/3-1 1/3-1/3 Die Simplexmethode sagt uns an dieser Stelle nicht, dass das Optimum bereits erreicht ist! Gemäß Simplexmethode muss x 3 in die Basis anstelle von x 2 eingeführt werden Man erhält die Simplextabelle 2 4 i c i x i 0 0 1-1 1 1/4 1/4 3 0 0 3/4-1/4-1 -1/4-1/4 Damit ist das Optimalitätskriterium der Simplexmethode erfüllt und diese wird beendet Man hat für das Optimum x = (1, 0, 0, 0) T mit diesen beiden Simplextabellen zwei unterschiedliche Basisdarstellungen Der Zielfunktionswert hat sich im Simplexschritt nicht verändert, es wurde lediglich die Basis gewechselt ) 27

Kapitel 6 Bestimmung einer ersten zulässigen Basislösung Ein Problem, was man für die Durchführung der Simplexmethode lösen muss, ist die Bestimmung einer ersten zulässigen Basislösung Wie gut das geht, hängt auch vom konkreten Problem ab 1 Fall Liegt { min z = c T x : Ax b, x 0 } x R n vor und gilt b 0 Dann führt man Schlupfvariablen ein und setzt x = (0,, 0, b T ) T 2 Fall Liegt das lineare Programm in der Gestalt { min z = c T x : Ax = b, x 0 } x R n vor mit A = (a ij ), i = 1,, m; j = 1,, n, b = (b 1,, b m ) T, a ij 0, b i 0 für alle i, j Dann kann man mit einer sogenannten Engpassmethode zur ersten zulässigen Basislösung gelangen: 1 Ordne die Variablen nach wachsenden Zielfunktionskoeffizienten c i, Beispiel z = 10x 1 6x 2 4x 3 3x 4 5x 5 min! 2 0 4 0 2 1 0 0 0 x 1 8 2 3 1 0 0 0 1 0 0 x 2 5 0 0 2 1 0 0 1 0 = 6 20 0 0 0 3 0 0 0 0 1 8 x 9 x 0 Dann ist die Ordnung x 1, x 2, x 5, x 3, x 4 2 In der festgelegten Reihenfolge werden die Variablen mit dem größtmöglichen Wert genommen, so dass die Nebenbedingungen erfüllt sind Im Beispiel beginnt man mit x 1 = 3 3 Man setzt diesen Wert ein und entfernt die Variable damit aus den Nebenbedingungen Im Beispiel ergibt sich 0 4 0 2 1 0 0 0 3 1 0 0 0 1 0 0 0 0 2 1 0 0 1 0 0 0 3 0 0 0 0 1 x 2 x 3 x 9 = 2 0 5 8 28

Aus der zweiten Gleichung folgt x 2 = x 3 = x 7 = 0, welche Werte man auch gleich einsetzen kann Damit vereinfacht sich das System der Nebenbedingungen zu 0 2 1 0 0 0 0 0 0 0 2 1 0 1 0 3 0 0 0 1 x 4 x 5 x 6 x 8 x 9 = 2 0 5 8 (61) 4 Gehe zu 2 Im Beispiel betrachtet man als nächstes x 5, da ja bereits x 2 = 0 gilt Der maximale Wert von x 5, so dass (61) erfüllt ist, beträgt x 5 = 1 Einsetzen ergibt 0 1 0 0 2 0 1 0 3 0 0 1 x 4 x 6 x 8 x 9 = 0 4 8 (62) Damit folgt x 6 = 0 Da ja auch schon x 3 = 0 gilt, wird nun x 4 betrachtet Der maximale Wert von x 4, so dass (62) erfüllt ist, ist x 4 = 2 Man erhält ( ) ( ) ( ) 1 0 x8 0 = 0 1 x 9 2 Nun bestimmt man die letzten beiden Werte und erhält als erste zulässige Basislösung x = (3, 0, 0, 2, 1, 0, 0, 0, 2) T Bemerkung 61 Hat man bei der Engpassmethode nicht genügend Variablen, dann führt man künstliche Variablen ein Bemerkung 62 Anderes Ordnungsprinzip der Variablen im Fall, dass die Koeffizienten von unterschiedlicher Größenordnung sind Wir betrachten das lineare Programm z = 10x 1 + 20x 2 + 30x 3 + 40x 4 + 50x 5 min! x 1 x 2 ( 1 10 50 1 0 2 20 50 0 1 ) x 5 = x 0 ( 100 101 Nach dem obigen Ordnungsprinzip hat man die Reihenfolge x 1, x 2, x 3, x 4, x 5 und erhält mit der Engpassmethode die erste zulässige Basislösung Übungsaufgabe x 1 = 101 2, x 4 = 99 2 = z = 2485 Man erhält jedoch mit einer anderen Basislösung einen schon viel kleineren Zielfunktionswert x 3 = 2, x 5 = 1 = z = 110 In diesem Fall ist das Ordnungsprinzip { c j min j,c j 0 min i,a ij 0 günstiger Bei diesem Ordnungsprinzip wird auch die Größe der Matrixeinträge beachtet Im Beispiel kann man x 3 wegen der großen Matrixeinträge nur relativ { bi a ij }} ) 29

klein wählen, wenn man die Nebenbedingungen nicht verletzen will Im Gegensatz dazu kann man x 1 sehr groß wählen ohne die Nebenbedingungen zu verletzen Der etwas höhere Koeffizient vor x 3 in der Zielfunktion führt wegen des viel kleineren möglichen Wertes dieser Variablen letztlich auf einen kleineren Beitrag als 10x 1 mit großem x 1 3 Fall Die erste zulässige Basislösung soll jetzt - ohne spezielle Voraussetzungen und - mit Hilfe der Simplexmethode bestimmt werden Dazu betrachten wir n c j x j = c T x min! (63) j=1 Ax = b, (64) x 0 (65) und nehmen b 0 an Das kann immer durch Multiplikation der entsprechenden Gleichungen mit einer negativen Zahl erreicht werden Dem Problem (63) (65) wird die Hilfsaufgabe m x n+i min! (66) i=1 n a ij x j + x n+i = b i, i = 1,, m, (67) j=1 x j 0, j = 1,, m + n (68) zugeordnet Die Variablen x n+1,, x n+m heißen künstliche Variablen Zur Bestimmung der ersten zulässigen Basislösung von (63) (65) wird eine Zweiphasenmethode verwendet: 1 Phase Wähle als erste zulässige Basislösung für (66) (68) x i = 0, i = 1,, n, x n+i = b i, i = 1,, m 2 Phase Löse (66) (68) mit der Simplexmethode Es stellt sich nun die Frage, ob man auf diesem Wege schließlich eine erste zulässige Basislösung für (63) (65) erhält Im nächsten Satz wird gezeigt, dass eine Lösung von (66) (68) existiert, falls man Ausartung ausschließt Lemma 63 Unter der Annahme, dass (66) (68) keine ausgearteten Basislösungen besitzt, liefert die Simplexmethode nach endlich vielen Schritten eine optimale Lösung des linearen Programms (66) (68) Beweis: Da Ausartung per Annahme ausgeschlossen ist, kann kein Basiszyklus auftreten Somit verringert die Simplexmethode in jedem Schritt den Zielfunktionswert Es ist dann nur noch die Beschränktheit von unten der Zielfunktion (66) über (67) bis (68) zu zeigen Das ist offensichtlich, da (66) eine Summe nichtnegativer reeller Zahlen ist, die durch Null nach unten beschränkt ist Nun wird eine Bedingung angegeben, mit welcher man aus dem Optimum des Hilfsproblems (66) (68) eine erste zulässige Basislösung von (63) (65) erhält Satz 64 Sei x 0 eine Optimallösung der künstlichen Aufgabe (66) (68) mit dem zugehörigen Zielfunktionswert z 0 Gilt z 0 = 0, so sind die ersten n Komponenten von x 0 eine zulässige Basislösung der Aufgabe (63) (65) Gilt jedoch z 0 > 0, so besitzt (63) (65) keine zulässige Basislösung 30

Beweis: Aus z 0 = 0 folgt x n+i = 0, i = 1,, m, das heißt im Optimum verschwinden alle künstlichen Variablen Also hat x 0 die Gestalt x 0 = (x 1,, x n, 0,, 0) T } {{ } m Da x 0 mit der Simplexmethode konstruiert wurde, folgt dass x 0 eine zulässige Basislösung von (63) (65) ist Sei nun z 0 > 0 Der Beweis wird indirekt geführt, das heißt, wir nehmen an, dass (63) (65) die zulässige Basislösung x = ( x 1,, x n ) T besitzt Dann besitzt jedoch (66) (68) die zulässige Basislösung ( x 1,, x n, 0,, 0) T mit dem zugehörigen Zielfunktionswert (66) z = 0 Das ist im Widerspruch zur Annahme dass z 0 der minimale Wert ist 4 Fall Die M Methode Es wird das lineare Programm (63) (65) betrachtet und diesem die folgende Hilfsaufgabe zugeordnet n m c j x j + M x n+i min! (69) j=1 i=1 n a ij x j + x n+i = b i i = 1,, m, (610) j=1 x 0 (611) Bei dieser Aufgabe muss der Straffaktor M > 0 hinreichend groß gewählt werden, damit im Optimum die Variablen x n+1,, x n+m verschwinden Das Problem besteht darin, dass man im allgemeinen nicht von vornherein festlegen kann, wie groß M zu wählen ist Möglich sind Aussagen folgender Gestalt: Satz 65 Es existiert ein M 0 > 0, so dass für alle M > M 0 aus der Lösbarkeit von (63) (65) die Lösbarkeit von (69) (611) mit x n+1 = = x n+m = 0 folgt Beweis: Siehe Literatur Der Vorteil der M Methode im Vergleich zur Herangehensweise von Fall 3 wird mit folgendem Satz beschrieben Satz 66 Falls (69) (611) eine Lösung x = (x 1,, x n, 0,, 0 } {{ } m besitzt, so ist x = (x 1,, x n ) T bereits eine Optimallösung von (63) (65) Beweis: Siehe Literatur ) T 31

Kapitel 7 Zur Ausartung Nach Definition 34 liegt Ausartung dann vor, wenn mindestens eine der Variablen x i, i = 1, m, einer zulässigen Basislösung verschwindet Das dahinterliegende Problem ist, dass die Zuordnung Ecke zulässige Basislösung nicht eindeutig ist Eine Ecke des Polyeders kann Basislösung zu verschiedenen Basen sein Das kann aber nur bei ausgearteten Basislösungen auftreten Beispiel 71 Betrachte das lineare Programm mit ( 1 1 0 z = x 1 + x 2 x 3 min!, A = 0 0 1 ) ( 0, b = 1 Der einzige Extremalpunkt ist x = (0, 0, 1) T Zulässige Basen sind ( ) ( ) ( ) ( ) 1 0 1 0, und, 0 1 0 1 Der Grund für die Nichteindeutigkeit der Basis besteht darin, dass es zu viele Nebenbedingungen gibt, die den Extremalpunkt bestimmen In diesem Beispiel ist er durch die beiden Gleichungen ( 1 0 0 1 ) ( x1 x 3 ) = ( 0 1 ) und ( 1 0 0 1 ) ( ) ( x2 0 = x 3 1 gleichermaßen gegeben Das haben wir bereits in den Beispielen 35 (2 Teil) und 54 gesehen In der Praxis stellt sich heraus, dass die meisten zu lösenden linearen Programme ausgeartet sind In der Simplexmethode ist es möglich, dass im Falle der Ausartung der zulässigen Basislösung nur ein Basiswechsel stattfindet, siehe Beispiel 54 Das kann zu einem unendlichen Zyklus werden, einem sogenannten Basiszyklus Es ist jedoch möglich, Ausartung prinzipiell auszuschließen, beispielsweise mit der Methode der ε Störung, beziehungsweise einen Basiszyklus zu umgehen, mit der lexikographischen Simplexmethode 71 Die Methode der ε Störung Wir betrachten das lineare Programm ) { min c T x : Ax = b, x 0 } (71) x R n 32 )

Sei x = (x 1,, x m, 0,, 0) T a 1,, a m : eine zulässige Basislösung mit den Basisvektoren a 1 x 1 + + a m x m = b, a 1 x 1j + + a m x mj = a j, j = 1,, n (72) Sei ε > 0 vorgegeben und sei A B = (a 1,, a m ) die Matrix der Basisvektoren Dann betrachtet man anstelle (71) ein lineares Programm mit gestörten Nebenbedingungen A B x + c T x min! n ε j (72) = b = (73) j=1 A B x + n ε j a j = a 1 x 1 + j=1 n x 1j ε j + + a m x m + j=1 n x mj ε j = b Mit den Nebenbedingungen (73) hat man für hinreichend kleines ε die zulässige Basislösung n n x (ε) i := x i + x ij ε j = x i + ε i + x ij ε j, j=1 j=m+1 da für i = 1,, m, gilt x ij = δ ij Die Eigenschaft der Basislösung folgt daraus, dass die Basis nicht geändert wurde und die Nebenbedingung in (73) erfüllt ist Die Zulässigkeit folgt für hinreichend kleines ε aus ε i > 0 und ε i ε j für i < j Wegen x i > 0 und n ε i > x ij ε j = x (ε) i 0 i=1 i=1 j=m+1 Der zugehörige Zielfunktionswert ist m m n m z (ε) 0 = c i x i + c i x ij ε j = c i x i + = m c i x i + i=1 n z j ε j j=1 j=1 i=1 j=1 ( n m ) c i x ij Im Bild 71 wird die Störung der Nebenbedingungen graphisch veranschaulicht Im dicken Punkt schneiden sich drei Geraden Das führt dazu, dass die Zuordnung Ecke Basislösung nicht eindeutig ist Man hat Ausartung Durch die Störung der Nebenbedingungen (durchgezogene Geraden) erreicht man, dass es nur noch Schnittpunkte mit genau zwei Geraden gibt Bemerkung 72 Berechnung von θ In der Simplexmethode benötigt man die Größe θ, siehe (48) Sei z k c k > 0 Dann berechnet sich θ in der Methode der ε Störung durch θ = min i=1,,m;x ik >0 j=1 i=1 x (ε) x i i + ε i + n j=m+1 = min x ijε j (74) x ik i=1,,m;x ik >0 x ik ε j 33

Abbildung 71: Veranschaulichung der Störung der Nebenbedingungen Satz 73 Sei x = (x 1,, x m, 0,, 0) T eine zulässige Basislösung der Originalaufgabe (71) Falls x i θ = min = 0 i=1,,m;x ik >0 x ik gilt (Ausartung), dann gibt es ein ε > 0 dergestalt, dass θ = min i=1,,m;x ik >0 x (ε) i x ik = x(ε) l > 0 ε (0, ε) (75) x lk und der Index l ist im gestörten Problem (73) eindeutig bestimmt Beweis: Aus den Vorbetrachtungen folgt x (ε) i > 0 und damit θ > 0 in (75) für ε (0, ε) Die Eindeutigkeit von l wird indirekt bewiesen Sei l also nicht eindeutig bestimmt, das heißt es gibt zwei Indizes l 1 l 2 mit x l1 + ε l1 + n j=m+1 x l 1jε j x l1k = x l 2 + ε l2 + n j=m+1 x l 2jε j x l2k für alle ε (0, ε) Die beiden Terme sind Polynome in ε Diese sind genau dann gleich für alle ε (0, ε), wenn sie in allen Koeffizienten übereinstimmen Insbesondere müssen die Koeffizienten vor den Termen mit Potenz l 1 und l 2 gleich sein Ist l 1 l 2, so ist für den linken Term der Koeffizient vor ε l1 ungleich Null und für den rechten Term gleich Null Für den Koeffizienten vor ε l2 gilt sinngemäß das gleiche Diese Koeffizienten können nur dann gleich sein, wenn l 1 = l 2, im Widerspruch zur Annahme Prinzipiell kann diese Manipulation in jedem Simplexschritt durchgeführt werden und man kann damit sichern, dass l stets eindeutig bestimmt ist Diese Vorgehensweise ist für jeden Eckpunkt des zulässigen Bereichs ausgeführt zu denken Da die Anzahl der Eckpunkte endlich ist, erhält man folgenden Satz Satz 74 Zu jedem linearen Optimierungsproblem existiert bei geeigneter Wahl von ε (0, ε ) ein gestörtes lineares Optimierungsproblem, so dass dieses keine ausgeartete zulässige Basislösung besitzt Für ε 0 konvergiert das Optimum des gestörten Problems (73) zum Optimum des Originalproblems (71) Bemerkung 75 Praktische Umsetzung der Methode der ε Störung Trotz dieser schönen Theorie macht man das alles bei praktischen Problemen nicht Für diese 34

wird vorgeschlagen: Falls in einer zulässigen Basislösung wenigstens ein Wert x i = 0 bestimmt wurde, so kann θ = 0 sein Wähle dann l = min x ik >0 {i : x i = 0}, wobei i über alle Basisvariablen läuft und k der Index der festgelegten Hauptspalte ist, und transformiere mit diesem Index l Theoretisch besteht die Gefahr eines Zyklus, in der Praxis ist das aber eher unwahrscheinlich 72 Die lexikographische Simplexmethode Bei der lexikographischen Simplexmethode erfolgt die Auswahl der zu tauschenden Basisvektoren so, dass keine Wiederholungen auftreten können Mit dieser Vorgehensweise wird nicht die Ausartung behoben, sondern es wird verhindert, dass Basiszyklen auftreten Definition 76 Lexikopositiver Vektor Ein Vektor x R n heißt lexikopositiv, falls x = (0,, 0, x i, x i+1,, x m ) T mit i 1 und x i > 0 Das heißt, die erste von Null verschwindende Komponente ist positiv Die Schreibweise ist x > l 0 Sei y R n Dann ist y > l x genau dann, wenn y x > l 0 Wir betrachten das lineare Programm (71) mit rg(a) = m Sei x B = (x 1,, x m, 0,, 0) T eine zulässige Basislösung Die zugehörige Matrix der Basisvektoren sei A B R m m und die der Nichtbasisvektoren A N Dann sind die Zeilen der Matrix lexikopositiv, da ( b, Ā) := A 1 B (b, A) = A 1 B (b, A B, A N ) R m (n+1) A 1 B (b, A) = (x B, I m, ā m+1,, ā n ), x B 0 und I m die Einheitsmatrix des R m m ist Falls die Basisvariablen nicht die ersten m Variablen sind, dann ordnet man sie nach vorn Anstelle von (48) wird bei der lexikographischen Simplexmethode der Index l durch e T i ( b, Ā) θ = min =: et l ( b, Ā) > l ;i=1,,m,x ik >0 x ik x lk bestimmt, wobei e i R m der Einheitsvektor ist, der in der i ten Komponente eine Eins hat Das heißt, das Minimum wird bezüglich der lexikographischen Ordnung genommen Das obige Symbol bedeutet, dass man sich wie üblich alle Einträge mit x ik > 0 ansieht, die zugehörigen Vektoren e T i ( b, Ā) bildet, durch x ik dividiert und von den so erhaltenen Vektoren den lexikographisch kleinsten nimmt, um l zu bestimmen Es gilt, siehe beispielsweise [JS04]: - Falls l in der allgemeinen Simplexmethode (48) eindeutig bestimmt ist, erhält man bei der lexikographischen Simplexmethode den gleichen Index - Die lexikographische Simplexmethode definiert einen eindeutigen Index l Man kann zeigen, dass eine Nichteindeutigkeit im Widerspruch zu rg(a) = m steht - Das Ergebnis eines lexikographischen Simplexschrittes ist wiederum eine lexikopositive Basis 35

- Bei der neuen Basislösung ist entweder der Zielfunktionswert kleiner oder die Differenz der Koeffizienten der Zielfunktion der neuen und der alten Basis ist lexikopositiv Im ersten Fall hat man die Ecke verlassen Im zweiten Fall kann es bei weiteren lexikographischen Simplexschritten nicht passieren, dass die alte Basis noch einmal verwendet wird Ein Basiszyklus ist ausgeschlossen Bei der lexikographischen Simplexmethode werden also ausgehend von einer lexikopositiven Startlösung weitere lexikopositive Lösungen erzeugt Dieses Verfahren ist endlich Es bricht entweder mit einer Lösung des Optimierungsproblems ab, oder es wird gefunden, dass die Zielfunktion nicht nach unten beschränkt ist Die Anzahl der Schritte kann n! nicht übersteigen Diese Schranke ist allerdings für größere Werte von n für die Praxis bedeutungslos 36

Kapitel 8 Zur Effizienz der Simplexmethode Die Simplexmethode ist ein Verfahren zur Bestimmung der Lösung des linearen Programms min x R n { c T x : Ax = b, x 0 } Für ihre praktische Anwendung muss untersucht werden, wie teuer die Berechnung des Optimums ist Dazu unterscheidet man zwei Situationen: - Analyse des schlimmsten Falls, der bei der Lösung eines linearen Programms mit der Simplexmethode auftreten kann, worst case Modell, - Analyse des in der Praxis zu erwartenden normalen Falls, der bei der Lösung eines linearen Programms mit der Simplexmethode auftreten kann, real world Modell Die zweite Situation ist an sich interessanter Das Problem besteht darin, ein real world model aufzustellen Diese Frage ist bis heute teilweise ungeklärt In der praktischen Anwendung der Simplexmethode hat man jedoch die Erfahrung gewonnen, dass sie im Normalfall hervorragend funktioniert Wir werden hier nur das worst case Modell untersuchen 81 Maße für die Effizienz Das Grundanliegen besteht darin, den Aufwand zur Abarbeitung eines numerischen Verfahrens in Abhängigkeit vom Umfang der Eingangsdaten abzuschätzen Definition 81 compl(a,b) Die Komplexität compl(a,b) eines Algorithmus A zur Lösung von Aufgaben B (eines Problemkreises P) ist die Anzahl der elementaren Operationen auf einem Computer oder die benötigte Rechenzeit in Abhängigkeit vom Umfang der Eingangsdaten Der Wunsch ist natürlich, einen effizienten Algorithmus für jedes praxisrelevante Optimierungsproblem zu konstruieren Das geht aber im allgemeinen nicht, da schwierige und auch unlösbare Probleme existieren Definition 82 P(d) Bezeichne P ein Problem und d den Umfang seiner Eingangsdaten Dann beschreibt P(d) die Menge aller Aufgaben P mit gleichem Umfang d der Eingangsdaten 37

Definition 83 Worst case Komplexität eines Algorithmus Die worst case Komplexität eines Algorithmus A zur Lösung eines Problems P ist gegeben durch w compl(a, P ) = max compl(a, B) B P (d) Man kann entsprechend eine average case Komplexität von A bezüglich P erklären a compl(a, P ) = Erwartungswert B P (d) compl(a, B) Definition 84 Worst case Komplexität eines Problems Sei A P die Menge aller Algorithmen zur Lösung eines Problems P Die worst case Komplexität von P ist erklärt durch w compl(p ) = min A A P w compl(a, P ) Die Komplexität wird im allgemeinen als Funktion der Menge der Eingangsdaten in der Form O(f(d)) angegeben Beispiel 85 Matrizenmultiplikation Gegeben seien zwei Matrizen A, B R n n und gesucht ist das Produkt C = AB Ein Eintrag von C berechnet sich wie folgt c ij = n a ik b kj, k=1 benötigt also n Multiplikationen und (n 1) Additionen, dass heißt O(n) Operationen Die Anzahl der zu berechnenden Einträge von C ist n 2 Somit hat man insgesamt O(n 3 ) Operationen durchzuführen Die Frage ist, ob der Aufwand von O(n 3 ) optimal ist Da man insgesamt n 2 Größen zu berechnen hat, kann der minimale Aufwand der Matrizenmultiplikation nicht kleiner als O(n 2 ) sein Man kennt heute Verfahren, deren Aufwand für große n wie O(n 238 ) ist (SIAM News 38, Vol 9, 2005) Definition 86 Gutartiges Problem Probleme mit polynomialer Komplexität O(d z ), z R, heißen gutartig, Probleme mit exponentieller Komplexität O(z d ), z R, z > 1, bösartig 82 Zur worst case Komplexität der Simplexmethode In diesem Abschnitt wird ein Beispiel konstruiert, bei welchem der Aufwand der Simplexmethode exponentiell wächst Das bedeutet, dass die Simplexmethode theoretisch ein sehr ineffizientes Verfahren sein kann Dieser Fall ist in der Praxis glücklicherweise faktisch nicht zu beobachten Bei der worst case Komplexität wird der schlechteste Fall betrachtet Für die Simplexmethode bedeutet das, dass die schlechteste Wahl der Hauptspalte bezüglich der Anzahl der zulässigen Basislösungen betrachtet wird, die man beim Transformationsprozess erzeugt Wie betrachten den n dimensionalen Einheitswürfel [0, 1] n Dieser hat 2 n Ecken Die Koordinaten des Einheitswürfels werden nun gestört ε x 1 1 mit 0 < ε < 1/2, εx j 1 x j 1 εx j 1 1 j = 2,, n 38

Über diesem gestörten Würfel wird folgendes lineares Programm definiert: x n min! x 1 r 1 = ε x 1 + s 1 = 1 x j εx j 1 r j = 0 j = 2,, n, (81) x j + εx j 1 + s j = 1 j = 2,, n, x j, r j, s j 0 j = 1,, n Die Matrix der Nebenbedingungen hat die Gestalt 1 0 0 0 1 0 0 0 0 0 ε 1 0 0 0 1 0 0 0 0 A = 0 0 0 1 0 0 1 0 0 0 1 0 0 0 0 0 0 1 0 0 R 2n 3n ε 1 0 0 0 0 0 0 1 0 0 0 0 1 0 0 0 0 0 1 Lemma 87 Die Menge der zulässigen Basislösungen von (81) ist die Klasse der Untermengen von (x 1,, x n, r 1,, r n, s 1,, s n ), bei denen alle x j > 0, j = 1,, n, und entweder r j > 0 oder s j > 0 für jedes j = 1,, n Alle Basislösungen sind nicht ausgeartet Beweis: Es wird erst die Zulässigkeit untersucht, dann die Basislösungseigenschaft Zuerst wird gezeigt, dass für zulässige Lösungen alle x j, j = 1,, n positiv sein müssen Ist x 1 = 0, dann folgt aus der ersten Nebenbedingung r 1 = ε < 0 Ein Vektor mit x 1 = 0 kann also nicht zulässig sein Der Beweis erfolgt nun durch Induktion Seien x j > 0 für j = 1,, k 1 und x k = 0 Dann folgt aus den Nebenbedingungen 0 = x k = r k + εx k 1 } {{ } >0 = r k < 0, im Widerspruch zur letzten Nebenbedingung Also sind alle x j positiv, sie können damit keine Nichtbasisvariablen sein Nun werden die r j, s j betrachtet Gelte für ein j, dass r j = s j = 0 Für j = 1 folgt dann aus den ersten beiden Nebenbedingungen von (81) x 1 = ε = 1 Das steht im Widerspruch zur Wahl von ε Sei j > 1 Dann gelten Subtraktion dieser Gleichungen ergibt x j εx j 1 = 0, x j + εx j 1 = 1 2εx j 1 = 1 Da jedoch ε < 1/2 und x j 1 1 ist die linke Seite echt kleiner als 1 Damit sind r j oder s j für jedes j = 1,, n, positiv Da man genau 2n Basisvariablen hat 39

und bereits n davon durch die x j gegeben sind, ist entweder r j oder s j für jedes j = 1,, n, positiv Die Basiseigenschaft der soeben konstruierten Menge sieht man durch Umordnung der Zeilen der Matrix A 2n,2n Für jeden Index j vertauscht man die Zeilen j und j + n falls r j > 0, s j = 0 Damit wird die Matrix auf Dreiecksform gebracht, wobei in der Diagonalen ±1 stehen Ihre Determinante ist somit ebenfalls ±1 Die Menge der Indizes j für die die Basislösungen r j > 0 erfüllen wird mit S bezeichnet Sind dies beispielsweise die Indizes 1, 3, 7, so ist S = {1, 3, 7} Die zugehörigen Basislösungen werden als x (S) geschrieben, im Beispiel x ({1,3,7}) Der Wert x j in x (S) wird mit x (S) j bezeichnet Wegen der Zielfunktion betrachten wir jetzt insbesondere den letzten Index n Lemma 88 Seien n S und n S Dann ist x (S) n > x (S ) n Falls außerdem S = S \ {n} gilt, folgt x (S ) n = 1 x (S) n Beweis: Sei n S, das heißt r n > 0, s n = 0 Dann folgt aus x (S) n + εx(s) n 1 + s n = 1 = x (S) n = 1 εx (S) n 1 > 1/2 wegen x (S) n 1 1, ε < 1/2 Andererseits gilt für n S, dass r n = 0 Mit denselben Argumenten folgt x (S ) n εx (S ) n 1 + r n = 0 = x (S ) n = εx (S ) n 1 < 1/2 Die Mengen in der zweiten Aussage des Lemmas unterscheiden sich nur dadurch, dass in S gilt r n > 0, s n = 0 und in S gilt r n = 0, s n > 0 Da alle anderen Indizes in S und S gleich sind und die Nebenbedingungen für die Indizes kleiner n nicht von x n, r n, s n abhängen, gilt insbesondere x (S) n 1 = x(s ) n 1 Da r n = 0 für S und s n = 0 für S ist, folgt ( ) x (S ) n = εx (S ) n 1 = 1 1 εx (S ) n 1 = 1 ( ) 1 εx (S) n 1 = 1 x (S) n Lemma 89 Die Untermengen von {1, 2,, n} seien so geordnet, dass x (S1) n x (S2) n x (S 2 n n ) gilt Diese Ungleichungen sind scharf, dass heißt es gilt <, und die zulässigen Basislösungen x (Sj) und x (Sj+1) sind benachbart für j = 1,, 2 n 1, das heißt, sie unterscheiden sich nur in einem Basisvektor folgt Beweis: Der Beweis erfolgt durch Induktion über die Dimension n Induktionsanfang n = 1 Man hat zwei Eckpunkte Aus x 1 r 1 = ε, x 1 + s 1 = 1 (x 1, r 1, s 1 ) = (ε, 0, 1 ε) (1, 1 ε, 0) Diese Punkte sind natürlich benachbart und die Schärfe der Ungleichung wurde bereits im letzten Lemma bewiesen (x (S) n > x (S ) n ) 40

Induktionsannahme Für einen n Würfel sei alles korrekt Die entsprechende Numerierung sei S 1,, S 2 n Induktionsschritt Man betrachtet jetzt {1, 2,, n + 1} Offensichtlich gelten S j {1, 2,, n + 1} und n + 1 S j, j = 1,, 2 n Damit ist r (Sj ) n+1 = 0 Aus der entsprechenden Nebenbedingung folgt Nach Induktionsannahme ist x (S1) n x (Sj) n+1 = εx(sj) n < x (S2) n < < x (S 2 n ) n, woraus nun folgt (Durchmultiplizieren mit ε) x (S1) n+1 < x(s2) n+1 < < x(s 2 n ) n+1 (82) Die Reihenfolge dieser Untermengen bleibt also erhalten Nun betrachten wir die Lösungen mit r (Sj ) n+1 > 0 Sei S j = S j {n + 1} Nach Lemma 88 ist und speziell x (Sj) n+1 = 1 x(s j ) n+1 = x (S j ) n+1 = 1 x(sj) n+1 j = 1,, 2 n, (83) Aus (82), (83) und (84) resultiert x (S 2 n ) n+1 > x (S 2 n ) n+1 (84) x (S1) n+1 < < x(s 2 n ) n+1 < x (S 2 n ) n+1 < < x (S 1 ) n+1 Nun muss noch die Nachbarschaft der Basislösungen bewiesen werden Nach Induktionsannahme, sind x (S1),, x (S 2 n ) in n Dimensionen benachbart In der (n + 1) sten Dimension, erhalten diese Basislösungen alle noch den Spaltenvektor von s n+1 Sie bleiben damit benachbart Die Basislösungen x (S 2 n ) und x (S 2 n ) unterscheiden sich nur im Basisvektor von s n+1 beziehungsweise r n+1 Sie sind also auch benachbart Die Basislösungen x (S 2 n ),, x (S 1 ) sind benachbart, weil x (S1),, x (S 2 n ) benachbart sind Satz 810 Für jedes n 1 existiert ein lineares Programm, bestehend aus 2n Gleichungen und 3n Variablen, so dass die Simplexmethode 2 n 1 Iterationsschritte braucht, um das Optimum zu bestimmen Die Struktur dieses linearen Programms kann so eingerichtet werden, dass alle Koeffizienten (zum Beispiel) 4 sind Beweis: Der erste Teil des Satzes wird durch das angegebene Beispiel (81) bewiesen In Lemma 89 sind die 2 n verschiedenen zulässigen Basislösungen streng geordnet Die Simplexmethode wird so angewendet, dass mit jeder Transformation nur die jeweils geringste Verbesserung des Zielfunktionswertes erreicht wird Bei x (1) n beginnend, sind somit 2 n 1 Transformationen nötig Für den zweiten Teil des Satzes wähle man ε = 1/4 Beispiel 811 Wir betrachten das in diesem Abschnitt studierte Problem (81) für 41

n = 3 1 0 0 1 0 0 0 0 0 ε 1 0 0 1 0 0 0 0 0 ε 1 0 0 1 0 0 0 1 0 0 0 0 0 1 0 0 ε 1 0 0 0 0 0 1 0 0 ε 1 0 0 0 0 0 1 x 3 min! x 1 x 2 x 3 r 1 r 2 = r 3 s 1 s 2 s 3 x, r, s 0 Die Ecken des Würfels, des gestörten Würfels und die Zielfunktionswerte sind wie folgt Nr Würfel gest Würfel z z für ε = 1/4 Reihenfolge 1 (0, 0, 0) ( (ε, ε 2, ε 3 ) ε 3 0015625 8 2 (0, 0, 1) ( ε, ε 2, 1 ε 3) 1 + ε 3 0984375 1 3 (0, 1, 0) ( ε, 1 ε 2, ε ε 3) ε + ε 3 0234375 5 4 (0, 1, 1) ε, 1 ( ε 3, 1 ε + ε 3) 1 + ε ε 3 0765625 4 5 (1, 0, 0) ) 1, ε, ε 2 ( ε 2 00625 7 6 (1, 0, 1) ) 1, ε, 1 ε 2 ( 1 + ε 2 09375 2 7 (1, 1, 0) ) 1, 1 ε, ε ε 2 ( ε + ε 2 01875 6 8 (1, 1, 1) ) 1, 1 ε, 1 ε + ε 2 1 + ε ε 2 08125 3 Man beginnt mit der Startlösung x = ε ε 2 = r = ε 3 0 0 0, s = 1 ε 1 ε 2 1 ε 3 Das Transformationsprinzip der Simplexmethode wählt jeweils die kleinste Verbesserung der Zielfunktion Die Eckpunkte des gestörten Würfels werden in folgender Reihenfolge durchgegangen: 1 5 7 3 4 8 6 2 ε 0 0 1 1 1, 4 8 2 6 3 7 1 5 42

Die Zusammenfassung dieses Kapitels ist wie folgt Satz 812 Die Simplexmethode besitzt als worst case Komplexität mindestens O = (2 n ) Diese tritt aber praktisch nicht auf In der Praxis hat die Simplexmethode eine polynomiale Komplexität Erfahrungsgemäß liegt die Anzahl der Iterationen etwa bei 3n Im Kapitel 12 werden wir noch Verfahren kennenlernen, bei denen man beweisen kann, dass sie von polynomialer Komplexität sind, die sogenannten Innere Punkt Methoden 43

Kapitel 9 Dualitätssätze der linearen Optimierung Sei z = c T x min! Ax = b (91) x 0 mit c, x R n, b R m, A R m n ein lineares Programm Definition 91 Duales lineares Programm Das lineare Programm z = b T y max! (92) A T y c mit y R m wird das zu (91) duale lineare Programm genannt Man nennt (91) primal Die Ziele dieses Abschnitts bestehen darin, die Existenz zulässiger Lösungen des dualen linearen Programms, die Relationen der zulässigen Lösungen des primalen und dualen linearen Programms, die Relationen zwischen den Optimallösungen und die Verbesserung der numerischen Verfahren zu untersuchen Ein duales Analogon zur Simplexmethode soll entwickelt werden Satz 92 Ist x eine zulässige Lösung von (91) und ist y eine zulässige Lösung von (92), dann gilt z(x) z(y) Beweis: Es gelten x 0 und c T y T A Damit folgt z(x) = c T x y T Ax = y T b = z(y) Man nennt diesen Satz auch schwachen Dualitätssatz Folgerung 93 Sind x 0 eine zulässige Lösung von (91) und y 0 eine zulässige Lösung von (92) und gilt z(x 0 ) = z(y 0 ), dann ist x 0 eine Optimallösung von (91) und y 0 ist eine Optimallösung von (92) Satz 94 Starker Dualitätssatz Das primale Problem (91) besitzt genau dann eine endliche Optimallösung, wenn das duale Problem (92) eine endliche Optimallösung besitzt In diesem Fall gilt z min = z max 44

Beweis: 1) Es existiere ein endliches Minimum des primalen Problems (91) ( T und dieses Minimum werde von x 0 = x (0) 1,, x(0) m, 0,, 0) angenommen Dann sind erklärt: - Die zugehörigen Basisvektoren seien a 1,, a m - Mit X = (x ij ) i=1,,m,j=1,,n werden die Darstellungskoeffizienten für alle Spalten von A bezüglich dieser Basisvektoren bezeichnet - z = (z 1,, z n ) T sei der Vektor, der durch z j = m i=1 c ix ij, j = 1,, n, erzeugt wird - A 0 = (a 1,, a m ), - c 0 = (c 1,, c m ) T Wegen des Optimalitätskriteriums der Simplexmethode gilt für x 0 z c (z k c k 0, k = 1,, n) (93) Aus der Nebenbedingung und der Definition der Darstellungskoeffizienten folgt Daraus ergibt sich A 0 x 0 = b, A 0 X = A x 0 = A 1 0 Weiter erhalten wir aus der Definition von z b, X = A 1A (94) 0 c T 0 X = z T c T (95) Jetzt setzen wir y 0 = A T 0 c 0 und zeigen, dass y 0 eine Optimallösung des dualen Problems (92) ist Die Zulässigkeit von y 0 folgt aus (94) und (95) Die Lösung y 0 ist optimal wegen y T 0 A = c T 0 A 1 0 A = ct 0 X c T z(y 0 ) = b T y 0 = y T 0 b = ct 0 A 1 0 b = ct 0 x 0 = z(x 0 ), wobei (94) verwendet wurde Damit liefert y 0 einen Zielfunktionswert, der mit dem von x 0 übereinstimmt Da x 0 Optimum des primalen Problems ist, ist y 0 wegen Folgerung 93 Optimum des dualen Problems Insbesondere gilt z min = z max 2) Das Ziel besteht darin, diesen Teil des Beweises auf den ersten Teil zurückzuführen, indem gezeigt wird, dass das duale Problem des dualen Problems (92) gerade das primale Problem (91) ist Dazu wird das duale Problem so umgeformt, dass es die Gestalt eines primalen Problems annimmt Bildet man dann aus dieser Form das duale Problem, erhält man die Behauptung Es existiere ein endliches Maximum z max des dualen Problems (92) Wir setzen für einen beliebigen Vektor y R m, der die Nebenbedingungen von (92) erfüllt, y = y 1 y 2, y 1, y 2 R m, y 1, y 2 0 Aus den Nebenbedingungen von (92) erhält man A T (y 1 y 2 ) + y 3 = c R n, mit den Schlupfvariablenvektor y 3 R n, y 3 0 Daraus bilden wir folgendes zu (92) äquivalentes Problem, wobei das Vorzeichen der Zielfunktion geändert wird b T (y 2 y 1 ) min! A T y 1 + A T y 2 y 3 = c y 1, y 2, y 3 0 45

Setzt man w = y 1 y 2 y 3 R 2m+n, d = b b 0 n A = ( A T, A T, I n ) R n (2m+n), R 2m+n, so kann man dieses System in der Form d T w min! Aw = c (96) w 0 schreiben Einerseits ist dieses Problem zum dualen Problem (92) äquivalent Damit besitzt die Zielfunktion von (96) nach Voraussetzung ein endliches Optimum z (w) min, für welches gilt z (w) min = z max Andererseits besitzt das Problem (96) die gleiche Gestalt wie das primale Problem (91) Die duale Aufgabe zu (96) hat nun folgende Gestalt: Gesucht ist x R n mit c T x max!, A T x d, das heißt c T x min! Ax b Ax b x 0 Aus den ersten beiden Nebenbedingungen folgt Ax = b Damit ist gezeigt, dass (91) das duale Problem zu (92) ist Aus dem ersten Teil des Beweises wissen wir, dass die duale Aufgabe zu (96) ein endliches Maximum besitzt und das dieses Maximum mit z (w) min = z max übereinstimmt Jetzt wird der Fall betrachtet, dass die Zielfunktion der primalen Aufgabe nach unten nicht beschränkt ist Satz 95 Ist die Zielfunktion z = c T x der primalen Aufgabe (91) auf der Menge der zulässigen Lösungen nach unten unbeschränkt, dann besitzt die zugehörige duale Aufgabe (92) keine zulässige Lösung Analog gilt, dass im Falle dass die Zielfunktion der dualen Aufgabe auf der Menge der zulässigen Lösungen nicht nach oben beschränkt ist, die primale Aufgabe keine zulässige Lösung besitzt Beweis: Indirekter Beweis Sei die Zielfunktion des primalen Problems nicht nach unten beschränkt und sei y eine zulässige Lösung des dualen Problems, das heißt es gilt A T y c T Aus Satz 92 folgt dann aber z(x) z(y) für alle zulässigen Lösungen x des primalen Problems und die Zielfunktion wäre nach unten beschränkt Die zweite Aussage folgt aus der ersten Aussage und daraus, dass das primale Problem (91) das duale Problem des dualen Problems (92) ist Folgerung 96 Eine zulässige Lösung x 0 des primalen Problems (91) ist genau dann optimal, wenn eine zulässige Lösung y 0 des dualen Problems (92) existiert, mit c T x 0 = b T y 0 Eine analoge Aussage gilt, wenn man vom dualen Problem ausgeht 46

Satz 97 Komplementaritätssatz Es sei x 0 = (x (0) 1,, x(0) m, 0,, 0) T eine zulässige Basislösung des primalen Problems (91) Dann ist x 0 genau dann optimal, wenn es eine zulässige Lösung y des dualen Problems (92) mit folgenden Eigenschaften gibt: 1) für alle Indizes i {1,, m} mit x (0) i > 0 gilt a T i y = c i, 2) für alle Indizes j {1,, n} mit a T j y < c j gilt x (0) j = 0 Beweis: i) Sei x 0 optimal Nach Folgerung 96 gibt es dann ein y 0 mit c T x 0 = b T y 0 Einsetzen von Ax 0 = b ergibt c T x 0 = x T 0 A T y 0 = y0 T Ax 0 } {{ } ( c T y0 T A ) x 0 = 0 R Komponentenweise lautet diese Gleichung n j=1 ( cj y T 0 a j ) x (0) j = 0 Da y 0 eine zulässige Lösung des dualen Problems ist und x (0) eine zulässige Lösung des primalen Problems, sind alle Faktoren nichtnegativ Damit die Summe Null wird, müssen alle Summanden verschwinden und wenigstens jeweils einer der Faktoren Null sein Ist x (0) j > 0, muss a T j y 0 = c j sein Ist a T j y < c j, so muss x (0) j = 0 sein Die Optimallösung y 0 des dualen Problems erfüllt also die Bedingungen 1) und 2) ii) Es gibt einen Vektor y der die Bedingungen 1) und 2) erfüllt Wir nehmen an, x 0 sei nicht optimal Dann gilt c T x 0 > b T y Analog zum ersten Teil erhält man n j=1 ( cj y T a j ) x (0) j > 0 Aus den Bedinungen 1), 2) folgt jedoch, dass die Summe verschwindet Damit ist die Annahme falsch und x 0 ist optimal Bemerkung 98 Mit Hilfe der Dualität ist die Möglichkeit der Bestimmung von Schranken für eine zulässige (optimale) Lösung gegeben Es gilt z(x) z(x 0 ) = z(y 0 ) z(y), wobei x eine zulässige Lösung des primalen Problems (91), x 0 eine Optimallösung von (91), y eine zulässige Lösung des dualen Problems (92) und y 0 eine Optimallösung des dualen Problems ist Ein Spezialfall des dualen linearen Programms ist das symmetrische duale lineare Programm Gegeben sei das lineare Programm Aus (97) wird ein lineares Programm konstruiert z = c T x min! Ax b (97) x 0 z = b T y max! A T y c (98) y 0 47

Satz 99 Die linearen Programm (97) und (98) sind duale lineare Programme im Sinne von Definition 91 Beweis: Aus (97) konstruieren wir das lineare Programm in Normalform z = c T x min!, Ax v = b, x, v 0 Aus Definition 91 ergibt sich das folgende duale lineare Programm z = b T y max!, A T y c, I m y 0 Die letzte Bedingung ist äquivalent zu y 0 Man hat nun eine Nichtnegativitätsbedingung an die zulässigen Lösungen des dualen Programms (98) Satz 910 Komplementaritätssatz Sind x 0 eine zulässige Lösung von (97) und y 0 eine zulässige Lösung von (98), so sind sie genau dann optimal, wenn die folgenden Relationen erfüllt sind: y T 0 (Ax 0 b) = 0, (99) ( y T 0 A c T ) x 0 = 0 (910) Beweis: 1) Seien x 0 und y 0 optimal Dann folgt aus der Nebenbedingung von (98), aus der Nichtnegativität von x 0 und aus Folgerung 96 y T 0 (Ax 0 b) = y T 0 Ax 0 y T 0 b ct x 0 y T 0 b = 0 Andererseits gilt mit y 0 0 und der Nebenbedingung von (97) y T 0 (Ax 0 b) 0 Aus beiden Ungleichungen zusammen folgt (99) Die Beziehung (910) beweist man analog 2) Gelten jetzt (99) und (910) Daraus folgt c T x 0 = y T 0 Ax 0 = y T 0 b Nach Folgerung 96 sind x 0 und y 0 optimal Beispiel für Anwendungen des Dualitätsprinzips werden in den Übungsaufgaben behandelt 48

Kapitel 10 Die duale Simplexmethode Bei der dualen Simplexmethode ist eine Startlösung oftmals leichter angebbar als bei der Simplexmethode für das ursprüngliche lineare Programm, da man keine Nichtnegativitätsanforderungen zu erfüllen hat Des weiteren ist die duale Simplexmethode ein wichtiges Verfahren zur Lösung von ganzzahligen linearen Programmen, dh, von linearen Programmen, bei denen die Lösung ganzzahlig sein soll Seien das primale Programm und z = c T x min! Ax = b (101) x 0 z = b T y max! (102) A T y c das zugehörige duale Programm Wir setzen voraus, dass z endlich ist Definition 101 Ecklösung Ohne Beschränkung der Allgemeinheit sei A B = (a 1,, a m ) eine Basis Ein Punkt y = (y 1,, y m ) T heißt Ecklösung von (102), wenn a T i y = c i für i = 1,, m, (103) a T i y < c i für i = m + 1,, n gelten Das heißt, die Nebenbedingungen, die durch die Basisvektoren von A B gegeben sind, sind mit Gleichheit erfüllt und die Nebenbedingungen mit den Nichtbasisvektoren als echte Ungleichung Seien A 1 B die Inverse von A B mit der Darstellung A 1 B = b 1 b m, dass heißt b i a j = δ ij, i, j = 1,, m, und y = y 1 a 1 + + y m a m R m ein beliebiger Vektor Dann folgt (man beachte, die b i sind Zeilenvektoren) b i y = y 1 b i a 1 + + y m b i a m = y i, i = 1,, m 49

Daraus erhält man insbesondere die Darstellung y = (b 1 y) a 1 + + (b m y) a m (104) Die Ausartung in der dualen Simplexmethode, die im folgenden Satz ausgeschlossen ist, wird in seinem Beweis definiert, siehe auch Bemerkung 103 Satz 102 Hauptsatz der dualen Simplexmethode Sei z nach oben beschränkt und sei Ausartung ausgeschlossen Ist y R m eine Ecklösung und gilt b i b < 0 für wenigstens ein i = 1,, m, so existiert eine Ecklösung ȳ mit größerem Wert der Zielfunktion z Beweis: Seien y eine Ecklösung, b l b < 0 und θ > 0 beliebig Es wird ein ȳ konstruiert, welches die Bedingungen des Satzes erfüllt Man bildet ȳ = y θb T l Aus der Eckpunkteigenschaft (103) folgt a T i ȳ = at i y θ a T i b T l = a T i y = c i, } {{ } i = 1,, m, i l, (105) =0 a T l ȳ = at l y θ a T l b T l = a T l y θ < c l } {{ } (106) =1 Damit man eine zulässige Lösung hat, muss auch a T i ȳ = at i y θa T i b T l c i, i = m + 1,, n, gelten Für wenigstens einen Index i gilt a T i bt l < 0 Anderenfalls, falls also a T i bt l > 0 für i = m+1,, n, sind die Nebenbedingungen für beliebig großes θ erfüllt Damit wäre z = b T ȳ = b T y θ b T b l } {{ } <0 nv unbeschränkt im Widerspruch zur Voraussetzung Wir wählen ( ) a T θ = min i y c i (107) i=m+1,,n;b l a i<0 b l a i Wir nehmen an, dass θ von genau einem Index i = k bestimmt wird Sonst hat man Ausartung Es gelten: 1) ȳ erfüllt (105) und (106), das heißt, die Basisvektoren die in der Basis verbleiben erfüllen die Nebenbedingung mit Gleichheit und die neue Nichtbasisvariable mit Index l als echte Ungleichung 2) Für den Index k, der in die Basis aufgenommen werden soll, gilt 3) Aus der Wahl von θ folgt a T k ȳ = at k y at k y c k b l a k b l a k = c k, a T i ȳ = at i y θat i bt l < c i, i = m + 1,, n, i k Falls a T i bt l nichtnegativ ist, ist das Erfülltsein dieser Bedingung klar Ansonsten wurde bei der Wahl von θ gerade der Index k ausgewählt, der die k te Nebenbedingung a T k bt l < 0 für ȳ zu einer Gleichung werden lässt, ohne dass die anderen Nebenbedingungen mit a T i bt l < 0 verletzt werden 50

Aus 1) 3) folgt, dass ȳ eine Ecklösung ist Ferner gilt z = b T ȳ = b T y θb T b T l > b T y Bemerkung 103 Ausartung im dualen Programm Ist der Index k bei der Wahl von θ in (107) nicht eindeutig, so liegt Ausartung vor Bemerkung 104 Unbeschränktheit der Zielfunktion Die Unbeschränktheit der Zielfunktion z ist an a T j bt l 0 für j = m + 1,, n, zu erkennen Satz 105 Optimalitätskriterium Sei y eine Ecklösung von (102) und gelte b i b 0 für alle i = 1,, m Dann ist y die Optimallösung von (102) und die Größen x i = b i b stellen die Basisvariablen der Optimallösung des primalen Problems (101) dar Beweis: Es gilt mit (103) ( m m m m ) z = c i x i = c i b i b = y T a i b i b = y T a i b i b = b T y = z i=1 i=1 i=1 i=1 } {{ } =I m Nach dem starken Dualitätssatz, Satz 94, folgt die Aussage des Satzes Bemerkung zur Summe: Sei m i=1 a ib i = C mit einer unbekannten Matrix C Multiplikation diese Gleichung von rechts mit a j, j = 1,, m, ergibt Ca j = m i=1 a i b i a j }{{} =δ ij = a j für alle a j Da die {a j } eine Basis des R m bilden, gilt C = I m Die duale Simplextabelle hat die Gestalt m + 1 k n i c i Lösung c m+1 c k c n 1 c 1 b 1 b b 1 a m+1 b 1 a k b 1 a n l c l b l b b l a m+1 b l a k b l a n m c m b m b b m a m+1 b m a k b m a n z a T m+1 y c m+1 a T k y c k a T n y c n Wie bei der Simplexmethode, wird die Zeile l Hauptzeile und die Spalte k Hauptspalte genannt Das Pivotelement ist b l a k Aus den Nebenbedingungen des dualen linearen Programms (102) folgt, dass die Einträge in der letzten Zeile im Nichtbasisteil nichtpositiv sind Bemerkung 106 - In der Schlusszeile stehen die Größen, die man zur Berechnung von θ in (107) benötigt 51

- Die Spalte Lösung enthält eine Basislösung des primalen Problems Sei x R m der Vektor mit den Basisvariablen des primalen Problems Aus den Nebenbedingungen des primalen Problems folgt A B x = b = x = A 1 B b = b 1 b b m b Diese Basislösung ist im allgemeinen nicht zulässig, da sie negative Komponenten besitzt Gilt jedoch b i b 0 für alle i = 1,, m, dann ist sie primale Optimallösung, siehe Satz 105 - Die Nichtbasisvektoren lassen sich als Linearkombination der Basisvektoren darstellen a j = A B a mit einem unbekannten Koeffizientenvektor a Dieser lässt sich durch a = A 1 B a j berechnen, was in Komponentenschreibweise zu a j = m (b i a j ) a i, j = m + 1,, n i=1 führt, siehe (104) - Falls man das Optimum des dualen Problems mit der dualen Simplexmethode gefunden hat, ist die Tabelle der dualen Simplexmethode eine Optimaltabelle für die primale Aufgabe Bemerkung 107 Herleitung der Transformationsregeln: Sei A B = (a 1,, a m ) und sei  B = (a 1,, a l 1, a k, a l+1,, a m ) Dann ist A 1 B ÂB = = = b 1 b m (a 1,, a l 1, a k, a l+1,, a m ) b 1 a 1 b 1 a 2 b 1 a k b 1 a m b l a 1 b l a 2 b l a k b l a m b m a 1 b m a 2 b m a k b m a m 1 0 0 b 1 a k 0 0 0 1 0 b 2 a k 0 0 0 0 0 b l a k 0 0 0 0 0 b m a k 0 1 =: I (k) m Mit (ÂB ) 1 = ˆb 1 ˆb m = A 1 B = I(k) m (ÂB ) 1, 52

oder b 1 b l b m = ˆb 1 + (b 1 a k )ˆb k (b l a k )ˆb k ˆb m + (b m a k )ˆb k Damit stehen die Transformationsregeln da Für das Pivotelement gilt ˆb k = Für die Hauptspalte erhält man daraus b l b l a k = ˆb k a l = b la l b l a k = 1 b l a k ˆb i = b i (b i a k ) ˆb k = ˆb ) i a l = b i a l (b i a k ) (ˆbk a l = 0 b ia k i l b l a k Für die Hauptzeile ergibt sich umittelbar ˆb k a j = b la j b l a k, j = 0, m + 1,, n, j k Damit ergibt sich auch die Rechteckregel ˆb i a j = b i a j b i a k ˆbk a j = b i a j b la j b l a k b i a k Zusammenfassung: Falls in der Spalte Lösung wenigstens ein b i b < 0 steht, zum Beispiel für i = l, so transformiert man wie folgt: - setze a 0 = b, - vertausche die Indizes l und k, - Pivotelement: ˆb k a l = 1/(b l a k ), - Hauptspalte: ˆb i a l = b ia k b l a k, i = 1,, m, i l, - Hauptzeile: - Rechteckregel: ˆb k a j = b la j b l a k, j = 0, m + 1,, n, j k, ˆb i a j = b i a j b la j b l a k b i a k, i = 1,, m, i l, j = 0, m + 1,, n, j k Die Rechteckregel wird auch auf die letzte Zeile angewandt Übungsaufgabe Das sind dieselben Regeln wie im primalen Fall! Beispiel 108 Wir betrachten noch einmal das Problem aus Beispiel 52: z = 3x 1 2x 2 4x 3 x 4 min! 2 2 3 0 1 0 0 x 1 1 3 0 2 0 1 0 = 700 400 1 1 5 2 0 0 1 x 7 500 x 0 53

In Beispiel 52 hatten wir die Optimallösung x = (320, 0, 20, 40, 0, 0, 0) T mit z = 1080 erhalten Das duale Problem zum obigen linearen Programm lautet z = 700y 1 + 400y 2 + 500y 3 max! 2 1 1 3 2 3 1 3 0 5 0 2 2 y 2 1 4 y 2 1 1 0 0 y 3 0 0 1 0 0 0 0 1 0 Wir nehmen uns die erste, dritte und fünfte Nebenbedingung des dualen Problems her und betrachte diese Bedingungen als Gleichungen: 2 1 1 3 0 5 y 1 y 2 = 3 4 = y = 0 11/5 1 0 0 y 3 0 4/5 Durch Einsetzen in die anderen Nebenbedingungen verifiziert man, dass man damit eine Ecklösung des dualen Problems gefunden hat Es ist A B = (a 1, a 3, a 5 ) = 2 3 1 1 0 0, 1 5 0 A 1 B = 0 1 0 0 1/5 1/5 = b 1 b 3, b = 700 400 1 7/5 3/5 b 5 500 Damit kann man alle Größen für die duale Simplextabelle bestimmen: 2 4 6 7 i c i Lösung -2-1 0 0 1-3 400 3 2 1 0 3-4 20-2/5 0-1/5 1/5 5 0-160 -14/5-4 -7/5-3/5-1280 -27/5-5 -11/5-4/5 Die Lösung ist nicht optimal, da 160 < 0 Damit ist l = 5 die Hauptzeile Zur Bestimmung der Hauptspalte berechnet man ( ) a T { j y c j 27 θ = min = min j {2,4,6,7}, b l a j<0 b l a j 14, 5 4, 11 7, 4 } = 5 3 4 Damit ist die Hauptspalte k = 4 Mit den Transformationsregeln der Simplexmethode erhält man die neue duale Simplextabelle 2 5 6 7 i c i Lösung -2 0 0 0 1-3 320 8/5 1/2 3/10-3/10 3-4 20-2/5 0-1/5 1/5 4-1 40 7/10-1/4 7/20 3/20-1080 -19/10-5/4-9/20-1/20 Damit ist das Optimum bestimmt Die Optimallösung des primalen Problems findet man in der Spalte Lösung ebenso den zugehörigen Zielfunktionswert 54

Die Lösung des dualen Problems y kann man im allgemeinen nicht direkt aus der dualen Simplextabelle ablesen In der letzten Zeile steht nämlich a T j y c j Das direkte Ablesen geht nur, wenn c j = 0 und die a j Einheitsvektoren sind Das ist in diesem Beispiel gegeben, nämlich für die Indizes 5, 6, 7 Die Lösung des dualen Problems ist also y = ( 5/4, 9/20, 1/20) T, mit dem Zielfunktionswert z = 1080 Im allgemeinen muss man noch ein lineares Gleichungssystem lösen, um die Lösung des dualen Problems zu berechnen 55

Kapitel 11 Die duale Simplexmethode zur Lösung rein ganzzahliger linearer Programme Wir betrachten folgendes Optimierungsproblem z = c T x min! Ax = b (111) x 0 (112) x j ganz für j = 1,, n 1 n, (113) a ij, b i ganz für i = 1,, m, j = 1,, n (114) Definition 111 Ganzzahliges lineares Programm Das lineare Programm (111) (114) heißt rein ganzzahliges lineares Programm falls n 1 = n Ansonsten heißt es für n 1 > 0 gemischt ganzzahliges lineares Programm Wir werden nur rein ganzzahlige lineare Programme betrachten Bemerkung 112 Häufig enthalten ganzzahlige lineare Programme Bedingungen der folgenden Art 0 x j 1, x j ganz, für gewisse Indizes j Beispiel 113 Wir betrachten z = 8x 1 4x 2 min! 2x 1 + 3x 2 6 8x 1 + 3x 2 20 x 1, x 2 x 0 ganz Das Problem ohne die Ganzheitsforderung kann man graphisch lösen, siehe Abbildung 111 Das stetige Optimum ist ( 7 x = 5, 44 ), z = 344 15 15 56

20 3 2 z 5 2 Abbildung 111: Illustration zu Beispiel 113 Eine einfache Idee zur Bestimmung des ganzzahligen Optimums ist Runden Man erhält damit x = (1, 3) T Dieser Punkt ist jedoch nicht zulässig Durch Abrunden folgt x = (1, 2) T Man erhält mit diesem Punkt den Zielfunktionswert z = 16 Dieser ist jedoch nicht optimal, da man mit x = (2, 1) T den Wert z = 20 erhält Runden ist also keine geeignete Lösungstechnik Mit dem normalen Simplexverfahren kann man nicht arbeiten, da das Optimum ein innerer Punkt des zulässigen Bereiches ist Das könnte man durch die Bestimmung der konvexen Hülle aller zulässigen Punkte ändern Dieses Vorgehen ist aber im allgemeinen viel zu aufwendig Stattdessen versucht man in der Nähe des stetigen Optimums durch Abschneiden den gesuchten ganzzahligen optimalen Punkt zu einem Eckpunkt zu machen Dieses Schnittprinzip soll jetzt auf eine Art (nach Gomory (1957)) realisiert werden Definition 114 Schnittbedingung Die Nebenbedingung n β j x j β (115) j=1 heißt Schnittbedingung, wenn folgendes erfüllt ist: i) Es sei x (0) ein Optimum mit den Nebenbedingungen (111) (112), aber nicht (113) Dann erfüllt x (0) die Bedingung (115) nicht, das heißt n j=1 β j x (0) j > β ii) Jede Lösung, welchedie Nebenbedingungen (111) (113) erfüllt, erfüllt auch (115), das heißt {x : x erfüllt (111) (113)} {x : x erfüllt (115)} Mit Hilfe der Schnittbedingung soll der zulässige Bereich verkleinert werden (eine Ecke wird abgeschnitten) ohne dass damit ganzzahlige Lösungen abgeschnitten werden 57

Jetzt soll (111) (114) durch die Einführung von Schnittbedingungen gelöst werden Es sei dazu zuerst (111) (112) mit Hilfe der Simplexmethode gelöst Das Optimum sei x (0) = (x (0) 1,, x(0) m, 0,, 0) T Dabei sei wenigstens ein x (0) i, i {1,, m}, nicht ganz Sei A B = (a 1,, a m ) die Matrix der Basisvektoren Die Auflösung von (111) nach den Basisvariablen liefert für jedes zulässige x die Darstellung x i = α i + α i,m+1 ( x m+1 ) + + α i,n ( x n ), i = 1,, m (116) Lemma 115 Die Koeffizienten von (116) sind die Koeffizienten einer optimalen Simplextabelle Beweis: Wir betrachten die Nebenbedingung (111) und zerlegen A = (A B A N ) sowie x = (x B x N ) T Wir wissen, dass A N = A B X, wobei X die Einträge der Simplextabelle sind Aus A B x B + A N x N = b folgt x (0) i x B = A 1 B b + A 1 B A N( x N ) = A 1 B } {{ b + X( x N ) } } {{ } α i Rest von (116) Sei jetzt für i = p die Variable x (0) p nicht ganz, i {1,, m} Falls mehrere nicht ganz sind, wähle man einen dieser Indizes Welches der beste ist, ist im allgemeinen nicht zu beantworten Sei a R Dann bezeichnen wir [a] = INT(a), {a} = a [a], wobei INT(a) der{ größte } ganzzahlige Bestandteil von a ist Es gilt {a} [0, 1) Insbesondere gilt > 0 Da für das Optimum die Komponenten mit den x (0) p Indizes m + 1,, n verschwinden und wegen (116) folgt damit [ ] { } α p = x (0) p = x (0) p + x (0) p > 0 } {{ } } {{ } 0 >0 Satz 116 Die Bedingung s 1 = {α p } {α p,m+1 } ( x m+1 ) {α p,n } ( x n ), s 1 0 (117) stellt eine Schnittbedingung gemäß Definition 114 dar Beweis: Die Bedingungen von Definition 114 müssen geprüft werden Wir fügen die Bedingung (117) zum System der Nebenbedingungen (111), (112) hinzu und setzen x (0) ein Aus (116) und wegen x (0) m+1 = = x(0) n = 0 folgt s 1 = α p < 0, also ist x (0) nicht zulässig Nun ist zu zeigen, dass mit (117) kein bezüglich (111) (113) zulässiger Punkt weggeschnitten wird Sei x = ( x 1,, x n ) T ein Punkt, der (111) (113) erfüllt Dann folgt aus (117) s 1 = (α p [α p ]) } {{ } [0,1) n j=m+1 58 (α p,j [α p,j ]) ( x j ) } {{ } } {{ } (0,1) 0

Damit ist s 1 > 1 Andererseits gilt s 1 = [α p ] + n j=m+1 [α p,j ] ( x j ) α p } {{ } Z n j=m+1 α p,j ( x j ) } {{ } (116)= x p Z Damit ist s 1 Z Da s 1 > 1 folgt s 1 0 Man hat mit der Schnittbedingung (117) das Optimum bezüglich der Nebenbedingungen (111), (112) abgeschnitten, ohne dabei auch ganzzahlige Lösungen wegzuschneiden Folgendes lineare Programm ist jetzt zu lösen: n j=m+1 z = c T x min! Ax = b {α p,j } ( x j ) + s 1 = {α p } (118) x 0 s 1 0 Zur Lösung von (118) berechnet man zuerst die optimale Lösung des linearen Programms ohne Ganzzahligkeitsbedingung mit Hilfe der dualen Simplexmethode Hat man diese, und ist sie nicht ganzzahlig, betrachtet man im nächsten Schritt die duale Simplextabelle mit x i = α i, i = 1,, m, s 1 = α p (119) (beachte: in der Simplextabelle des dualen Problems steht x i = b i b = α i ) Der Vektor (119) ist eine dual zulässige Lösung, das heisst, die Nebenbedingungen des dualen Problems sind erfüllt Übungsaufgabe Eventuell ist die Einführung weiterer Schnittbedingungen nötig Das oben beschriebene Vorgehen wird im nächsten Beispiel demonstriert Beispiel 117 Wir betrachten das lineare Programm 1 1 0 1 0 2 1 1 0 0 1 0 0 0 1 z = x 1 2x 2 min! x 1 x 5 = x 0 x 10 5 4 ganz Die optimale duale Simplextabelle lautet 3 4 i c i Lösung 0 0 1-1 5/3 1/3-1/3 2-2 20/3 1/3 2/3 5 0 7/3-1/3 1/3-15 -1-1 Die Lösung ist optimal, aber nicht ganzzahlig Heuristisch wählt man {α p } möglichst groß, hier zum Beispiel {20/3} = 2/3 Es besteht allerdings die Gefahr, dass man an der falschen Stelle abschneidet Nun verwendet man, dass die Tabelle der dualen Simplexmethode eine Optimaltabelle der primalen Aufgabe ist, Bemerkung 106 59

Damit kann man Lemma 115 für die Formulierung der Schnittbedingung nutzen, da die benötigten Koeffizienten α p,j gerade im Nichtbasisteil der ausgewählten Zeile stehen: s 1 = 2 3 1 3 ( x 3) 2 3 ( x 4) 0 Führt man die Variable s 1 als m + 1 ste Eckvariable in die duale Simplextabelle ein, dann hat man die neue Matrix der Basisvektoren b 1 ) Ã B = ( a1 a m 0 0 0 1 = Ã 1 B = b m e m+1 wobei e m+1 der m+1 ste Einheitsvektor ist Somit erhält man in der Spalte Lösung für s 1 : e m+1 b = α p = 2/3 In den Nichteckspalten der Zeile von s 1 erhält man die Zahlen {α p,j }, siehe (118) Man hat die neue duale Simplextabelle Die Hauptzeile ist die Zeile von s 1 Aus 3 4 i c i Lösung 0 0 1-1 5/3 1/3-1/3 2-2 20/3 1/3 2/3 5 0 7/3-1/3 1/3 s 1 0-2/3-1/3-2/3 θ = min j {3,4} -15-1 -1 { 1 1/3, 1 2/3 } = 3 2 folgt, dass k = 4 die Hauptspalte ist Der Simplexschritt führt zu folgender Tabelle 3 s 1 i c i Lösung 0 0 1-1 2-1/2-1/2 2-2 6 0 1 5 0 2-1/2 1/2 4 0 1 1/2-3/2-14 -1/2-3/2 Damit hat man die Optimallösung des ganzzahligen linearen Programms gefunden In der Praxis sind im allgemeinen mehr Schnittbedingungen nötig Die Endlichkeit des Verfahrens ist nicht gesichert, 60

Kapitel 12 Innere Punkt Verfahren Innere Punkt Verfahren verfolgen die Idee, bei der Lösung von linearen Programmen durch das Innere des konvexen Polyeders zum Optimum zu gelangen Damit unterscheiden sie sich grundsätzlich von der Simplexmethode Bemerkung 121 Historie von Innere Punkt Verfahren - Dikin 1967: hat bereits die Idee von Karmarkar (1984) umgesetzt, Arbeit wurde aber nicht wahrgenommen - Fiacco, McCormick 1968: Innere Punkt Verfahren für nichtlineare Optimierungsprobleme, waren aber nicht wettbewerbsfähig im Vergleich zu anderen Verfahren - Khachian 1979: Ellipsoidmethode Polynomiale Komplexität konnte bewiesen werden, allerdings war das Verfahren wenig praxistauglich wegen numerischen Instabilitäten - Karmarkar 1984: projektive Methode, erste praxistaugliche Innere Punkt Methode Die Motivation zur Entwicklung von Alternativen zur Simplexmethode liegt in deren schlechter theoretischer Komplexität begründet Man kann nicht ausschließen, dass die Anzahl der Iterationen exponentiell mit der Problemgröße wächst, siehe Abschnitt 82 Das hat im wesentlichen zwei Gründe: - Die Simplexmethode kennt als Abstiegsrichtungen nur die Kanten auf dem Rand des zulässigen Bereiches Deren Anzahl wächst exponentiell mit der Dimension des Polyeders - Die Simplexmethode sucht die Abstiegsrichtung lokal aus Für diese Richtung spielen nur die im aktuellen Eckpunkt aktiven Nebenbedingungen eine Rolle, nicht aber die Gesamtheit der Nebenbedingungen Alternativen zur Simplexmethode müssen an diesen beiden Schwachstellen angreifen: sie sollten Abstiegsrichtungen durch das Innere des Polyeders zulassen und bei der Bestimmung dieser Richtungen Informationen von allen Nebenbedingungen einbeziehen Die Idee von Khachians Ellipsoidmethode lässt sich grob wie folgt beschreiben: Man startet mit einem zulässigen Punkt x und sucht einen möglichst zentral gelegenen Punkt x in einem Restpolyeder, welches nur Punkte x mit c T x c T x enthält Diesen Punkt findet man dadurch, dass man mittels einer Iteration das Restpolyeder möglichst gut in ein Ellipsoid einbettet und dessen Mittelpunkt x betrachtet Ist x zulässig, setzt man x = x und startet die Konstruktion von Neuem Die Instabilitäten rüherten daher, dass die Ellipsoide im Laufe der Iteration immer schmaler wurden 61

Das Verfahren von Karmarkar geht andersherum vor: hier wird ein Ellipsoid in den zulässigen Bereich eingebettet Es funktioniert grob wie folgt: Man startet mit einem inneren Punkt des zulässigen Bereiches x und konstruiert ein im zulässigen Bereich einbeschriebenes, möglichst großes Ellipsoid Dann nimmt man anstelle des zulässigen Bereiches nur das Ellipsoid und minimiert darüber die Zielfunktion Es ergibt sich ein Randpunkt x, an dem das Minimum angenommen wird Man setzt x = x und startet die Konstruktion von Neuem Das Verfahren von Karmarkar arbeitet praktisch wesentlich besser als die Ellipsoidmethode von Khachian Man kann auch beweisen, dass die Komplexität des Verfahrens von Karmarkar besser ist Für sehr große Problem ist dieses Verfahren oft schneller als die Simplexmethode In diesem Kapitel soll jedoch nur eine einfache Innere Punkt Methode im Detail besprochen werden 121 Das Newton Verfahren Die betrachtete Innere Punkt Methode beruht auf dem Newton Verfahren Hier werden nur kurz einige Fakten zu diesem Verfahren zusammgestellt Sei f : R n R n mit f C 3 (R n ) gegeben Gesucht ist eine Nullstelle x dieser Funktion f(x) = 0 Sei x eine Näherung an x Setzt man x = x + x, dann erhält man mit der Taylorentwicklung, abgebrochen nach dem linearen Term, die Approximation 0 = f(x) = f(x + x) f(x) + Df(x) x, wobei Df(x) die Jacobi Matrix von f in x ist Unter der Annahme, dass die Jacobi Matrix regulär ist, erhält man x (Df(x)) 1 f(x) = x x (Df(x)) 1 f(x) Diese Beziehung motiviert die Berechnung der nächsten Iterierten x + des Newton Verfahrens x + := x (Df(x)) 1 f(x) Zum Konvergenzverhalten des Newton Verfahrens gibt es folgende bekannte Aussage Satz 122 Seien f : R n R n mit f C 3 (R n ), x eine Nullstelle von f und Df(x) 0 (Determinante) Dann gibt es ein ε > 0, so dass das Newton Verfahren für alle Startwerte x (0) mit x x (0) 2 ε quadratisch gegen x konvergiert Der Satz besagt zum einen, dass das Newton Verfahren lokal konvergent ist, das heißt, es konvergiert, wenn man nahe genug an der Lösung beginnt Quadratische Konvergenz bedeutet, dass es Konstanten c > 0 und k 0 > 0 gibt, so dass für alle k k 0 x x (k+1) 2 c x x (k) 2 122 Ein Kurz Schritt Algorithmus Wir betrachten das lineare Programm { min z = c T x : Ax = b, x 0 } (121) x R n 2 62

mit dem zugehörigen dualen Programm max { z = b T y : A T y + s = c, s 0 } (122) y R m Im dualen Programm haben wir hierbei die Schlupfvariablen s eingeführt, um Gleichungsnebenbedingungen zu erhalten Innere Punkte Verfahren erzeugen eine Folgen von Punkten {(x (k), y (k), s (k) )}, k = 0, 1,, mit x (k) 0, s (k) 0, deren Grenzwerte Optimallösungen von (121) und (122) liefern Die Verfahren nennt man zulässige Innere Punkte Verfahren, wenn alle Punkte (x (k), y (k), s (k) ) zulässige innere Punkte von (121) und (122) sind, das heißt es gilt Ax (k) = b, x (k) > 0, A T y (k) + s (k) = c, s > 0 Um zulässige Innere Punkte Verfahren verwenden zu können, müssen wir natürlich voraussetzen, dass die obigen Mengen nicht leer sind Neben diesen Verfahren gibt es auch unzulässige Innere Punkte Verfahren Aus der Nichtnegativität von x und s folgt 0 x T s = x T ( c A T y ) = c T x (Ax) T y = c T x b T y = z z Von Satz 94 (Starker Dualitätssatz) wissen wir, dass für die Optimallösungen von (121) und (122) gilt z = z Also folgt im Optimum x T s = 0 und wegen Nichtnegativität dieser beiden Vektoren sogar x i s i = 0 für alle i = 1,, n Zusammen mit den Nebenbedingungen von (121) und (122) sind die Optimallösungen von (121) und (122) Lösungen des nichtlinearen Systems Ψ 0 (x, y, s) := Ax b A T y + s c Xs = 0 0 0, x, s 0, (123) wobei X := diag(x) R n n ist Die Nichtlinearität ist in der letzten Gleichung Die Jacobi Matrix von Ψ 0 ist gegeben durch DΨ 0 (x, y, s) = A 0 0 0 A T I n R (2n+m) (2n+m) (124) S 0 X mit S := diag(s) R n n und I n der n dimensionalen Einheitsmatrix Lemma 123 Unter den Voraussetzungen rg(a) = m und x > 0, s > 0 ist die Jacobi Matrix (124) regulär Beweis: Indirekt Sei (u T, v T, w T ) T 0 ein Vektor mit A 0 0 0 A T I n u v = 0 0 S 0 X w 0 Aus der ersten Gleichung folgt Au = 0 Diese Beziehung wird in die umgestellte zweite Gleichung eingesetzt w = A T v = u T w = u T A T v = (Au) T v = 0 Aus der dritten Gleichung folgt u = S 1 Xw Die Invertierbarkeit von S folgt aus s > 0 Mit der eben bewiesenen Beziehung und der Symmetrie der Diagonalmatrizen ergibt sich 0 = u T w = w T XS 1 w 63

Da x, s > 0, folgt daraus w = 0 Aus der dritten Gleichung folgt damit u = 0 Damit vereinfacht sich die zweite Gleichung zu A T v = 0 Wegen des vollen Spaltenrangs von A T folgt daraus v = 0 Damit ist der Widerspruch zur Annahme konstruiert Auf Grund dieses Satzes liegt es nahe, die Lösung des Systems (123) mit dem Newton Verfahren zu versuchen Dabei gibt es allerdings einige Schwierigkeiten: - Die Regulariät der Jacobi Matrix ist nur für innere Punkte (x, s > 0) bewiesen Die gesuchte Lösung liegt aber nicht im Inneren, da aus der dritten Gleichung x i s i = 0, i = 1,, n, dass mindestens eine der Variablen x i oder s i im Optimum verschwindet - Es ist nicht klar, ob die in einem Newton Schritt berechnete neue Iterierte überhaupt ein zulässiger Punkt ist Falls nicht, ist die Regularität der Jacobi Matrix nicht gesichert Außerdem kann es passieren, dass das Newton Verfahren gar nicht konvergiert oder zu einer Lösung konvergiert, welche die Nichtnegativitätsbedingung nicht erfüllt Um doch noch ein Newton ähnliches Verfahren für (123) nutzen zu können, modifiziert man dieses System Seien e n = (1,, 1) T R n und sei µ > 0 ein Parameter Anstelle von (123) betrachtet man nun Ψ µ (x, y, s) := Ax b A T y + s c Xs µe = 0 0 0, x, s > 0 (125) Die Jacobi Matrix dieses Systems ist (124) Das schwerere Problem, eine Nullstelle von (123) zu finden, ersetzt man durch das einfachere Problem (125) Für festes µ > 0 kann die Lösung nur im Inneren des zulässigen Bereichs liegen, da x i s i = µ für alle i Da die Jacobi Matrix nach Lemma 123 dort regulär ist, gibt es eine Umgebung der Lösung (x(µ) T, y(µ) T, s(µ) T ) T, in der das Newton Verfahren ohne Berücksichtigung der Ungleichungen x, s > 0 quadratisch konvergiert In diesem Sinne hat man das Problem (123) mit den Nichtnegativitätsbedingungen durch ein System ohne Nebenbedingungen ersetzt Da das Optimum von (121) auf dem Rand angenommen wird ist zu erwarten, dass die Lösung (x(µ) T, y(µ) T, s(µ) T ) T umso weiter vom Rand entfernt liegt, je größer µ ist Man beginnt mit einem großen Wert µ 0, für den sich die Lösung leicht berechnen lässt Dann wird µ sukzessive verkleinert und jedesmal wird die zugehörige Lösung bis auf eine gewisse Genauigkeit mit dem Newton Verfahren approximiert Die Punktmenge { (x(µ) T, y(µ) T, s(µ) T ) T : µ > 0 } wird zentraler Pfad genannt Für seine Punkte existiert eine sogenannte Dualitätslücke: 0 < µn x(µ) T s(µ) = x(µ) T ( c A T y(µ) ) = c T x(µ) (Ax(µ)) T y(µ) = c T x(µ) b T y(µ) = z µ z µ (126) Lemma 124 Sei die dual zulässige Menge {y : A T y c} beschränkt und sei das Innere dieser Menge nichtleer Dann besitzt das Problem (125) für jedes µ > 0 eine eindeutige Lösung Beweis: Literatur, zum Beispiel [JS04, S 75ff] Sei (x T, y T, s T ) T die gegenwärtige Iterierte zur Lösung von (125) für festes µ > 0 Die Korrektur für die nächste Iterierte des Newton Verfahrens berechnet 64

sich aus der Lösung von A 0 0 0 A T I n S 0 X x y = s Ax b A T y + s c Xs µe (127) Nach der Lösung dieses Systems folgt, dass die neue Iterierte ((x + x) T, (y + y) T, (s + s) T ) T die ersten zwei Gleichungen von (125) erfüllt, da diese linear sind Übungsaufgabe Wir können annehmen, dass die gegenwärtige Iterierte bereits durch einen Newton Schritt berechnet wurde, sie damit ebenfalls diese Eigenschaft besitzt und sich (127) vereinfacht zu A 0 0 0 A T I n x 0 y = 0 =: 0 0 (128) S 0 X s Xs µe r Der Vektor r wird Residuum genannt Das Residuum der neuen Newton Iterierten ist, unter Verwendung der Beziehungen von (128), r = (X + X)(s + s) µe = Xs + X s } {{ + S x } + X s µe = r = Xs r + X s µe = X s (129) Um den Newton Schritt analysieren zu können, werden einige Bezeichungen eingeführt D := XS 1, q := DX 1 r, R := diag(r) Direktes Nachrechnen oder Einsetzen zeigt, dass man die Lösung von (128) wie folgt aufschreiben kann: Übungsaufgabe Die Matrix y = (AD 2 A T ) 1 ADq, x = D 2 A T y Dq, s = D 1 q D 2 x DA T (AD 2 A T ) 1 AD definiert die Orthogonalprojektion auf den Bildraum von DA T Diese Projektion wird Π R genannt Demzufolge ist die Projektion in den Nullraum von DA T gegeben durch Π N := I Π R, wobei I die identische Abbildung ist Nun kann man zeigen (Übungsaufgabe), dass x = DΠ N q, s = D 1 Π R q gelten Das sind die beiden Ausdrücke, die wir in (129) analysieren müssen Wir nehmen nun an, dass man für gegebene x > 0, s > 0 und y ein β [0, 1/2] finden kann, für welches r 2 βµ (1210) gilt Das heißt, der gegebene Punkt ist in einer gewissen Umgebung des zentralen Pfades Für β = 0 muss er direkt auf dem zentralen Pfad sein Wegen r = Xs µe gilt DX 1 = XS 1 X 2 = X 1 S 1 = (R + µi) 1 = ( R + µi ) 1 65

Bei dieser Rechnung und auch bei folgenden Rechnungen wird stark ausgenutzt, dass hier die Matrizen D, R, S und X Diagonalmatrizen sind Für Nichtdiagonalmatrizen funktionieren die Rechnungen nicht mehr Es folgt DX 1 2 2 = (R + µi) 1 1 2 = max 1 i n r i + µ 1 µ(1 β) (1211) Hierbei wurde die Definition der Spektralnorm einer Matrix ausgenutzt, sowie dass wir es mit einer Diagonalmatrix zu tun haben Die letzte Ungleichung folgt aus der Dreiecksungleichung und (1210) r i + µ µ r i µ βµ = µ(1 β) Aus der Verträglichkeit der Euklidischen Vektornorm und der Spektralnorm von Matrizen sowie (1210) folgt damit β := q 2 = DX 1 r 2 DX 1 µ 2 r 2 β (1 β) Sei θ der Winkel zwischen q und Π N q Dann folgt mit der Orthogonalität der Projektionen cos(θ) = (q, Π N q) q 2 Π N q 2 = (Π Rq + Π N q, Π N q) q 2 Π N q 2 = Π Nq 2 2 q 2 Π N q 2 = Π Nq 2 q 2 Es folgen D 1 x 2 = Π N q 2 = cos(θ) q 2 = β cos(θ), (1212) D s 2 = Π R q 2 = (I Π N )q 2 = sin(θ) q 2 = β sin(θ) Diese Abschätzungen kann man nun in (129) einsetzen Mit der Cauchy Schwarz Ungleichung und β 1/2 erhält man r 2 = X s 2 D 1 X 2 D s 2 β 2 cos(θ) sin(θ) = β 2 2 sin(2θ) β 2 2 β2 µ 2(1 β) β2 µ (1213) Wir haben damit erhalten, dass unter der Voraussetzung (1210) der relative Fehler Xs µe 2 /µ = r 2 /µ in jedem Schritt des Newton Verfahrens quadriert wird Aus (1212) folgt insbesondere D 1 x 2 β und daraus, sowie mit (1211), der Definition von β und β 1/2, X 1 x 2 = X 1 DD 1 x 2 X 1 D D 1 2 x β 2 µ(1 β) = β 1 β 1 Somit ist ( x i )/x i 1 woraus x i x i x i x i = 0, i = 1,, n folgt Eine analoge Abschätzung kann man für s durchführen Die Nichtnegativität der neuen Iterierten ist gesichert Es gilt sogar die Positivität Übungsaufgabe ab hier Mit den Abschätzungen (1213) und (129) folgt r 2 < µ = X s 2 < µ = x i s i < µ 66

für alle i = 1,, n Aus (129) erhält man ebenso r 2 = (X + X)(s + s) µe 2 < µ, was man abgekürzt und quadriert wie folgt schreiben kann n (a i µ) 2 < µ 2, i=1 mit a i = (X + X)(s + s) Wir wissen bereits, dass beide Faktoren von a i nichtnegativ sind Sei für einen Index, zum Beispiel i = j, einer der Faktoren Null Dann folgt n µ 2 + (a i µ) 2 < µ i=1,i j Diese Aussage kann nicht gelten, da alle Summanden der Summe nichtnegativ sind Also sind alle Faktoren der a i, i = 1,, n, positiv Das heißt, es gelten x+ x > 0, s + s > 0 und der Newton Schritt liefert einen inneren Punkt Übungsaufgabe bis hier Algorithmus 125 Kurz Schritt Algorithmus Es seien x (0) > 0, y (0), s (0) > 0 und µ (0) so gegeben, dass Ax (0) = b, A T y (0) + s (0) = c, X (0) s (0) µ (0) e = r (0), r (0) 2 µ (0) 1 2 (1214) gelten Es sei des weiteren eine gewünschte Genauigkeit ε > 0 vorgegeben Setze k = 0 1 Führe einen Newton Schritt aus, das heißt löse (128) Setze x (k+1) = x (k) + x, y (k+1) = y (k) + y und s (k+1) = s (k) + s 2 Verkleinere den Parameter mittels der Vorschrift ( µ (k+1) = µ (k) 1 1 ) 6 n 3 Setze k := k + 1 4 Falls µ (k) ε/n dann beende das Verfahren, ansonsten gehen zu Schritt 1 Die Bedingung (1214) bedeutet, dass die Anfangsiterierte des Verfahrens sich relativ nahe am zentralen Pfad befinden muss Die Bezeichnung,,Kurz Schritt Algorithmus hat sich eingebürgert, weil der Parameter µ in jedem Schritt nur etwa um den Faktor 1 1/ n verkleinert wird, der für große n nahe bei Eins liegt Wir wollen nun die oben erarbeitete abstrakte Theorie auf den Kurz Schritt Algorithmus anwenden Lemma 126 Der Kurz Schritt Algorithmus 125 erfüllt die Bedingung (1210) mit β = 1/2 Beweis: Der Beweis erfolgt induktiv Wegen der Forderung (1214) an den Startpunkt, ist der Induktionsanfang gegeben Gelte nun r (k) 2 µ (k) /2 für ein 67

k 0 Aus (128), (129) (erste Gleichung) und der Definition des Parameters im Algorithmus 125 folgt r (k+1) = X (k+1) s (k+1) µ (k+1) e = r (k) + µ (k) e µ (k+1) e = r (k) + µ(k) 6 n e Aus (1213) folgt r (k) 2 µ (k) /4 Mit der Dreiecksungleichung, e 2 = n und dem größtmöglichen Verhältnis von µ (k) und µ (k+1) (für n = 1) erhält man r (k+1) 2 ( r (k) 2 + µ(k) 1 6 n e 2 µ(k) 4 + 1 ) = 5 6 12 µ(k) 5 12 = 1 2 µ(k+1) 6 5 µ(k+1) Das ist die Aussage des Lemmas Die Induktionsvoraussetzung ist bei der Nutzung von (1213) implizit verwendet wurden In einer Übungsaufgabe wurde gezeigt, dass die Iterierten bei der Ausführung des Newton Schritts strikt zulässig bleiben (x, s > 0) Damit ist der Kurz Schritt Algorithmus 125 wohldefiniert Nun sind wir in der Lage, die polynomiale Komplexität des Kurz Schritt-Algorithmus zu beweisen Satz 127 Der Kurz Schritt Algorithmus 125 hält nach spätestens 6 ( ) nµ (0) n ln ε (1215) Iterationen mit Näherungslösungen x > 0, y, s > 0 von (121) und (122), deren Dualitätslücke c T x b T y 2ε erfüllt Beweis: Man muss den Abbruchindex und den Abbruchfehler untersuchen Die Abbruchbedingung in Schritt 4 ist erfüllt, wenn Nach Konstruktion gilt Einsetzen liefert oder µ (k) = ( k ln 1 1 ) 6 ln nµ(0) n ε ln µ (k) ln ε n ( 1 1 ) k 6 µ (0) n ( k ln 1 1 ) ( 6 + ln µ (0)) ln ε n n ( ) 1 k ln 1 + 6 ln nµ(0) n 1 ε Wegen ln x x 1 folgt daraus ( ) 1 k 1 6 n 1 1 ln nµ(0) ε Daraus folgt die erste Aussage des Satzes k ( 6 n 1 ) ln nµ(0) ε 68

Die Abschätzung der Dualitätslücke erfolgt unter Nutzung von (126), der dritten Gleichung von (128), der Cauchy Schwarz Ungleichung, (1210) und der Abbruchbedingung des Verfahrens c T x b T y = x T s = e T (Xs) = e T (µ (k) e + r) nµ (k) + e 2 r 2 = nµ (k) + nβµ (k) 2nµ (k) 2ε Man beachte, dass weder das Abbruchkriterium des Kurz Schritt Verfahrens noch die Dualitätslücke etwas darüber aussagen, wie groß der Abstand zwischen der mit dem Kurz Schritt Verfahren berechneten numerischen Lösung zur Lösung des linearen Programms (121) ist Bemerkung 128 Zur Anzahl der Iterationen des Kurz Schritt Verfahrens In vielen Anwendungen lässt sich ein Startpunkt zum Algorithmus 125 mit nµ (0) 10 10 angeben Die gewünschte Genauigkeit liegt im allgemeinen ( ) bei ε = 10 8 bis ε = 10 15 Für den letzten Wert ist der Faktor 6 ln nµ (0) in (1215) ungefähr 345 Die Anzahl der Iterationen hängt im wesentlichen von n ab Bemerkung 129 Innere Punkt Verfahren in der Praxis In der Praxis nutzt man vor allem unzulässige Innere Punkt Verfahren, das heißt, mit Iterierten, die außerhalb des zulässigen Bereichs liegen können Die analytische Untersuchung dieser Verfahren ist jedoch komplizierter ε 69

Teil II Nichtlineare Optimierung 70

Kapitel 1 Einleitung In diesem Abschnitt wird die Optimierung von Funktionen min {f(x)} x Ω betrachtet, wobei Ω R n eine abgeschlossene Menge und f : Ω R eine gegebene Funktion ist Die Funktion f heißt Zielfunktion und Ω sei durch endlich viele Nebenbedingungen beschrieben Bei den betrachteten Problemen können sowohl die Zielfunktion als auch die Nebenbedingungen nichtlinear sein Beispiel 11 Ausgleichsrechnung Ein konkretes Beispiel für einen Aufgabe der Nichtlinearen Optimierung ist die Ausgleichsrechnung Zur mathematischen Formulierung von Gesetzmäßigkeiten, die ein technisches oder physikalisches Phänomen beschreiben, wird häufig eine Hypothese über den möglichen funktionalen Zusammenhang bekannter und beobachteter Variablen formuliert Diese enthält im allgemeinen noch freie Parameter und hat etwa die Gestalt z = g(x, λ), x R n, λ R p In diesem Modell ist λ ein unbekannter Parametervektor mit p Komponenten und z ist eine Variable, deren Abhängigkeit modelliert werden soll Nach Auswertung von m Experimenten kennt man m Paare von Variablenwerten (z i, x i ), die unter Berücksichtigung möglicher Beobachtungsfehler ε i die funktionale Abhängigkeit annähernd erfüllen sollen Das heißt, bei passenden Parametern muss gelten z i = g(x i, λ) + ε i, i = 1,, m Um möglichst kleine Abweichungen ε i zu erhalten, versucht man, die unbekannten Parameter λ optimal anzupassen, indem man entsprechende Optimierungsaufgaben löst, zum Beispiel min λ R p m (z i g(x i, λ)) 2 i=1 (Methode der kleinsten Quadrate) oder min λ R p m ω i z i g(x i, λ) r, i=1 wobei r 1 eine ganze Zahl ist und ω 0 71

Beispiel 12 Standortplanung Eine Firma möchte n neue Lager der Kapazität a i, i = 1,, n, errichten Gegeben sind die Standorte der Abnehmer (α j, β j ) sowie der Bedarf b j, j = 1,, m In einigen Gebieten darf zudem nicht gebaut werden (ε k Umgebungen von (γ k, δ k ), k = 1,, p) Gesucht sind die Standorte der Lager (x i, y i ), die den Lieferplan z optimieren Mit den Bezeichnungen - z ij Transportmenge vom Lager i zum Abnehmer j, - d ij Entfernung Lager i und Abnehmer j, - ik Entfernung Lager i zum Mittelpunkt (γ k, δ k ) der Verbotszone k, lautet die Optimierungsaufgabe wie folgt: n i=1 j=1 m d ij z ij min! m z ij a i, i = 1,, n j=1 n z ij = b j, j = 1,, m i=1 ik ε k, i = 1,, n, k = 1,, p, z ij 0, i = 1,, n, j = 1,, m Diese Aufgabe kann für verschiedene Entfernungsmaße gestellt werden, etwa für d ij = x i α j + y i β j oder die Euklidische Entfernung d ij = (x i α j ) 2 + (y i β j ) 2 Wird sowohl für d ij als auch für ik die Euklidische Entfernung gewählt, so erhält man eine Optimierungsaufgabe mit quadratischer Zielfunktion und quadratischen Nebenbedingungen z = (x 1 6) 2 + 2 (x 2 3) 2 min! x 1 + x 2 2 x 1 x 2 2 x 1 + x 2 6 x 1 3x 2 2 x 0 Beispiel 13 Quadratische Zielfunktion über konvexem Polyeder Wir betrachten ein nichtlineares Programm mit quadratischer Zielfunktion und linearen Nebenbedingungen: Durch die Zielfunktion werden konzentrische Ellipsen mit Mittelpunkt (6, 3) T beschrieben Die optimale Lösung ist ein Punkt auf dem Rand Ω von Ω, aber kein Eckpunkt: x opt = (4, 2) T, z opt = 6 72

6 P 3 P 4 2 (4, 2) (6, 3) P 2 2 P 1 6 Betrachtet man eine andere Zielfunktion z = (x 1 2) 2 + 2 (x 2 2) 2 min!, dann ist das Optimum offensichtlich x opt = (2, 2) T, z opt = 0 Damit liegt das Optimum im Inneren von Ω Eine andere quadratische Zielfunktion ist z = 2 (x 1 2) 2 + (x 2 2) 2 max! Bei dieser Zielfunktion gibt es eine Ellipse, die gleichzeitig durch P 1 und P 3 geht Beide Eckpunkte von Ω sind lokales Maximum mit z = 4 Ein weiteres lokales Maximum erhält man in P 4 mit z = 8 Das globale Maximum wird jedoch in P 2 mit z = 19 angenommen Ein simplexartiges Vorgehen, wobei man von Eckpunkt zu Eckpunkt geht und in jedem Schritt den Zielfunktionswert verbessert (vergrößert), dh P 1 P 4 oder P 3 P 4 führt hier nicht zum Ziel Beispiel 14 Unzusammenhängender zulässiger Bereich Der zulässige Bereich Ω sei definiert durch x 2 1 + x2 2 4 x 1 x 2 1 x 0 Der zulässige Bereich besteht aus zwei getrennt liegenden Teilen Beide sind nicht konvex Selbst bei einer linearen Zielfunktion können lokale Minima auftreten, die keine globalen sind 2 1 1 x 1 2 In der Vorlesung werden ua folgende Problemklassen innerhalb der nichtlinearen Programme nicht betrachtet: - mehrere Zielfunktionen, - unendlich viele Nebenbedingungen (semi infinite Programme), - stochastische Daten (stochastische Optimierung) 73

Kapitel 2 Nichtlineare Optimierung ohne Nebenbedingungen In diesem Abschnitt sollen im wesentlichen Verfahren zur Bestimmung des Minimums von nichtglatten Funktionen in einer Variablen im Detail vorgestellt werden, wobei der zulässige Bereich nicht durch Nebenbedingungen eingeschränkt ist Die Minimierung glatter Funktionen ohne Nebenbedingungen kann auf die Bestimmung von Nullstellen zurückgeführt werden Verfahren zur Lösung dieser Aufgabe sind bereits aus der Grundvorlesung Praktische Mathematik bekannt 21 Minimierung nichtglatter Funktionen in einer Variablen Die Lösung nichtlinearer Optimierungsaufgaben in einer Dimension tritt als Teilproblem in vielen Verfahren zur Lösung nichtlinearer Optimierungsprobleme in höheren Dimensionen auf Seien I R ein gegebenes abgeschlossenes Intervall und f : I R eine gegebene Funktion Dann sucht man ein ˆx I, welches f (ˆx) = min f(x) (21) x I erfüllt Um ein solches Minimum mit Hilfe eines Verfahrens effizient bestimmen zu können, müssen einige einschränkende Bedingungen an f gestellt werden Je nach Eigenschaften der Funktion, ist dann ein entsprechendes Verfahren zu wählen Definition 21 Unimodale Funktion Eine Funktion f : I R heißt unimodal (einwellig), falls für ein ˆx I = [a, b] gilt, dass f streng monoton fallend auf [a, ˆx] und streng monoton steigend auf [ˆx, b] ist a ˆx b 74

Unimodale Funktionen erlauben nach Auswertung der Funktion an zwei Stellen x < y mit a < x < y < b die Reduktion des Intervalls, in der man das Minimum zu suchen hat: - 1 Fall: f(a) f(x), dann ist das Minimum in [a, x] - 2 Fall: f(a) > f(x) > f(y) Dann kann das Minimum nicht in [a, x] sein - 3 Fall: f(a) > f(x) und f(x) < f(y) und f(y) < f(b) Dann kann das Minimum nicht in [y, b] sein - 4 Fall: f(y) f(b) Dann ist das Minimum in [y, b] Alle anderen Fälle widersprechen der Definition einer unimodalen Funktion Der goldene Schnitt Wir wollen jetzt durch die rekursive Anwendung dieser Beobachtung einen Algorithmus zur Approximation des Punktes konstruieren, an dem das Minimum angenommen wird Dafür stellen wir zunächst einige Forderungen an den Algorithmus: 1) Im ersten Schritt sollen zwei Funktionswertauswertungen, in allen weiteren Schritten nur eine weitere Funktionswertauswertung im Restintervall verwendet werden 2) Die Punkte x und y sind stets symmetrisch im Restintervall zu wählen 3) Der Reduktionsfaktor σ für die Intervalllänge sei konstant, σ (05, 1) Das heißt, der Quotient der Länge des neuen Intervalls und der Länge des vorherigen Intervalls ist σ = const Diese Forderungen besitzen gewisse Ähnlichkeiten zu den Eigenschaften des Bisektions Verfahrens zur Berechnung von Nullstellen Auch da wird die Nullstelle in einem Intervall eingeschachtelt, man hat am Anfang zwei Funktionswerte und später pro Schritt einen zu berechnen und der Reduktionsfaktor ist konstant σ = 05 Durch die symmetrische Wahl von x, y im Restintervall wird der Reduktionsfaktor unabhängig von der konkreten Funktion f Verlangt man einen konstanten Reduktionsfaktor in allen Iterationen, so ist dieser eindeutig bestimmt Um diesen von f unabhängigen Reduktionsfaktor zu bestimmen, genügt es eine streng monoton wachsende Funktion f : [0, 1] R zu betrachten Damit ist ˆx = 0 OBdA sei 0 < x < y < 1 Wegen der verlangten Symmetrie folgt y = σ, x = 1 σ Im ersten Schritt wird das Intervall [0, 1] auf das Restintervall [0, y] reduziert In diesem Restintervall wird dann ein Punkt z symmetrisch zu x gewählt Damit ist gesichert, dass im nächsten Schritt der Punkt x einer der neuen Stützstellen ist, man den Funktionswert f(x) noch einmal verwenden kann und nur den Funktionswert f(z) neu berechnen muss Je nach Wahl von y gilt z < x oder z x Diese Fälle entsprechen der Wahl von σ aus unterschiedlichen Intervallen 1 Fall: σ < 2/3 Dann gilt x = 1 σ > 1/3 und damit z = y x = σ (1 σ) < 1/3 < x Bei der ersten Gleichung wurde die Symmetrie im Restintervall verwendet Konstante Reduktion bedeutet nun x y = y 1 = 0 = y 2 x = σ 2 + σ 1 Die Lösung dieser quadratischen Gleichung ist σ = 1 ( ) 5 1 0618 < 2 2 3 0 z x y 1 75

2 Fall: σ 2/3 Wird analog zum ersten Fall behandelt Man erhält keine Lösung Übungsaufgabe Der gefundene Reduktionsfaktor ist also unter den obigen Annahmen der einzig mögliche und er legt den Algorithmus fest Algorithmus 22 Goldener Schnitt 1 Initialisierung i := 0; a 0 := a; b 0 := b; x i := a + (1 σ)(b i a i ); y i := a + σ(b i a i ); fx := f(x i ); fy := f(y i ); 2 Iteration Falls fx < fy, dann a i+1 := a i ; b i+1 := y i ; x i+1 := a i+1 + (1 σ)(b i+1 a i+1 ); y i+1 := x i ; fy := fx; fx := f(x i+1 ); sonst a i+1 := x i ; b i+1 := b i ; x i+1 := y i ; y i+1 := b i+1 (1 σ)(b i+1 a i+1 ); fx := fy; fy := f(y i+1 ); i := i + 1; 3 Abbruch Falls (b i a i )/2 > ε, dann gehe zu 2 sonst ~x := (a i + b i )/2; stop Man nimmt x als Approximation an ˆx In der Praxis führt man erst den Vergleich für den Abbruch durch und berechnet dann den neuen Funktionswert Das spart im letzten Schritt eine Funktionswertberechnung Diese Einsparung kann sich akkumulieren, falls man das Verfahren im Rahmen eines komplexen Problems oft aufruft Algorithmus 22 bricht ab, sobald der Funktionswert, für den das Minimum angenommen wird, in einem Intervall der Länge 2ε eingeschachtelt ist Da x der Mittelpunkt des Intervalls ist, gilt für den Fehlern ˆx x ε Da nach (n + 1) Funktionswertauswertungen die Länge des Restintervalls σ n (b a) ist, kann man n in Abhängigkeit von ε a priori abschätzen Die Fibonacci Suche Wir wollen jetzt auf die Konstanz der Reduktion der Intervalllänge verzichten und untersuchen, ob es Modifikationen von Algorithmus 22 gibt, die bei gleicher Anzahl von Funktionswertauswertungen ein kleineres Restintervall liefern Sei L n die maximale Länge eines Intervalls, welches man mittels n Funktionswertauswertungen in L n auf L 1 = 1 reduzieren kann Seien x < y die beiden Stützstellen in L n Durch jede dieser Stützstellen wird L n in zwei Teilintervalle zerlegt Betrachtet man die Stützstelle x, so enthält das linke Teilintervall höchstens (n 2) Stützstellen des Gesamtprozesses (alle außer x und y) und das rechte Teilintervall höchstens (n 1) der Stützstellen (alle außer x) Entsprechend sind die Längen dieser Teilintervalle höchstens L n 2 beziehungsweise L n 1 Damit gilt L n L n 1 + L n 2, n = 2, 3, (22) 76

Da mindestens zwei Stützstellen für eine Intervallreduktion nötig sind, gilt L 0 = L 1 = 1 Mit der obigen Abschätzung hat man das größtmögliche Intervall L n, falls eine Lösung der Ungleichung (22) diese sogar als Gleichung erfüllt Die Lösung der Differenzengleichung F 0 = F 1 = 1, F n = F n 1 + F n 2 ist bekannt Es sind die sogenannten Fibonacci Zahlen Die Darstellung dieser Zahlen in geschlossener Form ist ( F i = 1 5 1 + ) i+1 ( 5 2 1 ) i+1 5 2 Für den Algorithmus der Fibonacci Suche setzen wir noch F 2 := 1, F 1 := 0 Bei der Fibonacci Suche wird die geforderte Länge des Intervalls, in dem ˆx eingeschachtelt werden soll, vorgegeben Die Iterationspunkte bei einem beliebigen Startintervall [a, b] ergeben sich durch lineare Transformation mit dem Faktor h = b a F n (23) Die Länge des Restintervalls in der Iteration i = 0, 1,, n 1 ist F n i h Im vorletzten Restintervall [a n 2, b n 2 ] der Länge 2h fallen die Stützpunkte zusammen: x n 2 = y n 2 = a n 2 + h Da für den Punkt ˆx, in dem das Minimum angenommen wird, gilt ˆx [a n 2, b n 2 ], folgt somit ˆx x n 2 h Damit ist durch (23) bei vorgegebenem h auch die Anzahl der Iterationen n gegeben Algorithmus 23 Fibonacci Suche 1 Initialisierung gebe h vor, bestimme n, berechne die Fibonacci-Zahlen F 0,, F n i := 0; a 0 := a; b 0 := b; h := (b a)/f n ; x 0 := a 0 + F n 2 h; y 0 := a 0 + F n 1 h; fx := f(x 0 ); fy := f(y 0 ); 2 Iteration Falls fx < fy, dann a i+1 := a i ; b i+1 := y i ; x i+1 := a i+1 + F n i 3 h; y i+1 := x i ; fy := fx; fx := f(x i+1 ); sonst a i+1 := x i ; b i+1 := b i ; x i+1 := y i ; y i+1 := b i+1 F n i 3 h; fx := fy; fy := f(y i+1 ); i := i + 1; 3 Abbruch Falls i < n 2, dann gehe zu 2 sonst ~x := x i ; stop Man nimmt x als Approximation an ˆx Analog wie beim Goldenen Schnitt kann man in der letzten Iteration eine Funktionswertberechnung sparen 77

Beispiel 24 Fibonacci Suche Wir betrachten die Funktion f(x) = sin(x 2) auf [a, b] = [0, 2] Auf diesem Intervall ist die Funktion f unimodal und sie nimmt ihr Minimum in ˆx = 2 π/2 04292037 an Wir wollen die Fibonacci Suche mit n = 6 durchführen Die Fibonacci Zahlen F 0,, F 6 sind 1, 1, 2, 3, 5, 8, 13 Daraus folgt, dass man ein Restintervall der Länge h = 2 13 01538462 findet Die im Verfahren auftretenden Stützstellen und Intervallgrenzen sind alle von der Form a+kh mit k {0, 1, 2, 3, 5, 8, 13} Für eine Stützstelle t [a, b] nennt man die entsprechende ganze Zahl k(t) := (t a)/h den Fibonacci Index von t Beim Start gilt k(a 0 ) = 0, k(x 0 ) = F n 2 = F 4 = 5, k(y 0 ) = F n 1, k(b 0 ) = F n Während der Iteration werden die Funktionswerte f(x i ) und f(y i ) verglichen Die Variable mit dem kleinerem Funktionswert bleibt Stützstelle, die mit dem größeren Funktionswert wird neue Intervallgrenze Der Fibonacci Index der neuen Stützstelle ergibt sich wegen der symmetrischen Lage der Stützstellen im Restintervall aus k(x i+1 ) k(a i+1 ) = k(b i+1 ) k(y i+1 ) Ordnet man alle Werte einer Iteration zeilenweise in einer Tabelle an, so verschieben sich diese Werte beim Übergang zur nächsten Iteration nach rechts beziehungsweise nach links ab der Position der neuen Stützstelle i k(a i ) x i k(x i ) y i k(y i ) k(b i ) f(x i ) f(y i ) 0 0 07692308 5 12307692 8 13-09427456 - 06955828 1 0 04615385 3 07692308 5 8-09994773 - 09427456 2 0 03076923 2 04615385 3 5-09926266 - 09994773 3 2 04615385 3 06153846 4 5-09994773 - 09827183 4 2 04615385 3 04615385 3 4-09994773 - 09994773 Mit x 4 = 0 + 3h bricht das Verfahren ab und für das Minimum von f gilt ˆx [04615385 h, 04615385 + h] Vergleich von Goldenem Schnitt und Fibonacci Suche Aus folgt induktiv (mit F 2 = 1, F 1 = 0) 1 σ = σ 2 (24) σ n = ( 1) n (F n 2 F n 1 σ) Übungsaufgabe Aus F 0 = F 1 = 1 und F 1 = 1 < 1/σ < 2 = F 2 erhält man F 2 < σ2 + σ σ 2 = 1 + 1 σ < F 3 Mit Hilfe von (24) folgt F 2 < 1/σ 2 < F 3 Induktiv erhält man für n > 1 die Abschätzung 1 > σ n > 1 F n und lim = σ F n F n+1 n F n+1 Unter der Annahme, dass der rechte Grenzwert existiert, kann man diesen mit Hilfe von (24) berechnen Übungsaufgabe Asymptotisch erhält man die gleiche Intervallreduktion und der Goldene Schnitt ist bei gleichem Aufwand demnach von 78

kaum geringerer Genauigkeit Auf der anderen Seite muss bei Fibonacci Suche die gewünschte Genauigkeit a priori festgelegt werden, um n zu bestimmen Beide Verfahren reduzieren die Intervalllänge linear, dass heißt es gilt b i+1 a i+1 b i a i λ mit λ (0, 1) Dabei ist der Reduktionsfaktor λ beim Goldenen Schnitt durch σ gegeben und bei der Fibonacci Suche durch eine Schranke für F n 1 /F n Soll das n te Intervall kleiner als ein gegebenes ε sein, so erhält man aus ε λ n (b a) = λ n (b 0 a 0 ) die Abschätzung ( ) ε n log / log(λ) b a 22 Differenzierbare Funktionen Sei f : R n R mit f C 1 (R n ) gegeben Die notwendige Bedingung für ein lokales Minimum im Punkt ˆx R n ist f(ˆx) = 0 Zur Berechnung von möglichen Werten für ˆx hat man damit ein nichtlineares Gleichungssystem zu lösen Verfahren zur Lösung nichtlinearer Gleichungssysteme werden in der Vorlesung Praktische Mathematik behandelt und deshalb soll hier nur die Namen einiger Verfahren genannt werden: - Bisektion falls n = 1, - Gradientenverfahren (Verfahren des steilsten Abstiegs), - Fixpunktiteration, wobei die nachfolgenden Verfahren Spezialfälle sind, - Newton Verfahren, - vereinfachtes und Quasi Newton Verfahren 79

Kapitel 3 Konvexität 31 Konvexe Mengen Der Begriff der konvexen Menge ist bereits aus Definition 14, Teil I, bekannt Definition 31 Konvexer Kegel Eine Menge Ω R n heißt konvexer Kegel, wenn mit x 1, x 2 Ω auch λ 1 x 1 + λ 2 x 2 Ω für alle λ 1, λ 2 0 Beispiel 32 Für λ 1 = λ 2 = 0 folgt, dass insbesondere 0 in einem konvexen Kegel enthalten sein muss Nicht jede konvexe Menge ist ein konvexer Kegel, zum Beispiel sind Kreise keine konvexen Kegel Der Winkelraum mit Scheitel 0 ist ein konvexer Kegel Der Winkelraum mit Scheitel 0 ist kein konvexer Kegel Sei a R n, a 0, α R und definiere die Hyperebene H(a, α) = { x R n : a T x = α } Diese Hyperebene ist eine konvexe Menge Übungsaufgabe Ist α 0, dann ist 0 H(a, α) und H(a, α) ist kein konvexer Kegel Im Falle α = 0 ist H(a, α) ein konvexer Kegel H(a, α) = a Übungsaufgabe Analog gilt für Halbräume H + (a, α) = { x R n : a T x α }, H (a, α) = { x R n : a T x α }, dass diese für α = 0 konvexe Kegel sind und sonst nicht Eine Menge, die durch Hyperebenen berandet ist, die allesamt den Punkt 0 enthalten, wird auch polyhedrischer Kegel genannt Polyhedrische Kegel sind konvexe Kegel, insbesondere R n + = {x R n : x 0} Definition 33 Trennung von Mengen Die Hyperebene H(a, α) trennt die nichtleeren Mengen Ω 1, Ω 2 R n, wenn gilt a T x α x Ω 1 und a T x α x Ω 2 Falls in beiden Relationen die echten Ungleichungen stehen, dann wird die Trennung streng genannt Lemma 34 Sei Ω R n nichtleer, abgeschlossen und konvex und gelte 0 Ω Dann existiert eine Hyperebene H(a, α) mit α > 0, so dass a T x > α für alle x Ω 80

Beweis: Wir werden eine konkrete Hyperebene angeben Seien x 1 Ω und B 1 = {x R n : x 2 x 1 2 } eine Kugel mit Radius x 1 2 und Mittelpunkt 0 Dann ist Ω B 1 und der Durchschnitt ist kompakt (abgeschlossen und beschränkt) Damit nimmt die stetige Funktion d(x) = x 2 ihr Minimum über Ω B 1 in einem Punkt x 0 an (Satz von Bolzano Weierstrass), dass heißt es gilt x 2 x 0 2 x Ω B 1 (31) Wegen 0 Ω ist x 0 2 > 0 Da die Elemente von Ω, die nicht in Ω B 1 liegen, eine größere Norm als x 1 2 x 0 2 besitzen, gilt (31) für alle x Ω Wegen der Konvexität von Ω ist x 0 +λ (x x 0 ) Ω für alle x Ω und λ (0, 1] und es folgt (1 λ)x 0 + λx 2 = x 0 + λ (x x 0 ) 2 x 0 2 > 0 Quadratur dieser Ungleichung und Ausschreiben der Skalarprodukte ergibt 2λ (x x 0 ) T x 0 + λ 2 (x x 0 ) T (x x 0 ) 0 Division durch λ und dann λ 0 ergibt x T x 0 x T 0 x 0 = x 0 2 2 > x 0 2 2 2 > 0 x Ω Die Hyperebene mit a = x 0 und α = x 0 2 2 /2 erfüllt nun die Bedingungen des Lemmas Eine Folgerung ist der nachfolgende Satz Satz 35 Erster Trennungssatz Seien Ω 1 abgeschlossen und konvex und Ω 2 kompakt und konvex, Ω 1, Ω 2 R n, mit Ω 1 Ω 2 = Dann existiert eine Hyperebene H(a, α), die Ω 1 und Ω 2 streng trennt Beweis: Seien Ω 1 = {x : x = y, y Ω 1 }, Ω 2 Ω 1 = {x : x 1 Ω 1, x 2 Ω 2 mit x = x 2 x 1 } Diese Mengen sind konvex und abgeschlossen Da Ω 1 und Ω 2 einen leeren Durchschnitt haben, gilt 0 Ω 2 Ω 1 Nach Lemma 34 gibt es eine Hyperebene H(a, α) mit α > 0 und a T (x 2 x 1 ) > α > 0 für alle x 1 Ω 1, x 2 Ω 2 Durch Umstellen dieser Beziehung erhält man inf a T x 2 sup a T x 1 + α > sup a T x 1 x 2 Ω 2 x 1 Ω 1 x 1 Ω 1 Jede Hyperebene H(a, β) mit ( ) β sup a T x 1, inf a T x 2 x 1 Ω 1 x 2 Ω 2 trennt damit Ω 1 und Ω 2 streng Übungsaufgabe: Notwendigkeit der Kompaktheitsvoraussetzung für strenge Trennung an Beispiel zeigen Satz 36 Jede abgeschlossene konvexe Menge Ω R n ist der Durchschnitt aller abgeschlossenen Halbräume, die Ω enthalten 81

Beweis: Beweisskizze Bezeichnen wir den Durchschnitt aller abgeschlossenen Halbräume, die Ω enthalten, mit D Dann ist Ω D klar (Durchschnitt beliebig vieler konvexer Mengen ist konvex) Zu zeigen bleibt D Ω Das geschieht indirekt, wobei der Widerspruch mit einer trennenden Hyperebene hergeleitet wird (sogenannter zweiter Trennungssatz, Details siehe [ERSD77, Abschnitt 214]) Der Eckpunkt oder Extrempunkt einer konvexen Menge wurde bereits in Definition 110, Teil I, definiert als ein Punkt, für den es keine echte konvexe Linearkombination gibt Dafür, dass x 0 Ω ein Extrempunkt ist, reicht es bereits aus, dass man keine x 1, x 2 Ω findet, so dass x 0 = 1 2 x 1 + 1 2 x 2 x 1, x 2 x 0, Übungsaufgabe Satz 37 Jede nichtleere, kompakte, konvexe Menge Ω R n einen Extrempunkt besitzt mindestens Beweis: x Ω Sei Da Ω kompakt ist, gibt es ein x 0 R n mit x 0 2 x 2 für alle x 0 = 1 2 x 1 + 1 2 x 2 = x 1 + 1 2 (x 2 x 1 ) = x 2 + 1 2 (x 1 x 2 ) für x 1, x 2 Ω, x 1, x 2 x 0 Damit folgt x 1 2 2 x 0 2 2 = x 1 2 2 + 1 4 x 2 x 1 2 2 + (x 2 x 1 ) T x 1 } {{ } 0, da x 0 2 x 1 2 Das heißt x 2 x 1 2 2 4 (x 2 x 1 ) T x 1 und analog x 2 x 1 2 2 4 (x 1 x 2 ) T x 2 = 4 (x 2 x 1 ) T x 2 Addition der Ungleichungen ergibt 2 x 2 x 1 2 2 4 (x 2 x 1 ) T (x 2 x 1 ) = 4 x 2 x 1 2 2 und damit x 2 = x 1 = x 0 Somit ist x 0 ein Extrempunkt 32 Konvexe und konkave Funktionen Definition 38 Konvexe, konkave Funktion Die Funktion f : Ω R n R heißt konvex, wenn für beliebige x 1, x 2 Ω gilt Sie heißt konkav, wenn f ((1 λ)x 1 + λx 2 ) (1 λ)f(x 1 ) + λf(x 2 ) λ [0, 1] f ((1 λ)x 1 + λx 2 ) (1 λ)f(x 1 ) + λf(x 2 ) λ [0, 1] Gilt die echte Ungleichung spricht man von strenger Konvexität (Konkavität) Beispiel 39 Die lineare Funktion f(x) = c T x mit c R n ist konvex und konkav in R n, jedoch nicht streng 82

Beispiel 310 Jede über R n positiv semidefinite Bilinearform f(x) = x T Ax mit A = A T R n n ist konvex Sei nämlich dann gilt x = (1 λ)x 1 + λx 2 = x 1 + λ(x 2 x 1 ), x 1 x 2 R n, λ [0, 1], x T Ax = x T 1 Ax 1 + 2λ(x 2 x 1 ) T Ax 1 + }{{} λ 2 (x 2 x 1 ) T A(x 2 x 1 ) } {{ } λ 0 x T 1 Ax 1 + 2λ(x 2 x 1 ) T Ax 1 + λ(x 2 x 1 ) T A(x 2 x 1 ) = x T 1 Ax 1 + λ(x 2 x 1 ) T A (x 1 + x 2 ) = (1 λ)x T 1 Ax 1 + λx T 2 Ax 2 Analog zeigt man, dass - A ist positiv definit, dann ist f(x) streng konvex, - A ist negativ semidefinit, dann ist f(x) konkav, - A ist negativ definit, dann ist f(x) streng konkav Beispiel 311 Sind die Funktionen f j (x), j = 1,, k, über Ω R n konvex, dann ist auch die Linearkombination konvex f(x) = k α j f j (x), j=1 α j 0 j Zur Stetigkeit von konvexen Funktionen gibt es folgende Aussage Satz 312 Seien Ω R n konvex und das Innere der Menge, int(ω), nichtleer Dann ist jede konvexe Funktion f : Ω R stetig in int(ω) Beweis: Siehe Literatur, zum Beispiel [ERSD77, Satz 265] Man prüft die ε δ Definition nach Beispiel 313 Nichtstetige konvexe Funktion über konvexer Menge Stetigkeit bis auf den Rand muss bei einer konvexen Funktion im allgemeinen nicht vorliegen Die konvexe Funktion f : [1, 2] R mit { 1/x für x [1, 2) f(x) = 2 für x = 2 ist ein Beispiel Jetzt werden einige Bedingung dafür gegeben, dass ein Funktion auf einer konvexen Menge konvex ist Zunächst wird eine Monotonieaussage für den Differenzenquotienten gegeben Lemma 314 Seien Ω R n eine offene konvexe Menge, f : Ω R mit f C 1 (Ω) eine konvexe Funktion, x 0 Ω, h R n, x 0 νh Ω und x 0 + ρh Ω für gewisse ν, ρ > 0 Dann gilt f(x 0 ) f(x 0 νh) ν für alle µ (0, ν], λ (0, ρ] f(x 0) f(x 0 µh) µ f(x 0 + λh) f(x 0 ) λ f(x 0 + ρh) f(x 0 ) ρ 83

Beweis: Übungsaufgabe Damit ist für konvexe Funktionen der Differenzenquotient im Punkt x 0 in Richtung h eine monoton wachsende Funktion von λ Satz 315 Sei Ω R n eine offene konvexe Menge und f : Ω R mit f C 1 (Ω) Dann ist f auf Ω genau dann konvex, wenn für alle x 0, x 1 Ω mit x 0 x 1 gilt f(x 1 ) f(x 0 ) (x 1 x 0 ) T f(x 0 ) (32) Beweis: 1) Notwendigkeit von (32) Da f differenzierbar ist, gilt für die Richtungsableitung in Richtung h R n mit h 2 = 1 f h (x 0) = h T f(x 0 + λh) f(x 0 ) f(x 0 λh) f(x 0 ) f(x 0 ) = lim = lim, λ 0 λ λ 0 λ wobei bei der letzten Gleichung λ durch λ ersetzt wurde Nach Lemma 314 gilt alle ρ > 0 mit x 0 + ρh Ω (nehme λ 0 in Lemma 314 ) f(x 0 + ρh) f(x 0 ) ρ h T f(x 0 ) oder f(x 0 + ρh) f(x 0 ) + ρh T f(x 0 ) Wählt man x 1 = x 0 + ρh, so ergibt sich (32) 2) Hinlänglichkeit von (32) Sei λ 0 > 0 beliebig gewählt, setzte λ 1 = 1 λ 0 Dann gilt für x 2 = λ 0 x 0 + λ 1 x 1 nach Voraussetzung f(x 0 ) f(x 2 ) (x 0 x 2 ) T f(x 2 ), f(x 1 ) f(x 2 ) (x 1 x 2 ) T f(x 2 ) Damit folgt ( T λ 0 f(x 0 ) + λ 1 f(x 1 ) f(x 2 ) + λ 0 (x 0 x 2 ) + λ 1 (x 1 x 2 )) f(x2 ) ) T (λ 0 x 0 + λ 1 x 1 x 2 = f(x 2 ) + } {{ } =0 = f(x 2 ) = f(λ 0 x 0 + λ 1 x 1 ) f(x 2 ) für alle x 0, x 1 Ω Für eine zweimal stetig differenzierbare Funktion f : Ω R, Ω R n, offen, ist die Hesse Matrix ( 2 ) f H f (x) := x i x j (x) i,j=1,,n symmetrisch (Satz von Schwarz) Liegt zusammen mit x 0, x 1 die Strecke [x 0, x 1 ] vollständig in Ω, so gilt für eine geeignete Zahl λ (0, 1) nach dem Satz von Taylor f(x 1 ) = f(x 0 )+(x 1 x 0 ) T f(x 0 )+ 1 2 (x 1 x 0 ) T H f (x 0 +λ(x 1 x 0 ))(x 1 x 0 ) (33) Satz 316 Seien Ω R n eine offene konvexe Menge und f : Ω R mit f C 2 (Ω) Dann ist f auf Ω genau dann konvex, wenn H f (x) positiv semidefinit ist für alle x Ω 84

Beweis: 1) Sei H f (x) positiv semidefinit Dann folgt aus (33) für beliebige x 0, x 1 Ω und eine geeignete Zahl λ (0, 1) f(x 1 ) f(x 0 ) (x 1 x 0 ) T f(x 0 ) = 1 2 (x 1 x 0 ) T H f (x 0 + λ(x 1 x 0 ))(x 1 x 0 ) 0 Aus Satz 315 folgt, dass f(x) konvex ist 2) Sei f(x) konvex auf Ω Seien x 0 Ω und h R n beliebig gegeben Da Ω offen ist, gibt es eine Zahl θ 0 > 0 so dass x 0 + θh Ω für alle θ (0, θ 0 ] Wählt man in (32) x 1 = x 0 + θh, erhält man Aus (33) folgt nun f(x 0 + θh) f(x 0 ) θh T f(x 0 ) 0 θ (0, θ 0 ] h T H f (x 0 + λθh)h 0 θ (0, θ 0 ] mit λ (0, 1) Da die Hesse Matrix nach Voraussetzung stetig ist, folgt für θ +0 h T H f (x 0 )h 0 Da x 0 Ω und h R n beliebig gewählt wurden, ist H f (x) in jedem Punkt x Ω positiv semidefinit Eine skalare Funktion einer skalaren Veränderlichen f : (a, b) R mit f C 2 (a, b) ist konvex, wenn f (x) 0 in (a, b), zum Beispiel die Funktion f(x) = x 2 Bemerkung 317 Es gibt Verallgemeinerungen des Begriffs der konvexen Funktion, zum Beispiel quasi konvex und explizit konvex, siehe Literatur 33 Ungleichungen und konvexe Mengen Satz 318 Die Funktion f : Ω R n R sei konvex, Ω sei konvex und sei b R Dann ist V = {x Ω : f(x) b} konvex Beweis: Zu zeigen ist: x 1, x 2 V = x = (1 λ)x 1 + λx 2 V für alle λ [0, 1] Aus f(x 1 ), f(x 2 ) b folgt aus der Konvexität von f Damit ist x V f(x) (1 λ)f(x 1 ) + λf(x 2 ) b Bemerkung 319 1) Die Menge V aus Satz 318 heißt Unterhalbmenge von f(x) in Ω zum Wert b 2) Die Niveaumenge {x Ω : f(x) = b} der konvexen Funktion f(x) ist im allgemeinen nicht konvex Zum Beispiel besteht die Niveaumenge zu b = 1 der konvexen Funktion f(x) = x 2, x R, aus den Punkten 1 und 1 Folgerung 320 Sei f : Ω R n R konkav, sei Ω konvex und sei b R Dann ist U = {x Ω : f(x) b} konvex Beweis: Nutze Satz 318 mit f(x), da diese Funktion konvex ist 85

34 Extrema von konvexen Funktionen Es wird die Frage untersucht, unter welchen Bedingungen eine konvexe Funktion ihr globales Minimum über einer gegebenen konvexen Menge Ω annimmt Satz 321 Sei f : Ω R eine konvexe Funktion über einer konvexen Menge Ω Dann ist ein lokales Minimum von f(x) in Ω zugleich das globale Minimum über Ω Beweis: Indirekt Nehme f(x) ein lokales Minimum in x 0 Ω an Sei weiter x Ω mit f(x ) < f(x 0 ) Aus der Konvexität von f(x) folgt f((1 λ)x 0 + λx ) (1 λ)f(x 0 ) + λf(x ) = f(x 0 ) + λ (f(x ) f(x 0 )) < f(x 0 ) für alle λ (0, 1), da f(x ) < f(x 0 ) Aus der Konvexität von Ω folgt, dass der Funktionswert im Zwischenpunkt wohldefiniert ist Wählt man λ < ε so ist der Zwischenpunkt beliebig nahe an x 0 und die obige Ungleichung steht im Widerspruch dazu, dass f(x) in x 0 ein lokales Minimum annimmt Beispiel 322 Konvexe Funktion über konvexer Menge ohne Annahme eines lokalen Minimums Der obige Satz kann nur angewendet werden, wenn es ein lokales Minimum gibt, das angenommen wird Das muss nicht der Fall sein Die konvexe Funktion aus Beispiel 313 nimmt ihr Minimum nicht an Folgerung 323 Die Menge Ω 0, über der eine konvexe Funktion f : Ω R über einer konvexen Menge Ω das globale Minimum annimmt, ist konvex Beweis: Folgt aus Satz 318 Satz 324 Sei f(x) C 1 (Ω) über einer konvexen Menge Ω konvex Dann nimmt f(x) in jedem x 1 Ω mit f(x 1 ) = 0 sein globales Minimum über Ω an Beweis: Es ist zu zeigen, dass alle Punkte x 1 Ω mit f(x 1 ) = 0 wirklich Extremalpunkte sind und zudem Minima Sei x 1 Ω mit f(x 1 ) = 0 Da f(x) konvex ist, gilt f (λx 2 + (1 λ)x 1 ) (1 λ)f(x 1 ) + λf(x 2 ) = f(x 1 ) + λ (f(x 2 ) f(x 1 )) für alle x 2 Ω und λ [0, 1] Für λ (0, 1] erhält man daraus f (x 1 + λ(x 2 x 1 )) f(x 1 ) λ f(x 2 ) f(x 1 ) Nach dem Mittelwertsatz der Differentialrechnung gibt es ein θ [0, 1] mit (x 2 x 1 ) T f (x 1 + θλ(x 2 x 1 )) f(x 2 ) f(x 1 ) Für λ 0 folgt nun mit f(x 1 ) = 0 0 = (x 2 x 1 ) T f (x 1 ) f(x 2 ) f(x 1 ), also f(x 1 ) f(x 2 ) für alle x 2 Ω 86

Kapitel 4 Optimalitätskriterien Als Optimalitätskriterien bezeichnet man notwendige oder hinreichende Bedingungen dafür, dass ein x 0 Ω R n Lösung eines Optimierungsproblems ist Diese Kriterien besitzen sowohl unter theoretischen als auch unter numerischen Aspekten Bedeutung In diesem Kapitel werden lokale und globale Optimalitätskriterien hergeleitet 41 Einleitung Ein Gegenstand dieses Kapitels ist die Verallgemeinerung der Methode der Lagrangeschen Multiplikatoren auf Probleme mit Bedingungsungleichungen und beschränkten Variablen Es wird der Zusammenhang zwischen der Lösung eines Optimierungsproblems und dem Sattelpunkt eines Lagrangeschen Funktionals hergestellt Wir betrachten zunächst die Lagrangesche Methode für ein Optimierungsproblem mit Nebenbedingungen in Gleichungsform {f(x) : x Ω R n } min!, (41) Ω = {x R n : h i (x) = 0, i {1,, p}, p < n} Seien f(x) in Ω und h i (x), i = 1,, p, in R n differenzierbar Für beliebiges festes x Ω werden die Matrizen ( ) H 0 (x) := ( h 1 (x),, h p (x)) T R p n H0 (x), H(x) := f(x) T R (p+1) n definiert Für das Problem (41) wird die Lagrange Funktion p L(x, λ) = λ 0 f(x) + λ i h i (x), x Ω, λ R p+1, i=1 eingeführt Die Zahlen λ 0,, λ p nennt man Lagrangesche Multiplikatoren Man kann beispielsweise folgendes Optimalitätskriterium für Problem (41) beweisen Satz 41 Seien x 0 Ω und rg(h 0 (x 0 )) = rg(h(x 0 )) Dann gilt: besitzt f(x) in x ( ) 0 T ein lokales Minimum bezüglich Ω, so existiert ein λ (0) = λ (0) 0,, λ(0) p R p+1, mit λ (0) 0 0 und x L(x 0, λ (0) ) = λ (0) 0 f(x 0) + p i=1 λ (0) i h i (x 0 ) = 0 (42) 87

Verallgemeinerungen dieser Aussage auf den Fall, dass die Matrizen unterschiedlichen Rang besitzen, sind möglich Mit Hilfe des Gleichungssystems (42) hat man ein Kriterium zur Bestimmung von Punkten, in denen f(x) ein lokales Minimum annehmen kann Sofern dies möglich ist, berechnet man alle Lösungen (x, λ) von (42) Im allgemeinen sind jedoch nicht alle Lösungen auch lokale Extrempunkte Das heißt, man erweitert das gegebene Problem so, dass - man für die Lösung des erweiterten Problems Standardkriterien, zum Beispiel dass Ableitungen verschwinden, für ein Minimum hat, - die Lösung des erweiterten Problems Rückschlüsse auf die Lösung des gegebenen Problems zulässt 42 Lokale Minima für Optimierungsprobleme ohne Einschränkungen an das zulässige Gebiet Wir betrachten das Optimierungsproblem z = min{f(x) : x Ω} (43) mit f C 1 (R n ) (an sich reicht f C 1 ( Ω) mit Ω Ω, Ω offen) Für diese Problem sollen im folgenden lokale Optimalitätskriterien hergeleitet werden Zunächst werden spezielle konvergente Folgen betrachtet Definition 42 Konvergent gegen x 0 in Richtung y, gerichtet konvergent Eine konvergente Folge {x k } k N, x k R n, mit x k x 0 heißt konvergent gegen x 0 in Richtung y R n oder gerichtet konvergent, wenn gilt Die Schreibweise ist lim k x k x 0 x k x 0 2 = y, y 2 = 1 x k y x0 Beispiel 43 Sei {x k } k N mit x k = ( 1 k, 1 ) T k Dann ist x 0 = (0, 0) T und es gilt lim k x k x k 2 = lim k k 2 ( 1 k 1 k ) = 1 2 ( 1 1 ) = y Man kann aus jeder gegen x 0 konvergenten Folge {x k } k N eine gerichtet konvergente Teilfolge auswählen, sofern unendlich viele Elemente der Folge ungleich x 0 sind Sei x k x 0 für k k 0, dann sind alle Glieder der Folge y k := x k x 0 x k x 0 2, k k 0, Elemente der kompakten Menge {x R n : x 2 = 1} Damit besitzt {y k } k N einen Häufungspunkt in dieser Menge und man findet in {y k } k N eine konvergente Teilfolge Die Aussage des folgenden Lemmas kann in gewisser Weise als Verallgemeinerung der Richtungsableitung aufgefasst werden 88

Lemma 44 Die Folge {x k } k N sei konvergent gegen x 0 in Richtung y Dann gilt: 1 Ist f : R n R in x 0 stetig differenzierbar, so folgt f(x k ) f(x 0 ) lim = y T f(x 0 ) k x k x 0 2 2 Ist f : R n R in x 0 zweimal stetig differenzierbar, so gilt f(x k ) f(x 0 ) (x k x 0 ) T f(x 0 ) lim k x k x 0 2 = 1 2 yt H f (x 0 )y 2 Beweis: Es wird nur die erste Aussage bewiesen, der Beweis der zweiten Aussage ist analog Da f(x) in x 0 differenzierbar ist, also insbesondere alle Richtungsableitungen existieren, folgt unter Nutzung der Definition der Richtungsableitung, dass ( f(x) f(x0 ) lim (x x 0) T ) f(x 0 ) = 0 x x 0 x x 0 2 x x 0 2 Außerdem existiert nach Voraussetzung der Grenzwert Damit folgt (x k x 0 ) T lim f(x 0 ) = y T f(x 0 ) x k x 0 x k x 0 2 f(x k ) f(x 0 ) (x k x 0 ) T lim = lim f(x 0 ) = y T f(x 0 ) x k x 0 x k x 0 x 2 k x 0 x k x 0 2 Definition 45 Tangentenkegel Der Tangentenkegel T (x 0 ) an die Menge Ω im Punkt x 0 Ω ist gegeben durch { } y T (x 0 ) := λy : y 2 = 1, {x k } k N Ω, x k x0, λ 0 Der Tangentenkegel T (x 0 ) hat nur etwas mit dem zulässigen Gebiet Ω zu tun und nicht mit der zu minimierenden Funktion f(x) Er beschreibt die Richtungen, aus denen man sich x 0 mit einer Folge annähern kann, deren Glieder alle in Ω liegen Der Begriff des Tangentenkegels ist eine Verallgemeinerung der Tangetialhyperebene Die Menge T (x 0 ) ist ein Kegel Für jeden inneren Punkt x 0 Ω gilt T (x 0 ) = R n Für isolierte Punkte setzen wir T (x 0 ) = {0} Beispiel 46 Sei Ω = {x R 2 : x 2 1 + x2 2 = 1, x 1 0, 0 < x 2 < 2} Für den Punkt x 0 = (0, 1) T Ω erhält man, direkt aus der geometrischen Anschauung, { ( ) } T (x 0 ) = y R 2 1 : y = λ, λ 0 0 Analytisches Nachrechnen: Übungsaufgabe Lemma 47 Für jeden Punkt x 0 Ω ist der Tangentenkegel T (x 0 ) abgeschlossen 89

Beweis: Siehe Literatur Der folgende Satz gibt ein notwendiges Kriterium für die Existenz eines lokalen Minimums von f(x) bezüglich Ω an Das lokale Minimum kann auch auf dem Rand von Ω liegen Beachte, dass f(x) nach Voraussetzung auf dem Rand von Ω stetig differenzierbar ist Satz 48 Sei f : R n R in x 0 Ω stetig differenzierbar Besitzt f(x) in x 0 ein lokales Minimum bezüglich Ω, dann gilt y T f(x 0 ) 0 y T (x 0 ) Beweis: Sei y T (x 0 ) Für y = 0 ist y T f(x 0 ) = 0 Ansonsten existieren ein λ R, λ > 0, und ein y T (x 0 ), y 2 = 1, mit y = λy Ferner sei {x k } k N Ω y eine Folge mit x k x 0 Da f(x) in x 0 ein lokales Minimum bezüglich Ω annimmt, gilt für hinreichend große k die Ungleichung f(x k ) f(x 0 ) Daraus folgt unter Beachtung von Lemma 44, 1) f(x k ) f(x 0 ) lim = (y ) T f(x 0 ) 0 k x k x 0 2 und damit auch y T f(x 0 ) 0 Aus diesem Satz folgt nicht, dass f(x) in x 0 ein lokales Minimum nur annehmen kann, wenn f(x 0 ) = 0 gilt Gilt jedoch f(x 0 ) = 0, dann hat man ein zweites notwendiges Kriterium Satz 49 Sei f : R n R in x 0 Ω zweimal stetig differenzierbar Besitzt f(x) in x 0 ein lokales Minimum bezüglich Ω und gilt f(x 0 ) = 0, dann folgt y T H f (x 0 )y 0 y T (x 0 ) Beweis: Der Beweis ist analog zum Beweis von Satz 48, wobei jedoch jetzt Lemma 44, 2) verwendet wird Aus (x k x 0 ) T f(x 0 ) = 0 und f(x k ) f(x 0 ) für hinreichend große Indizes k folgt dann f(x k ) f(x 0 ) (x k x 0 ) T f(x 0 ) lim k x k x 0 2 = 1 2 (y ) T H f (x 0 )y 0 2 Der folgende Satz enthält eine hinreichende Bedingung für die Existenz eines eigentlichen lokalen Minimums von f(x) bezüglich Ω Satz 410 Sei f : R n R in x 0 Ω zweimal stetig differenzierbar Gelten f(x 0 ) = 0 und y T H f (x 0 )y > 0 für alle y T (x 0 ), y 0, dann besitzt f(x) in x 0 ein isoliertes lokales Minimum bezüglich Ω Beweis: Indirekter Beweis Wir nehmen an, dass f(x) in x 0 kein isoliertes lokales Minimum bezüglich Ω besitzt Dann existiert eine Folge {x k } k N Ω mit x k x 0, mit unendlich vielen Elementen, die ungleich x 0 sind, und f(x k ) f(x 0 ), k 1 Es existiert eine Teilfolge von {x k }, die gegen ein ỹ gerichtet konvergent ist Ohne ỹ Beschränkung der Allgemeinheit kann auch x k x0 angenommen werden Dann folgt aus Lemma 44 f(x k ) f(x 0 ) lim k x k x 0 2 = 1 2ỹT H f (x 0 )ỹ 0 2 mit ỹ T (x 0 ), im Widerspruch zur Voraussetzung Für jeden inneren Punkt x 0 Ω gilt T (x 0 ) = R n und aus den Aussagen der Sätze 48 410 folgen die bekannten notwendigen und hinreichenden Bedingungen für die Existenz lokaler Minima einer Funktion f : R n R 90

43 Lokale Minima für Optimierungsprobleme, bei denen das zulässige Gebiet durch Ungleichungen gegeben ist In diesem Abschnitt wird das Optimierungsproblem z = min{f(x) : x Ω} mit Ω = {x R n : g(x) 0} (44) mit f C 1 (R n ) und g : R n R m, g C 1 (R n ) untersucht Unter Verwendung der Resultate aus Abschnitt 42 werden nun lokale Optimierungskriterien für (44) hergeleitet Dazu wird eine lokale Theorie von Lagrange Multiplikatoren entwickelt Definition 411 Aktive Nebenbedingung Eine Nebenbedingung g i (x) 0, i = 1,, m, wird im Punkt x 0 Ω aktiv genannt, wenn gilt g i (x 0 ) = 0 Bezeichnung: I 0 := {i {1,, m} : g i (x 0 ) = 0} Sei I 0 Die in x 0 aktiven Nebenbedingungen werden nun durch affine Funktionen ersetzt ( g i (x 0 )) T (x x 0 ), x R n, i I 0, beziehungsweise in Matrixnotation ( g I0 (x 0 )) T (x x 0 ), g I0 (x 0 ) R n I0 Der Gradient einer vektorwertigen Funktion g(x) ist wie folgt definiert: g(x) = (g 1(x)) x1 (g m (x)) x1 (g 1 (x)) xn (g m (x)) xn R n m Ausgehend von der Anschauung, könnte man die Menge { x : ( g I0 (x 0 )) T (x x 0 ) 0, g I\I0 (x 0 ) + ( g I\I0 (x 0 ) ) } T (x x0 ) 0 als eine lineare Approximation der Menge Ω im Punkt x 0 ansehen Dies ist jedoch in gewissen ausgearteten Punkten nicht zutreffend, siehe Beispiel 415 Definition 412 Linearisierter Kegel Die Menge K(x 0 ) := {y R n : ( g I0 (x 0 )) T y 0} heißt linearisierter Kegel von Ω im Punkt x 0 Ω Für I 0 = setzen wir K(x 0 ) = R n Lemma 413 Es gilt T (x 0 ) K(x 0 ) Beweis: Für I 0 = gilt die Behauptung trivialerweise Sei also I 0 Der Nullvektor gehört per Definition zu beiden Mengen Sei y T (x 0 ), y 0 Dann existieren ein y T (x 0 ), y 2 = 1 und ein λ > 0 mit y = λy und eine Folge y {x k } k N Ω mit x k x 0 Wegen g i (x k ) 0 für alle i und g i (x 0 ) = 0 für alle i I 0 hat man g i (x k ) g i (x 0 ) 0 lim = g i (x 0 ) T y i I 0, k x k x 0 2 wobei Lemma 44, 1) verwendet wurde Folglich gilt y K(x 0 ) 91

Lemma 414 Es gilt K 0 (x 0 ) := {y R n : ( g I0 (x 0 )) T y < 0} T (x 0 ) Beweis: Siehe Literatur, zum Beispiel [ERSD77, S 145] Beispiel 415 Sei Ω = {x R 2 : x 3 1 + x 2 0, x 2 0}, dh die Menge Ω ist begrenzt von der positiven x 1 Achse und der Funktion x 3 1 Damit sind ( ) ( ) x 3 g(x) = 1 + x 2, ( g(x)) T 3x 2 = 1 1 x 2 0 1 Wir betrachten den Punkt x 0 = (0, 0) T In diesem Punkt sind beide Nebenbedingungen mit Gleichheit erfüllt, also I 0 = {1, 2} Es folgt ( ) ( ) ( g I0 (x 0 )) T 0 1 y1 =, = K(x 0 1 0 ) =, y 0 1 R Für den Tangentialkegel gilt T (x 0 ) = {y R 2 : y 1 0, y 2 = 0} Es ist also T (x 0 ) K(x 0 ) Dieses Beispiel zeigt insbesondere, dass man für den Punkt x 0 = (0, 0) T mit K(x 0 ) keine lineare Approximation von Ω erhält Beispiel 416 Der linearisierte Kegel K(x 0 ) ist im Gegensatz zum Tangentenkegel T (x 0 ) von der analytischen Darstellung von Ω abhängig Die Menge aus Beispiel 415 kann auch dargestellt werden durch Ω = {x R 2 : x 3 1 + x 2 0, x 3 2 0} In diesem Fall hat man ( x 3 g(x) = 1 + x 2 x 3 2 ) (, ( g(x)) T 3x 2 = 1 1 0 3x 2 2 ) und man erhält für x 0 = (0, 0) T, dass I 0 = {1, 2} und ( ( g I0 (x 0 )) T 0 1 = 0 0 ), = K(x 0 ) = ( y1 y 2 ) mit y 1 R und y 2 0 Für den nächsten Beweis benötigen wir einen Hilfssatz Lemma 417 Alternativsatz von Gordan Sei A R m n, dann hat von den beiden Systemen Ay < 0 und genau eines eine Lösung z T A = 0, z 0, z 0 Beweis: Literatur Seien die Voraussetzungen von Satz 48 erfüllt und I 0 Dann folgt wegen K 0 (x 0 ) T (x 0 ) ( g I0 (x 0 )) T y < 0 = y T f(x 0 ) 0 y K 0 (x 0 ) 92

Diese Beziehung ist äquivalent damit, dass das Ungleichungssystem ( g I0 (x 0 )) T y < 0, y T f(x 0 ) < 0 keine Lösung y K 0 (x 0 ) besitzt Nach Lemma 417 besitzt dieses System genau dann keine Lösung, wenn das System ( ) η η f(x 0 ) + g I0 (x 0 )z I0 = 0, 0, η R z +, (45) I0 eine nichttriviale Lösung besitzt Hierbei ist z I0 ein I 0 dimensionaler Vektor, dessen Einträge durch die Indizes der aktiven Nebenbedingungen (unter Beibehaltung der natürlichen Reihenfolge) bestimmt sind Setzt man z i = 0 für i I 0, so kann man (45) mit z R m wie folgt formulieren: ( ) ( ) η η η f(x 0 ) + g(x 0 )z = 0, g(x 0 ) 0, }{{} z T g(x 0 ) = 0, 0, 0 } {{ } z z =0,i I 0 =0,i I 0 Sei I 0 = und hat f(x) in x 0 Ω ein lokales Minimum, das heißt es gelten x 0 int(ω), z = 0 und f(x 0 ) = 0, dann besitzt dieses System eine Lösung η > 0, z = 0 Wir betrachten jetzt das Problem: Gesucht ist ein Paar (x 0, z 0 ) T R n R m + ( 0), η 0 0, (η 0, z 0 ) T 0, welches das System ( ) η f(x) + g(x)z = 0, g(x) 0, z T η g(x) = 0, 0 (46) z löst Mit dem Lagrange Funktional L η (x, z) = ηf(x) + z T g(x) ergibt sich die äquivalente Formulierung x L η (x, z) = 0, z L η (x, z) 0, z T z L η (x, z) = 0, ( η z ) 0 (47) Der Zusammenhang zwischen den Problemen (44) und (46) ist wie folgt Satz 418 Seien f : R n R, g : R n R m differenzierbar und x 0 Ω Stelle eines lokalen Minimums von f(x) bezüglich Ω Dann existieren ein z 0 R m + und ein η 0 0, so dass (x 0, z 0 ) T und η 0 eine Lösung von (46) bzw von (47) sind Beweis: Literatur, Fritz John (1948) Damit haben wir für den Fall η 0 > 0 ein Optimalitätskriterium gefunden Ist jedoch η 0 = 0, so kann der Funktionswert von f(x) in (46) beliebig sein Es wird jetzt eine Regularitätsbedingung eingeführt, die sichert, dass unter den Voraussetzungen von Satz 418 für jede Lösung von (46) η 0 > 0 gilt Regularitätsbedingung Seien g : R n R m differenzierbar und K(x 0 ) = T (x 0 ) (48) Bemerkung 419 - Für Optimierungsprobleme mit ausschließlich affinen Nebenbedingungen ist die Regularitätsbedingung stets erfüllt - Die Regularitätsbedingung stellt eine Bedingung an die analytische Darstellung der Menge Ω dar, vergleiche Beispiele 415 und 416 93

- Man kann andere Regularitätsbedingungen formulieren, die die obige Bedingung implizieren, aber leichter zu überprüfen sind Anstelle von (46) betrachten wir jetzt das Optimierungsproblem: Finde ein Paar (x 0, z 0 ) T R n R m +, welches das Problem f(x) + g(x)z = 0, g(x) 0, z T g(x) = 0, z 0 (49) löst Man bezeichnet (49) als lokale Kuhn Tucker Bedingung (Kuhn, Tucker (1951)) Unter Verwendung des Lagrange Funktionals L(x, z) := f(x) + z T g(x), (x, z) T R n R m + erhält man eine zu (49) äquivalente Formulierung x L(x, z) = 0, z L(x, z) 0, z T z L(x, z) = 0, z 0 (410) Die Optimierungsprobleme (49), (410) hat man aus (46), (47) durch die Festsetzung von η = 1 erhalten Lemma 420 Satz von Farkas Seien A R m n und b R n Dann hat von den beiden Systemen Ax 0, b T x > 0, und genau eines eine Lösung Beweis: Siehe Literatur y T A = b T, y 0 Satz 421 Satz von Kuhn/Tucker Seien f : R n R, g : R n R m stetig differenzierbar und x 0 Ω Stelle eines lokalen Minimums von f(x) bezüglich Ω Ist in x 0 die Regularitätsbedingung (48) erfüllt, dann existiert ein z 0 R m +, so dass (x 0, z 0 ) T eine Lösung von (49) bzw von (410) ist Beweis: Sei I 0 Per Definition des linearisierten Kegels gilt Da (48) erfüllt ist, folgt aus Satz 48 für I 0 ( g I0 (x 0 )) T y 0 y K(x 0 ) (411) ( f(x 0 )) T y 0 = ( f(x 0 )) T y 0 y T (x 0 ) = K(x 0 ) (412) Aus Lemma 420 folgt, dass (411) und (412) genau dann gleichzeitig gelten, wenn das System g I0 (x 0 )z I0 = f(x 0 ), z I0 0 eine Lösung besitzt Setzt man z i = 0 für i I 0, so folgt die erste Gleichung von (49) für I 0 Die Beziehung g(x 0 ) 0 gilt per Definition des Optimierungsproblems Aus der Konstruktion von z folgt schließlich z T g(x 0 ) = 0 Für I 0 = ist z = 0 eine Lösung von (49) Im Falle x 0 int(ω) gilt wegen der Regularitätsbedingung (48) T (x 0 ) = K(x 0 ) = R n Aus der Definition von K(x 0 ) folgt dann, dass g(x 0 ) = 0 sein muss, da die Bedingung aus Satz 48 für jedes y R n, insbesondere für y gelten muss Aus der ersten Gleichung der Kuhn Tucker Bedingung (49) folgt dann die bekannte notwendige Bedingung für ein lokales Minimum: f(x 0 ) = 0 94

Die Gültigkeit der Implikation von (411) nach (412) kann mit Hilfe eines linearen Programms überprüft werden Diese Implikation gilt genau dann, wenn 0 der optimale Wert des Problem z = z T f(x 0 ) min! z T g I0 (x 0 ) 0 ist Sind die Zielfunktion und die Nebenbedingungen zweimal differenzierbar, kann man weitere Kriterien mit Hilfe der Hesse Matrix formulieren 44 Globale Theorie der Lagrange Multiplikatoren Wir betrachten das Optimierungsproblem z = min{f(x) : x G Ω } mit G Ω = {x R n : g(x) 0, x Ω}, (413) wobei Ω R n eine nichtleere Menge ist, f : Ω R, g : Ω R m Bei dieser sogenannten konischen Formulierung der Menge G Ω ist x genau dann zulässig, wenn x Ω und g(x) 0 Für Ω = R n haben wir als Spezialfall das Problem (44) Im folgenden werden Optimalitätskriterien in Form von Sattelpunktaussagen formuliert Definition 422 Sattelpunkt Die Funktion L(x, λ) mit x Ω, λ D λ besitzt in (x 0, λ 0 ) einen lokalen Sattelpunkt, wenn es ein ε > 0 gibt, so dass L(x 0, λ) L(x 0, λ 0 ) L(x, λ 0 ) (x, λ) (Ω D λ ) U ε (x 0, λ 0 ), (414) wobei U ε (x 0, λ 0 ) eine ε Umgebung von (x 0, λ 0 ) ist Gilt (414) für alle (x, λ) Ω D λ, so hat L(x, λ) in (x 0, λ 0 ) einen globalen Sattelpunkt Zur Formulierung von globalen Optimalitätskriterien wird das folgende Sattelpunktproblem betrachtet: Gesucht sind x 0 Ω und (η 0, y 0 ) T R m+1 + mit (η 0, y 0 ) T 0, so dass für das Lagrange Funktional gilt L η (x, y) := ηf(x) + y T g(x), (x, y) T Ω R m +, (415) L η0 (x 0, y) L η0 (x 0, y 0 ) L η0 (x, y 0 ), (x, y) T Ω R m + Als nächstes soll ein notwendiges Optimalitätskriterium für (413) bewiesen werden Dazu benötigen wir folgendes Lemma Lemma 423 Seien Ω R n eine konvexe Menge, f : Ω R, g : Ω R q konvexe Funktionen und h : Ω R r affine Funktionen Das System f(x) < 0, g(x) 0, h(x) 0, x Ω besitzt genau dann keine Lösung, wenn ein Vektor (u, v, w) T R + R q + Rr +, (u, v, w) T 0, existiert mit uf(x) + v T g(x) + w T h(x) 0, x Ω Existiert ein x int(ω) welches zusätzlich g( x) < 0 erfüllt, dann gilt u 0 Beweis: Siehe Literatur 95

Satz 424 Seien Ω R n eine konvexe Menge, f : Ω R und g : Ω R m konvexe Funktionen Ist x 0 eine Lösung von (413), so existieren ein η 0 R + und ein y 0 R m +, so dass (x 0, η 0, y 0 ) T Ω R m+1 + eine Lösung des Sattelpunktproblems (415) ist Beweis: Sei x 0 eine Lösung von (413) Dann besitzt das System f(x) f(x 0 ) < 0, g(x) 0, x Ω keine Lösung Nach Lemma 423, mit h(x) 0, existiert dann ein Vektor (η 0, y 0 ) T R m+1 +, (η 0, y 0 ) T 0, mit L η0 (x, y 0 ) = η 0 f(x) + y T 0 g(x) η 0 f(x 0 ) x Ω Wegen g(x 0 ) 0 folgt für alle y 0 damit L η0 (x, y 0 ) = η 0 f(x)+y T 0 g(x) η 0f(x 0 )+y T g(x 0 ) = L η0 (x 0, y) (x, y) Ω R m + (416) Setzt man in (416) rechts y = y 0, ergibt sich η 0 f(x) + y T 0 g(x) η 0 f(x 0 ) + y T 0 g(x 0 ) = L η0 (x 0, y 0 ) x Ω Setzt man in (416) links x = x 0, erhält man η 0 f(x 0 ) + y T 0 g(x 0) η 0 f(x 0 ) + y T g(x 0 ) y R m + Aus den letzten beiden Ungleichungen folgt die Behauptung Die Aussage dieses Satzes hat in gewissem Sinne Ähnlichkeit mit der von Satz 418 Für einen gegebenen zulässigen Bereich ist die notwendige Bedingung (nichtnegative Lösung von (415)) für beliebige Werte der Zielfunktion erfüllt, falls η 0 = 0 ist Analog wie bei den lokalen Lagrange Multiplikatoren wird deshalb eine Regularitätsbedingung eingeführt, die η 0 > 0 sichert Regularitätsbedingung Seien die Menge Ω R n sowie die Funktionen g i : Ω R, i {1,, m} =: I, konvex Es existiere ein x int(ω) mit g i ( x) < 0 für i I N, g i ( x) 0 für i I L (417) Hierbei ist I L die Menge aller i {1,, m}, für die g i (x) eine affine Funktion ist und I N die Menge aller Indizes, für die g i (x) keine affine Funktion ist Unter dieser Regularitätsbedingung wird das Sattelpunktproblem: Finde einen Sattelpunkt (x 0, y 0 ) Ω R m + des Lagrange Funktional betrachtet L(x, y) := f(x) + y T g(x), (x, y) T Ω R m +, (418) Satz 425 Seien die Menge Ω R n konvex, die Funktionen f : Ω R, g i : Ω R, i I, konvex und die Regularitätsbedingung (417) erfüllt Ist x 0 Ω eine Lösung von (413), dann existiert ein y 0 R m +, so dass (x 0, y 0 ) ein Sattelpunkt von (418) ist Beweis: Da x 0 eine Lösung von (413) ist, ist das System f(x) f(x 0 ) < 0, g(x) 0, x Ω nicht lösbar Wegen der Regularitätsbedingung (417) besitzt jedoch das System g IN (x) < 0, g IL (x) 0, x int(ω) 96

eine Lösung Nach Lemma 423 existiert ein (η 0, y 0 ) T R m+1 +, η 0 0, (das g IN spielt die Rolle von g aus Lemma 423) mit η 0 (f(x) f(x 0 )) + y T 0 g(x) 0 x Ω Bei dieser Darstellung wurden die Vektoren v und w aus Lemma 423 zum Vektor y zusammengefasst Man kann so skalieren, dass η 0 = 1 gilt Dann folgt L(x, y 0 ) = f(x) + y T 0 g(x) f(x 0 ) x Ω Wegen g(x 0 ) 0 folgt für alle y 0 gilt L(x 0, y) = f(x 0 ) + y T g(x 0 ) f(x 0 ) y R m + Aus den letzten beiden Beziehungen folgt, indem man x = x 0 beziehungsweise y = y 0 setzt, L(x 0, y 0 ) = f(x 0 ) Nach Definition ist (x 0, y 0 ) T somit ein Sattelpunkt des Lagrange Funktionals (418) Nun wird eine hinreichende Bedingung für eine Lösung von (413) formuliert Dabei gilt eine gewisse Umkehrung von Satz 425, die ohne weitere Voraussetzungen an (413) gilt Satz 426 Sei (x 0, y 0 ) T Ω R m + ein Sattelpunkt von (418) Dann ist x 0 eine Lösung von (413) Beweis: Zunächst wird gezeigt, dass x 0 die Nebenbedingungen erfüllt Aus L(x 0, y) L(x 0, y 0 ) für alle y R m + folgt (y y 0 ) T g(x 0 ) 0 y R m + (419) Es gilt R m + {y y 0 : y, y 0 R m + } Somit gilt y T g(x 0 ) 0 y R m + Sei g i (x 0 ) > 0 Dann würde diese Beziehung nicht für den i ten Einheitsvektor gelten, der aber zu R m + gehört Damit folgt g(x 0 ) 0 Nun wird gezeigt, dass f(x) in x 0 ein globales Minimum annimmt Aus (419) folgt für y = 0 die Ungleichung y T 0 g(x 0 ) 0 Da y 0 0 und g(x 0 ) 0, kann das Skalarprodukt nur nichtpositiv sein, also gilt y T 0 g(x 0) = 0 Mit dieser Beziehung und L(x 0, y 0 ) L(x, y 0 ) für alle x Ω folgt f(x 0 ) f(x) + y T 0 g(x) x Ω und damit für alle x G Ω f(x 0 ) f(x) + y0 T g(x) f(x) }{{} }{{} 0 0 Bemerkung 427 Dualitätstheorie Auch für die nichtlineare Optimierung gibt es eine Dualitätstheorie Die Dualitätstheorie für lineare Programme ist darin als Spezialfall enthalten Gegeben sei das primale Problem z = min{f(x) : x G Ω } mit G Ω = {x R n : g(x) 0, x Ω}, (420) 97

wobei Ω R n eine nichtleere Menge ist und f : Ω R, g : Ω R m Abbildungen sind Dem Problem (420) wird unter Verwendung des Lagrange Funktionals das duale Problem z = max{φ(y) : y R m + } zugeordnet, wobei φ(y) : R m + R { }, ( φ(y) = inf L(x, y) = inf f(x) + y T g(x) ) x Ω x Ω Man sieht, dass hier die Nichtnegativitätsbedingung im dualen Problem steckt, anders als wir es bei linearen Programmen hatten Da wir dort jedoch gezeigt hatten, dass das duale Problem des dualen Problems wieder das primale Problem ist, ist das kein Widerspruch dazu, dass die Theorie für lineare Programme als Spezialfall enthalten ist Man kann wieder schnell zeigen, dass der Maximalwert des dualen Problems, falls er existiert, kleiner oder gleich dem Minimalwert des primalen Problems ist Gleichheit muss im allgemeinen jedoch nicht gelten Man spricht dann von einer Dualitätslücke Des weiteren sind die Fragen bezüglich der Lösbarkeit der beiden Probleme wesentlich komplizierter zu beantworten als bei linearen Programmen 98

Kapitel 5 Lösungsverfahren Dieses Kapitel gibt einen Überblick über Lösungsverfahren für nichtlineare Optimierungsprobleme Es wird vor allem auf die wesentlichen Ideen der Verfahren eingegangen und weniger auf Details 51 Projektionsverfahren Projektionsverfahren sind recht einfache Verfahren, die das Konzept von Abstiegsverfahren zur Minimierung von Funktionen ohne Nebenbedingungen auf Minimierungsprobleme mit konvexen Nebenbedingungen übertragen Bei einem Abstiegsverfahren wird, ausgehend von einer Iterierten x (k), die nächste Iterierte x (k+1) so gewählt, dass sich der Wert der zu minimierenden Funktion verkleinert Hat man ein Problem mit Nebenbedingungen, so muss man natürlich zusätzlich darauf achten, dass x (k+1) zum zulässigen Bereich gehört Anderenfalls kann es zum Beispiel vorkommen, dass die Zielfunktion gar nicht definiert ist Projektionsverfahren projizieren die Abstiegsrichtung für die Zielfunktion in geeigneter Weise in die zulässige Menge Wir betrachten das Optimierungsproblem z = min{f(x) : x Ω} (51) mit f C 1 (R n ) und die zulässige Menge Ω sei nichtleer, konvex und abgeschlossen Von besonderer Bedeutung sind die Probleme, bei denen f(x) quadratisch und Ω = {x R n : Ax b} (52) ein Polyeder ist, A R m n, b R m Solche Probleme treten als Teilprobleme bei den sogenannten SQP Verfahren (sequential quadratic programming) auf, wo sie wiederholt mit unterschiedlichen Daten A, b, f gelöst werden müssen, siehe Abschnitt 54 In anderen Anwendungen ist der zulässige Bereich sogar nur ein n dimensionaler Quader (,,box constraints ): Ω = n i=1 [l i, u i ] (53) Für x R n sei P Ω (x) die Lösung von inf y x y Ω 2, die Projektion von x auf Ω bezüglich der Euklidischen Norm Da die Menge Ω nach Voraussetzung abgeschlossen ist, kann man das Infimum durch das Minimum ersetzen, also P Ω (x) = arg min y Ω y x 2 99

Beispiel 51 Falls Ω durch (52) gegeben ist, muss man zur Berechnung der Projektion y = P Ω (x) das konvexe quadratische Programm y = arg min y Ω { y x 2 2 : Ay b} = arg min y Ω {yt y 2y T x : Ay b} lösen Die Menge Ω ist ein konvexes Polyeder Die Zielfunktion y x 2 2 ist eine konvexe Funktion Ist der zulässige Bereich ein n dimensionaler Quader (53), kann man die Projektion komponentenweise berechnen: x i falls x i [l i, u i ], (y) i = u i falls x i > u i, l i falls x i < l i Definition 52 Stationärer Punkt Der Punkt x 0 wird stationärer Punkt des Problems (51) genannt, falls für alle Punkte des Tangentenkegels y T (x 0 ) die Ungleichung y T f(x 0 ) 0 gilt Ein stationärer Punkt erfüllt also die im Satz 48 bewiesene notwendige Bedingung für ein lokales Minimum bezüglich Ω Algorithmus 53 Projektionsverfahren 1 Initialisierung Bestimme x (0) Ω und wähle drei reelle Parameter 0 < β, µ < 1 und γ > 0 2 Iteration k = 0, 1, 2, Falls x (k) ein stationärer Punkt ist, dann Stopp sonst Betrachte für α > 0 den Pfad x (k) (α) := P Ω (x (k) + α f (x (k))) Setze x (k+1) (α) := x (k) ( α (k)), wobei α (k) = γβ m(k) und m (k) die kleinste natürliche Zahl größer oder gleich Null ist mit ( f x (k+1)) ( f x (k)) + µ f (x (k)) T (x (k+1) x (k)) (Armijo Liniensuche) Bemerkung 54 Armijo Liniensuche Seien f(x) eine zu minimierende Funktion, x (k) die gegenwärtige Iterierte, s (k) eine irgendwie berechnete Abstiegsrichtung, µ (0, 1) und γ > 0 eine Konstante Im Falle, dass man keine Nebenbedingungen hat, wählt man λ (0) γ f(x (k) ) 2 und bestimme unter den Zahlen λ (j) = 2 j λ (0), β = 1/2, die erste, für die ( f x (k) + λ (j) s (k)) ( f x (k)) ( + µλ (j) f x (k)) T s (k) 100

gilt Die Motivation für diese Herangehensweise kommt von der nach dem linearen Glied abgebrochenen Taylor Entwicklung ( f x (k) + λ (j) s (k)) ( f x (k)) ( + λ (j) f x (k)) T s (k) Ist s (k) eine Abstiegsrichtung, dann findet man in dieser Richtung einen Funktionswert von f(x), der kleiner als der Funktionswert f ( x (k)) ist, falls λ (j) nur hinreichend klein ist Man fängt mit irgendeinem hinreichend großen λ (0) an Dieses hängt von f ( x (k)) 2 ab Ist f ( x (k)) 2 klein, kann man vermuten in der Nähe eines Minimums zu sein (besitzt f(x) in x (k) ein Minimum, so ist f ( x (k)) = 0) und man braucht vielleicht nur einen kleinen Schritt Man testet ob der Funktionswert sich verkleinert Ist das nicht der Fall, wird der Parameter λ (j) sukzessive halbiert, bis er klein genug ist Im Algorithmus 53 hat man einen gekrümmten Pfad x (k) (α) Für jedes α hat man im allgemeinen ein konvexes, quadratisches Minimierungsproblem über Ω zu lösen Das ist recht teuer Falls Ω ein Polyeder ist, kann man eine Startiterierte x (0) mittels eines linearen Programms bestimmen Da der Algorithmus 53 im wesentlichen ein Gradientenverfahren ist, kann man im allgemeinen nur langsame Konvergenz erwarten Außerdem ist die Berechnung von P Ω ( x (k) + α f ( x (k))) für allgemeine Polyeder aufwendig Wir betrachten jetzt noch eine Variante von Algorithmus 53, die zusätzlich leichter berechenbare Zwischenwerte x (k) Ω berechnet, bei denen der Funktionswert zumindest nicht ansteigt Algorithmus 55 Modifiziertes Projektionsverfahren 1 Initialisierung Bestimme x (0) Ω und wähle Parameter falls nötig 2 Iteration k = 0, 1, 2, Bestimme x (k+1) = P Ω ( x (k) + α f(x (k) ) ) entweder wie im Algorithmus 53 oder bestimme x (k+1) Ω, so dass f ( x (k+1)) f ( x (k)) Die Umsetzung der zweiten Strategie hängt von der Art der Nebenbedingungen ab Wir betrachten affine Nebenbedingungen (52) Bezeichne â i die Zeilen von A Für x Ω sei die Menge der aktiven Nebenbedingungen I(x) = { i {1,, m} : â T i x = b i } Dann wird die zweite Strategie häufig so realisiert, dass I(x (k) ) I(x (k+1) ) gilt Man wählt dazu in x (k) eine Abstiegsrichtung ( v (k) L x (k)) := {v : A I(x )v = 0}, (k) wobei A I(x (k) ) die Teilmatrix von A mit den Zeilen ist, deren Indizes in I(x (k) ) enthalten sind Die Abstiegseigenschaft wird dann nur in schwacher Form ( f x (k)) T v (k) 0 verlangt Die neue Iterierte besitzt die Gestalt x (k+1) = x (k) + αv (k) für ein geeignetes α Aus der Wahl von v (k) folgt ( A x (k+1)) ( = A x (k) + αv (k)) = Ax (k) + αav (k) 101

Für die aktiven Nebenbedingungen verschwindet der zweite Summand Für die anderen Nebenbedingungen, i I(x (k) ), ist der erste Summand kleiner als b i und man findet ein hinreichend kleines α > 0, so dass die Summe der beiden Summanden kleiner oder gleich b i bleibt Mit α (k) := sup{α : x (k) + αv (k) Ω} wird nun eine Liniensuche gestartet um einen Faktor α (k) und damit ein Argument x (k+1) zu finden, so dass f ( x (k+1)) f ( x (k)) gilt Ist α (k) < α (k), dann ist I(x (k) ) = I(x (k+1) ), sonst I(x (k) ) I(x (k+1) ) 52 Penalty Verfahren (Strafverfahren) Wir betrachten wieder das Optimierungsproblem z = min{f(x) : x Ω}, (54) diesmal aber zunächst mit f C 0 (R n ) und die Menge Ω R n sei abgeschlossen Um die Lösung von (54) mit einer Folge einfacherer Optimierungsprobleme ohne Nebenbedingungen zu approximieren, wird die Straffunktion l : R n R +, l(x) { > 0 für x Ω, = 0 für x Ω eingeführt Diese Funktion bestraft Punkte, die nicht zum zulässigen Bereich gehören, mit positiven Funktionswerten Beispiel 56 Für Ω = {x R n : g i (x) 0, i = 1,, p; g i (x) = 0, i = p + 1,, m} ist eine mögliche Straffunktion l(x) = p i=1 ( g + i (x)) α + m i=p+1 g i (x) α mit α > 0, g + i (x) = max{0, g i(x)} Definition 57 Penalty Funktion Die gewichtete Summe aus Zielfunktion und Straffunktion p(x, r) := f(x) + rl(x), r R +, r > 0, wird Penalty Funktion genannt Der Parameter r heißt Strafparameter Für fest gewählte Parameter r werden jetzt die Minimierungsprobleme ohne Nebenbedingungen min p(x, r) (55) x Rn betrachtet Der Strafterm belegt die Punkte, die nicht zum zulässigen Bereich gehören, mit positiven Werten, die für große Strafparameter r groß sind Deswegen hofft man, dass die Minima von (55) für große Strafparameter im zulässigen Bereich liegen Algorithmus 58 Allgemeines Penalty Verfahren 1 Initialisierung Wähle r (1) > 0 102

2 Iteration k = 0, 1, 2, Bestimme ein lokales Minimum x (k) für p(x, r (k) ) Falls x (k) Ω, dann Stopp sonst wähle r (k+1) 2r (k) Man kann zeigen, dass die x (k) unter gewissen Voraussetzungen tatsächlich Näherungen eines lokalen Minimums von (54) sind Satz 59 Seien f : R n R eine stetige Funktion, x 0 ein striktes lokales Minimum und l : R n R + eine stetige Straffunktion Dann gibt es ein r 0 > 0 so, dass für alle r > r 0 die Penalty Funktion p(x, r) ein lokales Minimum x(r) besitzt, dass für r gegen x 0 konvergiert Beweis: Literatur, [JS04, S 294] Bemerkung 510 Zwei Eigenschaften sind für Penalty Verfahren von Bedeutung: 1 In vielen Fällen ist die Zielfunktion f(x) differenzierbar Damit die Anwendung eines Verfahrens vom Newton Typ zur Bestimmung des Minimums von (55) möglich ist, muss die Straffunktion l(x) auch differenzierbar sein 2 Damit das Verfahren nach endlich vielen Schritten abbricht, ist es wünschenswert, wenn es bereits einen endlichen Wert r > 0 gibt, so dass ein lokales Minimum x 0 von (54) auch lokales Minimum für jedes Problem ohne Nebenbedingungen (55) mit r r ist In diesem Fall nennt man die Penalty Funktion exakt in x 0 Es stellt sich leider heraus, dass diese beiden wünschenswerten Eigenschaften in der Regel unvereinbar sind Aus diesem Grunde werden Penalty Verfahren in der Form von Algorithmus 58 praktisch nicht genutzt Stattdessen betrachtet man modifizierte Penalty Funktionen, die auf dem Konzept einer erweiterten Lagrange Funktion (augmented Lagrange Funktion) beruhen, siehe Literatur 53 Barrieremethoden Wir betrachten das Problem mit den Nebenbedingungen z = min f(x) (56) x Ω g i (x) 0 für 1 i p, g i (x) = 0 für p + 1 i m (57) Dabei seien f, g i C 2 (R n ), i = 1,, m, und wir nehmen an, dass (56) eine Optimallösung besitzt, die mit x 0 bezeichnet wird Barrieremethoden sind eng verwandt mit den Penalty Verfahren Auch bei diesen Methoden betrachtet man eine Folge von Hilfsproblemen, bei denen die Zielfunktion f(x) durch gewichtete Strafterme erweitert wird Die Barriereverfahren erzeugen eine Folge von inneren Punkten, das heißt von Punkten welche die Ungleichungsrestriktionen sogar strikt erfüllen, g i (x) < 0, i = 1,, p, während die Gleichungsrestriktionen verletzt sein können Bezeichne ˆΩ := {x R n : g i (x) 0, i = 1, p}, ˆΩ 0 := {x R n : g i (x) < 0, i = 1, p} Man beachte, die Menge ˆΩ 0 muss nicht notwendig die topologischen inneren Punkte von ˆΩ enthalten, wähle zum Beispiel n = p = 1, g 1 (x) = 0 Dann sind ˆΩ = R und ˆΩ 0 = 103

Barriereverfahren bestrafen solche Punkte aus ˆΩ 0, die sich dem Rand von ˆΩ 0 nähern Die Gleichheitsnebenbedingungen werden direkt mit Hilfe von Linearisierungen behandelt Diese Gleichheitsnebenbedingungen sind grundsätzlich einfacher zu behandeln als Ungleichungsnebenbedingungen Die Strafterme in den Barriereverfahren, die sogenannten Barriereterme, sind in ˆΩ 0 endlich und wachsen zum Rand dieser Menge nach unendlich an Außerhalb von ˆΩ besitzen sie den Wert Im Gegensatz zu den Penalty Verfahren, bei denen die Strafterme sukzessive immer stärker gewichtet werden, siehe Algorithmus 58, muss bei den Barriere Verfahren der Einfluss der Strafterme immer weiter abgeschwächt werden Damit wird das Gewicht der Zielfunktion im Barriereproblem erhöht und man kann hoffen, dass die Minima der Barriereprobleme unter geeigneten Voraussetzungen gegen ein Minimum von f(x) konvergieren An der Eigenschaft, dass die Barriereterme außerhalb von ˆΩ unendlich sind, ändert man nichts Somit ist garantiert, dass die Minima der Barriereprobleme immer in ˆΩ 0 liegen Definition 511 Skalare Barrierefunktion Eine skalare Barrierefunktion ist eine streng monoton fallende, glatte, konvexe Funktion b : (0, ) R mit lim b(t) = und lim t 0+0 t 0+0 b (t) = Außerdem wird stets b(t) = für t 0 gesetzt, so dass b(t) formal eine auf R definierte konvexe Funktion ist, b : R R { } Beispiel 512 Beispiele für Barrierefunktionen sind b(t) = log t, b(t) = 1 t α, α > 0 Die logarithmische Barrierefunktion ist in gewisser Hinsicht optimal Zur Konstruktion von Barriereverfahren zur Lösung von Problem (56) mit den Nebenbedingungen (57) werden nun Hilfsprobleme der Form { } p f(x) + µ b (d i g i (x)) : g i (x) = 0, i = p + 1,, m (58) inf x R n i=1 betrachtet In (58) ist µ > 0 ein Gewicht für die Barriereterme und die Zahlen d i 0, i = 1,, p, sind Verschiebungen der Ungleichungsnebenbedingungen in (57), das heisst anstatt g i (x) 0 ist nun g i (x) d i erlaubt Diese Verschiebungen gestatten es, dass man das Verfahren auch dann anwenden kann, wenn kein innerer Punkt für (56), (57) bekannt ist Die Zielfunktion von (58) wird abkürzend mit Φ(x; µ, d) = f(x) + µ p b (d i g i (x)) bezeichnet Wir nehmen an, dass (58) ein endliches lokales Minimum besitzt Die gewichtete Summe der Barriereterme in der Zielfunktion garantiert, dass jedes x mit Φ(x; µ, d) R die abgeschwächten Nebenbedingungen g i (x) < d i, i = 1,, p, erfüllt Lemma 513 Falls f(x) und g i (x), i = 1,, p konvex sind, so ist auch Φ(x; µ, d) konvex i=1 104

Beweis: Es ist bekannt, dass die Linearkombination konvexer Funktionen mit nichtnegativen Koeffizienten in der Linearkombination eine konvexe Funktion ist Damit bleibt zu zeigen, dass die Funktionen b (d i g i (x)), i = 1,, p, konvex sind Da die Funktionen, g i (x) konvex sind, gilt für λ [0, 1] d i g i (λx 1 + (1 λ)x 2 ) d i (λg i (x 1 ) + (1 λ)g i (x 2 )) = λ (d i g i (x 1 )) + (1 λ) (d i g i (x 2 )) Mit dieser Aussage, mit der Monotonie von b(t) und der Konvexität von b(t) folgt b (d i g i (λx 1 + (1 λ)x 2 )) b (λ (d i g i (x 1 )) + (1 λ) (d i g i (x 2 ))) λb (d i g i (x 1 )) + (1 λ)b (d i g i (x 2 )) Weiterhin gilt folgende stärkere Aussage Satz 514 Gelten die Voraussetzungen von Lemma 513 sowie lim t b (t) = 0 Die Gleichheitsnebenbedingungen g i (x), i = p + 1,, m seien affin und die Menge der Optimallösungen von (56) sei nicht leer und beschränkt Dann besitzt das Hilfsproblem (58) für jedes µ > 0 eine Optimallösung und die Minima der Barriereprobleme nähern sich der Optimalmenge von (56) Beweis: Siehe Literatur Für Probleme (56), die die Bedingungen dieses Satzes erfüllen, kann man nun das folgende Verfahren konstruieren Algorithmus 515 Barrieremethode für konvexe Probleme 1 Initialisierung Bestimme x (0) R n mit g i (x (0) ) = 0 für i = p + 1,, m Wähle µ (0) > 0 und d (0) 0 so dass d (0) i > g i (x (0) ) für i = 1,, p 2 Iteration k = 1, 2, Wähle λ (k) (0, 1) so, dass mit ( µ (k), d (k)) := λ ( (k) µ (k 1), d (k 1)) gilt ( g i x (k 1)) < d (k) i, für i = 1,, p Ausgehend von x (k 1) führt man nun einige Schritte des Newton-Verfahrens (mit Liniensuche) zum lösen des Barriere-problems aus Das Ergebnis ist x (k) Im ersten Schritt der Iteration werden sowohl das Gewicht als auch der Verschiebevektor verkleinert Der Verkleinerungsfaktor wird so gewählt, dass mit dem neuen Verschiebevektor ( noch alle Ungleichungsnebenbedingungen erfüllt sind Das Minimum x 0 µ (k), d (k)) des Barriereproblems (58) zu den Parametern ( µ (k), d (k)) wird im zweiten Schritt approximiert Da die Barriereterme das Minimum vom Rand der Menge {x : g i (x) d (k) i } abstoßen, kann man nach der Berechnung der ( Näherung x (k) von x 0 µ (k), d (k)) die Verschiebeparameter d (k) i in der folgenden Iteration wieder etwas verkleinern Die Schwierigkeiten von Algorithmus 515 bestehen darin, dass das Newton Verfahren für µ (k) 0 oft schlecht konvergiert Deshalb wird diese Basisherangehensweise nicht genutzt Man kann diese Herangehensweise durch Verfeinerung der Barrieremethode verbessern 105

54 SQP Verfahren In diesem Abschnitt wird ein Zugang vorgestellt, der Punkte berechnet, die die notwendige Optimalitätsbedingung, die im Satz 421 (Kuhn/Tucker) formuliert ist, erfüllen, die sogenannten SQP Verfahren (sequential quadratic programming) Es wird also eine Iteration durchgeführt, bei welcher in jedem Schritt ein quadratisches Optimierungsproblem gelöst wird Wir betrachten wieder das Optimierungsproblem (56) mit den Nebenbedingungen (57) und den gleichen Regularitätsvoraussetzungen wie im Abschnitt 53 Seien x 0 ein lokales Minimum von (56), (57) und z 0 der zugehörige Lagrange Multiplikator zum Lagrange Problem (410) Insgesamt erfüllen (x 0, z 0 ) das Problem, siehe (410), Φ(x 0, z 0 ) = ( x L(x 0, z 0 ) z T 0 g(x 0) ) = ( f(x0 ) + ( g(x 0 )) T z 0 z T 0 g(x 0) ) = 0 (59) mit z 0 0 Da die Gleichheitsbedingungen ohnehin verschwinden, kann man (59) sogar wie folgt schreiben f(x 0 ) + ( g(x 0 )) T z 0 z 0,1 g 1 (x 0 ) Φ(x 0, z 0 ) = z 0,p g p (x 0 ) = 0 (510) g p+1 (x 0 ) g m (x 0 ) SQP Verfahren wollen das nichlineare Problem (510) mit einem Verfahren vom Newton Typ lösen Dazu benötigt man die Jacobi Matrix von Φ(x, z), die durch Ψ (x, z, H L,x (x, z)) H L,x (x, z) g 1 (x) g p (x) g p+1 (x) g m (x) z 1 ( g 1 (x)) T g 1 (x) 0 = z p ( g p (x)) T g p (x) ( g p+1 (x)) T 0 0 ( g m (x)) T R (n+m) (n+m) gegeben ist Ein wesentliches Merkmal eines SQP Verfahrens besteht darin, dass die teure Hesse Matrix H L,x (x, z) in der Regel durch eine einfacher zu berechnende Matrix ersetzt wird Unter geeigneten Voraussetzungen kann man zeigen, dass die Jacobi Matrix Ψ (x 0, z 0, H L,x (x 0, z 0 )) nichtsingulär ist und dass das Newton Verfahren zur Nullstellenbestimmung von Φ(x, z) quadratisch konvergiert Sei eine aktuelle Iterierte (x (k), z (k) ) T gegeben Die Newton Korrektur ( x (k), z (k) ) T berechnet sich als Lösung des Gleichungssystems ( ) ( Ψ x (k), z (k), H L,x (x (k), z (k) ) x (k), z (k)) T = Φ(x (k), z (k) ) Beim Newton Verfahren kann man im allgemeinen jedoch nur lokale Konvergenz erwarten, dass heisst, der Startwert muss nahe genug an der (unbekannten) Lösung 106

sein Speziell für die Funktion Φ(x, z) kann man auch nicht garantieren, dass alle Iterierten die Ungleichungen g i (x (k) ) 0 und die Nichtnegativitätsbedingung z (k) i 0 erfüllen Damit ist es möglich, dass das Newton Verfahren gegen eine nicht zulässige Lösung von Φ(x, z) = 0 konvergiert, bei der Nebenbedingungen nicht erfüllt sind oder die Lagrange Multiplikatoren negativ sind Die Konvergenz gegen eine solche Lösung muss verhindert werden Dazu wird anstelle des Newton Verfahrens das System ( Ψ x (k), z (k+1), B (k)) ( x (k), z (k)) T = Φ(x (k), z (k) ) (511) betrachtet, wobei x (k), z (k) und z (k+1) = z (k) + z (k) die zusätzlichen Forderungen z (k+1) i 0 für i = 1,, p, (512) g i (x (k)) ( + (g i x (k))) T x (k) 0 für i = 1,, p (513) erfüllen Im Vergleich zum Newton Verfahren ersetzt man H L,x (x (k), z (k) ) durch eien Matrix B (k), die in der Regel durch gewisse Quasi Newton Korrekturen (sogenannte Broyden Verfahren) erzeugt wird Des weiteren wird der Vektor z (k) auf der linken Seite durch z (k+1) ersetzt Man erhält ein implizites Gleichungssystem, welches nicht mehr linear bezüglich der Lagrange Multiplikatoren ist Außerdem werden noch die linearen Ungleichungsbedingungen (512), (513) an x (k) und z (k) gestellt Ausgeschrieben besagt (511) (513) f ( x (k)) + B (k) x (k) + ( z (k+1) i (g i x (k)) + m i=1 z (k+1) i g i (x (k)) = 0, ( g i ( x (k))) T x (k) ) g i (x (k)) ( + ( g i x (k))) T x (k) Wir betrachten das folgende quadratische Programm unter den Nebenbedingungen = 0, i = 1,, p, (514) = 0, i = p + 1,, m ( ( z = min f x (k))) T 1 s + s R n 2 st B (k) s (515) g i (x (k)) ( + ( g i x (k))) T s 0, i = 1,, p, (516) g i (x (k)) ( + ( g i x (k))) T s = 0, i = p + 1,, m (517) Erfülle dieses Problem die Voraussetzungen des Satzes 421 (Kuhn/Tucker) Dann sind die notwendigen Bedingungen für ein Minimum gerade die Gleichungen (514) Übungsaufgabe Damit ergibt sich folgendes Verfahren: Algorithmus 516 SQP Algorithmus (Grundform) 1 Initialisierung Wähle x (0) R n, B (0) = ( B (0)) T ( ( HL,x x (0), z (0))) für ein z (0) R m mit z (0) i > 0, i = 1,, p 2 Iteration k = 0, 1, 2, 107

Bestimme die Lösung s von (515) - (517) und einen zugehörigen Lagrange-Multiplikator z Setze x (k+1) = x (k) + s, z (k+1) = z Bestimme eine symmetrische Matrix B (k+1) H L,x (x (k+1), z (k+1)) Falls B (k) positiv semidefinit ist, dann ist (515) (517) ein konvexes quadratisches Programm In diesem Fall sind die Bedingungen des Satzes 421 notwendig und hinreichend für ein globales Minimum, siehe auch Satz 324 Zur Lösung kann man beispielsweise ein Projektionsverfahren nehmen, siehe Abschnitt 51 108

Literaturverzeichnis [Bor01] Karl Heinz Borgwardt Optimierung, Operations Research, Spieltheorie Birkhäuser Verlag Basel Boston Berlin, 2001 [ERSD77] K-H Elster, R Reinhardt, M Schäuble, and G Donath Einführung in die nichtlineare Optimierung, volume 63 of Mathematisch Naturwissenschaftliche Bibliothek BSB BG Teubner Verlagsgesellschaft Leipzig, 1977 [JS04] F Jarre and J Stoer Optimierung Springer Verlag Berlin Heidelberg, 2004 109

Index aktive Nebenbedingung, 91, 101 Armijo Liniensuche, 100 Ausartung, 19, 26, 32 duales Programm, 51 ausgeartete Basislösung, 16 Ausgleichsrechnung, 71 Barrierefunktion skalare, 104 Barrieremethoden, 103 Basislösung, 15 benachbart, 19 Basiszyklus, 32 duales lineares Programm, 44 symmetrisch, 47 duales Problem, 98 Dualitätslücke, 64 Dualitätssatz schwacher, 44 starker, 44 Ellipsoidmethode, 61 Engpassmethode, 28 entartete Basislösung, 16 Fibonacci Suche, 77 Fibonacci Zahlen, 77 Funktion konkav, 82 konvex, 82 unimodal, 74 goldener Schnitt, 76 größter ganzzahliger Bestandteil, 58 Hauptelement, 24 Hauptspalte, 24, 51 Hauptzeile, 24, 51 Hesse Matrix, 84 Hyperebene, 80 Innere Punkt Verfahren, 61 Innere Punkte Verfahren zulässige, 63 Kegel konvexer, 80 Komplementaritätssatz, 47, 48 Komplexität, 37 worst case, eines Algorithmus, 38 worst case, eines Problems, 38 konvergent gerichtet, 88 konvex, 7 konvexe Hülle, 8 konvexe Linearkombination, 8 konvexe Menge Eckpunkt, 8 Extrempunkt, 8 konvexes Polyeder, 9 Kuhn Tucker Bedingung, 94 Kurz Schritt Algorithmus, 67 Lagrangesche Methode, 87 Lagrangesche Multiplikatoren, 87 lineares Optimierungsproblem, 7 lineares Optimierungsproblem in 1 Normalform, 10 lineares Programm, 7 ganzzahlig, 56 lineares Programm in 2 Normalform, 15 lineares Programm in Normalform, 10 linearisierter Kegel, 91 M Methode, 31 Methode der ε Störung, 32 Newton Verfahren, 62 Operations Research, 5 Optimalitätskriterium, 51 Penalty Funktion, 102 Penalty Verfahren, 102 Pivotelement, 24, 51 primales lineares Programm, 44 primales Problem, 97 Projektionsverfahren, 99 Rechteckregel, 24 Residuum, 65 110

Rucksackproblem, 5 Rundreiseproblem, 3 Sattelpunkt, 95 Schlupfvariable, 15, 28 Schnittbedingung, 57 Simplex, 19 Simplexmethode duale, 49 Hauptsatz, 20 Hauptsatz der dualen, 50 lexikographische, 35 Simplextabelle, 23 dual, 51 duale, 51 SQP Verfahren, 106 stationärer Punkt, 100 Strafparameter, 102 Tangentenkegel, 89 Trennung von Mengen, 80 Trennungssatz, erster, 81 unimodal, 74 Unterhalbmenge, 85 Variablen künstliche, 30 Vektor lexikopositiv, 35 Verfahren von Karmarkar, 62 zentraler Pfad, 64 Zielfunktion, 10, 71 zulässige Basislösung, 16 zulässiger Bereich, 7, 11 zulässiger Punkt, 11 Zweiphasenmethode, 30 111