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