Biham-मिडलटन-लेविन यातायात मॉडल एक आत्म आयोजन सेलुलर automaton कि सरलीकृत यातायात मॉडल है।
इसमें कई कारों की संख्या होती है जो एक यादृच्छिक शुरुआत की स्थिति के साथ एक जाली पर बिंदुओं द्वारा दर्शाई जाती हैं, जहां प्रत्येक कार दो प्रकारों में से एक हो सकती है: वे जो केवल नीचे की ओर जाती हैं (इस लेख में नीली के रूप में दिखाई जाती हैं), और वे जो केवल ओर जाती हैं सही (इस लेख में लाल के रूप में दिखाया गया है)। दो प्रकार की कारों को मोड़ने के लिए ले जाता है। प्रत्येक मोड़ के दौरान, यदि एक अन्य कार द्वारा अवरुद्ध नहीं किया जाता है, तो एक कदम से इसी प्रकार की अग्रिम के लिए सभी कारें।
आपका कार्य इस मॉडल को एक एनीमेशन के रूप में कल्पना करना है। यहाँ कुछ अच्छे प्रदर्शन हैं।
इनपुट
0 और 1 के बीच एक फ्लोटिंग पॉइंट नंबर, घनत्व का प्रतिनिधित्व करता है, और दो ग्रिडर्स जो प्रदर्शित ग्रिड ऊंचाई और चौड़ाई का प्रतिनिधित्व करते हैं। मान लें कि इनपुट मान्य हैं, और उपयोगकर्ता इनपुट से किसी फ़ंक्शन या रीडिंग के पैरामीटर दोनों ठीक हैं।
उदाहरण: 0.38 144 89
(ऊपर की छवि से मेल खाती है)
उत्पादन
एक ग्रिड, कम से कम 80x80, जो चल रहे इस मॉडल के एनीमेशन को प्रदर्शित करता है। शुरुआत में, कारों को ग्रिड पर बेतरतीब ढंग से रखा जाता है, जब तक कि ग्रिड इनपुट घनत्व तक नहीं पहुंच जाता है, आधे लाल और आधे नीले रंग के साथ (जो कि ग्रिड वर्गों की कुल संख्या का घनत्व है, हालांकि आपको पसंद है)। घनत्व होना चाहिए यह मान चाहिए, जिसका अर्थ है कि आप प्रत्येक सेल को घनत्व के साथ एक संभावना के रूप में नहीं भर सकते। प्रत्येक चरण के लिए, एक प्रकार की कार या तो नीचे की ओर जाती है या दाईं ओर घूमती है, यदि वे किनारे पर जाती हैं। जिस प्रकार की कार चलती है वह प्रत्येक चरण को आगे बढ़ाती है। एनीमेशन को देखने योग्य बनाने के लिए, प्रत्येक चरण के बीच कम से कम 10 एमएस होना चाहिए।
नियम
जब तक वे एक-दूसरे और पृष्ठभूमि से अलग होते हैं, तब तक कारें किसी भी रंग या प्रतीक की हो सकती हैं, और प्रत्येक कार का प्रकार एक ही रंग या प्रतीक है।
कंसोल और ग्राफिकल आउटपुट दोनों की अनुमति है। कंसोल आउटपुट के लिए, कोई प्रिंट करने योग्य प्रतीक ठीक है, लेकिन आउटपुट वर्णों के ग्रिड के रूप में होना चाहिए।
कृपया निर्दिष्ट करें कि यदि आपके पास स्क्रीनशॉट या जीआईएफ नहीं है तो आप किस तरह का उत्पादन करते हैं।
अनुकरण हमेशा के लिए चलना चाहिए।
आउटपुट थोड़ा जटिल है, इसलिए यदि आपके कोई प्रश्न हैं, तो कृपया टिप्पणी करें।