Ich habe verschiedene Anfangstemperaturen in meinem Simulationsglühalgorithmus getestet und festgestellt, dass sich die Starttemperatur auf die Leistung des Algorithmus auswirkt.
Gibt es eine Möglichkeit, eine gute Anfangstemperatur zu berechnen?
Ich habe verschiedene Anfangstemperaturen in meinem Simulationsglühalgorithmus getestet und festgestellt, dass sich die Starttemperatur auf die Leistung des Algorithmus auswirkt.
Gibt es eine Möglichkeit, eine gute Anfangstemperatur zu berechnen?
Antworten:
min t δ t E max t - E min t π min t 1t
Schließlich ist die Wahrscheinlichkeit, einen positiven Übergang akzeptieren . Nun können wir eine Schätzung der Akzeptanzwahrscheinlichkeit basierend auf einer "zufälligen" Menge positiver Übergänge erhalten:t & khgr; & khgr; ( T ) S
Wir wollen eine Temperatur , bei der , wobei die von uns gewünschte Akzeptanzwahrscheinlichkeit ist.
wird durch eine iterative Methode berechnet. Einige Zustände und ein Nachbar für jeden Zustand werden erzeugt. Dies gibt uns eine Menge von Transitionen . Die Energien und die den Zuständen der Teilmenge werden gespeichert. Dann wird ein Wert für gewählt, der ein beliebiger positiver Wert sein kann. wird dann mit der rekursiven Formel gefunden
Wenn sich , können wir aufhören. ist nun eine gute Annäherung an die gewünschte Anfangstemperatur . Weitere Erläuterungen, Beweise und Diskussionen finden Sie im ersten Abschnitt des Originalpapiers [1].
[1] Ben-Ameur, Walid. "Berechnung der Anfangstemperatur des simulierten Glühens." Computeroptimierung und Anwendungen 29, nr. 3 (2004): 369 & ndash; 385.
Dies ist ein sehr fortgeschrittenes Thema im Zusammenhang mit sehr engen Optimalwerten. Nach meinem Verständnis wird die Anfangstemperatur im Allgemeinen als Teil einer "Temperaturplan" -Strategie betrachtet, für die es einige gründliche Untersuchungen gibt. Mit anderen Worten, sowohl die anfängliche Temperaturbedingung als auch der Temperaturabfall-Algorithmus (den Sie nicht erwähnen) beeinflussen die gesamten Optimierungsergebnisse. einfache Strategien oder Heuristiken für beide ergeben oft gute oder "gut genug" Ergebnisse.
Es gibt jedoch mindestens eine Veröffentlichung, in der nur die Anfangstemperatur untersucht wird. [1] Die Quintessenz ist, dass es sehr vernünftig und sinnvoll ist, die Anfangstemperatur als Parameter des Problems zu behandeln und im Rahmen der Gesamtoptimierung über verschiedene Anfangstemperaturen zu iterieren (nachdem festgestellt wurde, dass sie sich tatsächlich auf die Ergebnisse auswirkt), es sei denn, Sie arbeiten sehr fortgeschritten eine wahrscheinlich weit verbreitete Praxis.
oder es ist auch üblich, nur eine Anfangstemperatur zu wählen, die gute Ergebnisse liefert (es scheint etwas überraschend und selten zu sein, dass die Ergebnisse der Probleminstanzoptimierung erheblich von einem "besseren" Anfangstemperaturparameter abweichen, der durch Ausprobieren ermittelt wurde). . wie dhj hervorhob, sind einige probleme empfindlicher als andere für die anfangstemperatur.
[1] Berechnung der Anfangstemperatur beim simulierten Glühen von Ben-Ameur 2004
[2] Ein effizienter Zeitplan für das simulierte Glühen: Derivation Lam & Delosme
[3] Temperaturregelung zum simulierten Tempern von Munakata & Nakamura