06.05.2013 Aufrufe

Physikalische Optimierung - Physik - Universität Regensburg

Physikalische Optimierung - Physik - Universität Regensburg

Physikalische Optimierung - Physik - Universität Regensburg

MEHR ANZEIGEN
WENIGER ANZEIGEN

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

KAPITEL 3. PHYSIKALISCHE OPTIMIERUNGSALGORITHMEN 29<br />

Wie beim Threshold Accepting besteht somit die Gefahr, dass sich das System in<br />

einem lokalen Minimum festsetzt; die Bedingung der Ergodizität ist verletzt, da nicht<br />

mehr alle Punkte des Phasenraums erreicht werden können. Somit kann sich kein thermodynamisches<br />

Gleichgewicht einstellen (Abbildung 3.4); das Sintflut-Verfahren ist ein<br />

Nichtgleichgewichts-Algorithmus. Detailed Balance wird allerdings erfüllt, denn zu einem<br />

gegebenen T sind alle Konfigurationen unter dem Niveau TS gleich wahrscheinlich.<br />

Der Algorithmus ist benannt nach der Sintflut im Alten Testament. Dreht man<br />

nämlich die Problemstellung um und sucht das Maximum des Phasenraums, dann läßt<br />

sich TS als Wasserstand interpretieren, der wie bei einer Sintflut ständig steigt. Problematisch<br />

dabei ist die Inselbildung in der Energielandschaft bei zunehmendem Wasserstand;<br />

möglicherweise befindet man sich nicht auf dem höchsten Berg, sondern auf<br />

einem wesentlich kleineren. Bei hochdimensionalen Problemen gibt es aber zu einem<br />

Zustand σi sehr viele Nachbarn, und man kann in viele Richtungen vor dem Wasser<br />

zurückweichen. Dies erklärt, warum das Sintflut-Verfahren bei vielen komplexen <strong>Optimierung</strong>sverfahren<br />

nahezu optimale Ergebnisse liefert.<br />

3.4 Sonstiges<br />

Abkühlverfahren<br />

Für Simulated Annealing wurden Abkühlschemata entwickelt, die bei unendlich langer<br />

Rechenzeit ein globales Optimum garantieren, wenn man die Temperatur folgenderma-<br />

ßen berechnet:<br />

Tk =<br />

a<br />

b + log(k)<br />

(3.20)<br />

Dabei sind a und b positive, systemabhängige Konstanten und k ist die Anzahl der bereits<br />

durchgeführten Iterationen (Temperaturschritte). Der Nachteil dieses Verfahrens<br />

ist, dass die Rechenzeit größer ist als die vollständige Aufzählung sämtlicher Konfigurationen.<br />

Ein anderes Problem ist, dass nicht sicher ist, ob man wirklich ein globales<br />

Optimum gefunden hat. Diese Abkühlstrategie ist also in der Praxis nicht verwendbar;<br />

stattdessen bedient man sich empirischer Abkühlkurven, die deutlich schneller gegen<br />

T=0 konvergieren.<br />

An erster Stelle der empirischen Verfahren ist die Lineare Abkühlung zu nennen.<br />

Dabei wird die Temperatur bei jedem Schritt um einen konstanten Betrag ∆T<br />

verringert:<br />

Tk = Tstart − k∆T mit 0.01 ≤ ∆T ≤ 0.5 (3.21)<br />

Tstart ist die Anfangstemperatur, die bei jedem <strong>Optimierung</strong>slauf speziell bestimmt<br />

werden muß. Es ist zu beachten, dass Tk niemals kleiner als Null werden darf; der Lauf<br />

ist also ggf. vorher abzubrechen.<br />

Bei der logarithmischen oder exponentiellen Abkühlung wird die Anfangstemperatur<br />

durch wiederholte Multiplikation mit einem Faktor α gesenkt:<br />

Tk = α k Tstart mit 0.8 ≤ α ≤ 0.999 (3.22)

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!