1 Laufzeit der Simplex-Methode

Ähnliche Dokumente
Lineare Optimierung: Simplexverfahren Phase Ⅰ

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

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

Eigenschaften von LPs

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

Schnittebenenverfahren von Gomory. Stefan Allescher 30. Juni 2005

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

10. Die Berücksichtigung nicht vorzeichenbeschränkter Variablen

Optimierung. Vorlesung 04

Der Simplex-Algorithmus

Operations Research. Ganzzahlige lineare Programme. ganzzahlige lineare Programme. Ganzzahlige lineare Programme. Rainer Schrader. 25.

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

Übung 3, Simplex-Algorithmus

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

Klausurrepetitorium ABWL

Optimierung für Wirtschaftsinformatiker: Lineare Programme

Kombinatorische Optimierung

Aufgaben zu Kapitel 23

1. Lineare Optimierungsaufgaben (LOA) als Teilklasse konvexer Optimierungsprobleme. f(x) min, x G (1.1) (Legende)

Kap. 4.3: Das Dualitätstheorem der linearen Optimierung

Das Linear Ordering Problem Exakte Lösungsverfahren. für NP-schwierige. VO Algorithm Engineering

4.3.3 Simplexiteration

Dr. Anita Kripfganz SS 2014

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

Dualitätssätze der linearen Optimierung

Die duale Simplexmethode

Teil I. Lineare Optimierung

Ganzzahlige lineare Programme

Inhaltsübersicht für heute:

Seminar Ausgewählte Kapitel des Operations Research Die Allgegenwärtigkeit von Lagrange (Teil 1)

Aufgabe 5.3 Duale Simplexverfahren

Lösung allgemeiner linearer Programme

Probeklausur Optimierung

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

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

Lineare Optimierung Teil 2

Kap. 4: Lineare Programmierung

Mathematische Grundlagen für Wirtschaftswissenschaftler Lösungshinweise zu den Übungsaufgaben aus Kapitel 3 - Lineare Optimierung

Optimale Steuerung 1 Prozessoptimierung 1

1 Der Simplex Algorithmus I

Inhaltsverzeichnis Grundlagen der Linearen Optimierung

Einführung in die Lineare Programmierung

CARL HANSER VERLAG. Peter Stingl. Operations Research Linearoptimierung

Kapitel 7 : Lineare Programmierung Die Simplexmethode (G.B.Dantzig, 1947) Beispiel:

8. Lineare Optimierung

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

Leibniz Universität Hannover Wirtschaftswissenschaftliche Fakultät Institut für Produktionswirtschaft Prof. Dr. Stefan Helber

Sandro Pirkwieser, (Bin Hu, Jakob Puchinger) SS 2010

Lineare (Un-)Gleichungen und lineare Optimierung

Angewandte Mathematik für die Informatik

Branch-and-Bound und Varianten. Kapitel 3. Branch-and-Bound und Varianten. Peter Becker (H-BRS) Operations Research II Wintersemester 2014/15 98 / 159

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

Berufliches Gymnasium (WG, EG, AG, SG) Hauptprüfung 2008 Teil 2, Lineare Optimierung, Aufgabe 2 Baden-Württemberg

H. Meyerhenke: Kombinatorische Optimierung. Paralleles Rechnen, Institut für Theoretische Informatik, Fakultät für Informatik

10. Komplexität der Linearen Optimierung und Innere Punkte Methoden

Optimierungsverfahren in der Transportlogistik

Vorlesung Lineare Optimierung (Sommersemester 2009)

mit. Wir definieren (Skalarprodukt = Winkel).

Inhaltsverzeichnis. 4 Praxisbeispiel 7

Inhalt. 8.1 Motivation. 8.2 Optimierung ohne Nebenbedingungen. 8.3 Optimierung unter Nebenbedingungen. 8.4 Lineare Programmierung

Grundlagen der Optimierung. Übung 6

3. Schnittebenenverfahren

Studientag zur Algorithmischen Mathematik

Klausur zur Vorlesung Einführung in das Operations Research im Wintersemester 2007/2008

Optimierung für Nichtmathematiker

Operations Research. Linearoptimierung. Bearbeitet von Peter Stingl

3.4 Exakte Verfahren für (Gemischt-) Ganzzahlige Optimierung

Lineare Programmierung

Die duale Simplexmethode zur Lösung rein ganzzahliger linearer Programme

Ganzzahlige Optimierung (IP)

Aufgabenkomplex 5: Hauptachsentransformation, Lineare Optimierung, Differentialrechnung in mehreren Veränderlichen

Perlen der Informatik I Wintersemester 2012 Aufgabenblatt 7

Lineare Optimierung und Simplex-Algorithmus

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

6 Korrektheit des Simplexalgorithmus

10.2 Dualitätstheorie Operations Research. In der Standardform eines Maximierungsproblem: b e ) mit ( w) + a ej ) x j + x g = ( b g + g G

9 Lineare Gleichungssysteme

Kap. 4.2: Simplex- Algorithmus

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

Vorlesung Lineare Optimierung (Sommersemester 2010)

Simplex-Verfahren. Kapitel 3. Simplex-Verfahren. Peter Becker (H-BRS) Lineare und kombinatorische Optimierung Wintersemester 2017/ / 372

4 Lineare Optimierung

Hauptsatz und Optimalitätskriterium der Simplexmethode

Optimierungsalgorithmen

Vorkurs Mathematik. Übungen Teil IV

Innere-Punkt-Methoden

Effiziente Algorithmen II

3.6 Branch-and-Bound-Verfahren

Mathematik für Studierende der Biologie und des Lehramtes Chemie

7.1 Matrizen und Vektore

Wann darf man Runden? Niveaumengenansatz für die nichtlineare ganzzahlige Programmierung

Betriebliche Optimierung

Numerische Lineare Algebra

Lineares Programmieren Algorithmentechnik WS 09/10 Dorothea Wagner 7. Januar 2010

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

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

1 Lineare Optimierung, Simplex-Verfahren

Chinese Postman Problem Hamiltonsche Graphen und das Traveling Salesman Problem Max-Flow-Min-Cut...151

Lineares Optimieren. W. Kippels 12. April Inhaltsverzeichnis. 1 Einleitung 2. 2 Die Beispielaufgabe 2. 3 Einführung von Schlupfvariablen 2

Theoretische Informatik. Exkurs: Komplexität von Optimierungsproblemen. Optimierungsprobleme. Optimierungsprobleme. Exkurs Optimierungsprobleme

Transkript:

1 Laufzeit der Simplex-Methode Es soll zum Abschluss des Seminars ein kurzer Blick auf die Laufzeit bzw. den Rechenaufwand der Lösung eines LPs mit dem Simplex-Algorithmus geworfen werden. Rechenaufwand meint hier die Anzahl der benötigten elementaren Rechenoperationen wie Addition, Multiplikation, Vergleiche, Mengenoperationen, etc.). Klee-Minty-Würfel Victor Klee und George J. Minty haben 1973 eine Klasse von Problemen mit einer m 2m Matrix A angegeben und damit einen Würfel konstruiert, bei dem mit der Pivotregel von Dantzig alle Ecken abgeschritten und damit 2 m 1 Austauschschritte benötigt werden. Das bedeutet: Im schlechtesten Falle benötigt die Simplxmethode also (als obere Schranke) eine exponentionelle Laufzeit und ist damit NP-schwer. Der n-dimensionale Klee-Minty-Würfel X n ist gegeben durch den zulässigen Bereich des Problems max x n unter 0 x 1 1 ɛx i x i+1 1 ɛx i für alle i = 1,..., n 1 mitɛ (0, 1 2 ) Damit ergibt sich im 2-dimensionalen ein Trapez und im 3-dimensionalen ein verzerrter Würfel bzw. Quader. Satz 1.1 Der Polyeder X n besitzt genau 2 n Ecken. Beweisidee: Ecken des Polyeders durch geschickte Konstruktion mit den Ecken des n dim. Einheitswürfel identizieren. Dieser kann durch 2n lineare Gleichungen beschrieben werden, hat aber 2 n Ecken. Mit den Restriktionsvektoren entsteht eine Matrix mit Determinantenbetrag 1, dh. die Matrix ist regulär und die einzelnen Spalten damit linear unabhängig. Folgerung: Die Zahl der Ecken eines Polyeders (Zahl der Basislösungen des zulässigen Bereichs) kann exponentiell zur Anzahl der Variablen (und damit der Ungleichungen) sein. Der Polyeder X 3 besitzt genau 2 3 = 8 Ecken. Satz 1.2 Es gibt einen Simplexpfad, der alle Ecken des Polyeders X n durchläuft. Beweisidee: Konstruktion einer kombinatorischen Folge mit monoton wachsenden x n -Werten. 1

Abbildung 1: Maximaler Simplexpfad mit n = 3, ɛ = 1/3 Der Polyeder X 3 besitzt genau 2 3 = 8 Ecken und das Simplexverfahren kann von 0 ausgehend in Richtung x 3 genau 7 = 2 3 1 Schritte ausführen. Pivotregeln Der Klee-Minty-Würfel bezieht sich explizit auf die Pivotregel des Ernders des Simplex- Algorithmuses, die Dantzig-Regel, mit der wir uns auch in diesem Seminar beschäftigten. Ähnliche Beispiele wurden mittlerweile allerdings mit allen bekannten Pivotregeln gefunden, jedoch sind die konstruierten Gegenbeispiele wesentlich komplexer. Als Beispiel hier zwei explizite Pivotregeln. Dantzig-Regel: Pivotisiert wird stets zu der Spalte der Nichtbasisvariablen, bei der der Wert für qs T, s J minimal ist. Die Pivotzeile ergibt sich aus dem minimalen Wert des charakteristischen Koezienten. Bland-Regel: Pivotisiert wird stets die Spalte der lexikograsch kleinsten Nichtbasisvariablen mit der Zeile der lexikograsch kleinsten Basisvariablen. Die Frage, ob es eine Pivotregel mit polynomieller Laufzeit des Simplex-Algorithmus gibt, ist bis heute ungeklärt. 2

Theorie und Praxis Im Gegensatz aber zu diesen theoretischen Überlegungen der worst-case-laufzeit sieht die Praxis oft anders aus: Viele auftretenden LPs lassen sich tatsächlich ezient mit dieser Methode lösen. Da das Simplexverfahren und seine Varianten der dualen oder revidierten Simplexmethode zu den am besten erprobten Verfahren zählt, lässt sich eine empirische Faustformel für reale Probleme angeben. Die Zahl der benötigten Austauschschritte steigt etwa linear mit der Zahl der Zeilen m und Spalten n der m n-matrix A der Restriktionen an. Der Rechenaufwand pro Austauschschritt wiederum wächst quadratisch mit m und linear mit n an, sodass insgesamt ein polynomialer Aufwand zu konstatieren ist (vgl. Neumann/Morlock 2004, 160). Dieser doch erhebliche Unterschied zwischen empirischer Beobachtung und theoretischer Feststellung geht man seither nach. Zu nennen seien an dieser Stelle Borgward (1977) und Spielman/Teng (2011) die jeweils in ihren mathematischen Arbeiten (leider extrem strenge und eingrenzende) Bedingungen an die Nebenbedingungsmatrix A herausfanden, mit der der Simplex- Algorithmus allgemeingültig eine polynomiale Laufzeit annimmt. 2 Ganzzahlige Lineare Optimierung z = c T x min bei Ax b, x 0, x ganzzahlig (1) Die ganzzahlige lineare Optimierung ist ein Spezialfall der linearen Optimierung. Es geht um die Optimierung einer linearen Zielfunktion mit Einschränkungen durch lineare (Un-)Gleichungen. Anders jedoch ist die Beschränkung des Wertebereichs einiger oder aller Variablen auf Ganzzahligkeit. Das führt dazu, dass unter der Ganzzahligkeitsbeschränkung meist das zugrundeliegende, konvexe Polyeder nicht genau bekannt und die Komplexität somit um ein Vielfaches erhöht ist. Rechenaufwand Während LPs prinzipiell polynomial lösbar sind bpsw. mit dem Innere-Punkt-Verfahren oder mit gewissen Voraussetzungen an die Nebenbedingungsmatrix auch durch den Simplex-Algorithmus, stellt das Finden einer Optimallösung für ganzzahlige Optimierungsaufgaben ein NP-schweres Problem dar. Begriichkeit Gebräuchlich sind auch die Begrie der diskreten Optimierung oder der ganzzahligen (linearen) Programmierung [integer (linear) programming, IP], wobei 'Programm' im Sinne von 'Planung' zu verstehen ist. Lösbarkeit Eine Besonderheit von IPs ist, dass sie im Gegensatz zu LPs nicht nur unlösbar, unbeschränkt oder ansonsten eine Optimallösung aufweisen können. IPs können zusätzlich generell lösbar und beschränkt sein, jedoch keine Optimallösung besitzen, oder aber eine andere endliche Anzahl an Optimallösungen ( 1) haben als genau eine. 3

Dies wollen wir an einem Beispiel veranschaulichen. Dazu denieren wir uns im Vorfeld die Menge P, die durch Weglassen der Ganzzahligkeitsforderung entsteht Denition 2.1 P := {x R Ax b, x 0} (2) P bildet ein konvexes Polyeder, dessen beschränkende Ebenen die Ungleichungsnebenbedingungen widerspiegeln. Dieses Polyeder enthält unter anderem alle zulässigen Punkte unserer ganzzahligen Optimierungsaufgabe, aber anders als bei LP sind nicht alle Punkte im Polyeder zulässig (durch die Weglassung der Ganzzahligkeitsbeschränkung)! Denition 2.2 Das LP bzw. die lineare Optimierungsaufgabe zu (1) f = c T x min bei Ax b, x 0 (3) heiÿt Relaxation bzw. LP-Relaxierung des ganzzahligen Problems (1) und spielt eine bedeutende Rolle bei dessen Lösung, wie wir gleich sehen werden. Vorher aber das versprochene Beispiel zur Anschauung der zulässigen Menge eines IP und dem Fall mehrerer optimaler Lösungen ungleich unendlich viele. Beispiel 2.3 Wir betrachten eine Aufgabe zur Maximierung (!) des Funktionswertes max y x, y Z 0 x + y 1 3x 2y 12 2x + 3y 12 Die zulässigen ganzzahlligen Punkte sind in der Grak rot eingezeichnet. Sie werden ummantelt von ihrer konvexen Hülle, also dem kleinsten Polyeder, das alle dieser Punkte beinhaltet (gestrichelte rote Linie). von Sdo - Self-made using xg and g2dev (see http://www.xg.org/), CC BY-SA 2.5, https://commons.wikimedia.org/w/index.php?curid=1051376 4

Die blauen Geraden begrenzen das Polyeder P der LP-Relaxierung unseres Beispiels (also ohne Ganzzahligskeitsbedingung). Da der y-wert hier maximiert werden soll, muss die schwarzgestrichelte Linie bis zum ersten Berührungspunkt mit den Polyedern parallel verschoben werden. Es werden nun mehrere allgemeine Erkenntnisse anschaulich sichtbar. Die Lösung des IPs ist immer (bei Maximierungsproblemen) bzw. (bei Minimierungsproblemen) als die Lösung des zugehörigen LP-Relaxation (also immer weniger 'optimal')). Die zulässigen Punkte liegen auf einem Gitter. Die Menge der zulässigen Punkte eines IPs ist nicht mehr konvex. Es kann mehr als eine Optimallösung geben, in diesem Fall die Punkte (1, 2) und (2, 2) mit dem Zielfunktionswert 2. 2.1 Anwendung ganzzahliger Optimierung Durch die Beschränkung auf ganzzahlige Lösungswerte wird der Anwendungsbereich der Modellierung wesentlich vergröÿert und die Optimierung zu einem Werkzeug für viele praktischer Probleme. Grund dafür sind zwei wesentliche Anwendungseigenschaften: 1. Variablen können aus praktischen Gründen nur ganzzahlige Werte annehmen z. Bsp. können nicht 1,6 Autos produziert werden 2. Entscheidungsmuster mit JA und NEIN können (mittels Binärvariablen) modelliert und optimiert werden z. Bsp. eine Route links oder rechts fortsetzen Einige Anwendungsbereiche möchte ich im Folgenden aufzeigen und kurz anreiÿen, ohne eine vollständige Aufzählung oder eine tiefgründigere Beschreibung zu geben. Produktionsplanung Wie bereits erwähnt können in vielen Fällen nur ganzzahlige Produkte hergestellt oder ganzzahlige Ressourcen verwendet werden. So kann ein Unternehmen nur entweder 70 oder 71 Regenschirme herstellen, 15 oder 16 Mschinen einsetzen, 2.000 oder 2.001 Kartons lagern oder 3 oder 4 Mitarbeiter beschäftigen. Um diese Beschränkung der Variablen aus praktischen Gründen modellieren und optimieren zu können, wird die ganzzahlige Optimierung benötigt. (personenungebundene) Dienstplanung Um den Dienstplan eines Supermarktes oder des öentlichen Nahverkehrsunternehmens zu planen und den Önungszeiten bzw. den Fahrplan einzuhalten, müssen Entscheidungen getroen werden (fährt der Bus A/Busfahrer B oder fährt er nicht). Um also die Aufteilung von zei Mengen aufeinander zu optimieren (Menge der Busfahrer auf die Menge der Busse; Menge der Verkäuferinnen auf die Menge der Arbeitszeiten oder der Kassen), wird eine ganzzahlige Optimierung (meist auch mittels Binärvariablen) benötigt. 5

Routenplanung Ähnliche Anwendung ndet sie in der Tourenplanung. Bei diesem klassischen Einsatzgebiet geht es um das Finden einer kürzesten Route, bspw. für Postboten oder Handwerker, die einen kurzen Weg und wenig Zeit benötigen wollen, aber auch in Verkehrs-Apps wie der DVB- oder DB-App. Auch hier ndet sich die Beschränkung auf ganzzahlige Variablen wider. Binärprogrammierung Als bereits erwähnter Spezialfall tritt die Binärprogrammeíerung auf. Hier ist die Beschränkung nicht nur auf ganzzahlige Werte, sondern auf Werte aus {0,1} gegeben. Hierbei besteht geometrisch eine direkte Verbindung zur Lösungssuche von Boolschen Funktionen aus dem Boolschen Semiring und damit äquivalent zum Finden von 0/1 P unkten in Schnitt und Vereinigung von hochdimensionalen Polytopen. Diese Methode wird disjunkte Programmierung genannt und gehört aufgrund der kombinatorisch-schwierigen Problematik zu den NP-vollständigen Problemen. 2.2 Branch-and-Bound-Verfahren Im Unterschied zu LPs, die durch die Innere-Punkt-Methode in polynomialer Zeit lösbar sind, ist das Finden von Optimallösungen für IPs NP-schwer. Deshalb unterscheidet man bei den Lösungsverfahren exakte und heuristische Verfahren. Zu den erste Verfahren gehört das sogenannte Branch-and-Bound bzw. Branch-and-Cut-Verfahren. 1. Lösen der LP-Relaxierung f(x) min für das IP z(x) min mittel Simplex-Algorithmus 2. Unterscheidung der erhaltenen Lösung (a) Lösung ist ganzzahlig fertig. (b) Lösung ist nicht ganzzahlig i. branch: schrittweise Zerlegung von G in disjunkte Teilmengen G, G mit G = G G und = G G und damit verbundene Teilprobleme, sodass jede zulässige Lösung in einem dieser Teilprobleme enthalten ist. ii. bound: Gewinnung von unteren Schranken auf allen erzeugten Teilmengen G, G durch 'einfache' Hilfsaufgaben wie LP ohne Ganzzahligkeitsforderung: Schranke d(g ) f(x), x G iii. Entscheidung: Abbruch und keine weitere Verzweigung bei... A. G = B. d(g ) f(x) 6

C. d(g ) = f(x), x G... sonst Beginn erneut bei Schritt 2. Auf diese Weise entsteht ein Verzweigungsbaum mit der LP-Relaxierung als Ausgangspunkt, der solange fortgeführt wird, bis eine ganzzahlige Lösung gefunden wird. 2.3 Anwendung des Branch-and-Bound in der ganzzahlligen linearen Optimierung Im Folgenden wenden wir den das Branch-and-Bound-Verfahren nach Land/Doig/Dakin mit dem Simplex-Algorithmus als Lösungsverfahren für die Hilfsprobleme der LP-Relaxierungen an. Die Aufgabenstellung soll also lauten: z = c T x min, bei (1) (2) = Ax = b, x 0, (4) x ganzzahlig x T N (= 0) 1 ( x B = P p mit p 0, q 0 xb ) ( x N = p 0) ist optimale Lösung z = q T q 0 Zum besseren Verständnis des branch-and-bound-verfahrens wollen wir uns folgendes einfaches im Sinne von wenig Variablen und Zeilen Beispiel anschauen. Aufgabe 2.4: z = 3x 1 x 2 min, bei 4x 1 + 3x 2 6, x i 0, ganzz. Wir können durch Einfügen einer Schlupfvariable die Restriktion als Gleichung ausdrücken 4x 1 3x 2 +x 3 = 6 und sofort eine triviale Startlösung dieser Gleichung mit x = (0, 0, 6) T ablesen. Da diese Startlösung bereits ganzzahlig ist, erhalten wir eine erste Referenzlösung für unseren Algorithmus: x = ( ) 0 (= (0, 0, 6) T ), f = 0 (5) 0 Zunächst lösen wir das stetige Relaxationsproblem und stellen das Simplex-Tableau auf: x 1 x 2 1 x 3 = -4-3 6 z = -3-1 0 Da q T 0, ist das Schema oensichtlich noch nicht optimal. Wir führen einen Austauschschritt mit dem revidierten Simplextableau durch. Die Pivotspalte ist x 1 mit dem kleinsten q T -Wert 3 die Pivotzeile ist klar. 7

Erinnerung Austauschschritt x l x k nach den bekannten Regeln: = 1 P lj = P ik = P ij = q 0 = P lj P ik P ij P lj P ik q 0 p l q k mit j J N (x) \ {k}, i J B \ {l} pl = p l pi = p i p l P ik qj = q j P lj q k qk = q k Es folgt: x 1 x 3 x 3 x 2 1 x 1 = -1/4-3/4 3/2 d(g) = 9 2 < f = 0 z = 3/4 5/4-9/2 Dieses Schema ist oensichtlich optimal und liefert uns eine erste untere Schranke (lower bound) mit d(g) = 9 2 welche zulässigerweise kleiner als der Funktionswert unserer ersten Referenzlösung ist. Da die Basisvariable x 1 / Z, verzweigen wir nun die Menge der zulässigen Lösungen in: G 1 = {x G : x 1 3 2 } = {x G : x 1 1} und G 2 = {x G : x 2 3 2 + 1} = {x G : x 1 2} Aus methodischen Gründen schauen wir uns zunächstdie Lösung des relaxierten Problems für G 2 an: Die neu einzufügende Restriktion lautet mithilfe der neuen Schlupfvariablen x 5 : x 1 2 x 1 = 2 + x 5 Wie letzte Woche im Dualen Simplexalgorithmus kennen gelernt schreiben wir x 1 nun als Kombination der Nichtbasisvariablen, um die neue Restriktion als neue Zeile in das Tableau übernehmen zu können. Es gilt also: x 1 2 = x 5 3/4x 2 1/4x 3 + 3/2 2 = x 5 und das neue Tableau ist: G 2 1 x 3 x 2 1 x 1 = -1/4-3/4 3/2 kein weiterer Basiswechsel mgl. x 5 = -1/4-3/4-1/2 G 2 =, d(g 2 ) = > f = 0 z = 3/4 5/4-9/2 Das Simplextableau des relaxierten Problems für G 2 bleibt zwar formal optimal, allerdings nicht zulässig, da p 0. Dies lässt sich aber auch durch weitere Duale Schritte nicht ändern, da die komplette Zeile x 5 im Schema 0 ist. G 2 wird damit nicht weiter verzweigt und verworfen. 8

Zu betrachten bleibt nun noch G 1. Das relaxierte Problem für G 1 ergibt sich mit selben Vorgehen G 1 1 x 3 x 2 1 (x 4 = 1 + 3 4 x 2 + 1 4 x 3 3 2 ): x 1 = -1/4-3/4 3/2 x 4 = 1/4 3/4-1/2 z = 3/4 5/4-9/2 Die nun erhaltene Lösung ist zwar formal optimal, jedoch noch nicht zulässig Wir führen also die Duale Simplexmethode durch, um p 0 zu erreichen. Die Pivotzeile ist also x 4 ) und wir wählen die Spalte mit dem kleinsten charakteristischen Quotienten (hier also 5/3, siehe nächstes Tableau). Es folgen die üblichen Austauschschritte im Dualen Simplex-Algortihmus. G 1 1 x 3 x 2 1 x 1 = -1/4-3/4 3/2 x 4 = 1/4 3/4-1/2 z = 3/4 5/4-9/2 q j P l j 3 5/3 x 4 x 2 G 1 2 x 3 x 4 1 x 1 = 0-1 1 x 2 = -1/3 4/3 2/3 z = 1/3 5/3-11/3 d(g 1 ) = 11/3 < f = 0 Das Ergebnis liefert uns ein zulässiges und optimales Ergebnis des relaxierten Problems für G 1. Auÿerdem haben wir x 1 Z, jedoch x 2 / Z. Es ist demzufolge notwendig, die Menge der zulässigen Lösungen nochmals zu verzweigen in 2 G 11 = {x G : x 2 } = {x G : x 2 0} 3 und G 12 = {x G : x 2 2 3 + 1} = {x G : x 2 1} In der ersten Verzweigung stellen wir die neue Restriktion zunächst mithilfe einer neuen Schlupfvariable x 6 um in: x 2 0 x 6 = x 2 x 6 = ( 1 3 x 3 + 4 3 x 4 + 2 3 ) und fügen sie in das vorherige Tableau an. Da wir mit dieser Zeile unsere Zulässigkeit verlieren, führen wir erneut einen Schritt im Dualen Simplex-algorithmus durch. Unsere Pivotzeile ist x 6 und die Pivotspalte ergibt sich aus dem einzigen nicht-negativen Eintrag der Pivotzeile in der x 3 -Spalte. G 11 1 x 3 x 4 1 x 1 = 0-1 1 x 2 = -1/3 4/3 2/3 x 6 = 1/3-4/3-2/3 z = 1/3 5/3-11/3 x 6 x 3 G 11 2 x 6 x 4 1 x 1 = 0-1 1 x 2 = -1 0 0 x 3 = 3 4 2 z = 1 3-3 d(g 11 ) = 3 =: f Wir erhalten jetzt für das relaxierte Problem in G 11 eine zulässige und optimale Lösung, bei der alle x-werte sogar in Z liegen. Unsere Lösung ist ganzzahlig mit einem Zielfunktionswert von 3 9

und wir können unsere erste Referenzlösung nun verbessern und neubelegen mit x = (1, 0) T und f = 3. Wir haben nun zwar eine ganzzahlige Lösung unserer Optimierungsaufgabe gefunden, wissen jedoch noch nicht, ob im Parallelzweig die Lösung nicht noch besser ist und damit die Relaxion in G 11 gar nicht optimal wäre. G G 1 G 2 = G 11 : f = 3 G 12 =? Aus diesem Grund schauen wir uns die Relaxion für G 12 an und fügen die umgeschriebene, neue Restriktion in das Tableau an. x 2 1 x 2 = 1 + x 7 x 7 = x 2 1 x 7 = 1/3x 3 + 4/3x 4 1/3 G 12 1 x 3 x 4 1 x 1 = 0-1 1 G 12 2 x 3 x 7 1 x 1 = -1/4-3/4 3/4 x 2 = -1/3 4/3 2/3 x 7 = -1/3 4/3-1/3 x 7 x 4 x 2 = 0 1 1 x 4 = 1/4 3/4 1/4 d(g 12 ) = 13 4 < f = 0 z = 1/3 5/3-11/3 z = 3/4 5/4-13/4 Das erhaltene Simplex-Tableau erfüllt die Zulässigkeits- und Optimalitätsbedingung, doch die Lösung ist nicht ganzzahlig. Wir müssen also erneut verzweigen und wählen dafür die Zeile mit dem gröÿten nicht-ganzzahligen x-wert. G 121 = {x G : x 1 3 4 } = {x G : x 1 0} und G 122 = {x G : x 1 3 4 + 1} = {x G : x 1 1} Die Lösung des relaxierten Problems für G 121 mit den bekannten Vorgehen liefert: G 121 1 x 3 x 7 1 x 1 = -1/4-3/4 3/4 G 121 2 x 3 x 8 1 x 1 = 0-1 0 x 2 = 0 1 1 x 4 = 1/4 3/4 1/4 x 8 x 7 x 2 = -1/3 4/3 2 x 4 = 0 1 1 d(g 121 ) = 2 > f = 3 x 8 = 1/4 3/4-3/4 x 7 = -1/3 4/3 1 z = 3/4 5/4-13/4 z = 1/3 5/3-2 10

Wir bekommen eine zulässige, ganzzahlige und scheinbar auch optimale Lösung des relaxierten Problems. Jedoch ist der Zielfunktionswert dieser Relaxion gröÿer als der der bisherigen Referenzlösung für G 11. Da der Zielfunktionswert auch gleichzeitig die untere Schranke für weitere Verzweigungen auf diesem Pfad ist, sind oensichtlich keine Verbesserungen zu erwarten. Die Relaxion für G 121 wird zugunsten des bisherigen Ergebnisses für G 11 verworfen. Es bleibt die zweite Verzweigung G 122 zu überprüfen: x 1 = 1 + x 9 x 9 = x 1 1 x 9 = 1/4x 3 3/4x 7 1/4 G 122 1 x 3 x 7 1 x 1 = -1/4-3/4 3/4 x 2 = 0 1 1 x 4 = 1/4 3/4 1/4 x 9 = -1/4-3/4-1/4 z = 3/4 5/4-13/4 kein weiterer Basiswechsel mgl. G 122 =, d(g 122 ) = > f = 3 Damit verwerfen wir auch diese Verzweigung und haben ein ganzzahliges Optimum für G 11 gefunden mit x = ( 1 0) und f = 3. Es ergibt sich somit zudem der folgende, vollständige branch-and-bound- Pfadbaum für unser Beispiel: G G 1 G 2 = G 11 : f = 3 G 12 G 121 : d(g 121 ) = 2 > f = 3 G 122 = 11