कंप्यूटर पर "कृत्रिम जीवन" बनाना

सभी को नमस्कार। लेख में मैं कंप्यूटर पर "कृत्रिम जीवन" बनाने पर अपने प्रयोग का वर्णन करना चाहता हूं।

यह कैसा दिखता है?

चित्र क्लिक करने योग्य है

एक आभासी वातावरण कंप्यूटर पर अपने स्वयं के नियमों के साथ बनाया गया है और पहला साधारण जीवित प्राणी जारी किया गया है। मैं उन्हें बॉट्स कहूंगा। बॉट मर सकते हैं या जीवित रह सकते हैं और संतान दे सकते हैं। वंश पूर्वज से थोड़ा अलग हो सकता है।

खैर, फिर विकास और प्राकृतिक चयन को काम के रूप में लिया जाता है।

और मैं केवल दुनिया के विकास को देख सकता हूं।

निर्माता और विश्व विकास के विकल्पों के लिए जितना अधिक अप्रत्याशित होगा, उतना अधिक प्रयोग सफल होगा।

बॉट्स का व्यवहार उनके द्वारा लिखे गए कोड द्वारा नियंत्रित किया जाता है।

यह कोड है जो कि जीन है जो बॉट के व्यवहार के लिए जिम्मेदार है और जो विकास के दौरान बदल जाएगा।

कोड की आंतरिक संरचना परियोजना में सबसे दिलचस्प बात है।

कोड सरल होना चाहिए और सिंटैक्स त्रुटियों के बिना विभिन्न संशोधनों (कोड में किसी भी तत्व का आकस्मिक परिवर्तन) का सामना करना पड़ सकता है।

हम बाद में कोड पर लौटेंगे, पहले मैं दुनिया का वर्णन करूंगा।

"बॉट्स की दुनिया" का वर्णन


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

फिर उन्होंने "खनिज" जोड़ा, जिसके तल पर आप ऊर्जा प्राप्त कर सकते हैं। गहन, अधिक "खनिज" बॉट प्राप्त कर सकते हैं। उसके बाद, दुनिया का निचला हिस्सा भी आबाद होने लगा।

बॉट आठ दिशाओं में जा सकते हैं और आसन्न कोशिकाओं की जांच कर सकते हैं।
बॉट आसन्न सेल पर स्थित अन्य बॉट्स खा सकते हैं।

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

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

यहां मैंने बॉट्स की आभासी दुनिया का एक संक्षिप्त विचार दिया, आगे की सामग्री को समझने के लिए पर्याप्त है। वास्तव में दुनिया ही इतनी महत्वपूर्ण नहीं है, आप विभिन्न दुनियाओं के साथ प्रयोग कर सकते हैं। यह अधिक दिलचस्प है कि कोड जीन कैसे काम करता है।

कोड जीनोम


- . — ( ). ( ), , , . , , . 64 . , . , ( ) . , . . 64 , 64 ( 0 63).



. 23. «». , , , . . , , , . , «», . -.



, 1 63. , 0, «», 1. 1 — 63. , . 63 «», . . , , 64.

, .

. , 8 , .

64 (0..63) . .



, 25 «». 25 (), . , . 0 63, 8. , 8 . 8 (0..7) — , . (64) 8. . , , , .

, , . . , « », .

, « ?» , , , , , . 1 1000, 0 63. , , 15. :

0, 15, 30, 45, 60 ...... 945.

. .



() 10.

№10. 33, « ?».
(+1), , .

14*15=210

210, +2.
23. .

10+23=33.

33 №33

, 210, +3.
8. .

10+8=18.

18 №18

, «», « », «», « » . , , , .



() 7.
№7. 26, «».
(+1), , .

18 % 8 = 2

, , , +2.
0. .

7+0=7.

№7. , .

.

, +3.
3. .

7+3=10.

10 №10 , , .

, +4.
43. .

7+43=50. 50 №50
, +5. 24. . 7+24=31.

31 №31

, +6.
59. .

7+59=66.

66. , 64 2 №2

, , . . . , .

, - , . , , .

.

. , . : «», «», «», « » . ( , «», «», « ?» ) 15 , .

, .


, . , , , . , «» «» , . 25 . , , , ,

. , , «».

.

. , «» , .
.

, , , , .



. «»,







. - .

.



( ) .
, «» . , 4 8.



. , , .

. , .

. . , .



. , . , . , ( , ).



, , , . .



. , . . (-) .

, 7- , , , . , RomanoBruno Java. . .

, , . .

, « ». - .







21 . , .



347 , .



2000 , . , . , , , .

, , .


, , .

, «». «» , .
, , - . . .

- , .

  • .
  • , ret
  • .

<> , , . , . , .</>


, , ( ). -, , , , . , , .

, , .

-, , .


, . 93 « ». . , - .


, .

Pixilang
yadi.sk/d/rLamoeyt3NBRwL

RomanoBruno Java GitHub.

Source: https://habr.com/ru/post/hi418545/


All Articles