सबसे कुशल अल्गो मुख्य रूप से प्रारंभिक स्थिति पर निर्भर करता है।
यदि अधिकांश कोशिकाएं मर चुकी हैं, तो आप रिक्त हिस्सों को छोड़कर और सेल द्वारा सामान सेल की गणना करके बहुत सी CPU समय बचा सकते हैं।
मेरी राय है कि यह पहली बार पूरी तरह से मृत स्थान की जांच करने के लिए समझ में आ सकता है, जब आपका प्रारंभिक राज्य "यादृच्छिक, लेकिन 5% से कम जीवन के लिए मौका" जैसा होता है।
मैं मैट्रिक्स को हिस्सों में विभाजित कर दूंगा और पहले बड़े लोगों को जांचना शुरू कर दूंगा।
इसलिए यदि आपके पास 10,000 * 10,000 का क्षेत्र है, तो आप पहले 5,000 * 5,000 की ऊपरी बाएं तिमाही के राज्यों को जमा करेंगे।
और यदि पहली तिमाही में राज्यों की राशि शून्य है, तो आप पूरी तरह से इस पहली तिमाही को अनदेखा कर सकते हैं और अगले जीवन के लिए ऊपरी दाएं 5,000 * 5,000 की जांच कर सकते हैं।
यदि इसके राज्यों की संख्या> 0 है, तो आप अब दूसरी तिमाही को 4 टुकड़ों में विभाजित कर देंगे - और इन सब स्पेस के लिए जीवन के लिए इस चेक को दोहराएं।
आप 8 * 8 या 10 * 10 के सबफ्रेम पर जा सकते हैं (सुनिश्चित नहीं है कि अब सबसे ज्यादा समझ में आता है)।
जब भी आपको जीवन मिल जाए, तो आप इन सबस्पेस को "जीवन है" के रूप में चिह्नित करते हैं।
केवल रिक्त स्थान जिनके पास "जीवन है" को छोटे उप-स्थानों में विभाजित करने की आवश्यकता है - खाली वाले को छोड़ा जा सकता है।
जब आप सभी संभावित उप-स्थानों पर "जीवन है" विशेषता निर्दिष्ट करते हैं, तो आप उप-स्पेस की एक सूची के साथ समाप्त होते हैं जिसे आप अब प्रत्येक दिशा में +1 द्वारा विस्तारित करते हैं - खाली कोशिकाओं के साथ - और नियमित (या संशोधित) जीवन के नियम उनके लिए नियम।
आपको लगता है कि 8 * 8 के उप-स्थानों में 10,000 * 10,000 स्पाई को विभाजित करना बहुत अधिक काम है - लेकिन उनके राज्य मूल्यों को जमा करना वास्तव में बहुत अधिक है, प्रत्येक सेल प्लस के लिए गोएल अलगो करने से बहुत कम कंप्यूटिंग कार्य उनके 8 पड़ोसियों के साथ-साथ संख्या की तुलना और शुद्ध पुनरावृत्ति के लिए नए राज्य को संग्रहित करना ...
लेकिन जैसा कि मैंने उपरोक्त कहा है, 30% आबादी के साथ एक यादृच्छिक init स्थिति के लिए यह बहुत समझ में नहीं आता है, क्योंकि वहां नहीं होगा कई पूरी तरह मृत 8 * 8 सबस्पेस ढूंढने के लिए (अकेले मृत 256 * 256 उप-स्थान छोड़ दें)
और निश्चित रूप से, सही अनुकूलन का तरीका अंतिम रहेगा लेकिन कम से कम आपकी भाषा पर निर्भर नहीं होगा।
-110
देखें: hashlife, गोली और एलन Hensel के जावा एल्गोरिथ्म। – Johan