Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Simulated Annealing Marco Block & Miguel Domingo Seminar : Maschinelles Lernen und Markov KettenSommersemester 2002.

Ähnliche Präsentationen


Präsentation zum Thema: "Simulated Annealing Marco Block & Miguel Domingo Seminar : Maschinelles Lernen und Markov KettenSommersemester 2002."—  Präsentation transkript:

1 Simulated Annealing Marco Block & Miguel Domingo Seminar : Maschinelles Lernen und Markov KettenSommersemester 2002

2 Kombinatorisches Optimierungproblem Seminar : Maschinelles Lernen und Markov KettenSommersemester 2002 gegeben : gesucht : endliche Menge S (Lösungen) Kostenfunktion f : S R globales Minimum (optimale Lösung) s * S * { s S : f(s) f(t) t S } schwierig, wenn |S| sehr groß ist (z.B. |S| n!)

3 Beispiel : Problem des Handlungsreisenden (TSP) Seminar : Maschinelles Lernen und Markov KettenSommersemester 2002 gegeben : n Städte, Reisekosten c(i,j) gesucht : günstigste Rundreise durch alle Städten formal : S = { Permutationen von {1,..,n} } f( ) = i=1..n c( (i), (i+1)) für S optimale Tour zu finden ist NP-hart !

4 Lokale Suche - Idee Seminar : Maschinelles Lernen und Markov KettenSommersemester 2002 einfacher, allgemeiner Approximationsalgorithmus Idee : schrittweise Verbesserung der Kosten durch Erforschung von benachbarten Lösungen Definiere Nachbarschaftstruktur auf S N : S 2 S mit i N(j) j N(i) i Beispiel : TSP ´ N( ) jij (j) (i) ´

5 Lokale Suche - Pseudocode Seminar : Maschinelles Lernen und Markov KettenSommersemester 2002 LOKALE_SUCHE( s 0 ) Setze s s 0 Wiederhole Generiere s´ N(s) zufällig Falls f(s´) < f(s) ersetze s s´ Bis f(s) f(t) für alle t N(s)

6 Lokale Suche - Pseudocode Seminar : Maschinelles Lernen und Markov KettenSommersemester 2002 LOKALE_SUCHE( s 0 ) Setze s s 0 Wiederhole Generiere s´ N(s) zufällig Falls f(s´) < f(s) ersetze s s´ Bis f(s) f(t) für alle t N(s) Problem : Algorithmus bleibt in lokalem Minima stecken mit verschiedenen Startwerten s 0 versuchen...

7 Simulated Annealing - Idee Seminar : Maschinelles Lernen und Markov KettenSommersemester 2002 Modifikation des Algorithmus LOKALE_SUCHE : Transitionen s s´ mit f = f(s´)-f(s) > 0 mit Wahrscheinlichkeit exp(- f / T) annehmen um aus lokale Minima rauskommen zu können Konstante T 0 (abkühlen) um sich in einem globalen Minimum zu stabilisieren Analogie aus der Physik : Simulierte Abkühlung

8 Simulated Annealing - Pseudocode Seminar : Maschinelles Lernen und Markov KettenSommersemester 2002 INITIALISIERE u 0 u:=u 0 WIEDERHOLE GENERIERE u´ N(u) BERECHNE f:=f(u´)-f(u) FALLS f<0 DANN u:=u´ SONST FALLS exp(- f/T k )>RANDOM[0,1) DANN u:=u´ BIS f(u) f(u´) für alle u´ N(u)

9 Simulated Annealing - Pseudocode Seminar : Maschinelles Lernen und Markov KettenSommersemester 2002 INITIALISIERE u 0, T 0 u:=u 0 WIEDERHOLE GENERIERE u´ N(u) BERECHNE f:=f(u´)-f(u) FALLS f<0 DANN u:=u´ SONST FALLS exp(- f/T k )>RANDOM[0,1) DANN u:=u´ BERECHNE T k // T 0 >T 1 >T 2 >... 0 BIS f(u) f(u´) für alle u´ N(u) k:=0 k:=k+1

10 Simulated Annealing - Pseudocode Seminar : Maschinelles Lernen und Markov KettenSommersemester 2002 INITIALISIERE u 0, T 0 u:=u 0 WIEDERHOLE GENERIERE u´ N(u) BERECHNE f:=f(u´)-f(u) FALLS f<0 DANN u:=u´ SONST FALLS exp(- f/T k )>RANDOM[0,1) DANN u:=u´ BERECHNE T k // T 0 >T 1 >T 2 >... 0 BIS f(u) f(u´) für alle u´ N(u) k:=0 k:=k+1 FÜR l:=1 BIS L, L

11 Simulated Annealing - Pseudocode Seminar : Maschinelles Lernen und Markov KettenSommersemester 2002 INITIALISIERE u 0 u:=u 0 k:=0 WIEDERHOLE FÜR l:=1 BIS L GENERIERE u´ N(u) BERECHNE f:=f(u´)-f(u) FALLS f<0 DANN u:=u´ SONST FALLS exp(- f/T k )>RANDOM[0,1) DANN u:=u´ k:=k+1 BIS ABBRUCHBEDINGUNG BERECHNE T k // T 0 >T 1 >T 2 >... 0 k:=0 k:=k+1, T 0, L

12 Simulation Seminar : Maschinelles Lernen und Markov KettenSommersemester 2002

13 Gibbsche Verteilung Seminar : Maschinelles Lernen und Markov KettenSommersemester 2002 bei Temperatur T > 0 : für alle s S gilt bei T 0

14 Metropolis-Algorithmus Seminar : Maschinelles Lernen und Markov KettenSommersemester 2002 realisiert Markov-Kette zu gegebener stationärer Verteilung Metropolis-MK[ T ; s] generiere s´ N(s) zufällig akzeptiere s´ mit Wahrscheinlichkeit : Speziallfall : = Gibbsche Verteilung T für T 0 geht 2 (T) 1 Die Markov-Kette konvergiert immer langsamer !

15 Simulated Annealing - Pseudocode Seminar : Maschinelles Lernen und Markov KettenSommersemester 2002 INITIALISIERE u 0 u:=u 0 WIEDERHOLE FÜR l:=1 BIS L GENERIERE u´ N(u) BERECHNE f:=f(u´)-f(u) FALLS f<0 DANN u:=u´ SONST FALLS exp(- f/T k )>RANDOM[0,1) DANN u:=u´ BERECHNE T k // T 0 >T 1 >T 2 >... 0 BIS ABBRUCHBEDINGUNG k:=0 k:=k+1, T 0, L

16 Markov-Ketten Struktur Seminar : Maschinelles Lernen und Markov KettenSommersemester 2002 SIMULATED_ANNEALING(s 0, T 0, L) X(0) s 0 für k = 0,1,... berechne T k für kL t < (k+1)L X(t+1) = Metropolis-MK[ T k ; X(t)] Abbruchbedingung prüfen (X(t)) t=0,1,... ist inhomogene Markov-Kette

17 Langsames Abkühlen Seminar : Maschinelles Lernen und Markov KettenSommersemester 2002 T0T0 T0T0 T1T1 T2T2 TkTk T 0 T 1 T 2 T k 0 * L L L L

18 Schnelles Abkühlen Seminar : Maschinelles Lernen und Markov KettenSommersemester 2002 T0T0 T0T0 T1T1 T2T2 TkTk T 0 T 1 T 2 T k 0 * L L L

19 Theoretische Ergebnisse Seminar : Maschinelles Lernen und Markov KettenSommersemester 2002 asymptotische Konvergenz ist garantiert : lim T 0 lim t P(X T (t) S * ) = 1 Konvergenz in Verteilung der inhomogenen MK : T k C / log(k) führt zu exponentiellen Laufzeit falls lim t P(X(t) S * ) = 1 für alle X(0) = s 0 S

20 Parameter des Algorithmus Seminar : Maschinelles Lernen und Markov KettenSommersemester 2002 Kühlprogramm : Anfangstemperatur T 0 Abkühlungsmechanismus T k T k+1 Endtemperatur T * durch Abbruchbedingung Länge L der Markov-Ketten bei festem T Konvergenz und Laufzeit des Algorithmus hängen davon ab !

21 Ein einfaches Kühlprogramm Seminar : Maschinelles Lernen und Markov KettenSommersemester 2002 Wähle T 0, sodass die Akzeptanzrate T 0 Wähle L = (Durchmesser von S) T k+1 = ·T k für eine festes 0.8 < < 1 Abbruch bei T * wenn T* 0 Keine theoretische Laufzeit- oder Konvergenzgarantie ! # akzeptierte Transitionen # vorgeschlagene Transitionen 1

22 Simulation Seminar : Maschinelles Lernen und Markov KettenSommersemester 2002

23 Fazit : Simulated Annealing Seminar : Maschinelles Lernen und Markov KettenSommersemester 2002 Vorteile : allgemein anwendbares Verfahren asymptotische Konvergenz gesichert liefert hochwertige Approximationen (experimentell) Nachteil : sehr rechenaufwendig stochastischer Approximationsalgorithmus basiert auf schrittweisen lokalen Änderungen Parallelisierung Boltzmann-Maschine


Herunterladen ppt "Simulated Annealing Marco Block & Miguel Domingo Seminar : Maschinelles Lernen und Markov KettenSommersemester 2002."

Ähnliche Präsentationen


Google-Anzeigen