Effiziente Algorithmen und Komplexitätstheorie

Ähnliche Dokumente
Lineare Algebra und Numerische Mathematik für D-BAUG

Probeklausur Mathematik für Ingenieure C3

Satz 6.5 (Mittelwertsatz der Integralrechnung) Sei f : [a, b] R stetig. Dann gibt es ein ξ [a, b], so dass. b a. f dx = (b a)f(ξ) f dx (b a)m.

Übungen zur Analysis 2

- 1 - VB Inhaltsverzeichnis

7.9A. Nullstellensuche nach Newton

Ungleichungen. Jan Pöschko. 28. Mai Einführung

Brückenkurs Lineare Gleichungssysteme und Vektoren

3 Uneigentliche Integrale

Grundlagen zu Datenstrukturen und Algorithmen Schmitt, Schömer SS 2001

Zum Satz von Taylor. Klaus-R. Loeffler. 2 Der Satz von Taylor 2

5.1 Charakterisierung relativ kompakter und kompakter

Uneigentliche Riemann-Integrale

Multiplikative Inverse

FORMALE SYSTEME. 7. Vorlesung: Reguläre Ausdrücke. TU Dresden, 2. November Markus Krötzsch

Höhere Mathematik für Ingenieure , Uhr

Vorlesung. Einführung in die mathematische Sprache und naive Mengenlehre

Resultat: Hauptsatz der Differential- und Integralrechnung

Prof. Dr. Siegfried Echterhoff.. 1 HAUPTSATZ DER INTEGRAL UND DIFFERENTIALRECHNUNG

11. DER HAUPTSATZ DER DIFFERENTIAL- UND INTEGRALRECHNUNG

Übungen zur Vorlesung Differential und Integralrechnung I Lösungsvorschlag

Der Gauß - Algorithmus

2 Lineare Operatoren. T(αx + βy) = αtx + βty x,y X, α, β K. (b) Ist T linear, so heißt

Kurvenintegrale. 17. Juli 2006 (Korrigierte 2. Version) 1 Kurvenintegrale 1. Art (d.h. f ist Zahl, kein Vektor)

Gebrochenrationale Funktionen (Einführung)

Präfixcodes und der Huffman Algorithmus

1 Metrische Räume. Sei X eine nichtleere Menge. Definition 1.1. Eine Abbildung: d : X X R heißt Metrik auf X, falls für alle x, y, z X gilt

3 Hyperbolische Geometrie

Lineare DGL zweiter Ordnung

Lösungen zur Probeklausur Lineare Algebra 1

R := {((a, b), (c, d)) a + d = c + b}. Die Element des Quotienten M/R sind die Klassen

π 2 r 2 r 2 sin 2 (t)r cos(t) dt π 2 cos2 (t) cos(t) dt = r 2 π dt = cos(x) sin(x) u v = cos(x) sin(x) + = cos(x) sin(x) + x

Lösungsvorschläge zum 9. Übungsblatt.

Klausurvorbereitungsausfgaben für die Feiertage Analysis II im WS 2013/2014

Def.: Sei Σ eine Menge von Zeichen. Die Menge Σ* aller Zeichenketten (Wörter) über Σ ist die kleinste Menge, für die gilt:

Umwandlung von endlichen Automaten in reguläre Ausdrücke

Kapitel 10. Integration. Josef Leydold Mathematik für VW WS 2015/16 10 Integration 1 / 35

Lösungen Quadratische Gleichungen. x = x x = Also probieren wir es 3 4 = 12. x + + = Lösen Sie die folgenden Gleichungen nach x auf:

Vorkurs Mathematik DIFFERENTIATION

BINOMISCHE FORMELN FRANZ LEMMERMEYER

Automaten und formale Sprachen Notizen zu den Folien

Mathematik: Mag Schmid Wolfgang Arbeitsblatt 5 5. Semester ARBEITSBLATT 5 VEKTORRECHNUNG IM RAUM

Mathematik Bruchrechnung Grundwissen und Übungen

b f(x)p(x) dx = f(ξ) 2e 2 , Hess f (2, 0) =

Einführung in die Festkörperphysik I Prof. Peter Böni, E21

Kapitel 2 Variationsrechnung

dem Verfahren aus dem Beweis zu Satz 2.20 erhalten wir zunächst die folgenden beiden ε-ndeas für die Sprachen {a} {b} und {ε} {a} +

Doppel- und Dreifachintegrale

FORMALE SYSTEME. Kleene s Theorem. Wiederholung: Reguläre Ausdrücke. 7. Vorlesung: Reguläre Ausdrücke. TU Dresden, 2.

x usw., wie oben unter 1.) behauptet.]

Automaten und Formale Sprachen alias Theoretische Informatik. Sommersemester Kurzer Einschub: das Schubfachprinzip.

5.2 BASIC MSC (BMSC) BASIC MSC. Kommunikation zwischen Instanzen. Message Sequence Charts

a = c d b Matheunterricht: Gesucht ist x. Physikunterricht Gesucht ist t: s = vt + s0 -s0 s - s0 = vt :v = t 3 = 4x = 4x :4 0,5 = x

Michael Buhlmann Mathematik > Lineare Gleichungssysteme

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

5. Übung Algorithmen II

2.5 Messbare Mengen und Funktionen

Thema 13 Integrale, die von einem Parameter abhängen, Integrale von Funktionen auf Teilmengen von R n

Das Rechnen mit Logarithmen

Numerische Integration durch Extrapolation

10: Lineare Abbildungen

Teil 1: Rechenregeln aus der Mittelstufe. Allgemeine Termumformungen

Antworten auf Anfragen von Kursteilnehmern. Zu folgender Aussage aus den Multiple-Choice-Aufgaben: f (n) (a) (x a) n n! n=0

Seminar Quantum Computation - Finite Quanten-Automaten und Quanten-Turingmaschinen

1.2 Der goldene Schnitt

Transkript:

Effiziente Algorithmen und Komplexitätstheorie Vorlesung Ingo Wegener Vertretung Thoms Jnsen 10042006 1 Ws letzten Donnerstg geschh Linere Optimierung Wiederholung der Grundbegriffe und Aussgen M konvex und kompkt ht Extrempunkt Rndpunkt von M konvex und bgeschlossen ht Hyperebene mit M gnz uf einer Seite x M konvex und kompkt ls kl von n + 1 Extrempunkten drstellbr x zulässige Menge M ls kl mit Beteiligung eines Extrempunkts drstellbr minz) M Extrempunkt von M miniml Z ht in M keine nur loklen Minim zwei Beispiele für die Simplex-Methode Simplex-Tbleu im Simplex-Tbleu b 0 Bsispunkt zulässig zusätzlich c 0 zusätzlich optiml äquivlentes Simplex-Tbleu mit nderer Bsis: Hyperebenen der N-BV hben flls zulässig) Extrempunkt der zulässigen Menge ls Schnittpunkt Und ds wr uch schon lles 2 Bsiswechsel m Simplex-Tbleu Z min c T x + δ = Z Ax b = u x 0, u 0 r 1 r 2 r k r n 1,1 1,2 1,k 1,n b 1 s 1 2,1 2,2 2,k 2,n b 2 s 2 i,1 i,2 i,n b i s i m,1 m,2 m,k m,n b m s m c 1 c 2 c k c n δ Z Definition 26 Beim Bsiswechsel r k s i heißt Pivotelement Vorussetzung für Bsiswechsel Pivotelement 0 3 Bsiswechsel m Simplex-Tbleu 2) r 1 r 2 r k r n 1,1 1,2 1,k 1,n b 1 s 1 i,1 i,2 i,n b i s i m,1 m,2 m,k m,n b m s m c 1 c 2 c k c n δ Z Bsiswechsel r k s i i-te Zeile: r k = i,1 r 1 + + 1 r k 1 + 1 s i + +1 r k+1 + + i,n r n b i j-te Zeile j i): j,1 r 1 + + j,k 1 r k 1 + j,k r k + j,k+1 r k+1 + + j,n r n b j = s j r k in j-te Zeile ) eingesetzt j i): i,1 j,1 j,k r 1 + + +1 + j,k+1 j,k ) r k+1 + + j,k 1 j,k 1 j,n j,k i,n ) r k 1 j,k s i ) r n b j j,k b i ) = s j 4

Bsiswechsel m Simplex-Tbleu 3) r 1 r 2 r k r n 1,1 1,2 1,k 1,n b 1 s 1 i,1 i,2 i,n b i s i m,1 m,2 m,k m,n b m s m c 1 c 2 c k c n δ Z Zusmmenfssung Bsiswechsel r k s i Pivotelement 1 Pivotzeile j k i,j i,j, b i b i Pivotsplte i k j,k j,k, c k c k ndere Elemente i j, k l j,l j,l i,l j,k, b b j b j i j,k, c l c l c i,l b k, δ δ c i k zum Merken p = Pivot) [ ] p q r s [ 1 p r p q p s rq p ] Der Simplex-Algorithmus noch offen Whl des Pivot-Elements noch offen Korrektheit = prtielle Korrektheit und Endlichkeit Definition 27 Zeile i gut b i 0 bzw b i 0) Zeile i sonst schlecht G := {l l {1,, m} und l gut} 5 6 Der Simplex Algorithmus 2) 1 Phse Finden eines zulässigen Bsispunkts 1 Wenn G = {1,, m} dnn Ausgbe Zulässiger Bsispunkt gefunden STOP 2 s := min{l b l < 0} oberste schlechte Zeile) 3 Wenn min{ s,1,, s,n } 0 dnn Ausgbe Zulässige Menge leer STOP 4 Wähle k 0 mit s,k0 { < 0 Wähle Pivotzeile p } so, b dss p = min j G und > 0 { } Wenn j G und > 0 =, dnn wähle p := s 5 Führe Bsiswechsel um Pivotelement durch 6 Fhre mit neuem Simplex-Tbleu bei Zeile 1 fort 7 Der Simplex Algorithmus 3) 2 Phse Minimieren von Z uf zulässigen Bsispunkten Vorussetzung G = {1,, m} Bsispunkt zulässig) 1 Wenn min{c 1,, c n } 0 dnn Ausgbe Bsispunkt optiml STOP 2 Wähle k 0 mit c k0 { < 0 Wähle Pivotzeile p so, } b dss p = min j G und > 0 { } Wenn j G und > 0 =, dnn Ausgbe Z STOP 3 Führe Bsiswechsel um Pivotelement durch 4 Fhre mit neuem Simplex-Tbleu bei Zeile 1 fort zu Zeile 2: k 0 -te N-BV Bsis; ndere N-BV bleiben 0 i-te Gleichung 0 r k0 + s i = b i mit b i 0 0 0 r k0 knn beliebig wchsen; mit c k0 < 0 Z 0 > 0 r k0 = b i s i 0 b i 0 stärkste Beschränkung für r k0 8

Noch ein winziges Beispiel 4x 1 x 2 min unter 1 4 x 1 + x 2 18 1 2 x 2 15 x 1 3x 2 3 1 2 x 1 + x 2 13 x 1 x 2 4 x 1 10 x 1 + 3x 2 23 und x 1 0, x 2 0 22 20 18 16 14 12 10 8 6 4 2 Noch ein winziges Beispiel 2) u 7 u 6 0333 0083 11667 u 1 0333 0333 10667 u 2 0000 1000 10000 x 1 0333 0833 13667 u 4 0333 0667 10333 u 5 0333 0333 4333 x 2 1000 2000 6000 u 3 0333 3667 44333 Z Z10, 4333)) = 44333 optiml 22 20 18 16 14 12 10 8 6 4 2 2 4 6 8 10 2 4 6 8 10 9 10 Zwischen-Fzit Simplex-Algorithmus zur 1 Phse zur 2 Phse Ausgbe Zulässiger Bsispunkt gefunden korrekt Ausgbe Zulässige Menge leer korrekt gesmt Ausgbe korrekt Ausgbe Bsispunkt optiml korrekt Ausgbe Z korrekt neuer Bsispunkt zulässig gesmt Ausgbe korrekt Theorem 28 Der Simplex-Algorithmus ist prtiell korrekt Bsiswechsel ist in Zeit Onm) durchführbr Degenerierte Probleme Definition 29 Ein lineres Optimierungsproblem heißt degeneriert, wenn es unter den n + m Hyperebenen n + 1 Hyperebenen mit nicht leerem Schnitt gibt Beobchtungen 0 in b-splte degeneriert degeneriert äquiv Simplex-Tbleu mit 0 in b-splte Endlichkeit fehlt uns noch! 11 12

Ein technisches Lemm Zur Endlichkeit Lemm 30 Wenn Pivotelement gewählt wird, dnn bp 0 { Beweis } j G und > 0 { gute p-zeile wird gewählt, } lso b p 0 mit > 0 j G und > 0 = p = s, s schlecht, lso b p < 0; ußerdem < 0 Theorem 31 Der Simplex-Algorithmus ist für nicht degenerierte Probleme endlich Beweis Teil 1: Phse 1 endet in endlicher Zeit Betrchte einen Bsiswechsel: Simplex-Tbleu Behuptungen: r c b δ s Z b g 0 b g 0 gut bleibt gut) b s > b s schlecht wird besser) r b s c δ Z 13 14 Beweis von Theorem 31 2) Behuptung: b g 0 b g 0 gut bleibt gut) Pivotzeile p: b p = bp gemäß Algorithmus und bp 0 nch Lemm 30 sogr > 0, d nicht degeneriert) lso Pivotzeile uf jeden Fll gut b p ndere Zeile i: b i = b i 0 }{{} i 1 Fll: 0 0 i 0 gemäß Algorithmus b i = b i i b i 0 2 Fll: 0 > 0 bei Berechnung von p uch Zeile i betrchtet drum b i 0 bp ) b i = b i 0 b p = bi i,k0 0 bp 0 15 Beweis von Theorem 31 3) Behuptung: b s > b s schlecht wird besser) Pivotzeile p: wird uf jeden Fll gut gerde gesehen) ndere Zeile i: b i = b i 0 gemäß Algorithmus }{{} i b p 0 < 0 und bp > 0 lso i < 0 und b i > b s D Anzhl Bsispunkte endlich, wird schlechte Zeile in endlicher Zeit gut Also stoppt erste Phse mit zulässigem Bsispunkt oder M = 16

Beweis von Theorem 31 4) Teil 2: Phse 2 endet in endlicher Zeit Strt mit zulässigem Bsispunkt wie in Phse 1: gute Zeile bleiben gut immer zulässiger Bsispunkt Behuptung: δ < δ δ = δ + c k0 b p gemäß Algorithmus c k0 < 0 und > 0 gemäß Whl von k 0 b p > 0, weil nicht degeneriert lso δ < δ D Anzhl Bsispunkte endlich, nch endlichen vielen Schritten optimle Lösung oder Z Endlichkeit des Simplex-Algorithmus Ws ist bei degenerierten Problemen? Wenn wir Glück hben, hält der Algorithmus in endlicher Zeit Dnn ist ds Ergebnis korrekt Wenn wir Pech hben, hält der Algorithmus nicht Knn mn Endlichkeit nicht immer erreichen? Doch! Alle Entscheidungen merken und Wiederholung vermeiden Speicherbedrf für prktische Zwecke zu groß in der Prxis rndomisierte Entscheidungen endliche erwrtete Rechenzeit 17 18 Endliche viele Schritte Heuristische Verbesserungen Wie schnell oder lngsm ist der Simplex-Algorithmus? im Worst Cse exponentielle Rechenzeit Worst Cse Instnzen sind schwierig zu finden in der Prxis sehr schnell Worst Cse Instnzen sind empfindlich : wckeln polynomielle Rechenzeit smoothed complexity) Es gibt eher unprktische) Polynomilzeitlgorithmen Simplex-Algorithmus ist empirisch guter Algorithmus Einige Ideen, um ihn empirisch noch besser zu mchen: Ideen ohne Nchweis Heuristiken) besserer Umgng mit Nebenbedingungen in Gleichungsform besserer Umgng mit unbeschränkten Vriblen besserer Umgng mit nch oben beschränkten Vriblen schnellere Lösung ähnlicher Optimierungsprobleme 19 20

Nebenbedingungen in Gleichungsform bisher i x = b i i x b i und i x b i Nchteil: Problem degeneriert neu Löse Gleichung nch einer Vriblen uf Setze in nderen Ungleichungen ein Benutze Gleichung direkt, mche lso Vrible zur BV Vorteile verhindert Degenertion sprt eine Nebenbedingung sprt zwei Vrible Unbeschränkte Vrible bisher x i R x i x i mit x i, x i 0 Nchteil: eine Vrible mehr neu Lsse unbeschränkte Vrible direkt zu klr Mcht Algorithmus komplizierter Ideen Phse 1: Gleichungen mit unbeschränkten Vriblen bei Whl von Pivotzeile und -splte ignorieren, nsonsten unverändert Phse 2: Optimlitätskriterium c 0 greift nicht mehr unbeschränkte Vrible für c k 0 berücksichtigen optiml, wenn keine Vrible wählbr bei Whl unbeschränkter Vrible ls Pivotzeile uf Zulässigkeit des Bsispunkts chten 21 22 Nch oben beschränkte Vrible bisher x i α i Nebenbedingung Nchteil: eine Nebenbedingung mehr neu Lsse nch oben beschränkte Vrible direkt zu klr Mcht Algorithmus komplizierter Ideen erweitere Definition von Bsispunkt Werte 0 und αi zugelssen optiml, wenn keine erlubte Änderung Zielfunktion vermindert Z nicht von beschränkten x i bhängig Phse 1: x i > α i bei Zulässigkeit bechten Phse 2: Richtung der erlubten Änderung bei Bsiswechsel bechten bei Whl der neuen N-BV stärkste Beschränkung wählen 23 Hinzufügen einer Vriblen Sei Z = c T x min mit Ax = b und x 0 gelöst Lösung x zur Bsis B neues Problem durch Hinzufügen von x n+1 und einer Splte in A Können wir ds schneller lösen? Vermutlich ist x, 0) besserer Strtpunkt Wenn Weg zu B beknnt, ist ds nutzbr Muss mn ds lles speichern? 24

Hinzufügen einer Vriblen 2) Wiederholung: Theorem 26 und sein Beweis Z = c T x min mit Ax = b und x 0 mit Lösung x zur Bsis B beknnt neues Problem durch Hinzufügen von x n+1 und einer Splte in A Wunsch Verwendung von x, 0) ls Strtpunkt Einsicht Weg von Strtbsis B zu B unerheblich kürzester Weg ht Länge min{n, m} Rechenzeit Omn min{m, n}) Mit Hilfe von Theorem 26 geht es sogr noch direkter Theorem 26 Ist Simplex-Tbleu zur Bsis x 1,, x k, u k+1,, u m äquivlent zum zu einem lineren Optimierungsproblem gehörigen Simplex-Tbleu, sind die Hyperebenen u 1 = 0,, u k = 0, x k+1 = 0,, x n = 0 liner unbhängig Der Schnittpunkt der Hyperebenen ist, flls zulässig, Extrempunkt der zulässigen Menge Beweis Schreibe Hyperebenen ls Gleichungen in ursprünglichen x-vriblen: u i = 0 i,1 x 1 + + i,n x n = b i x k+j = 0 bleibt so 25 26 Beweis von Theorem 26 Fortsetzung) Beweis von Theorem 26 Fortsetzung 2)) Betrchte Koeffizientenmtrix: 1,1 1,k 1,k+1 1,n A = k,1 k,k k,k+1 k,n 1 0 0 0 1 klr: Hyperebenen liner unbhängig A invertierbr 1,1 1,k betrchte A k) = k,1 k,k klr: A invertierbr A k) invertierbr Betrchte Koeffizientenmtrix A zum Tbleu zur Bsis x 1,, x k, u k+1,, u m Mit x k+1 = = x n = 0 hben wir x k) = A k) u k) b k) us dem Originltbleu: u k) = A k) x k) b k) Einsetzen liefert: x k) = A k) A k) x k) + b k)) b k) lso: x k) = A k) A k) x k) A k) b k) + b k) Gilt insbesondere für x k) = 0 k), lso A k) b k) + b k) = 0 k) lso x k) = A k) A k) x k) für lle x k) lso A k) = A k)) 1 und A k) invertierbr 27 28

Hinzufügen einer Vriblen Fortsetzung) gesehen Inverse von A k) oben links im Tbleu Ws pssiert dbei mit der n + 1)-ten Splte? Betrchte n+1) k) Anfng der Länge k dieser Splte 1,k+1 1,n 2,k+1 2,n B :=, x = x k+1,, x n ) k,k+1 k,n im Strttbleu A k) x k) + Bx + n+1 ) k) x n+1 b k) = u k) A k)) 1 u k) + A k)) 1 Bx + A k)) 1 n+1 ) k) x n+1 A k) ) 1 b k) = x k) A k) ) 1 blesbr, nur A k) ) 1 n+1 ) k) neu zu berechnen Hinzufügen einer Vriblen Fortsetzung 2)) Ws ist mit restlichen -Elementen und c n+1? Beobchtung niemls in der Pivot-Zeile immer Regel s s rq p k = 1 c neu) n+1 = c n+1 neu n+1 ) 1 c 1 k = 2 c neu) n+1 = c n+1 neu n+1 ) 1 c 1 neu n+1 ) 2 c 2 llgemein Beweis per Induktion) c neu) n+1 = c n+1 k ) n+1 neu nlog für i=1 i c i lso verschiedene effiziente Methoden verfügbr 29 30