Co-evolution of self-replication and function in a digital primordial soup
यह शोध पत्र प्रदर्शित करता है कि यादृच्छिक Z80 असेंबली प्रोग्रामों के डिजिटल वातावरण में, कार्य-आधारित चयन दबाव स्व-प्रतिकृति और गणितीय समस्या-समाधान के स्वतः सह-विकास को संचालित करते हैं, जो यह प्रकट करता है कि कार्यात्मक मांगें किस प्रकार प्रजनन संरचनाओं को आकार देती हैं और कैसे प्रतिकृति गतिशीलता, बदले में, उभरते हुए शिक्षण पाठ्यक्रम निर्मित करती है।
मूल पेपर CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/) के तहत लाइसेंस किया गया है। नीचे दिए गए पेपर की यह व्याख्या AI से तैयार की गई है। इसे लेखकों ने नहीं लिखा है। तकनीकी सटीकता के लिए मूल पेपर देखें। पूरा डिस्क्लेमर पढ़ें
एक डिजिटल महासागर की कल्पना करें, एक "आदिम सूप" (primordial soup) जो पानी और रसायनों से नहीं, बल्कि कोड के 32-बाइट के टुकड़ों से भरा है। ये अभी स्मार्ट प्रोग्राम नहीं हैं; ये केवल निर्देशों का बेतरतीब ढेर हैं, जैसे किसी टूटे हुए टाइपराइटर से बिखरे हुए अक्षर। इस सूप में, कोई पूर्व-निर्मित नियम नहीं हैं जो उन्हें खुद की नकल करने के तरीके बताएं। उन्हें खुद को दोहराने का तरीका पूरी तरह से सही चालों के क्रम को खोजते हुए खुद ही सीखना होगा।
बड़ा सवाल जो शोधकर्ताओं ने पूछा था वह यह था: क्या ये यादृच्छिक (random) कोड के टुकड़े एक ही समय में खुद की नकल करना और गणित की समस्याओं को हल करना सीख सकते हैं?
महान खोज: नकल करना और गणना करना साथ-साथ बढ़ते हैं
इन सिमुलेशन में, जवाब एक जोरदार 'हाँ' था। यादृच्छिक कोड ने न केवल खुद की नकल करना सीखा; इसने उसी समय बहुपद समीकरणों (polynomial equations - जिनमें या जैसे चर शामिल होते हैं) को हल करना भी सीख लिया। यह वास्तव में हुआ कि गणित की समस्या को हल करने का दबाव वास्तव में कोड को खुद की नकल करने के तरीके को बेहतर ढंग से समझने में मदद करता है।
इसे एक भीड़ भरे डांस फ्लोर की तरह समझें। यदि हर कोई केवल बिना सोचे-समझे अपने बगल वाले व्यक्ति की नकल करने की कोशिश करता है, तो वे एक-दूसरे से टकरा सकते हैं। लेकिन यदि उन्हें डांस पार्टनर पाने के लिए एक पहेली भी सुलझानी पड़ती है, तो वे अधिक कुशलता से नाचने लगते हैं। वह कोड जो पहेली सुलझा सका, उसे अधिक बार नाचने का मौका मिला, और वह कोड जो पूरे डांस फ्लोर पर कब्जा किए बिना खुद की नकल कर सका, वह जीवित रहा।
"लोड-पुश" बनाम "LDIR" विकास
शुरुआत में, वह कोड जिसने खुद की नकल करने में सफलता पाई, वह अनाड़ी था। इसने एक ऐसा तरीका अपनाया जिसे लेखक "लोड-पुश" (Load-Push) कहते हैं। कल्पना कीजिए कि एक लिपिक एक किताब की नकल करने की कोशिश कर रहा है जिसमें वह एक अक्षर पढ़ता है, उसे लिखता है, फिर अगला अक्षर पढ़ता है, उसे लिखता है, और इसी तरह आगे बढ़ता है। इसने प्रोग्राम के पूरे 32-बाइट "टेप" (मेमोरी) का उपयोग कर लिया। गणित करने के लिए कोई जगह नहीं बची थी। इन अनाड़ी नकल करने वालों ने ग्रिड पर कब्जा कर लिया, लेकिन वे गणित की पहेलियों को हल नहीं कर सके।
फिर, कुछ बहुत ही दिलचस्प हुआ। कोड ने एक "शॉर्टकट" खोजा। उन्होंने LDIR (लोड, इंक्रीमेंट, रिपीट) नामक एक विशेष निर्देश की खोज की। यह एक जादुई स्टैम्प खोजने जैसा है जो एक ही बार में पूरे पन्ने की नकल कर सकता है। अचानक, कोड को खुद की नकल करने के लिए केवल कुछ बाइट्स की आवश्यकता थी, जिससे टेप पर गणित का समाधान लिखने के लिए पर्याप्त जगह बच गई।
शोध पत्र दिखाता है कि गणित की समस्याओं को हल करने के दबाव ने इस बदलाव को तेज कर दिया। "लोड-पुश" वाले अनाड़ी नकल करने वालों को "LDIR" वाले कुशल नकल करने वालों द्वारा बहुत तेज़ी से बदल दिया गया जब गणित के कार्य सक्रिय थे। समस्या को हल करने की आवश्यकता ने कॉपी करने वाली मशीनरी को संक्षिप्त और कुशल बनने के लिए मजबूर किया।
"मेटाबॉलिक" आहार: स्मार्ट काम करें, न कि कठिन काम
शोधकर्ताओं ने एक मोड़ भी जोड़ा: एक "मेटाबॉलिक लागत" (metabolic cost)। वास्तविक दुनिया में, सोचने में ऊर्जा लगती है। इस डिजिटल दुनिया में, यदि किसी प्रोग्राम ने गणित की समस्या को हल करने में बहुत अधिक कदम उठाए, तो उसे दंडित किया गया और दूसरों के साथ बातचीत करने का कम मौका मिला।
इस दबाव ने कोड को एक चतुर ट्रिक विकसित करने के लिए प्रेरित किया। उन्होंने एक "सेंसर" (कंप्यूटर मेमोरी में एक विशिष्ट रजिस्टर) को चेक करना सीखा कि वे क्या कर रहे हैं।
- गणित के टेस्ट के दौरान: सेंसर में एक संख्या थी। कोड ने इसे देखा, गणित किया, और ऊर्जा बचाने के लिए तुरंत रुक गया (halted)।
- कॉपी करने के चरण के दौरान: सेंसर शून्य था। कोड ने इसे देखा, "स्टॉप" कमांड को अनदेखा किया, और खुद की नकल पूरी करने के लिए चलते रहना जारी रखा।
यह उस छात्र की तरह है जो परीक्षा के लिए कड़ी मेहनत करता है, सही उत्तर मिलते ही ऊर्जा बचाने के लिए तुरंत रुक जाता है, लेकिन नोट्स की नकल करने का अभ्यास करते समय काम जारी रखता है। यह "कंडीशनल हॉल्टिंग" (conditional halting) विशेष रूप से ऊर्जा दंड के कारण विकसित हुआ।
कठिन समस्याओं का रहस्य: एक स्वतःस्फूर्त पाठ्यक्रम (Spontaneous Curriculum)
यहाँ सबसे आश्चर्यजनक हिस्सा है। जब शोधकर्ताओं ने कोड को एक बड़ी, मिली-जुली भीड़ (जहाँ हर कोई किसी के भी साथ बातचीत कर सकता था) में बहुत कठिन गणित की समस्याओं को हल करने के लिए प्रेरित किया, तो कोड विफल रहा। वह फंस गया।
लेकिन, जब उन्होंने भीड़ को 32 अलग-अलग "पड़ोसों" (niches) में विभाजित किया, जिनमें से प्रत्येक को एक अलग गणित की समस्या सौंपी गई थी, और उन्हें केवल कभी-कभी बातचीत करने दी, तो जादू हुआ। सिस्टम ने अपना स्वयं का लर्निंग करिकुलम (सीखने का पाठ्यक्रम) बना लिया।
- आसान पड़ोसों ने पहले सरल गणित हल किया।
- कभी-कभी, एक आसान पड़ोस से कोई प्रोग्राम एक कठिन पड़ोस में यात्रा करता था (जिसे "क्रॉस-निच पॉलिनेशन" कहा जाता है)।
- यह सरल समाधान को कठिन पड़ोस में ले आया, जो एक सीढ़ी (stepping stone) के रूप में कार्य करता था।
कठिन समस्याओं को सीधे उत्तर पर कूदने की कोशिश करके नहीं, बल्कि उन सरल समाधानों पर निर्माण करके हल किया गया जो पहले से ही अन्य स्थानों पर विकसित हो चुके थे। शोध पत्र सुझाव देता है कि यह स्थानिक संरचना एक "इमर्जेंट करिकुलम" (उभरता हुआ पाठ्यक्रम) बनाती है जो विकास का मार्गदर्शन करती है, जो तब नहीं हुआ था जब पूरी आबादी आपस में मिली हुई थी।
यह क्या नहीं है
यह ध्यान रखना महत्वपूर्ण है कि इस सिमुलेशन ने क्या नहीं किया। शोधकर्ताओं ने कोड को यह जानने के लिए प्रोग्राम नहीं किया कि वह खुद की नकल कैसे करे; उन्होंने उसे "कॉपी" बटन नहीं दिया। उन्होंने गणित के समाधान हाथ से तैयार नहीं किए। सिस्टम शुद्ध यादृच्छिकता (randomness) के साथ शुरू हुआ। साथ ही, जबकि कोड ने खुद की नकल करना सीखा, इसने जटिल आनुवंशिक मिश्रण (जैसे यौन प्रजनन) या सहजीवी साझेदारी की खोज स्वतः नहीं की; यह मुख्य रूप से अलैंगिक नकल (asexual copying) तक ही सीमित रहा।
निष्कर्ष
इन डिजिटल सिमुलेशन में, एक समस्या को हल करने की इच्छा ने जीवन के तंत्र (प्रतिकृति/reproduction) को सक्रिय रूप से नया आकार दिया। कुशल होने की आवश्यकता ने इस बात को बदल दिया कि कोड खुद की नकल कैसे करता है, और वातावरण की संरचना ने यह बदल दिया कि कोड क्या सीख सकता है। यह सुझाव देता है कि जीवन के शुरुआती दिनों में, जीवित रहने का संघर्ष और प्रजनन करने की क्षमता, अलग-अलग चरणों के बजाय, एक ही आपस में जुड़ी हुई नृत्य प्रक्रिया रही होगी, जो एक-दूसरे को आगे बढ़ा रही थी।
अपने क्षेत्र के पेपरों की भीड़ में उलझे हुए हैं?
आपके रिसर्च कीवर्ड से मेल खाने वाले सबसे नए और अलग सोच वाले पेपरों का रोज़ाना Digest पाएँ—तकनीकी सारांश के साथ, आपकी भाषा में।