Game of life

advertisement
Game of life
Spis treści
Powstanie gry
 Opis reguł gry
 Reguły według Conwaya
 Elementy występujące w grze
 Modyfikacje gry
 Charakterystyka automatu komórkowego
„Gra w Życie”

Powstanie gry
Game of life (Gra w życie) - jeden z pierwszych i najbardziej
znanych przykładów automatu komórkowego, wymyślony
w roku 1970 przez brytyjskiego matematyka Johna Conwaya.
Gra powstała dzięki Conwayowi, który zainspirowany pracami
Stanisława Ulama oraz Roberta Schrandta nad układami sąsiadów
i regułami zmian, eksperymentował nad stworzeniem takiego automatu
pod koniec lat 60. XX wieku. Reguły, które w ostateczności przyczyniły się
do powstania „Gry w życie”, zostały wybrane, ponieważ pozwalały na
równowagę pomiędzy zbyt szybkim rozrastaniem się struktur i zbyt wolnym
pojawianiem się szybko znikających obiektów. Do badania populacji
żyjących Conway używał komputera PDP-7.
Gra została spopularyzowana przez Martina Gardnera na łamach Scientific
American. Od momentu publikacji zawsze wzbudzała duże zainteresowanie
z powodu zaskakującego sposobu, w jaki struktury potrafią ewoluować. To
właśnie jej pojawienie się wzbudziło zainteresowanie automatami
komórkowymi wśród studentów, którzy traktowali ją jako rozrywkę, oraz
fizyków, którzy zwrócili uwagę na możliwości automatów w zakresie
symulatorów fizycznych. Dzisiaj matematyków, ekonomistów i naukowców
z innych dziedzin interesuje sposób, w jaki przy zastosowaniu tylko kilku
prostych reguł powstają skomplikowane struktury.
Opis reguł gry
Gra toczy się na nieskończonej planszy (płaszczyźnie) podzielonej na
kwadratowe komórki. Każda komórka ma ośmiu "sąsiadów", czyli komórki
przylegające do niej bokami i rogami. Każda komórka może znajdować się
w jednym z dwóch stanów: może być albo "żywa" (włączona), albo
"martwa" (wyłączona). Stany komórek zmieniają się w pewnych
jednostkach czasu. Stan wszystkich komórek w pewnej jednostce czasu jest
używany do obliczenia stanu wszystkich komórek w następnej jednostce.
Po obliczeniu wszystkie komórki zmieniają swój stan dokładnie w tym
samym momencie. Stan komórki zależy tylko od liczby jej żywych sąsiadów.
W „Grze w życie” nie ma graczy w dosłownym tego słowa znaczeniu.
Udział człowieka sprowadza się jedynie do ustalenia stanu początkowego
komórek.
Zdefiniowano kilka wzorców reguł generowania, najbardziej
rozpowszechnione są reguły wymyślone przez Conwaya.
Reguły według Conwaya:


martwa komórka, która ma dokładnie 3 żywych sąsiadów, staje się
żywa w następnej jednostce czasu (rodzi się);
żywa komórka z 2 albo 3 żywymi sąsiadami pozostaje nadal żywa;
przy innej liczbie sąsiadów umiera (z "samotności" albo "zatłoczenia").
Elementy występujące w grze:





Struktury niezmienne
Oscylatory
Struktury niestałe
Statki
Działa
Struktury niezmienne
Struktury niezmienne, inaczej stabilne lub statyczne, pozostają
identyczne bez względu na krok czasowy (dla każdej żywej komórki spełniony
jest warunek przetrwania i dla żadnej spośród martwych nie jest spełniony);
najprostsza taka struktura (Block) składa się z 4 żywych komórek. Pojawiają się
bardzo często jako produkty końcowe ewolucji struktur. Tworzy się je
stosunkowo prosto, istnieją schematy według których można wymyślać nowe
tego typu struktury. Oto przykłady:
Blok
Łódź
Bochenek
Kryształ
Koniczynka
Oscylatory
Oscylatory zmieniają się okresowo, co pewien czas powracają do
swojego stanu pierwotnego; najprostsza taka struktura składa się z trzech
żywych komórek położonych w jednym rzędzie. Najprostsze z nich dość
często pojawiają się jako produkty końcowe ewolucji struktur.
Okresy oscylatorów najczęściej przyjmują wartości 2, 3, 4, 6 lub 8, choć
w grze w życie znaleziono i takie, których okres wynosi prawie 150000. Dla
pewnych reguł istnieje nawet oscylator o nazwie "biały rekin", który ma
okres 150000034.
Większość liczb naturalnych może być długościami okresu oscylatora.
Wyjątkami są jednak liczby 19, 23, 31, 37, 38, 41, 43, oraz 53. Nie
wiadomo, czy oscylatory dla takich długości okresów istnieją, ale jest
bardzo prawdopodobne, że tak jest. Warto dodać, że dla okresów 34 i 51
jedyne znane oscylatory składają się z niezależnie działających struktur
o okresie 2 lub 3 i 17. Przykładowo oscylator o okresie 34 tworzy się
z oscylatorów długości 2 i 17 w takiej odległości, by na siebie nie wpływały.
Dla cyklu długości 14 istnieje natomiast tylko jeden oscylator (Fontanna).
Charakterystyczną cechą oscylatorów o dłuższych okresach jest
podobieństwo tych o cyklu jednakowej długości (np. oscylatory długości 32
przypominają zegary z obracającą się wskazówką). Ich tworzenie jest dość
trudne (wymaga sporej wyobraźni). Oto kilka przykładów oscylatorów:
Blinker
(światła uliczne)
Żabka
Krokodyl
Fontanna
Struktury niestałe
Struktury niestałe zmieniają się, nie powracając nigdy do swojego
stanu pierwotnego. Jest to w praktyce grupa łącząca struktury nie należące
do żadnej z pozostałych kategorii. Z tego też powodu jest ich najwięcej,
A ich uzyskanie nie sprawia większych trudności (losowy układ komórek
wprowadzony jako warunki początkowe zwykle okazuje się być strukturą
niestałą).
Niektóre struktury niestałe mają jednak właściwość ciekawego lub bardzo
długiego przebiegu rozwoju. Jedną z cech takich struktur jest stosunek
liczby komórek w stadium początkowym do liczby kroków, po których
następuje stabilizacja, tj. zamiana na konfigurację układów stabilnych,
oscylatorów i statków (zwykle gliderów).
Wartość ta oznaczana będzie tutaj przez L. Najważniejsze spośród
najprostszych struktur niestałych:
- R-Pentomino (F-Pentomino) – chaotyczny rozwój aż do około 1200
kroku, emisja kilkudziesięciu gliderów; L≈280.
- B-Heptomino – rozwój przez ponad 100 kroków aż do uzyskania zespołu
struktur stabilnych; emituje glidera; L≈15.
- Pi-Heptomino – efektowny rozwój przez ponad 200 kroków aż do
uzyskania charakterystycznego zespołu blinkerów (oscylatorów) i struktur
stabilnych, tzw. rezultatu B-Pi; L≈30.
- Bi-Pi-Heptomino – struktura złożona z dwóch Pi-Heptomino
odwróconych względem siebie do góry nogami. Efektownie rozwija się, po
czym zanika po około 10 krokach czasowych.
- W-Mino – efektowny rozwój, zakończony po 50 krokach powstaniem
zbioru blinkerów (oscylatorów) i struktur stabilnych; L≈6.
Najdłużej rozwijające się struktury niezmienne nazwane są
matuzalemami (nazwa pochodzi od Matuzalema). Terminem
diehard (ang. die – umierać, hard – trudno) określa się układ,
który co prawda znika, ale dopiero po długim czasie.
Diehard – umiera po 130 krokach;
L≈15
Żołądź – stabilizuje się po 5206 krokach;
L≈700
Odkryto również kilka układów nieśmiertelnych. Po okresie
przejściowym tworzą podobne "dymiące lokomotywy"
zostawiające zygzakowatą linię kwadratów
(w wypadku ostatniego układu – dwie lokomotywy):
Nieśmiertelny układ;
tylko 10 komórek
Nieśmiertelny układ;
mieści się w kwadracie 5x5
Nieśmiertelny układ – mieści się w jednej linii
Statki
Tzw. "statki" zwykle zmieniają się okresowo – choć okresy nie przekraczają
jednak najczęściej kilkunastu kroków czasowych – ale wraz z każdym cyklem
przesuwają się o stałą liczbę pól po planszy w określonym kierunku.
Najbardziej znanym przykładem takiej struktury, będącym jednocześnie
niejako symbolem „Gry w życie”, jest glider (szybowiec).
Glider
Lot szybowca
LWSS (Dakota)
Lot Dakoty
Poza tym znane są także tzw. statki kosmiczne. Różnią się
one od glidera kierunkiem poruszania się (pion lub poziom,
a nie ukos) oraz możliwością modyfikacji – poprzez
dodawanie komórek w odpowiedni sposób będziemy
uzyskiwać kolejne statki. W zależności od ich wielkości
nazywane są LWSS, MWSS, HWSS lub OWSS (skrótowce od
Light/Medium/Heavy/Over Weight Space Ship –
Lekki/Średni/Ciężki/"Nadciężki" Statek Kosmiczny). Stosuje
się też do nich nazwę Dakota z liczbą określającą ich rozmiar.
Jeszcze większe Dakoty nie mogą latać samodzielnie, ale
mogą w towarzystwie mniejszych.
Poza tym istnieje jeszcze kilka innych statków
o stosunkowo niewielkich rozmiarach (m. in. Maszyna
Schicka, Rzutka). Pozostałe (kilkaset) takie struktury są duże
(kilkaset żywych komórek) i trudne do tworzenia.
Wymyślający je informatycy nadają im często artystyczną
formę, np. ryby czy falującej wody.
Działa
Działa to oscylatory, które co jeden okres
"wyrzucają" z siebie jeden statek, który odłącza się
i egzystuje samodzielnie. Najwięcej dział generuje glidery, poza tym część
jest zdolna do wytwarzania statków kosmicznych.
Długość okresu tych struktur waha się od 30 (najprostszy Gosper Glider
Gun) aż do kilkudziesięciu tysięcy kroków czasowych. Ze względu na fakt, że
są to formy bardzo zaawansowane (od stu do nawet kilku tysięcy żywych
komórek), ich tworzenie jest zwykle bardzo czasochłonne i wymaga
praktyki.
Gosper Glider Gun
Modyfikacje gry





Modyfikacje reguł
Modyfikacje kształtu komórek
Modyfikacje kolorystyczne
Immigration
QuadLife
Modyfikacje reguł
Reguły, jakim podlega automat opisywane są często skrótowo w
następujący sposób:

przed ukośnikiem umieszcza się te liczby komórek w sąsiedztwie, dla
których żywe komórki przeżywają (dla reguły Conwaya będzie to 23);
następnie umieszcza się ukośnik: /;

po ukośniku umieszcza się te liczby komórek w sąsiedztwie, dla których
martwe komórki ożywają (dla reguły Conwaya będzie to 3);
Pedały (reguła 3/3)
Modyfikacje kształtu komórek
Oprócz powszechnie przyjętego podziału płaszczyzny na kwadraty można
zastosować także sześciokąt (siatka heksagonalna). Najczęściej stosowaną
regułą jest 3/24, jednak nie znaleziono struktur tak interesujących jak
w oryginale.
Modyfikacje kolorystyczne
Nie zmieniając reguł automatu, możemy zabarwić część komórek, co da
ciekawszy efekt, nie wpłynie jednak na kształt generowanych struktur.
Immigration
Żabka w Immigration:
dla żywych komórek dostępne są dwa kolory – zwykle czerwony i żółty.
Dla martwych sytuacja się nie zmienia względem oryginału;
 definiując warunki początkowe każdej z komórek przypisujemy jeden kolor.
Na każdy z kolorów powinna być zabarwiona przynajmniej jedna komórka,
w przeciwnym razie uzyskamy zwykłą grę w życie;
 nowo powstające komórki przyjmują taki kolor, jaki ma większość z ich 3
żywych sąsiadów;
 kolory żywych komórek nie zmieniają się w trakcie gry.

Żabka w Immigration
QuadLife
Glider gun w QuadLife:
dla żywych komórek dostępne są aż cztery kolory – zwykle czerwony,
żółty, zielony i niebieski. Dla martwych sytuacja się nie zmienia względem
Oryginału;
 definiując warunki początkowe każdej z komórek przypisujemy jeden
kolor. Na przynajmniej dwa spośród kolorów powinna być zabarwiona
przynajmniej jedna komórka, przeciwnym razie uzyskamy zwykłą grę
w życie;
 nowo powstające komórki przyjmują taki kolor, jaki ma większość z ich 3
żywych sąsiadów; jeżeli ma po jednym sąsiedzie z każdego koloru przyjmuje
pozostały kolor;
 kolory żywych komórek nie zmieniają się w trakcie gry.

Glider gun w QuadLife
Dalsze losy "Gry w życie"
Stephen Wolfram, który podzielił automaty komórkowe na cztery różne
klasy, biorąc pod uwagę efekty jakie one wywołują, przyporządkował
„Grę w życie” do klasy czwartej, charakteryzującej się tym, że nie prowadzą
one ani do globalnego porządku, ani do globalnego chaosu. Przedstawił on
hipotezę, że ten automat może wykonywać obliczenia i jest równoważny
maszynie Turinga. Chris Langton, twórca innego popularnego automatu
komórkowego, znanego jako mrówka Langtona wykazał w roku 1991, że
proponowana przez Wolframa klasa czwarta, znajduje się pomiędzy klasą
zachowań chaotycznych (klasa II) i struktur okresowych (klasa III).
Przygotował: Marcin Chojnacki
Bibliografia: www.wikipedia.pl
Download