विकासवादी एल्गोरिदम: यह क्या है और इनकी आवश्यकता क्यों है

विषयसूची:

विकासवादी एल्गोरिदम: यह क्या है और इनकी आवश्यकता क्यों है
विकासवादी एल्गोरिदम: यह क्या है और इनकी आवश्यकता क्यों है
Anonim

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

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

असल मेंयह समस्या फिटनेस फ़ंक्शन अनुमान से संबंधित है। इस कठिनाई को दूर करने के लिए फिटनेस सन्निकटन एक उपाय है। हालांकि, एक साधारण प्रतीत होने वाला ईए अक्सर जटिल समस्याओं को हल कर सकता है। इसलिए, अनुक्रम की जटिलता और समस्या के बीच कोई सीधा संबंध नहीं हो सकता है। अधिक विवरण "इवोल्यूशनरी एल्गोरिथम" पुस्तकों में पाया जा सकता है।

कार्यान्वयन

विकासवादी मॉडलिंग और एल्गोरिदम
विकासवादी मॉडलिंग और एल्गोरिदम

एक कदम यादृच्छिक रूप से व्यक्तियों की प्रारंभिक जनसंख्या बनाना है।

चरण दो इस समूह में प्रत्येक व्यक्ति की उपयुक्तता का आकलन करना है (समय सीमा, पर्याप्त तैयारी, आदि)।

चरण तीन - पूरा करने के लिए निम्नलिखित पुनर्जनन चरणों को दोहराएं:

  1. प्रजनन (माता-पिता) के लिए सबसे उपयुक्त लोगों का चयन करें।
  2. नए व्यक्तियों को लाएं जिन्होंने संतान प्राप्त करने के लिए क्रॉसओवर और उत्परिवर्तन का उपयोग करके विकासवादी एल्गोरिदम पारित किया है।
  3. नए लोगों की व्यक्तिगत फिटनेस का आकलन करें।
  4. सबसे कम फिट आबादी को उनके साथ बदलें।

प्रकार

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

  1. जेनेटिक प्रोग्रामिंग। यह कंप्यूटर कोड के रूप में समाधान प्रस्तुत करता है, और उनकी उपयुक्तता कम्प्यूटेशनल कार्यों को करने की उनकी क्षमता से निर्धारित होती है।
  2. विकासवादी प्रोग्रामिंग। विकासवादी आनुवंशिक एल्गोरिथम के समान, लेकिन संरचना निश्चित है और इसके संख्यात्मक पैरामीटर बदल सकते हैं।
  3. प्रोग्रामिंग जीन एक्सप्रेशन। कंप्यूटर अनुप्रयोगों को विकसित करता है, लेकिन जीनोटाइप-फेनोटाइप प्रणाली की खोज करता है, जहां विभिन्न आकारों की परियोजनाओं को निश्चित-लंबाई वाले रैखिक गुणसूत्रों पर एन्कोड किया जाता है।
  4. रणनीति। समाधान के प्रतिनिधित्व के रूप में वास्तविक संख्या के वैक्टर के साथ काम करता है। आमतौर पर स्व-अनुकूली विकासवादी उत्परिवर्तन दर एल्गोरिदम का उपयोग करता है।
  5. विभेदक विकास। वेक्टर अंतर के आधार पर और इसलिए संख्यात्मक अनुकूलन समस्याओं के लिए प्राथमिक रूप से उपयुक्त है।
  6. न्यूरोएवोल्यूशन। विकासवादी प्रोग्रामिंग और आनुवंशिक एल्गोरिदम के समान। लेकिन बाद वाले कृत्रिम तंत्रिका नेटवर्क हैं, जो कनेक्शन की संरचना और वजन का वर्णन करते हैं। जीनोम एन्कोडिंग प्रत्यक्ष या अप्रत्यक्ष हो सकती है।

जैविक प्रक्रियाओं के साथ तुलना

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

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

संबंधित तकनीक

विकासवादी एल्गोरिदम
विकासवादी एल्गोरिदम

एल्गोरिदम में शामिल हैं:

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

अन्य लोकप्रिय मेटाहेरिस्टिक तरीके

  1. शिकार खोज। भेड़ियों जैसे कुछ जानवरों के समूह को पकड़ने पर आधारित एक विधि, उदाहरण के लिए, जोशिकार को घेरने के लिए अपने कर्तव्यों को वितरित करें। विकासवादी एल्गोरिथम के प्रत्येक सदस्य किसी न किसी तरह से दूसरों से संबंधित हैं। यह नेता के लिए विशेष रूप से सच है। यह एक सतत अनुकूलन विधि है जिसे संयोजन प्रक्रिया पद्धति के रूप में अनुकूलित किया गया है।
  2. माप के आधार पर खोजें। प्रकृति-आधारित मेटाहेरिस्टिक विधियों के विपरीत, अनुकूली प्रक्रिया एल्गोरिथ्म अपने मुख्य सिद्धांत के रूप में रूपक का उपयोग नहीं करता है। इसके बजाय, यह प्रत्येक पुनरावृत्ति पर खोज आयाम अनुपात पैरामीटर को अद्यतन करने के आधार पर एक सरल प्रदर्शन-उन्मुख पद्धति का उपयोग करता है। जुगनू एल्गोरिथ्म इस बात से प्रेरित है कि कैसे जुगनू एक दूसरे को अपनी चमकती रोशनी से आकर्षित करते हैं। यह बहुविध अनुकूलन के लिए विशेष रूप से उपयोगी है।
  3. सद्भाव की खोज। संगीतकारों के व्यवहार के विचारों के आधार पर। इस मामले में, विकासवादी एल्गोरिदम संयोजन अनुकूलन के लिए जाने का तरीका है।
  4. गाऊसी अनुकूलन। सूचना सिद्धांत के आधार पर। प्रदर्शन और औसत उपलब्धता को अधिकतम करने के लिए उपयोग किया जाता है। इस स्थिति में विकासवादी एल्गोरिदम का एक उदाहरण: ऊष्मप्रवैगिकी और सूचना सिद्धांत में एन्ट्रापी।

मेमेटिक

विकासवादी मॉडलिंग
विकासवादी मॉडलिंग

रिचर्ड डॉकिन्स के मीम के विचार पर आधारित एक संकर विधि। यह आमतौर पर स्थानीय शोधन करने में सक्षम व्यक्तिगत सीखने की प्रक्रियाओं के साथ संयुक्त जनसंख्या-आधारित एल्गोरिदम का रूप लेता है। समस्या-विशिष्ट ज्ञान के उपयोग पर बल देता है और सुक्ष्म और वैश्विक खोजों को एक सहक्रियात्मक तरीके से व्यवस्थित करने का प्रयास करता है।

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

विकासवादी एल्गोरिथ्म (एक सलाहकार के रूप में जाना जाता है) का आधार काफी सरल है, क्योंकि आप प्राकृतिक चयन की प्रक्रिया से परिचित हैं। इसमें चार मुख्य चरण होते हैं:

  • आरंभीकरण;
  • पसंद;
  • जेनेटिक ऑपरेटर;
  • अंत।

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

आरंभीकरण

एल्गोरिदम शुरू करने के लिए, आपको पहले समाधान का एक सेट बनाना होगा। जनसंख्या में संभावित समस्या बयानों की एक मनमानी संख्या होगी, जिन्हें अक्सर सदस्य कहा जाता है। वे अक्सर बेतरतीब ढंग से उत्पन्न होते हैं (कार्य की बाधाओं के भीतर) या, यदि कुछ पूर्व ज्ञान ज्ञात है, तो अस्थायी रूप से आदर्श माने जाने वाले के आसपास केंद्रित होते हैं। यह महत्वपूर्ण है कि जनसंख्या समाधानों की एक विस्तृत श्रृंखला को कवर करे,क्योंकि यह अनिवार्य रूप से एक जीन पूल है। इसलिए, यदि कोई एल्गोरिथम के भीतर कई अलग-अलग संभावनाओं का पता लगाना चाहता है, तो उसे कई अलग-अलग जीन रखने का प्रयास करना चाहिए।

विकल्प

आनुवंशिक कोड
आनुवंशिक कोड

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

एकाधिक उद्देश्य कार्य

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

जेनेटिक ऑपरेटर

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

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

समाप्ति

मॉडलिंग और एल्गोरिदम
मॉडलिंग और एल्गोरिदम

अंत में, एल्गोरिदम समाप्त होना चाहिए। यह आमतौर पर दो मामलों में होता है: या तो यह कुछ अधिकतम निष्पादन समय तक पहुंच गया है, या यह एक प्रदर्शन सीमा तक पहुंच गया है। इस बिंदु पर, अंतिम समाधान का चयन किया जाता है और वापस कर दिया जाता है।

विकासवादी एल्गोरिदम का उदाहरण

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

ये एल्गोरिदम आधुनिक दुनिया में तेजी से प्रासंगिक होते जा रहे हैं, क्योंकि इन पर आधारित समाधान डिजिटल मार्केटिंग, वित्त और जैसे उद्योगों में तेजी से उपयोग किए जा रहे हैं।स्वास्थ्य सेवा।

ईएएस का उपयोग कहाँ किया जाता है?

अधिक व्यापक रूप से, विकासवादी एल्गोरिदम का उपयोग विभिन्न प्रकार के अनुप्रयोगों में किया जाता है जैसे कि इमेज प्रोसेसिंग, वाहन रूटिंग, मोबाइल संचार अनुकूलन, सॉफ्टवेयर विकास और यहां तक कि कृत्रिम तंत्रिका नेटवर्क प्रशिक्षण। ये उपकरण Google मानचित्र और यहां तक कि द सिम्स जैसे गेम सहित कई ऐप्स और वेबसाइटों के केंद्र में हैं जिनका लोग दैनिक आधार पर उपयोग करते हैं। इसके अलावा, चिकित्सा क्षेत्र कैंसर के उपचार के संबंध में नैदानिक निर्णय लेने में मदद करने के लिए ईए का उपयोग करता है। वास्तव में, विकासवादी एल्गोरिदम इतने मजबूत हैं कि उनका उपयोग लगभग किसी भी अनुकूलन समस्या को हल करने के लिए किया जा सकता है।

मूर का नियम

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

विकासवादी एल्गोरिदम विपणक की मदद कैसे कर सकते हैं?

आनुवंशिक मॉडलिंग
आनुवंशिक मॉडलिंग

बाजार की स्थितियां तेजी से बदल रही हैं और बहुत प्रतिस्पर्धी हैं। इसने विपणन प्रबंधकों को बेहतर निर्णय लेने के लिए प्रतिस्पर्धा करने के लिए मजबूर किया है। उपलब्ध में वृद्धिकंप्यूटिंग शक्ति ने श्रमिकों को समस्या समाधान के लिए ईए का उपयोग करने के लिए प्रेरित किया है।

रूपांतरण अनुकूलन

मॉडलिंग और आनुवंशिक एल्गोरिदम
मॉडलिंग और आनुवंशिक एल्गोरिदम

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

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

सिफारिश की: