यह उत्तर एक व्यावहारिक उदाहरण का अनुरोध करता है कि किसी का उपयोग कैसे किया जा सकता है, जिसे मैं अन्य उत्तरों के अलावा प्रदान करने का प्रयास करूंगा। वे एक आनुवंशिक एल्गोरिथ्म क्या है, यह समझाने का एक बहुत अच्छा काम करने के लिए लगता है। तो, यह एक उदाहरण देगा।
मान लें कि आपके पास एक न्यूरल नेटवर्क है (हालाँकि वे इसके केवल अनुप्रयोग नहीं हैं), जो कि दिए गए इनपुट से, कुछ आउटपुट देगा। एक आनुवंशिक एल्गोरिथ्म इनमें से एक आबादी बना सकता है, और यह देखकर कि कौन सा आउटपुट सबसे अच्छा है, आबादी के सदस्यों को नस्ल और मार देता है। आखिरकार, यह तंत्रिका नेटवर्क का अनुकूलन करना चाहिए यदि यह पर्याप्त जटिल है।
यहां मैंने एक प्रदर्शन किया है, जो बुरी तरह से कोडित होने के बावजूद आपको समझने में मदद कर सकता है। http://khrabanas.github.io/projects/evo/evo.html
लक्ष्यों के साथ विकसित बटन और गड़बड़ मारो।
यह एक सरल आनुवंशिक एल्गोरिथ्म का उपयोग करता है, जो आबादी के बीच जीवित रहने के लिए प्रजनन, उत्परिवर्तन और निर्णय लेता है। इनपुट चर कैसे सेट किए जाते हैं, इस पर निर्भर करते हुए, नेटवर्क उन्हें कुछ हद तक निकटता प्राप्त करने में सक्षम होगा। इस फैशन में, जनसंख्या की संभावना अंततः एक समरूप समूह बन जाएगी, जिसके आउटपुट लक्ष्यों से मिलते जुलते हैं।
आनुवंशिक एल्गोरिथ्म एक "न्यूरल नेटवर्क" बनाने की कोशिश कर रहा है, जो आरजीबी में लेने से आउटपुट कलर देगा। सबसे पहले यह एक यादृच्छिक आबादी उत्पन्न करता है। यह तब आबादी से 3 यादृच्छिक सदस्यों को लेकर, सबसे कम फिटनेस वाले व्यक्ति का चयन करके उसे आबादी से हटा देता है। फिटनेस शीर्ष गोल वर्ग में अंतर के बराबर है + नीचे गोल वर्ग में अंतर। यह फिर शेष दो को एक साथ प्रजनन करता है और बच्चे को मृत सदस्य के रूप में आबादी में उसी स्थान पर जोड़ता है। जब संभोग होता है, तो एक मौका होता है कि एक उत्परिवर्तन होगा। यह उत्परिवर्तन बेतरतीब ढंग से मूल्यों में से एक को बदल देगा।
एक साइड नोट के रूप में, इसे कैसे सेट किया गया है, इसके लिए कई मामलों में पूरी तरह से सही होना असंभव है, हालांकि यह बिना किसी स्पष्टता के पहुंच जाएगा।