आप शायद कॉनवे के गेम ऑफ लाइफ को जानते हैं , जो गणितज्ञ जॉन कॉनवे द्वारा आविष्कार किया गया प्रसिद्ध सेलुलर ऑटोमेटन है। जीवन नियमों का एक सेट है, जो एक साथ, आपको कोशिकाओं के दो-आयामी बोर्ड का अनुकरण करने की अनुमति देता है। नियम यह तय करते हैं कि बोर्ड पर कौन से सेल रहते हैं और कौन से मर जाते हैं। कुछ कल्पना के साथ, आप कह सकते हैं कि जीवन एक शून्य-खिलाड़ी खेल है: एक ऐसा खेल जिसका उद्देश्य प्रसिद्ध ग्लाइडर की तरह दिलचस्प व्यवहार के साथ पैटर्न ढूंढना है।
एक शून्य-खिलाड़ी खेल ... आज तक। आपको एक कार्यक्रम लिखना है जो गेम ऑफ लाइफ निभाता है - और इसे जीतने के लिए खेलता है, हिल-स्टाइल का राजा। आपका प्रतिद्वंद्वी (एकवचन) बेशक ऐसा करने की कोशिश करता है। विजेता या तो किसी भी जीवित कोशिकाओं के साथ अंतिम बॉट है, या 10000 पीढ़ियों के बाद सबसे अधिक जीवित कोशिकाओं वाला खिलाड़ी है।
खेल के नियमों
नियम लगभग समान हैं (B3 / S23) जीवन:
- दो से कम अनुकूल पड़ोसियों के साथ एक जीवित कोशिका भुखमरी से मर जाती है।
- दो या तीन अनुकूल पड़ोसियों के साथ एक जीवित कोशिका जीवित रहती है।
- तीन से अधिक अनुकूल पड़ोसियों के साथ एक जीवित कोशिका ओवरपॉपुलेशन से मर जाती है।
- एक ही खिलाड़ी के तीन पड़ोसियों के साथ एक मृत सेल उस खिलाड़ी के लिए लड़ने के लिए जीवित है, बशर्ते कोई दुश्मन पड़ोसी न हो ।
... लेकिन प्रत्येक पीढ़ी के बाद, आपको और आपके प्रतिद्वंद्वी दोनों को हस्तक्षेप करने का अवसर मिलता है। आपके लिए लड़ने के लिए आप अधिकतम 30 सेल तक जाग सकते हैं। (जो पहले जाता है वह सर्वर द्वारा तय किया जाता है।)
बोर्ड एक (x, y) कोशिकाओं का वर्ग है। सभी वर्ग शुरू में मर चुके हैं। सीमाएं चारों ओर नहीं लपेटती हैं (यह टोरस के आकार की दुनिया नहीं है) और स्थायी रूप से मृत हैं।
यह बैटलबोट्स और कोर वार्स की भावना में एक प्रतियोगिता है । एक केंद्रीय सर्वर है जो बॉट चलाएगा और यह यहां पाया जा सकता है
मसविदा बनाना
क्षेत्र सर्वर argv के माध्यम से संचारित एक साधारण JSON प्रोटोकॉल बोलता है
जहां मान एक JSON एन्कोडेड स्ट्रिंग है
y_size
: टाइल्स के अधिकतम y तार गायब होने से पहलेx_size
: टाइल्स के अधिकतम x तार गायब होने से पहलेtick_id
: वर्तमान टिक नंबरboard
: फॉर्म '(y, x)' में कुंजियों के साथ एक डिक्शनरी और फॉर्म मेंbot_id
इंट (इंट)bot_id
: इस आईडी के साथ बोर्ड में टाइलें आपकी हैं
उदाहरण:
{"y_size":2000,"x_size":2000,"board":{},"bot_id":1,"tick_id":1}
सर्वर को आपकी पसंद बताना:
- सर्वर को अपने रंग में बदलने के लिए टाइल्स की एक सूची भेजें।
- जो खाली हैं उन्हें ही बदला जाएगा
- नेस्टेड कोर्डर्स सूची प्रारूप
[[0,0], [0,1], [100,22]...]
नोट: आपके बॉट को टाइल्स को अपडेट करने की आवश्यकता नहीं है - सर्वर खुद को अपडेट करता है
प्रतियोगिता के नियम
- यदि आपका कार्यान्वयन प्रोटोकॉल का पालन करने में विफल रहता है, तो जो मोड़ वह करता है वह जब्त कर लिया जाएगा; सर्वर राज्य में कोई परिवर्तन नहीं मान लेगा
- आपको अखाड़े के सर्वर में गलती से लाभ उठाने की अनुमति नहीं है।
- एक समय में अपने ऐ कदम पर फैसला किया है। कृपया अपना अगला कदम यथोचित रूप से उपवास करें।
- अंत में, कृपया सर्वर के लिए अच्छा हो। यह आपके आनंद के लिए है।
- इन नियमों का पालन नहीं करने से अयोग्यता हो सकती है।
- एक टाई होने की स्थिति में, दोनों खिलाड़ियों की कुल मिलाकर 1 जीत है
नियंत्रक खुद चल रहा है
नियंत्रक के लिए स्रोत यहां पाया जा सकता है । नियंत्रक को चलाने के 2 तरीके हैं:
- प्रतियोगिता मोड (टर्मिनल)
- के साथ सेटअप करें
python3 get_answers.py
- प्रत्येक बॉट के साथ एक सभी वी सभी प्रतियोगिता को चलाएं जो इसे हर दूसरे के खिलाफ खड़ा करता है।
- के साथ सेटअप करें
- परीक्षण मोड (GUI)
- Daud
python3 nice_gui.py
- क्लिक करें
Pull Answers
- यदि आप पोस्ट करने से पहले अपने स्वयं के उत्तर को जोड़ना चाहते हैं,
File -> Add manual answer
तो फ़ाइल पर क्लिक करें और उसे खोजें और उस भाषा को चुनें जिसे वह लिखा गया है। - यदि आपकी भाषा मुझे पेश नहीं कर रही है और मैं इसे सर्वर पर स्थापित करने की कोशिश करूंगा, तो मैं इसे चलाऊंगा (स्थापना और निर्देश चलाना बहुत अच्छा होगा!)
- एक दूसरे के खिलाफ गड्ढे करने के लिए 2 बॉट चुनें
- क्लिक करें
Run
- खेल देखो...
- Daud
- स्थापना
- Python3 की आवश्यकता है
- get_answers को bs4 और html5lib की आवश्यकता होती है
- नियंत्रक को .sh फ़ाइलों को चलाने का एक तरीका चाहिए।
स्कोरिंग
12/07/2016
(12 जुलाई)14/07/2016
(14 जुलाई ) से शुरू होने वाली सबसे अधिक जीत वाला बॉट जीत हासिल करने के लिए कैसे काम नहीं कर सकता है।
इस चैट रूम में कंट्रोलर / गुई की मदद ली जा सकती है
यह प्रश्न 2014 से विकास में रहा है और सैंडबॉक्स में सबसे अधिक उत्कीर्ण प्रश्न था। विशेष धन्यवाद वांडर नौटा (मूल लेखक और अवधारणा), PPCG चैट (टिप्पणियों और सहायता) और सैंडबॉक्स पोस्ट में टिप्पणी करने वाले किसी भी व्यक्ति (अधिक टिप्पणियां) के लिए जाता है।