सिम्युलेटेड एनीलिंग एल्गोरिथम में प्रारंभिक तापमान


14

मैंने अपने सिमुलेशन एनाउल्लिंग एल्गोरिथम में विभिन्न प्रारंभिक तापमानों का कुछ परीक्षण किया है और ध्यान दिया है कि शुरुआती तापमान का एल्गोरिदम के प्रदर्शन पर प्रभाव पड़ता है।

क्या एक अच्छा प्रारंभिक तापमान की गणना करने का कोई तरीका है?


2
प्रारंभिक तापमान में समस्या डोमेन और अन्य मापदंडों के साथ बहुत कुछ है जो आप एल्गोरिथ्म के ढाल मूल भाग के लिए उपयोग कर रहे हैं। क्या आप अधिक संदर्भ दे सकते हैं?
dhj

जवाबों:


9

जैसा कि टिप्पणियों में थॉमस क्लिम्पेल ने कहा, एक निश्चित स्वीकृति संभावना अक्सर उपयोग की जाती है, जो कहने के बराबर है । 2004 [1] में बेन-अमिर द्वारा प्रस्तावित एक उपयुक्त प्रारंभिक तापमान खोजने के लिए एक सरल पुनरावृत्ति विधि है। निम्नलिखित में, टी एक सख्ती से सकारात्मक संक्रमण, है अधिकतम टी और मिनट टी राज्यों के बाद और संक्रमण से पहले, कर रहे हैं δ टी लागत अंतर अधिकतम टी - मिनट टी और एक संक्रमण उत्पन्न करने की संभावना0.8tmaxtmintδtEmaxtEmintटीπmint1|N(mint)|t जब ऊर्जा राज्यों को स्थिर वितरण के अनुरूप वितरित किया जाता है

N(i)i

πi=|N(i)|exp(Ei/T)j|N(j)|exp(Ej/T)
, जहां के पड़ोसियों के सेट को दर्शाता है ।N(i)i

अंत में, एक सकारात्मक संक्रमण को स्वीकार करने की संभावना है । अब, हमारे पास स्वीकार्यता प्रायिकता का अनुमान " " हो सकता है जो सकारात्मक बदलाव के "यादृच्छिक" सेट पर आधारित है :टी χ χ ( टी ) एसexp(δt/T)tχ^χ(T)S

χ^(T)=tSπmint1|N(mint)|exp(δt/T)tSπmint1|N(mint)|=tSexp(Emaxt/T)tSexp(Emint/T).

हम एक तापमान खोजना चाहते हैं जैसे कि , जहाँ स्वीकृति की संभावना है जो हम चाहते हैं। χ ( टी 0 ) = χ 0 χ 0] 0 , 1 [T0χ(T0)=χ0χ0]0,1[

T0 की गणना एक पुनरावृत्त विधि द्वारा की जाती है। प्रत्येक राज्य के लिए कुछ राज्य और एक पड़ोसी उत्पन्न होता है। यह हमें संक्रमण का एक सेट देता है । की अवस्थाओं के साथ संगत ऊर्जा और संग्रहीत हैं। तब लिए एक मान चुना जाता है, जो कि कोई भी सकारात्मक मान हो सकता है। को पुनरावर्ती सूत्र के साथ पाया जाता हैअधिकतम टीमिनट टी एस टी 1 टी 0SEmaxtEmintST1T0

Tn+1=Tnln(χ^(Tn))ln(χ0)1/p
, जहां एक वास्तविक संख्या है ।p1

जब करीब हो तो हम रोक सकते हैं। अब वांछित प्रारंभिक तापमान का एक अच्छा अनुमान है । अधिक खोज, प्रमाण और चर्चा के लिए, कृपया मूल पेपर का पहला भाग देखें [1]।χ^(Tn)χ0TnT0


[१] बेन-अमिर, वालिद। "सिम्युलेटेड एनीलिंग के शुरुआती तापमान को कम करना।" कम्प्यूटेशनल अनुकूलन और अनुप्रयोग 29, नहीं। 3 (2004): 369-385।


3

यह एक बहुत ही उन्नत विषय है जो बहुत चुस्त आशाओं से संबंधित है। मेरी समझ, प्रारंभिक तापमान को आम तौर पर एक "तापमान अनुसूची" रणनीति का हिस्सा माना जाता है जिसके लिए कुछ गहन शोध है। दूसरे शब्दों में, प्रारंभिक तापमान स्थिति और तापमान क्षय एल्गोरिदम (जिसका आप उल्लेख नहीं करते हैं) दोनों समग्र अनुकूलन परिणामों को प्रभावित करते हैं। दोनों के लिए सरल रणनीति या अनुमान अक्सर अच्छे या "अच्छे पर्याप्त" परिणाम देते हैं।

हालांकि, कम से कम एक पेपर है जो अकेले शुरुआती तापमान का अध्ययन करता है। [१] लब्बोलुआब यह है कि जब तक आप बहुत उन्नत कार्य नहीं कर रहे हैं, प्रारंभिक तापमान को समस्या के एक पैरामीटर के रूप में मानते हैं और समग्र अनुकूलन के भाग के रूप में विभिन्न प्रारंभिक तापमान पर पुनरावृत्ति करते हैं [यह पता लगाने के बाद कि यह वास्तव में परिणामों को प्रभावित करता है] एक बहुत ही उचित है और शायद एक व्यापक अभ्यास।

या, यहां तक ​​कि सिर्फ एक प्रारंभिक तापमान का चयन करना जो अच्छे परिणाम देता है, यह भी आम है (यह कुछ हद तक आश्चर्यजनक प्रतीत होगा और अक्सर ऐसा नहीं होगा कि समस्या उदाहरण अनुकूलन परिणाम परीक्षण और त्रुटि से मिले "बेहतर" प्रारंभिक तापमान पैरामीटर से काफी भिन्न होते हैं) । जैसा कि dhj ने बताया कि कुछ समस्याएं दूसरों की तुलना में शुरुआती तापमान के प्रति अधिक संवेदनशील होंगी।

[१] २००४ की नकली एनालाइजिंग बेन-अमिरिअ के प्रारंभिक तापमान की गणना

[२] एक कुशल सिमुलेटिंग एनलिंग शेड्यूल: व्युत्पत्ति लैम और डेलोसमे

[३] मुनकटा और नाकामुरा की नकल के लिए तापमान नियंत्रण


हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.