Algorithmische Methoden für schwere Optimierungsprobleme

Ähnliche Dokumente
Algorithmische Methoden für schwere Optimierungsprobleme

Algorithmische Methoden für schwere Optimierungsprobleme

Verbesserungsheuristiken

11. Übung zu Algorithmen I 6. Juli 2016

Simulated Annealing. Lukas Barth. 27. August 2012

Kombinatorische Optimierung

Algorithmische Methoden zur Netzwerkanalyse

Algorithmische Methoden zur Netzwerkanalyse

Algorithmische Methoden zur Netzwerkanalyse

Algorithmische Methoden für schwere Optimierungsprobleme

Algorithmische Methoden zur Netzwerkanalyse Vorlesung 11, Henning Meyerhenke

Algorithmische Methoden zur Netzwerkanalyse

Heuristische Verfahren

Algorithmische Methoden für schwere Optimierungsprobleme

Algorithmische Methoden für schwere Optimierungsprobleme

Das Prinzip der Suchmaschine Google TM

Algorithmische Methoden zur Netzwerkanalyse Vorlesung 12, Henning Meyerhenke

Endliche Markov-Ketten - eine Übersicht

Seminararbeit: K-Opt und die Lin-Kernighan-Heuristik für das allgemeine TSP

Algorithmische Methoden zur Netzwerkanalyse

Gliederung. Kapitel 4. Lokale Suchverfahren. Meta-Heuristiken. Simulated Annealing. Lokale Suchverfahren. Optimierungsalgorithmen

Kombinatorische Optimierung

Algorithmische Methoden zur Netzwerkanalyse Vorlesung 13, Henning Meyerhenke

v R n ist Abstiegsrichtung in x R n wenn f(x) v < 0 v R n ist Abstiegsrichtung in x R n wenn i=1,,d: f i

Der Ergodensatz. Hendrik Hülsbusch

Pr[X t+1 = k] = Pr[X t+1 = k X t = i] Pr[X t = i], also. (q t+1 ) k = p ik (q t ) i, bzw. in Matrixschreibweise. q t+1 = q t P.

Arbeit: Page, Brin, Motwani, Winograd (1998). Ziel: Maß für absolute

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

Algorithmische Methoden zur Netzwerkanalyse

1. Übung Algorithmen I

Einführung in Markoff-Ketten

2. Optimierungsprobleme 6

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

Algorithmen und Datenstrukturen

DWT 2.3 Ankunftswahrscheinlichkeiten und Übergangszeiten 400/467 Ernst W. Mayr

Ein Zustand i mit f i = 1 heißt rekurrent. DWT 2.5 Stationäre Verteilung 420/476 c Ernst W. Mayr

16. November 2011 Zentralitätsmaße. H. Meyerhenke: Algorithmische Methoden zur Netzwerkanalyse 87

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

Dynamisches Routing in der Logistik

5. Lokale Suchverfahren. Beispiel TSP: k-change Nachbarschaft. Nachbarschaft. k-opt Algorithmus

Theoretische Grundlagen der Informatik

Der Metropolis-Hastings Algorithmus

Theoretische Informatik 1

Angewandte Stochastik

Markov Ketten und Bonus Malus Systeme

Formale Grundlagen der Informatik F3: Berechenbarkeit un

Theoretische Grundlagen der Informatik

Ant Colony Optimization (ACO)

Übungsaufgaben Lösungen

Musterlösung Donnerstag - Determinanten und Eigenwerte

Kombinatorische Optimierung

Bisher: Suche durch Lösungsveränderung Neuer Begriff: Nachbarschaft einer Lösung

Zeitstetige Markov-Prozesse: Einführung und Beispiele

Synthese Eingebetteter Systeme. Übung 6

5 Diagonalisierbarkeit

11. Übung Algorithmen I

Ausgewählte Lösungen zu den Übungsblättern 9-10

Vortrag 20: Kurze Vektoren in Gittern

Theoretische Grundlagen der Informatik

Optimierung. Optimierung. Vorlesung 2 Optimierung ohne Nebenbedingungen Gradientenverfahren Thomas Brox, Fabian Kuhn

Das Problem des Handlungsreisenden

Algorithmische Methoden zur Netzwerkanalyse

4 Eigenwerte und Eigenvektoren

8.1 Einleitung. Grundlagen der Künstlichen Intelligenz. 8.1 Einleitung. 8.2 Lokale Suchverfahren. 8.3 Zusammenfassung. Suchprobleme: Überblick

2. Geben Sie für das Jacobi-Verfahren eine scharfe a-priori Abschätzung für den Fehler. x (10) x p

Kombinatorische Optimierung

Lineare Algebra und analytische Geometrie II

Approximationsalgorithmen für NP-harte Optimierungsprobleme

Kap. 7.6 Verbesserungsheuristiken (letzte VO)

Approximationsalgorithmen für NP-harte Optimierungsprobleme

Approximationsalgorithmen

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

Euklidische Distanzmatrizen. Andrei Grecu

Theoretische Informatik 1

Technische Universität München Zentrum Mathematik. Übungsblatt 12

Überblick. Motivation. Kap. 7.6 Verbesserungsheuristiken. Nachbarschaft einer Lösung Einfache lokale Suche

51 Numerische Berechnung von Eigenwerten und Eigenvektoren

Vorlesung 2 KÜRZESTE WEGE

UNABHÄNGIGER LASTEN. Vorlesung 9 BALANCIERUNG DYNAMISCHER. Graphenalgorithmen und lineare Algebra Hand in Hand

Kombinatorische Optimierung Vorlesung für den Bereich Diplom/Master Informatik

Lineares Programmieren

Innere-Punkt-Methoden

Überblick. TSP Vergleich der Lösungen. Das Travelling Salesman Problem. Nearest-Neighbor Heuristik für TSP

Kap. 7.1 Heuristiken Kap. 7.2 Approximative Algorithmen und Gütegarantien

Exponentialabbildung für Matrizen und Systeme von Differentialgleichungen

Datenstrukturen und Algorithmen. Christian Sohler FG Algorithmen & Komplexität

W-Rechnung und Statistik für Ingenieure Übung 11

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

WS 2009/10. Diskrete Strukturen

Vorlesung Einführung in die Mathematische Optimierung (Wintersemester 2013/14)

Heuristiken und exakte Algorithmen für das verallgemeinerte Traveling Salesman Problem. Gerold Jäger

Konstruktions-Verbesserungsheuristiken. Iterierte lokale Suche (ILS)

Die Abbildung zeigt die Kette aus dem "

Optimierung. Vorlesung 13

Klausur Algorithmen und Datenstrukturen II 29. Juli 2013

Komplexitatstheoretische Zwischenbetrachtungen: Klassen & eine Hierarchic

Einführung in Heuristische Suche

Algorithmen II Vorlesung am

Algorithmische Methoden zur Netzwerkanalyse

Transkript:

Algorithmische Methoden für schwere Optimierungsprobleme Prof. Dr. Henning Meyerhenke Institut für Theoretische Informatik 1 KIT Henning Universität desmeyerhenke, Landes Baden-Württemberg Institutund für Theoretische Informatik nationales Algorithmische Forschungszentrum Methoden in der Helmholtz-Gemeinschaft für schwere Optimierungsprobleme www.kit.edu

Vorlesung 4 Programm des Tages: Übung: Bin-Packing, Christofides Lokale Suche Zusätzliche Literatur: Ausiello et al.: Complexity and Approximation. Combinatorial Optimization Problems and Their Approximability Properties. Springer, 1999. Chapter 10. 2 Henning Meyerhenke, Institut für Theoretische Informatik

Inhalt Metaheuristik Lokale Suche Komponenten Konvergenz Weitere Anwendungen 3 Henning Meyerhenke, Institut für Theoretische Informatik Metaheuristik Lokale Suche

Lokale Suchheuristiken......starten bei einer initialen zulässigen Lösung...bewegen sich von der aktuellen Lösung zu einem (meist verbessernden) Nachbarn im Lösungsraum...terminieren (meist) in einem lokalen Optimum Frühere Terminierung manchmal sinnvoll 4 Henning Meyerhenke, Institut für Theoretische Informatik Metaheuristik Lokale Suche

Lokale Suchheuristiken......starten bei einer initialen zulässigen Lösung...bewegen sich von der aktuellen Lösung zu einem (meist verbessernden) Nachbarn im Lösungsraum...terminieren (meist) in einem lokalen Optimum Frühere Terminierung manchmal sinnvoll Traversierung des Lösungsraums kann als gerichteter Graph modelliert werden Spezialfall: Bergsteiger-Algorithmus 4 Henning Meyerhenke, Institut für Theoretische Informatik Metaheuristik Lokale Suche

Tauschheuristik k-opt (hier k = 2) Lokale Suche mit fester Tiefe Praxis: Lokale Suchverfahren (Metaheuristiken!) sehr erfolgreich Algorithmus 2-Opt 1. Start mit beliebiger Tour 2. Wiederhole, bis keine Verbesserung möglich: 2.1 Verbesserungsschritt: Wähle zwei Kanten {u 1, u 2 } und {v 1, v 2 } aus der Tour: u 1, u 2, v 1, v 2 paarweise verschieden u 1, u 2, v 1, v 2 erscheinen in dieser Reihenfolge in der Tour 2.2 Ersetze durch {u 1, v 1 } und {u 2, v 2 }, falls die Tour dadurch kürzer wird 5 Henning Meyerhenke, Institut für Theoretische Informatik Metaheuristik Lokale Suche

Tauschheuristik k-opt (hier k = 2) Lokale Suche mit fester Tiefe Praxis: Lokale Suchverfahren (Metaheuristiken!) sehr erfolgreich Algorithmus 2-Opt 1. Start mit beliebiger Tour 2. Wiederhole, bis keine Verbesserung möglich: 2.1 Verbesserungsschritt: Wähle zwei Kanten {u 1, u 2 } und {v 1, v 2 } aus der Tour: u 1, u 2, v 1, v 2 paarweise verschieden u 1, u 2, v 1, v 2 erscheinen in dieser Reihenfolge in der Tour 2.2 Ersetze durch {u 1, v 1 } und {u 2, v 2 }, falls die Tour dadurch kürzer wird Terminiert in lokalem Optimum Auf realen Instanzen häufig erstaunlich gute Qualität bei meist subquadratischer Iterationszahl 5 Henning Meyerhenke, Institut für Theoretische Informatik Metaheuristik Lokale Suche

Tauschheuristik k-opt (hier k = 2) Lokale Suche mit fester Tiefe Praxis: Lokale Suchverfahren (Metaheuristiken!) sehr erfolgreich Algorithmus 2-Opt 1. Start mit beliebiger Tour 2. Wiederhole, bis keine Verbesserung möglich: 2.1 Verbesserungsschritt: Wähle zwei Kanten {u 1, u 2 } und {v 1, v 2 } aus der Tour: u 1, u 2, v 1, v 2 paarweise verschieden u 1, u 2, v 1, v 2 erscheinen in dieser Reihenfolge in der Tour 2.2 Ersetze durch {u 1, v 1 } und {u 2, v 2 }, falls die Tour dadurch kürzer wird Terminiert in lokalem Optimum Auf realen Instanzen häufig erstaunlich gute Qualität bei meist subquadratischer Iterationszahl Beispiel: Siehe Leinwand! 5 Henning Meyerhenke, Institut für Theoretische Informatik Metaheuristik Lokale Suche

Lin-Kernighan-Heuristik Lokale Suche mit variabler Tiefe Idee Sei eine Tour τ gegeben. Finde Folgen C und C mit k Paaren von Städten mit: C = ((c p1, c q1 ),..., (c pk, c qk )) C = ((c s1, c t1 ),..., (c sk, c tk )) c pi und c qi sind benachbart in τ für 1 i k c si und c ti sind nicht benachbart in τ für 1 i k c qi = c si für 1 i k c ti = c pi+1 für 1 i k 1 c tk = c p1 Tausch der Paare in C mit allen Paaren in C in τ ergibt kürzere Tour τ Beispiel: Siehe Tafel! 6 Henning Meyerhenke, Institut für Theoretische Informatik Metaheuristik Lokale Suche

Lin-Kernighan-Heuristik Eine einfachere Variante Algor. Lin-Kernighan (Eingabe: Städte c 1,... c n, Ausgabe: Tour) 1. Setze L = 0 und k = 1. Wähle zwei beliebige in τ benachbarte Städte c p1 und c q1. Setze C = {c p1, c q1 }, c s1 = c q1 und i = 1. 7 Henning Meyerhenke, Institut für Theoretische Informatik Metaheuristik Lokale Suche

Lin-Kernighan-Heuristik Eine einfachere Variante Algor. Lin-Kernighan (Eingabe: Städte c 1,... c n, Ausgabe: Tour) 1. Setze L = 0 und k = 1. Wähle zwei beliebige in τ benachbarte Städte c p1 und c q1. Setze C = {c p1, c q1 }, c s1 = c q1 und i = 1. 2. Finde zwei Städte x und y, so dass gilt: 2.1 x und y sind benachbart in τ und gehören nicht zu C 2.2 Ersetzen der i + 1 Kanten (c p1, c q1 ),..., (c pi, c qi ), (x, y) in τ durch die Kanten (c s1, c t1 ),..., (c si, x), (y, c p1 ) ergibt eine Tour 2.3 = L i + (dist(p i, q i ) + dist(x, y)) (dist(s i, x) + dist(y, p 1 )) > 0 mit L i = i 1 j=1 dist(p j, q j ) dist(s j, t j ) 7 Henning Meyerhenke, Institut für Theoretische Informatik Metaheuristik Lokale Suche

Lin-Kernighan-Heuristik Eine einfachere Variante Algor. Lin-Kernighan (Eingabe: Städte c 1,... c n, Ausgabe: Tour) 1. Setze L = 0 und k = 1. Wähle zwei beliebige in τ benachbarte Städte c p1 und c q1. Setze C = {c p1, c q1 }, c s1 = c q1 und i = 1. 2. Finde zwei Städte x und y, so dass gilt: 2.1 x und y sind benachbart in τ und gehören nicht zu C 2.2 Ersetzen der i + 1 Kanten (c p1, c q1 ),..., (c pi, c qi ), (x, y) in τ durch die Kanten (c s1, c t1 ),..., (c si, x), (y, c p1 ) ergibt eine Tour 2.3 = L i + (dist(p i, q i ) + dist(x, y)) (dist(s i, x) + dist(y, p 1 )) > 0 mit L i = i 1 j=1 dist(p j, q j ) dist(s j, t j ) Falls x und y nicht existieren, dann gehe zum nächsten Schritt. Andernfalls: Setze c ti = c pi+1 = x und c qi+1 = c si+1 = y und C = C {x, y}. Falls > L, setze L = und k = i + 1. Setze i = i + 1. Wiederhole Schritt 2. 7 Henning Meyerhenke, Institut für Theoretische Informatik Metaheuristik Lokale Suche

Lin-Kernighan-Heuristik Eine einfachere Variante Algor. Lin-Kernighan (Eingabe: Städte c 1,... c n, Ausgabe: Tour) 1. Setze L = 0 und k = 1. Wähle zwei beliebige in τ benachbarte Städte c p1 und c q1. Setze C = {c p1, c q1 }, c s1 = c q1 und i = 1. 2. Finde zwei Städte x und y, so dass gilt: 2.1 x und y sind benachbart in τ und gehören nicht zu C 2.2 Ersetzen der i + 1 Kanten (c p1, c q1 ),..., (c pi, c qi ), (x, y) in τ durch die Kanten (c s1, c t1 ),..., (c si, x), (y, c p1 ) ergibt eine Tour 2.3 = L i + (dist(p i, q i ) + dist(x, y)) (dist(s i, x) + dist(y, p 1 )) > 0 mit L i = i 1 j=1 dist(p j, q j ) dist(s j, t j ) Falls x und y nicht existieren, dann gehe zum nächsten Schritt. Andernfalls: Setze c ti = c pi+1 = x und c qi+1 = c si+1 = y und C = C {x, y}. Falls > L, setze L = und k = i + 1. Setze i = i + 1. Wiederhole Schritt 2. 3. Falls k > 1, dann ersetze in τ die k Kanten (c p1, c q1 ),..., (c pk, c qk ) durch (c s1, c t1 ),..., (c sk, c p1 ) und gib die neue Tour zurück. Sonst gib τ zurück. 7 Henning Meyerhenke, Institut für Theoretische Informatik Metaheuristik Lokale Suche

Inhalt Metaheuristik Lokale Suche Komponenten Konvergenz Weitere Anwendungen 8 Henning Meyerhenke, Institut für Theoretische Informatik

Einführung Glühen, engl. annealing Stahl bildet Kristallstrukturen Art der Struktur hängt vom Energieniveau ab Physikalische Systeme streben niedrigen Energiezustand an [http: //www.substech.com/dokuwiki/doku. php?id=metals_crystal_structure] (Lizenz CC BY-NC-SA 3.0) Die SimAn-Folien sind mit freundlicher Unterstützung von Lukas Barth entstanden. 9 Henning Meyerhenke, Institut für Theoretische Informatik

Einführung Glühen, engl. annealing Stahl bildet Kristallstrukturen Art der Struktur hängt vom Energieniveau ab Physikalische Systeme streben niedrigen Energiezustand an Stahl erhitzen, um Atome beweglich zu machen Atome bewegen sich in günstigere Positionen Langsam abkühlen, um Atome dort festzuhalten [http: //www.substech.com/dokuwiki/doku. php?id=metals_crystal_structure] (Lizenz CC BY-NC-SA 3.0) Die SimAn-Folien sind mit freundlicher Unterstützung von Lukas Barth entstanden. 9 Henning Meyerhenke, Institut für Theoretische Informatik

Analogien zwischen Stahlproduktion und Optimierung Stahl Systemzustand Positionen der Moleküle Energie Metastabiler Zustand Temperatur Bewegung der Atome Algorithmus Lösung Entscheidungsvariablen Zielfunktion Lokales Optimum Kontrollparameter Änderung der Lösung 10 Henning Meyerhenke, Institut für Theoretische Informatik

Analogien zwischen Stahlproduktion und Optimierung Stahl Systemzustand Positionen der Moleküle Energie Metastabiler Zustand Temperatur Bewegung der Atome Algorithmus Lösung Entscheidungsvariablen Zielfunktion Lokales Optimum Kontrollparameter Änderung der Lösung Weitere Eigenschaften von Simulated Annealing: Erinnerungslos Randomisiert Iterativ 10 Henning Meyerhenke, Institut für Theoretische Informatik

Algorithmus Pseudocode Algorithm 1 Simulated Annealing 1: function SIMULATEDANNEALING(I) 2: solution = generate_random_solution() 3: t = initial_temperature() 4: repeat 5: repeat 6: new_solution = find_neighbour(solution) 7: if accept(t, f(new_solution), f(solution)) then 8: solution = new_solution 9: end if 10: until Equilibrium 11: t = cool_down(t) 12: until Stop criterion 13: return beste bisher gefundene Lösung 14: end function 11 Henning Meyerhenke, Institut für Theoretische Informatik

Algorithmus-Bausteine Starttemperatur Nachbarschafts-Operator Akzeptierungs-Funktion Gleichgewichtskriterium Abkühlungs-Funktion Abbruchkriterium 12 Henning Meyerhenke, Institut für Theoretische Informatik

Starttemperatur Am Anfang sollen verschlechternde Züge einfach möglich sein Zufällige Instanz I wählen, dann einige zufällige Modifikationen machen und I messen (durchschnittliche Änderung der Zielfunktion) Wähle dann initiale Temperatur T signifikant höher als I 13 Henning Meyerhenke, Institut für Theoretische Informatik

Nachbarschafts-Operator Beispielsweise: 2-Opt-Austausch Invertierung einer Teilfolge Tausch zweier Städte 14 Henning Meyerhenke, Institut für Theoretische Informatik

Akzeptierungs-Funktion Die Akzeptierungs-Funktion: Boltzmann-Verteilung P t (j akzeptieren) = { 1 falls f (j) f (i) f (j) f (i) e t falls f (j) < f (i) 15 Henning Meyerhenke, Institut für Theoretische Informatik

Akzeptierungs-Funktion Die Akzeptierungs-Funktion: Boltzmann-Verteilung P t (j akzeptieren) = { 1 falls f (j) f (i) f (j) f (i) e t falls f (j) < f (i) Beschleunigung: Lookup-Table für Intervalle von Differenzwerten 15 Henning Meyerhenke, Institut für Theoretische Informatik

Gleichgewichtskriterium Beispielsweise: Keine Verbesserung für eine bestimmte Zeit Feste Anzahl von Runden, z. B. in Abhängigkeit von n 16 Henning Meyerhenke, Institut für Theoretische Informatik

Abkühlungs-Funktion Beispielsweise: Multiplikation mit festem Faktor, z. B. 0.9 oder 0.95 Bestimmt wesentlich Laufzeit und Qualität 17 Henning Meyerhenke, Institut für Theoretische Informatik

Abbruchprozess Beispielsweise: Abbrechen bei 5 aufeinanderfolgenden Temperaturen ohne verbesserte Lösung und ohne Akzeptanz-Wkt. über 2% Zum Schluss 2-Opt ausführen 18 Henning Meyerhenke, Institut für Theoretische Informatik

Simulated Annealing für 1: function SIMULATEDANNEALING-(I) 2: solution = generate_initial_solution() 3: repeat 4: repeat 5: Wähle ein Segment (v i,..., v j ) aus (v 1,..., v n ) 6: Konstruiere Nachbarn new_solution durch Invertierung oder Austausch im gewählten Segment 7: if accept(t, f(new_solution), f(solution)) then 8: solution = new_solution 9: end if 10: until 100n Schritte oder 10n Modifikationen erfolgt 11: T 0.9T 12: until 100n Schritte ohne akzeptierte Änderungen erfolgt 13: return beste gefundene Lösung 14: end function 19 Henning Meyerhenke, Institut für Theoretische Informatik

Zwischenfazit Einfache lokale Suchheuristik 2-Opt: Feste Nachbarschaftstiefe k-opt mit größeren k möglich Lin-Kernighan: Variable Nachbarschaftstiefe Simulated Annealing: Randomisiert aus lokalen Optima entkommen 20 Henning Meyerhenke, Institut für Theoretische Informatik

Markov-Ketten Crashkurs Markov-Ketten Endliche Automaten Zufallsabhängige Zustandsübergänge... nur abhängig vom aktuellen Zustand und Zeitpunkt! 21 Henning Meyerhenke, Institut für Theoretische Informatik

Markov-Ketten Crashkurs Markov-Ketten Endliche Automaten Zufallsabhängige Zustandsübergänge... nur abhängig vom aktuellen Zustand und Zeitpunkt! Übergangsmatrix p 11 (k)... p 1n (k) (p ij (k)) = P =..... p n1 (k)... p nn (k) 21 Henning Meyerhenke, Institut für Theoretische Informatik

Übergangsmatrix G Erzeugungsmatrix A(t) Akzeptanz-Matrix 22 Henning Meyerhenke, Institut für Theoretische Informatik

Übergangsmatrix G Erzeugungsmatrix A(t) Akzeptanz-Matrix { G i, j S : P ij (t k ) = ij A ij (t k ) falls i = j 1 l S,l =i P il (t k ) falls i = j 22 Henning Meyerhenke, Institut für Theoretische Informatik

Übergangsmatrix G Erzeugungsmatrix A(t) Akzeptanz-Matrix { G i, j S : P ij (t k ) = ij A ij (t k ) falls i = j 1 l S,l =i P il (t k ) falls i = j G ij = { 1 S i falls j S i 0 sonst 22 Henning Meyerhenke, Institut für Theoretische Informatik

Übergangsmatrix G Erzeugungsmatrix A(t) Akzeptanz-Matrix { G i, j S : P ij (t k ) = ij A ij (t k ) falls i = j 1 l S,l =i P il (t k ) falls i = j G ij = { 1 S i falls j S i 0 sonst P ij abhängig von t k Markov-Kette inhomogen 22 Henning Meyerhenke, Institut für Theoretische Informatik

Modellierung Wir modellieren... Simulated Annealing mittels einer inhomogenen Markov-Kette 23 Henning Meyerhenke, Institut für Theoretische Informatik

Modellierung Wir modellieren... Simulated Annealing mittels einer inhomogenen Markov-Kette Simulated Annealing bei einer Temperatur: homogene Markov-Kette 23 Henning Meyerhenke, Institut für Theoretische Informatik

Modellierung Wir modellieren... Simulated Annealing mittels einer inhomogenen Markov-Kette Simulated Annealing mittels einer Folge von homogenen Markov-Ketten Simulated Annealing bei einer Temperatur: homogene Markov-Kette 23 Henning Meyerhenke, Institut für Theoretische Informatik

Stationäre Verteilungen Stationäre Verteilung Wahrscheinlichkeitsverteilung für den Zustand der Markov-Kette nach sehr vielen Übergängen. 24 Henning Meyerhenke, Institut für Theoretische Informatik

Stationäre Verteilungen Stationäre Verteilung Wahrscheinlichkeitsverteilung für den Zustand der Markov-Kette nach sehr vielen Übergängen. q = lim a T (0) k k l=1 P(l) a(0): Wahrscheinlichkeitsverteilung über die Zustände zum Zeitpunkt 0. 24 Henning Meyerhenke, Institut für Theoretische Informatik

Stationäre Verteilungen Wir zeigen... diese Markov-Kette hat eine stationäre Verteilung für t 0 konvergiert diese Verteilung q gegen q mit q i = 1 S opt χ S opt (i) 25 Henning Meyerhenke, Institut für Theoretische Informatik

Asymptotik von Simulated Annealing Beweis in 4 Schritten 1. Finden eines notwendigen Kriteriums für eine stationäre Verteilung 2. Beweisen: Der Vektor, der (1) erfüllt, ist eindeutig 3. Angeben einer Verteilung, die (1) erfüllt 4. Zeigen, dass die Verteilung aus (3) gegen q konvergiert 26 Henning Meyerhenke, Institut für Theoretische Informatik

Ein notwendiges Kriterium Eine stationäre Verteilung ist ein linker Eigenvektor zum Eigenwert 1 der Übergangsmatrix: q T = lim a T (0) k k l=1 P(l) homogen = lim k a T (0)P k = lim a T (0)P k 1 P k = lim a T (0)P l P l = q T P 27 Henning Meyerhenke, Institut für Theoretische Informatik

Asymptotik von Simulated Annealing Beweis in 4 Schritten Finden eines notwendigen Kriteriums für eine stationäre Verteilung 2. Beweisen: Der Vektor, der (1) erfüllt, ist eindeutig 3. Angeben einer Verteilung, die (1) erfüllt 4. Zeigen, dass die Verteilung aus (3) gegen q konvergiert 28 Henning Meyerhenke, Institut für Theoretische Informatik

Eindeutigkeit des Eigenvektors Satz von Perron-Frobenius: Größter Eigenwert hat algebraische Vielfachheit 1 Noch zu zeigen: P kann keinen Eigenwert größer 1 haben. 29 Henning Meyerhenke, Institut für Theoretische Informatik

Eindeutigkeit des Eigenvektors Satz von Perron-Frobenius: Größter Eigenwert hat algebraische Vielfachheit 1 Noch zu zeigen: P kann keinen Eigenwert größer 1 haben. Größter Eigenwert 1 P ist zeilenstochastisch Der größte Eigenwert von P ist gleich dem größten Eigenwert von P T. Die Spalten von P T sind stochastische Vektoren. Nachrechnen: v P T = λv mit λ > 1 kann damit nicht mehr funktionieren. 29 Henning Meyerhenke, Institut für Theoretische Informatik

Eindeutigkeit des Eigenvektors Annahme: λ > 1 : v : vp = λv. w : wp T = λw 30 Henning Meyerhenke, Institut für Theoretische Informatik

Eindeutigkeit des Eigenvektors Annahme: λ > 1 : v : vp = λv. w : wp T = λw Annahme: i > 1 : w 1 > w i. Es muss gelten: λw 1 = w 1 (P T ) 11 + w 2 (P T ) 21 +... 30 Henning Meyerhenke, Institut für Theoretische Informatik

Eindeutigkeit des Eigenvektors Annahme: λ > 1 : v : vp = λv. w : wp T = λw Annahme: i > 1 : w 1 > w i. Es muss gelten: λw 1 = w 1 (P T ) 11 + w 2 (P T ) 21 +... n i=1 (P T ) i1 > 1 n P 1i > 1 i=1 30 Henning Meyerhenke, Institut für Theoretische Informatik

Eindeutigkeit des Eigenvektors Annahme: λ > 1 : v : vp = λv. w : wp T = λw Annahme: i > 1 : w 1 > w i. Es muss gelten: λw 1 = w 1 (P T ) 11 + w 2 (P T ) 21 +... n i=1 (P T ) i1 > 1 n P 1i > 1 i=1 P ist eine zeilenstochastische Matrix! Widerspruch! 30 Henning Meyerhenke, Institut für Theoretische Informatik

Asymptotik von Simulated Annealing Beweis in 4 Schritten Finden eines notwendigen Kriteriums für eine stationäre Verteilung Beweisen: Der Vektor, der (1) erfüllt, ist eindeutig 3. Angeben einer Verteilung, die (1) erfüllt 4. Zeigen, dass die Verteilung aus (3) gegen q konvergiert 31 Henning Meyerhenke, Institut für Theoretische Informatik

Die stationäre Verteilung Die Verteilung q i (t) = 1 f (i) N 0 (t) e t Dabei ist N 0 (t) ein Normierungsfaktor: N 0 (t) = e f (j) t j S 32 Henning Meyerhenke, Institut für Theoretische Informatik

Die stationäre Verteilung Die Verteilung q i (t) = 1 f (i) N 0 (t) e t Dabei ist N 0 (t) ein Normierungsfaktor: N 0 (t) = e f (j) t j S Beweis des Eigenvektors: Nachrechnen. 32 Henning Meyerhenke, Institut für Theoretische Informatik

Die stationäre Verteilung Irreduzibilität Von jedem Zustand aus ist jeder andere Zustand erreichbar. i, j : n 1 : (P n ) ij > 0 33 Henning Meyerhenke, Institut für Theoretische Informatik

Die stationäre Verteilung Irreduzibilität Von jedem Zustand aus ist jeder andere Zustand erreichbar. i, j : n 1 : (P n ) ij > 0 Der Graph zu G muss stark zusammenhängend sein Alle Einträge in A sind positiv! 33 Henning Meyerhenke, Institut für Theoretische Informatik

Die stationäre Verteilung Irreduzibilität Von jedem Zustand aus ist jeder andere Zustand erreichbar. i, j : n 1 : (P n ) ij > 0 Der Graph zu G muss stark zusammenhängend sein Alle Einträge in A sind positiv! Egal wie klein t wird, jeder Zustand kann erreicht werden! 33 Henning Meyerhenke, Institut für Theoretische Informatik

Asymptotik von Simulated Annealing Beweis in 4 Schritten Finden eines notwendigen Kriteriums für eine stationäre Verteilung Beweisen: Der Vektor, der (1) erfüllt, ist eindeutig Angeben einer Verteilung, die (1) erfüllt 4. Zeigen, dass die Verteilung aus (3) gegen q konvergiert 34 Henning Meyerhenke, Institut für Theoretische Informatik

Konvergenz zeigen Details führen wir hier nicht aus. Ausgangssituation q i (t) = 1 f (i) N 0 (t) e t Dabei ist N 0 (t) ein Normierungsfaktor: N 0 (t) = e f (j) t j S 35 Henning Meyerhenke, Institut für Theoretische Informatik

Konvergenz zeigen Details führen wir hier nicht aus. Ausgangssituation q i (t) = 1 f (i) N 0 (t) e t Dabei ist N 0 (t) ein Normierungsfaktor: N 0 (t) = e f (j) t j S lim e x a = 1 für a = 0 x 0 lim e x a = 0 für a < 0 x 0 35 Henning Meyerhenke, Institut für Theoretische Informatik

Konvergenz zeigen lim q i(t) = t 0 e lim f (i) t t 0 j S e f (j) t 36 Henning Meyerhenke, Institut für Theoretische Informatik

Konvergenz zeigen lim q i(t) = t 0 e lim f (i) t t 0 j S e f (j) t = lim t 0 e f opt f (i) t f (j) t j S e f opt 36 Henning Meyerhenke, Institut für Theoretische Informatik

Konvergenz zeigen lim q i(t) = t 0 e lim f (i) t t 0 j S e f (j) t = lim t 0 1 j S e f opt f (j) t = lim t 0 χ Sopt (i) e f opt f (i) t f (j) t j S e f opt 36 Henning Meyerhenke, Institut für Theoretische Informatik

Konvergenz zeigen lim q i(t) = t 0 e lim f (i) t t 0 j S e f (j) t = lim t 0 1 j S e f opt f (j) t = lim t 0 e f opt f (i) t f (j) t j S e f opt χ Sopt (i) = 1 S opt χ S opt (i) 36 Henning Meyerhenke, Institut für Theoretische Informatik

Konvergenz zeigen lim q i(t) = t 0 e lim f (i) t t 0 j S e f (j) t = lim t 0 1 j S e f opt f (j) t = lim t 0 = q i e f opt f (i) t f (j) t j S e f opt χ Sopt (i) = 1 S opt χ S opt (i) 36 Henning Meyerhenke, Institut für Theoretische Informatik

Asymptotik von Simulated Annealing Beweis in 4 Schritten Finden eines notwendigen Kriteriums für eine stationäre Verteilung Beweisen: Der Vektor, der (1) erfüllt, ist eindeutig Angeben einer Verteilung, die (1) erfüllt Zeigen, dass die Verteilung aus (3) gegen q konvergiert Simulated Annealing findet asymptotisch eine Optimallösung! 37 Henning Meyerhenke, Institut für Theoretische Informatik

Bohrlöcher in Platinen Abbildung: [http://www.dj5am.de/cw-geber/leiterplatte.gif] 38 Henning Meyerhenke, Institut für Theoretische Informatik

Schulbus Abbildung: [http://www.bus-bild.de/1024/ssb-s-sb-5099-unterwegs-59894.jpg] 39 Henning Meyerhenke, Institut für Theoretische Informatik

Schulbus Abbildung: [http://www.bus-bild.de/1024/international-schulbus-miami-beach-unterwegsfoto-70309.jpg] 39 Henning Meyerhenke, Institut für Theoretische Informatik

Warenhaus Abbildung: [http://www.lservice.com/images/wallpaper/hochregallager_1.jpg] 40 Henning Meyerhenke, Institut für Theoretische Informatik

Zusammenfassung Einfache lokale Suchheuristik 2-Opt: Feste Nachbarschaftstiefe k-opt mit größeren k möglich Lin-Kernighan: Variable Nachbarschaftstiefe Simulated Annealing: Randomisiert aus lokalen Optima entkommen 41 Henning Meyerhenke, Institut für Theoretische Informatik

Zusammenfassung Einfache lokale Suchheuristik 2-Opt: Feste Nachbarschaftstiefe k-opt mit größeren k möglich Lin-Kernighan: Variable Nachbarschaftstiefe Simulated Annealing: Randomisiert aus lokalen Optima entkommen Simulated Annealing konvergiert unter bestimmten Annahmen gegen das Optimum Aber: Konvergenz kann exponentiell lange dauern! 41 Henning Meyerhenke, Institut für Theoretische Informatik

Zusammenfassung Einfache lokale Suchheuristik 2-Opt: Feste Nachbarschaftstiefe k-opt mit größeren k möglich Lin-Kernighan: Variable Nachbarschaftstiefe Simulated Annealing: Randomisiert aus lokalen Optima entkommen Simulated Annealing konvergiert unter bestimmten Annahmen gegen das Optimum Aber: Konvergenz kann exponentiell lange dauern! hat vielfältige Anwendungen, auch in Verbindung mit anderen schwierigen Problemen 41 Henning Meyerhenke, Institut für Theoretische Informatik