विभेदक विकास

विकासवादी संगणना में, डिफरेंशियल इवोल्यूशन (डीई) एक ऐसी विधि है जो अनुकूलन (गणित) गुणवत्ता के दिए गए माप के संबंध में एक उम्मीदवार समाधान को बेहतर बनाने की कोशिश कर रहे पुनरावृत्त विधि द्वारा एक समस्या है। इस तरह के तरीकों को आमतौर पर मेटाह्यूरिस्टिक्स के रूप में जाना जाता है क्योंकि वे समस्या को अनुकूलित करने के बारे में कुछ या कोई धारणा नहीं बनाते हैं और उम्मीदवार समाधानों के बहुत बड़े स्थान खोज सकते हैं। हालांकि, डीई जैसे मेटाह्यूरिस्टिक्स इस बात की गारंटी नहीं देते हैं कि एक इष्टतम समाधान कभी भी मिल जाएगा।

DE का उपयोग बहुआयामी वास्तविक-मूल्यवान फ़ंक्शन (गणित) के लिए किया जाता है, लेकिन अनुकूलित होने वाली समस्या के ग्रेडियेंट का उपयोग नहीं करता है, जिसका अर्थ है कि DE को अलग-अलग कार्य करने के लिए अनुकूलन समस्या की आवश्यकता नहीं है, जैसा कि ढतला हुआ वंश और क्लासिक अनुकूलन विधियों द्वारा आवश्यक है। अर्ध-न्यूटन तरीके। इसलिए DE का उपयोग अनुकूलन समस्याओं पर भी किया जा सकता है जो :wikt:Continuous भी नहीं हैं, शोर हैं, समय के साथ बदलते हैं, आदि।

डीई उम्मीदवारों के समाधानों की आबादी को बनाए रखने और अपने सरल सूत्रों के अनुसार मौजूदा लोगों को जोड़कर नए उम्मीदवार समाधान बनाकर समस्या का अनुकूलन करता है, और फिर जो भी उम्मीदवार समाधान हाथ में अनुकूलन समस्या पर सबसे अच्छा स्कोर या फिटनेस रखता है। इस तरह, अनुकूलन समस्या को एक ब्लैक बॉक्स के रूप में माना जाता है जो उम्मीदवार समाधान को दिए गए गुणवत्ता का एक उपाय प्रदान करता है और इसलिए ढाल की आवश्यकता नहीं होती है।

DE को 1990 के दशक में स्टोर्न एंड प्राइस द्वारा पेश किया गया था। पुस्तकें समानांतर कंप्यूटिंग, बहुउद्देश्यीय अनुकूलन, विवश अनुकूलन में DE का उपयोग करने के सैद्धांतिक और व्यावहारिक पहलुओं पर प्रकाशित की गई हैं, और पुस्तकों में अनुप्रयोग क्षेत्रों के सर्वेक्षण भी शामिल हैं।  DE के बहुआयामी अनुसंधान पहलुओं पर सर्वेक्षण जर्नल लेखों में पाए जा सकते हैं।

एल्गोरिथम
डीई एल्गोरिथम का एक मूल संस्करण उम्मीदवार समाधानों (जिन्हें एजेंट कहा जाता है) की आबादी होने से काम करता है। जनसंख्या से मौजूदा एजेंटों की स्थिति को संयोजित करने के लिए सरल गणितीय सूत्रों का उपयोग करके इन एजेंटों को खोज-स्थान में इधर-उधर ले जाया जाता है। यदि किसी एजेंट की नई स्थिति में सुधार होता है तो उसे स्वीकार कर लिया जाता है और वह जनसंख्या का हिस्सा बन जाता है, अन्यथा नई स्थिति को यूं ही छोड़ दिया जाता है। प्रक्रिया को दोहराया जाता है और ऐसा करने से यह आशा की जाती है, लेकिन इसकी गारंटी नहीं है कि अंत में एक संतोषजनक समाधान खोज लिया जाएगा।

औपचारिक रूप से, चलो $$f: \mathbb{R}^n \to \mathbb{R}$$ फिटनेस फ़ंक्शन हो जिसे न्यूनतम किया जाना चाहिए (ध्यान दें कि फ़ंक्शन पर विचार करके अधिकतमकरण किया जा सकता है $$h := -f$$ बजाय)। फ़ंक्शन एक उम्मीदवार समाधान को वास्तविक संख्याओं के एक पंक्ति वेक्टर के रूप में तर्क के रूप में लेता है और आउटपुट के रूप में एक वास्तविक संख्या उत्पन्न करता है जो दिए गए उम्मीदवार समाधान की उपयुक्तता को इंगित करता है। की ढाल $$f$$ ज्ञात नहीं है। लक्ष्य एक समाधान खोजना है $$\mathbf{m}$$ जिसके लिए $$f(\mathbf{m}) \leq f(\mathbf{p})$$ सभी के लिए $$\mathbf{p}$$ खोज-स्थान में, जिसका अर्थ है $$\mathbf{m}$$ वैश्विक न्यूनतम है।

होने देना $$\mathbf{x} \in \mathbb{R}^n$$ जनसंख्या में एक उम्मीदवार समाधान (एजेंट) नामित करें। मूल DE एल्गोरिथ्म को तब निम्नानुसार वर्णित किया जा सकता है:


 * पैरामीटर चुनें $$\text{NP} \geq 4$$, $$\text{CR} \in [0,1]$$, और $$F \in [0,2]$$.
 * $$\text{NP} $$ जनसंख्या का आकार है, अर्थात उम्मीदवारों के एजेंटों या माता-पिता की संख्या; एक विशिष्ट सेटिंग 10 है$$n$$.
 * पैरामीटर $$\text{CR} \in [0,1]$$ क्रॉसओवर संभावना और पैरामीटर कहा जाता है $$F \in [0,2]$$ अंतर भार कहा जाता है। विशिष्ट सेटिंग्स हैं $$F = 0.8$$ और $$CR = 0.9$$.
 * इन विकल्पों से अनुकूलन प्रदर्शन बहुत प्रभावित हो सकता है; नीचे देखें।
 * सभी एजेंटों को प्रारंभ करें $$\mathbf{x}$$ खोज-स्थान में यादृच्छिक स्थिति के साथ।
 * जब तक एक समाप्ति मानदंड पूरा नहीं हो जाता (उदाहरण के लिए किए गए पुनरावृत्तियों की संख्या, या पर्याप्त फिटनेस तक पहुंच गया), निम्नलिखित को दोहराएं:
 * प्रत्येक एजेंट के लिए $$\mathbf{x}$$ जनसंख्या में करते हैं:
 * तीन एजेंट चुनें $$\mathbf{a},\mathbf{b}$$, और $$\mathbf{c}$$ यादृच्छिक रूप से जनसंख्या से, उन्हें एक दूसरे के साथ-साथ एजेंट से भी अलग होना चाहिए $$\mathbf{x}$$. ($$\mathbf{a}$$ बेस वेक्टर कहा जाता है।)
 * एक यादृच्छिक सूचकांक चुनें $$R \in \{1, \ldots, n\}$$ कहाँ $$n$$ समस्या का आयाम अनुकूलित किया जा रहा है।
 * एजेंट की संभावित नई स्थिति की गणना करें $$\mathbf{y} = [y_1, \ldots, y_n]$$ निम्नलिखित नुसार:
 * प्रत्येक के लिए $$i \in \{1,\ldots,n\}$$, समान रूप से वितरित यादृच्छिक संख्या चुनें $$r_i \sim U(0,1)$$
 * अगर $$r_i < CR $$ या $$i = R$$ फिर सेट करें $$y_i = a_i + F \times (b_i-c_i)$$ अन्यथा सेट करें $$y_i = x_i$$. (सूचकांक स्थिति $$R$$ निश्चित रूप से प्रतिस्थापित किया गया है।)
 * अगर $$f(\mathbf{y}) \leq f(\mathbf{x})$$ फिर एजेंट को बदलें $$\mathbf{x}$$ बेहतर या समान उम्मीदवार समाधान के साथ जनसंख्या में $$\mathbf{y}$$.
 * उस आबादी से एजेंट चुनें जिसके पास सबसे अच्छी फिटनेस है और इसे सबसे अच्छे पाए गए उम्मीदवार समाधान के रूप में वापस करें।

पैरामीटर चयन
डीई मापदंडों का विकल्प $$\text{NP}$$, $$\text{CR}$$ और $$F$$ अनुकूलन प्रदर्शन पर बड़ा प्रभाव पड़ सकता है। अच्छा प्रदर्शन देने वाले DE मापदंडों का चयन इसलिए बहुत शोध का विषय रहा है। स्टोर्न एट अल द्वारा पैरामीटर चयन के लिए अंगूठे के नियम तैयार किए गए थे। और लियू और लैम्पिनेन। पैरामीटर चयन के संबंध में गणितीय अभिसरण विश्लेषण ज़हरी द्वारा किया गया था।

वेरिएंट
अनुकूलन प्रदर्शन को बेहतर बनाने के प्रयास में DE एल्गोरिद्म के वेरिएंट लगातार विकसित किए जा रहे हैं। ऊपर दिए गए मूल एल्गोरिथम में एजेंटों के क्रॉसओवर और म्यूटेशन करने के लिए कई अलग-अलग योजनाएं संभव हैं, उदाहरण के लिए देखें

यह भी देखें

 * कृत्रिम मधुमक्खी कॉलोनी एल्गोरिदम
 * सीएमए-ES
 * विकास की रणनीति
 * जेनेटिक एल्गोरिद्म