بازي زندگي Game of Life

/, متلب/بازي زندگي Game of Life

بازي زندگي Game of Life

در سال 1970، رياضيداني بنام John Conway كاربردي از اتوماتاي سلولي را تحت عنوان بازي زندگي مطرح كرد. بازي زندگي را مي‌توان جمعيتي از ارگانيزمهايي در نظر گرفت كه در طي زمان بر هم اثر مي‌كنند. هر سلول مي‌تواند دو حالت زنده (Live) و مرده (Dead) داشته باشد. در هر مرحله هر سلول با توجه به قوانين مرگ و زندگي به محيط بلافاصله اطراف خود پاسخ مي‌دهد.

بازي زندگي به بازي صفر نفره (Zero-Person Game) معروف است. نشان داده شده است كه بازي زندگي ويژگي جهان محاسباتي دارد [Mitc 96] قوانين اين بازي عبارتند از:

قانون مرگ: يك سلول زنده، زنده مي‌ماند اگر كه 2 يا 3 همسايه آن زنده باشد. در غير اينصورت، احساس تنهايي و يا ازدياد جمعيت (Over Crowded) نموده و مي‌ميرد.

قانون زندگي: يك سلول مرده، زنده مي‌گردد اگر كه با 3همسايه زنده احاطه شده باشد. به عبارت ديگر، زماني زنده مي‌شود كه تعداد والدين آن 3 باشد.

از جمله الگوهاي مشاهده شده در بازي زندگي، آنهايي هستند كه در صفحه حركت مي‌كنند. بعنوان مثال مي‌توان glider ها را نام برد و يا glider gun كه يك رشته بطول بي‌نهايت از glider ها را ايجادمي‌كند. سوالي كه Conway از خود پرسيد، اين بود كه آيا اين جمعيت از سلول‌ها مي‌توانند بدون هيچ محدوديتي افزايش يافته و رشد كنند؟ William Gosper پاسخ به اين سوال را در سال 1970 با ابداع glider gun داد. ساختار ثابتي كه يك glider در هر 30 قدم توليد مي‌كرد.

براي نمايش جهان محاسباتي بودن بازي زندگي، بجاي شبيه سازي ماشين Turing ، توابع منطقي پايه را بر مبناي عمل و عكس‌العمل بين جريانهايي از glider ها مي‌سازيم. مثلاً در برخي موارد كه دو glider با هم تصادف مي‌كنند، نابود مي‌شوند. از اين حالت مي‌توان براي ساختن گيت NOT استفاده كرد. G را بعنوان يك جريان پيوسته از glider ها در نظر مي‌گيريم. ورودي A كه شامل يكسري بيت مي‌باشد، بصورت جرياني از glider ها نمايش داده مي‌شود. بگونه‌اي كه حضور glider به عنوان 1 و عدم حضور glider بعنوان 0 در نظر گرفته مي‌شود. اين جريان به جرياني عمود بر آن برخورد مي‌كند. چون زماني كه دو glider با هم برخورد مي‌كنند از بين مي‌روند، تنها آن glider هايي مي‌توانند عبور كنند كه با عدم حضور glider در ورودي (حفره) برخورد كرده باشند (همان بيت‌هاي 0) لذا خروجي NOT ورودي مي‌باشد.

۱۳۹۲-۸-۲ ۲۳:۵۳:۴۷ +۰۳:۳۰آبان ۲ام, ۱۳۹۲|عمومی, متلب دسته بندی ها|بدون ديدگاه

ثبت ديدگاه

پرداخت

1-پرداخت آنلاین
برای پرداخت آنلاین از لینک زیر استفاده کنید
پرداخت آنلاین
2- پرداخت آفلاین
برای پرداخت آفلاین مبلغ مورد نظر را به یکی از شماره کارت
6037997245888723بانک ملی