Čo je bunkový automat
Bunkový automat je plocha políčok, z ktorých každé má nejaký stav (tu živé alebo mŕtve) a mení sa v krokoch nazývaných generácie. V každom kroku sa všetky políčka aktualizujú naraz podľa rovnakého pravidla, ktoré sleduje iba osem susedov okolo každého políčka.
Hru života nemožno vyhrať ani prehrať: počiatočnú polohu zvolíte vy a o zvyšok sa postarajú pravidlá. Zaujímavé je, že z takých jednoduchých pravidiel vzniká veľmi zložité a nepredvídateľné správanie, preto sa skúma v matematike, informatike a dokonca aj v biológii.
Pravidlá jednoducho
Pre každé políčko sa spočíta počet živých susedov (osem okolo neho vrátane uhlopriečok) a tieto pravidlá sa použijú naraz na celej ploche:
- Živá bunka s menej ako dvoma živými susedmi zomiera osamelosťou.
- Živá bunka s dvoma alebo tromi živými susedmi zostáva nažive.
- Živá bunka s viac ako tromi živými susedmi zomiera preľudnením.
- Mŕtve políčko s presne tromi živými susedmi ožije.
Skrátený zápis týchto pravidiel je B3/S23: B (z anglického birth, zrodenie) 3 znamená, že bunka vznikne pri 3 susedoch, a S (z anglického survival, prežitie) 23 znamená, že prežije pri 2 alebo 3. Alternatívne pravidlá v nástroji používajú rovnaký zápis, napríklad HighLife je B36/S23 a Semená sú B2/S.
Jedna generácia vypočítaná ručne
Vezmite blikač: tri živé bunky vo vodorovnom rade. Prostredná má 2 živých susedov, takže prežije. Krajné majú len 1 suseda, takže zomrú. Políčka priamo nad stredom a pod ním majú 3 živých susedov (všetky tri z radu), takže vzniknú. Výsledok: zvislý rad troch buniek.
V nasledujúcej generácii sa postup zopakuje a rad je opäť vodorovný. Preto je blikač oscilátor s periódou 2. Skúste to isté s blokom, štvorcom 2 × 2: každá bunka má 3 susedov, takže všetky prežijú, a žiadne prázdne políčko nemá 3 živých susedov. Nikdy sa nezmení, a preto sa nazýva zátišie.
História: Conway, Gardner a časopis
Britský matematik John Conway hru vymyslel v roku 1970. Rozšíril ju Martin Gardner vo svojej rubrike matematických hier v časopise Scientific American v októbrovom čísle z roku 1970 a odvtedy vznikla obrovská komunita nadšencov, ktorí vzory hľadajú a katalogizujú.
Časom sa dokázalo, že hra je Turingovsky úplná: s vhodnými obrazcami môže v zásade vypočítať čokoľvek, čo vypočíta počítač. Je to jeden z dôvodov, prečo je stále taká slávna: neobmedzená zložitosť z minimálnych pravidiel.
Rodiny vzorov a ktoré vyskúšať
Vzory sa triedia podľa správania. Všetky sú v ponuke «Vzor» v nástroji pod týmito názvami:
| Rodina | Vzor | Čo robí |
|---|---|---|
| Zátišie | Blok, Úľ | Nikdy sa nemení: blok má 4 bunky, úľ 6 |
| Oscilátor | Blikač, Ropucha, Maják | Perióda 2: začína znova každé 2 generácie |
| Oscilátor | Pulzar | Perióda 3, 48 buniek vo východiskovej fáze |
| Oscilátor | Pentadekatlón | Perióda 15 |
| Loď | Klzák | 5 buniek; posunie sa o 1 políčko po uhlopriečke každé 4 generácie |
| Loď | Ľahká loď | Prechádza plochou v priamej línii, perióda 4 |
| Delo | Gosperovo klzákové delo | Vypúšťa nový klzák každých 30 generácií |
| Počiatočný chaos | R-pentomino | 5 buniek, ktoré sa na nekonečnej ploche ustália až po 1 103 generáciách |
Gosperovo delo našiel Bill Gosper v roku 1970 a bolo prvým dôkazom, že populácia môže rásť bez obmedzenia. Okrem týchto nástroj obsahuje aj Žaluď a Die Hard, dva malé vzory, ktorým trvá veľmi dlho, kým sa ustália.
Ako používať nástroj Hra života
- Ťuknite alebo ťahajte po ploche a kreslite živé bunky (opätovným ťuknutím na živú bunku ju odstránite), alebo vyberte vzor v ponuke «Vzor».
- Stlačte «Spustiť». Tlačidlom «Jedna generácia» postupujete po jednom kroku a pokojne sledujete vývoj, a «Pozastaviť» všetko zastaví. Môžete použiť aj klávesnicu s vybranou plochou: medzerník spustí alebo pozastaví, N posunie o krok, R vyplní náhodne a C vymaže.
- Upravte «Rýchlosť», «Veľkosť plochy» a «Pravidlo» a vyskúšajte «Náhodne» (s «Hustota náhodného výberu»), aby ste začali s plochou plnou buniek. «Vymazať» zanechá plochu prázdnu.
- Zapnite «Farbiť podľa veku bunky», aby ste videli, ktoré oblasti sú stabilné dlhšie. Hore sa zobrazuje generácia a počet živých buniek a nástroj upozorní, keď sa plocha ustáli, vojde do cyklu alebo ostane bez života.
Všetko sa počíta vo vašom zariadení a nič sa neodosiela na server. Nástroj ukladá vo vašom prehliadači nastavenia (veľkosť, rýchlosť, pravidlo), ale nie kresbu.
Experimenty na vyskúšanie
- Načítajte klzák a spočítajte, koľko generácií trvá, kým sa posunie o jedno políčko po uhlopriečke: sú to 4. S prepojenými okrajmi obíde plochu dokola a objaví sa na opačnej strane.
- Umiestnite dva klzáky na zrážkovú dráhu a sledujte, ako to dopadne: podľa toho, ako sa stretnú, sa môžu zničiť alebo zanechať zátišie.
- Načítajte Gosperovo delo na plochu aspoň 48 × 48 a spočítajte, ako dlho trvá vypustenie každého klzáka: 30 generácií.
- Načítajte R-pentomino na veľkú plochu a porovnajte s prepojenými okrajmi a bez nich. Na nekonečnej ploche sa ustáli po 1 103 generáciách, ale na konečnej ploche je výsledok iný.
- Zmeňte pravidlo pri rovnakej kresbe. So Semenami (B2/S) každá bunka v každej generácii zomrie a ostávajú len zrodenia, takže sa kresba rozširuje smerom von; s Labyrintom (B3/S12345) vznikajú štruktúry podobné chodbám.
Obmedzenia konečnej plochy
Pôvodná hra sa odohráva na nekonečnej rovine. Plocha nástroja má pevnú veľkosť, takže to, čo dôjde k okraju, sa správa inak: s prepojenými okrajmi opäť vstúpi z opačnej strany (plocha sa stane akýmsi prstencom), a bez prepojenia zhasne o stenu.
Preto veľké vzory potrebujú miesto (Gosperovo delo vyžaduje aspoň 48 × 48) a niektoré, ako R-pentomino, môžu skončiť inak, než vidno na neobmedzenej rovine. Ak sa vzor nezmestí, nástroj vás požiada o väčšiu plochu.
Často kladené otázky
Aké sú pravidlá Conwayovej Hry života?
Živá bunka s 2 alebo 3 živými susedmi zostáva nažive; s menej ako 2 zomiera osamelosťou a s viac ako 3 preľudnením. Mŕtve políčko s presne 3 živými susedmi ožije. Skrátene B3/S23.
Čo znamená B3/S23?
B je zrodenie (birth) a S prežitie (survival). B3 znamená, že bunka vznikne pri 3 živých susedoch, a S23, že prežije tá, ktorá ich má 2 alebo 3.
Čo je klzák?
Je to obrazec z piatich buniek, ktorý sa posúva po uhlopriečke, o jedno políčko každé 4 generácie. Je to najznámejší vzor hry.
Kto vymyslel Hru života?
Britský matematik John Conway v roku 1970. Martin Gardner ju v tom istom roku predstavil v časopise Scientific American.
Prečo moja kresba zmizne alebo ostane stáť?
Je to najčastejšie: mnohé malé obrazce vyhasnú alebo sa ustália za pár generácií. Skúste iný východiskový bod, väčšiu plochu alebo «Náhodne».