41
Automaty komórkowe Automaty komórkowe Cellular Automata Cellular Automata CA CA

Automaty komórkowe Cellular Automata CA

  • Upload
    colton

  • View
    69

  • Download
    4

Embed Size (px)

DESCRIPTION

Automaty komórkowe Cellular Automata CA. automat komórkowy. 10 11 – liczba neuronów w organizmie liczba galaktyk we wszechświecie 6 * 10 23 liczba Avogadra Otoczenie - duże zespoły wzajemnie oddziałujących elementów zmierzających do stanu równowagi - PowerPoint PPT Presentation

Citation preview

Page 1: Automaty komórkowe Cellular Automata CA

Automaty komórkoweAutomaty komórkoweCellular AutomataCellular Automata

CACA

Page 2: Automaty komórkowe Cellular Automata CA

automat komórkowyautomat komórkowy10101111 – – liczba neuronów w organizmieliczba neuronów w organizmie

liczba galaktyk we wszechświecieliczba galaktyk we wszechświecie6 * 106 * 102323liczba Avogadraliczba Avogadra

Otoczenie - duże zespoły wzajemnie Otoczenie - duże zespoły wzajemnie oddziałujących elementów zmierzających do stanu oddziałujących elementów zmierzających do stanu równowagirównowagi

Uproszczenia w symulacjach komputerowychUproszczenia w symulacjach komputerowych charakter oddziaływańcharakter oddziaływań Ograniczenie oddziaływań do sąsiadówOgraniczenie oddziaływań do sąsiadów

Gra w życie J.H. ConwayGra w życie J.H. Conway 2D; periodyczne warunki brzegowe2D; periodyczne warunki brzegowe Elementy populacji – osobnicy – w węzłach siatkiElementy populacji – osobnicy – w węzłach siatki Reguły przetrwania, śmierci, generowania nowych Reguły przetrwania, śmierci, generowania nowych

osobnikówosobników

Page 3: Automaty komórkowe Cellular Automata CA

CACA Stanisław Ulam, lata 40 XX wStanisław Ulam, lata 40 XX w Step Wolfram (twórca pakietu Step Wolfram (twórca pakietu

Mathematica)Mathematica)

Struktura danych (tablica komórek)Struktura danych (tablica komórek) AlgorytmAlgorytm

Parametry:Parametry: Typ komórkiTyp komórki Stan początkowyStan początkowy Funkcja przejściaFunkcja przejścia

Page 4: Automaty komórkowe Cellular Automata CA

Automat sprawiedliwy – niezależny od Automat sprawiedliwy – niezależny od kierunku przeliczania komórek (kopia kierunku przeliczania komórek (kopia tablicy)tablicy)

sasiedztwosasiedztwo

Sąsiedztwo Neumanna Sąsiedztwo Moore’a

Page 5: Automaty komórkowe Cellular Automata CA

Przykłady automatów Przykłady automatów komórkowychkomórkowych

Gra w życie Gra w życie Conway’s Game of LifeConway’s Game of Life prelokacjaprelokacja Ofiary i drapieżnicyOfiary i drapieżnicy Mrówka LangtonaMrówka Langtona Symulacje fizyczneSymulacje fizyczne

Page 6: Automaty komórkowe Cellular Automata CA

Gra w życie - regułyGra w życie - regułyDla każdego elementu populacjiDla każdego elementu populacji::

if ( 2<=liczba_sąsiadów<=3 ) element przeżywa if ( 2<=liczba_sąsiadów<=3 ) element przeżywa 1 generację1 generację

if ( liczba_sąsiadów >=4 ) element umiera if ( liczba_sąsiadów >=4 ) element umiera //przeludnienie//przeludnienie

if ( liczba_sąsiadów <=1 ) element umiera if ( liczba_sąsiadów <=1 ) element umiera //izolacja//izolacja

Dla każdego pustego pola:Dla każdego pustego pola:

if ( liczba_sąsiadów = 3 ) tworzy się nowy if ( liczba_sąsiadów = 3 ) tworzy się nowy element populacji w tym poluelement populacji w tym polu

Page 7: Automaty komórkowe Cellular Automata CA

Gra w życie regułyGra w życie reguły

Życie i śmierć zachodzą równocześnieŻycie i śmierć zachodzą równocześnie PrzesłankiPrzesłanki

Nie istnieje konfiguracja pierwotna, dla której Nie istnieje konfiguracja pierwotna, dla której w prosty sposób można udowodnić, że rośnie w prosty sposób można udowodnić, że rośnie ona w sposób nieograniczonyona w sposób nieograniczony

Powinny istnieć konfiguracje pierwotne Powinny istnieć konfiguracje pierwotne prowadzące do wzrostu bez granicprowadzące do wzrostu bez granic znikająceznikające tworzące stabilną konfiguracjętworzące stabilną konfigurację wchodzące w nieskończone oscylacjewchodzące w nieskończone oscylacje

Page 8: Automaty komórkowe Cellular Automata CA

Gra w życieGra w życie

akak Efekt końcowy automatuEfekt końcowy automatu

Stan stabilnyStan stabilny Stan cyklicznie zmieniający się z niedużym Stan cyklicznie zmieniający się z niedużym

okresemokresem Stan chaotycznyStan chaotyczny Złożone, stabilne konfiguracje o długich Złożone, stabilne konfiguracje o długich

okresachokresach Życie – równoważne maszynie Turinga Życie – równoważne maszynie Turinga

Page 9: Automaty komórkowe Cellular Automata CA

Gra w życie reguły - Gra w życie reguły - zastosowaniazastosowania

Model formowania opinii społecznej Model formowania opinii społecznej „ „warszawski”warszawski” „ „wrocławski”wrocławski”

Symulacja rozchodzenia się choroby Symulacja rozchodzenia się choroby zakaźnejzakaźnej

Model IsingaModel Isinga CA + GACA + GA Badanie gęstości upakowania kulek w polach Badanie gęstości upakowania kulek w polach

Page 10: Automaty komórkowe Cellular Automata CA

Model formowania opinii społecznej Stany: tak, nie sStany: tak, nie si,ji,j = -1 lub 1 = -1 lub 1 Wartość początkowa – np. 80% populacji – tak; 20% - nieWartość początkowa – np. 80% populacji – tak; 20% - nie Opinie rozrzucone losowoOpinie rozrzucone losowo Przeprowadzenie rund dyskusyjnych – wymiana z innymi Przeprowadzenie rund dyskusyjnych – wymiana z innymi

członkami populacji (sąsiedzi –odległość emocjonalna), siła członkami populacji (sąsiedzi –odległość emocjonalna), siła przekonywaniaprzekonywania

ffi,ji,j – siła przekonywania – siła przekonywania Dynamika układu – opisana regułą większościDynamika układu – opisana regułą większości S=fS=f0,00,0ss0,00,0(t) + f(t) + f0,10,1ss0,10,1(t) + f(t) + f1,01,0ss1,01,0(t) + f(t) + f0,-10,-1ss0,-10,-1(t) + f(t) + f-1, 0-1, 0ss-1,0-1,0(t) (t)

0,0

0,1

1,0-1,00,-1

S0,0 = +1, jeśli S>=0

S0,0 = -1, jeśli S<0

Page 11: Automaty komórkowe Cellular Automata CA

Model formowania opinii Model formowania opinii społecznej społecznej

Inny sposób wyboru sąsiadów , np. losowy, dla Inny sposób wyboru sąsiadów , np. losowy, dla zadanego zasięgu, proporcjonalny do odległościzadanego zasięgu, proporcjonalny do odległości

SzumySzumy Znając dynamikę zmian pojedynczego osobnika – Znając dynamikę zmian pojedynczego osobnika –

obserwacja zmian rozkładu opiniiobserwacja zmian rozkładu opinii Tworzenie grup wokół przywódców (osoby o mocnym Tworzenie grup wokół przywódców (osoby o mocnym

wpływie)wpływie) Tworzenie wałów ochronnych (słabsi osobnicy za murem Tworzenie wałów ochronnych (słabsi osobnicy za murem

osobników silniejszych)osobników silniejszych) Rozwój „grup oporu” Rozwój „grup oporu”

Page 12: Automaty komórkowe Cellular Automata CA

Model wrocławskiModel wrocławski

Bazuje na obserwacji zachowań stadnychBazuje na obserwacji zachowań stadnych Jedna silnie skorelowana (to samo zdanie Jedna silnie skorelowana (to samo zdanie

na pewien temat) para potrafi narzucić na pewien temat) para potrafi narzucić swoje zdanie sąsiadomswoje zdanie sąsiadom

Jeśli para ma różne zdania – otoczenie nie Jeśli para ma różne zdania – otoczenie nie zmienia poglądówzmienia poglądów

Page 13: Automaty komórkowe Cellular Automata CA

Rozchodzenie się choroby Rozchodzenie się choroby zakaźnejzakaźnej

Obszar N x N; rozmieszczenie osobników w polachObszar N x N; rozmieszczenie osobników w polach Periodyczne warunki brzegowe lub niePeriodyczne warunki brzegowe lub nie Szczepienie – wśród losowo wybranej grupySzczepienie – wśród losowo wybranej grupy 1 losowo wybrany niezaszczepiony osobnik – 1 losowo wybrany niezaszczepiony osobnik –

źródłem chorobyźródłem choroby V=liczba_osób_zaszczepionych/liczność_populacjiV=liczba_osób_zaszczepionych/liczność_populacji NNzz – liczba osób niezaszczepionych – liczba osób niezaszczepionych ZZkk- liczba osób zakażonych (spośród N- liczba osób zakażonych (spośród Nzz)) I – wskaźnik infekcji I=ZI – wskaźnik infekcji I=Zkk/N/Nzz < 1 < 1 I(V) – funkcja malejącaI(V) – funkcja malejąca Istnieje VIstnieje Vcc – wskaźnik infekcji gwałtownie maleje – wskaźnik infekcji gwałtownie maleje

Page 14: Automaty komórkowe Cellular Automata CA

Model IsingaModel Isinga

Badanie magnetycznych własności ciałBadanie magnetycznych własności ciał N spinów w węzłach siatki 2DN spinów w węzłach siatki 2D Spiny oddziałują z sąsiadami i Spiny oddziałują z sąsiadami i

zewnętrznym polem magnetycznymzewnętrznym polem magnetycznym Stany spinów: dół -1; góra 1Stany spinów: dół -1; góra 1 Cel – minimum energii układuCel – minimum energii układu Metoda MetropolisaMetoda Metropolisa

Page 15: Automaty komórkowe Cellular Automata CA

prelokacjaprelokacja Symulacja pożaru lasuSymulacja pożaru lasu

Szybkość i kierunek wiatruSzybkość i kierunek wiatru Wilgotność powietrza i poszyciaWilgotność powietrza i poszycia Odległość między drzewamiOdległość między drzewami Istnienie i rozmiary przecinekIstnienie i rozmiary przecinek Rozmieszczenie ognisk zapalnychRozmieszczenie ognisk zapalnych

Pudełko z kulkami przewodnikami i izolatorami Pudełko z kulkami przewodnikami i izolatorami umieszczonymi w dwóch przeciwnych ściankach; po umieszczonymi w dwóch przeciwnych ściankach; po przyłożeniu napięcia – prąd popłynie jeśli utworzy się przyłożeniu napięcia – prąd popłynie jeśli utworzy się prelokujący klaster (przy powolnym wzroście liczby prelokujący klaster (przy powolnym wzroście liczby przewodników - gwałtowne przejście do stanu przewodników - gwałtowne przejście do stanu przewodnictwa)przewodnictwa)

Poszukiwanie ropy naftowej, wody – cechy porowatych Poszukiwanie ropy naftowej, wody – cechy porowatych skałskał

Page 16: Automaty komórkowe Cellular Automata CA

Algorytm prelokacji węzłowejAlgorytm prelokacji węzłowej Tablica zajętościTablica zajętości

Wypełniona losowo z prawdopodobieństwem p „1” lub „0”Wypełniona losowo z prawdopodobieństwem p „1” lub „0” Wektor pamięci MEWektor pamięci ME Etykiety – kolejne liczby całkowite (numer klastra)Etykiety – kolejne liczby całkowite (numer klastra)

Przeglądanie tablicy zajętości wierszami, nadając Przeglądanie tablicy zajętości wierszami, nadając etykiety elementom zajętym; etykiety elementom zajętym; elementowi, który ma sąsiadów (po lewej stronie i powyżej elementowi, który ma sąsiadów (po lewej stronie i powyżej

(i-1,j); (i,j-1) przyporządkowana jest najniższa z etykiet (i-1,j); (i,j-1) przyporządkowana jest najniższa z etykiet sąsiadów (y)sąsiadów (y)

Ustawienie wektora pamięci ME(x)=y; x,y – etykiety; x>yUstawienie wektora pamięci ME(x)=y; x,y – etykiety; x>y Uzgadnianie kilkustopniowe – zastąpienie etykiet z Uzgadnianie kilkustopniowe – zastąpienie etykiet z

wektora ME ( od największej wartości ) x->ywektora ME ( od największej wartości ) x->y

Page 17: Automaty komórkowe Cellular Automata CA

Etykietowanie elementów -Etykietowanie elementów -sąsiedztwosąsiedztwo

11 11 22

33 33 22

11 11 11

11 11 11 11

11 11 11

11 11 11 11

Element badany

sąsiedzi

Page 18: Automaty komórkowe Cellular Automata CA

prelokacjaprelokacja11 11 11

11 11 1111 11 11

11 11 11 1111 11 11

11 11 11 11

11 11 2233 33 22

44 33 5566 44 44 33

44 33 3377 77 33 88

ME(3)=2

ME(6)=4

ME(4)=3

11 11 22

33 33 22

44 33 55

44 44 44 33

44 33 33

77 77 33 88

11 11 22

33 33 22

33 33 55

33 33 33 33

33 33 33

77 77 33 88

11 11 22

22 22 22

22 22 55

22 22 22 22

22 22 22

77 77 22 88

6 -> 4 4 -> 3 3 -> 2

Page 19: Automaty komórkowe Cellular Automata CA

Kropla spadająca na wietrzeKropla spadająca na wietrze

Kropla przesuwa się między węzłami sieci pod Kropla przesuwa się między węzłami sieci pod wpływem siły ciężkości i wiatruwpływem siły ciężkości i wiatru

Cel – określenie średniej wartości dryftu (xCel – określenie średniej wartości dryftu (xkk-x-x00)) Parametry symulacji:Parametry symulacji:

xx00, y, y00 – punkt początkowy – punkt początkowy δ δ x = x = δδy – odległości między współrzędnymi węzłówy – odległości między współrzędnymi węzłów pp11, p, p22, p, p33, p, p4 4 - prawdopodobieństwa ruchu w 4 - prawdopodobieństwa ruchu w 4

kierunkachkierunkach pp11+ p+ p22+ p+ p33+ p+ p4 4 = 1= 1

Liczba symulacjiLiczba symulacji Kryterium stopu pojedynczej symulacji – yKryterium stopu pojedynczej symulacji – ykk= 0= 0

Page 20: Automaty komórkowe Cellular Automata CA

Kropla spadająca na wietrzeKropla spadająca na wietrze

Reguły poruszania się po sieci (xReguły poruszania się po sieci (xii,y,yii) :) :

1.1. Wylosuj Wylosuj rr rzeczywiste rzeczywiste єє(0,1)(0,1)

2.2. if (r <= p1) (xif (r <= p1) (xii,y,yjj) -> (x) -> (xi+1i+1,y,yii) ) →→3.3. if (r >= p1 && r < p1+p2 ) (xif (r >= p1 && r < p1+p2 ) (x ii,y,yii) -> (x) -> (xii,y,yi-1i-1) ) ↑↑4.4. if (r >= p1+p2 && r < p1+p2 +p3 ) (xif (r >= p1+p2 && r < p1+p2 +p3 ) (x ii,y,yjj) -> (x) -> (xi-1i-1,y,yii) )

←←5.5. if (r >= p1+p2+p3 && r < 1 ) (xif (r >= p1+p2+p3 && r < 1 ) (xii,y,yjj) -> (x) -> (xii,y,yi+1i+1) ) ↓↓

Page 21: Automaty komórkowe Cellular Automata CA

Kropla spadająca na wietrzeKropla spadająca na wietrze

→→ ↑↑←←↓↓ x0 xk

y0

yk =0

Page 22: Automaty komórkowe Cellular Automata CA

Ruchy Browna Ruchy Browna Brown 1827, Einstein 1905, Smoluchowski Brown 1827, Einstein 1905, Smoluchowski

19061906 Ruchy małych cząstek zawiesiny w sieciRuchy małych cząstek zawiesiny w sieci

Wyznaczenie położenia cząstki zawiesiny w Wyznaczenie położenia cząstki zawiesiny w chwili t=0, chwili t=0, ΔΔt, 2t, 2ΔΔt, 3t, 3ΔΔt,….t,….oraz oraz ΔΔxxii, , ΔΔyyii

Badanie średniej wartości kwadratu Badanie średniej wartości kwadratu przesunięcia wraz z upływem czasu (liczba przesunięcia wraz z upływem czasu (liczba kroków)kroków)

i

ixNx 22 )(1)(

Page 23: Automaty komórkowe Cellular Automata CA

Ruchy BrownaRuchy Browna śr_wartość_kwadratu_x(liczba kroków)- śr_wartość_kwadratu_x(liczba kroków)-

zależność liniowazależność liniowa śr_wartość_kwadratu_y(liczba kroków)- śr_wartość_kwadratu_y(liczba kroków)-

zależność liniowazależność liniowa

0

200

400

600

800

1000

1200

0 500 1000 1500 2000 2500

x

y

Page 24: Automaty komórkowe Cellular Automata CA

Ruchy BrownaRuchy Browna

Nachylenie prostejNachylenie prostej Dla gazów - 2Dla gazów - 2DD; ; DD – współczynnik dyfuzji – współczynnik dyfuzji D=kT/(6D=kT/(6ππηηr)r)

k k - stała Boltzmanna- stała Boltzmanna TT – temperatura – temperatura ηη współczynnik lepkościwspółczynnik lepkości r r – promień cząstki– promień cząstki

Page 25: Automaty komórkowe Cellular Automata CA

Mrówka LangtonaMrówka Langtona Langton’s AntLangton’s Ant

Pamiętane parametry:Pamiętane parametry: Bieżąca pozycja (x, y)Bieżąca pozycja (x, y) Kierunek ( 1 z 8 lub 1 z 4 )Kierunek ( 1 z 8 lub 1 z 4 )

W każdej iteracji przeliczana jedna komórkaW każdej iteracji przeliczana jedna komórka Modyfikacja komórki (P(x,y)=T/F)Modyfikacja komórki (P(x,y)=T/F) Modyfikacja kierunkuModyfikacja kierunku przesunięcie o jedno poleprzesunięcie o jedno pole

Np.:Np.:if (P(x,y)) zmień kierunek o 90if (P(x,y)) zmień kierunek o 9000 w lewo; w lewo;else zmień kierunek o 90else zmień kierunek o 9000 w prawo; w prawo;P(x,y)=~P(x,y);P(x,y)=~P(x,y);Move (o 1 pole w zadanym kierunku)Move (o 1 pole w zadanym kierunku)

Po 100 000 kroków – tablica nieuporządkowana Po 100 000 kroków – tablica nieuporządkowana akak

Page 26: Automaty komórkowe Cellular Automata CA

Wyliczanie kolejnych wierszy tablicy na Wyliczanie kolejnych wierszy tablicy na podstawie poprzednich – generacja fraktalipodstawie poprzednich – generacja fraktali SierpińskiegoSierpińskiego

Zaznaczenie nieparzystych liczb w trójkącie Zaznaczenie nieparzystych liczb w trójkącie PascalaPascala

Stan komórki – na podstawie dwóch komórek Stan komórki – na podstawie dwóch komórek powyżej ( p + p -> p; p +np. -> np.; np. +np. ->p)powyżej ( p + p -> p; p +np. -> np.; np. +np. ->p)

akak

Page 27: Automaty komórkowe Cellular Automata CA

Symulacje fizyczneSymulacje fizyczne

Komórki – wycinek zdyskretyzowanej przestrzeniKomórki – wycinek zdyskretyzowanej przestrzeni Iteracje – dyskretny czasIteracje – dyskretny czas Nowa wartość komórki zależy od poprzedniej i Nowa wartość komórki zależy od poprzedniej i

sąsiadującychsąsiadujących Rozkład ciśnieniaRozkład ciśnienia Rozchodzenie się fal na wodzieRozchodzenie się fal na wodzie WiatrWiatr

Podobne wyniki przy sąsiedztwie 4, 8, 12Podobne wyniki przy sąsiedztwie 4, 8, 12AK-fale, wiatrAK-fale, wiatr

plamyplamypiasekpiasek

gazgaz

Page 28: Automaty komórkowe Cellular Automata CA

L-systemy (systemy Lindenmayera)L-systemy (systemy Lindenmayera)

1986 r – biolog, Aristid Lindenmayer1986 r – biolog, Aristid Lindenmayer Modelowanie biologicznego wzrostuModelowanie biologicznego wzrostu Tworzenie grafiki komputerowej Tworzenie grafiki komputerowej

przedstawiającej rośliny, krzewy, drzewaprzedstawiającej rośliny, krzewy, drzewa Technika przepisywania: zastępowanie Technika przepisywania: zastępowanie

części początkowego ciągu znaków części początkowego ciągu znaków (aksjomatu) zgodnie z ustalonymi regułami (aksjomatu) zgodnie z ustalonymi regułami (produkcjami)(produkcjami)

Page 29: Automaty komórkowe Cellular Automata CA

Rodzaje L-systemówRodzaje L-systemów

Deterministyczne bezkontekstoweDeterministyczne bezkontekstowe StochastyczneStochastyczne KontekstoweKontekstowe parametryczneparametryczne

Page 30: Automaty komórkowe Cellular Automata CA

L-systemy deterministyczne, L-systemy deterministyczne, bezkontekstowebezkontekstowe

Ustalone słowo początkowe (aksjomat)Ustalone słowo początkowe (aksjomat) Zbiór reguł (produkcji)Zbiór reguł (produkcji)

aa→→אא אא – – słowosłowo Przykład:Przykład:

ωω: b: b p1: a→abp1: a→ab p2: b→ap2: b→ab→a→ab→aba→abaab→abaababa→abaababaabaabb→a→ab→aba→abaab→abaababa→abaababaabaab

Page 31: Automaty komórkowe Cellular Automata CA

L-systemy stochastyczneL-systemy stochastyczne Produkcje z pewnym prawdopodobieństwemProdukcje z pewnym prawdopodobieństwem aa→→(P)(P)אא Przykład:Przykład:

ωω: F: F p1: F→(0.33) F [+F] F [-F] Fp1: F→(0.33) F [+F] F [-F] F p2: F→(0.33) F [+F] Fp2: F→(0.33) F [+F] F p3: F→(0.34) F [-F] Fp3: F→(0.34) F [-F] F

F – krok do przodu + rysowanie liniiF – krok do przodu + rysowanie linii[ - zapisz na stosie stan[ - zapisz na stosie stan] – zdejmij stan z stosu] – zdejmij stan z stosu

Page 32: Automaty komórkowe Cellular Automata CA

L-systemy kontekstoweL-systemy kontekstowe Produkcja stosowana, gdy zgadza się kontekst Produkcja stosowana, gdy zgadza się kontekst

(prawy, lewy lub oba)(prawy, lewy lub oba) 2L-systemy2L-systemy

aall.<a> a.<a> arr → → אא 1L-systemy1L-systemy

aall.<a .<a → → אא a> aa> arr → → אא

Przykład:Przykład: ωω: baaaa: baaaa p1: b< a → bp1: b< a → b p2: b → ap2: b → a

baaaa → abaaa → aabaa → aaaba → aaaab →aaaaabaaaa → abaaa → aabaa → aaaba → aaaab →aaaaa

Page 33: Automaty komórkowe Cellular Automata CA

L-systemy parametryczneL-systemy parametryczne Produkcja:Produkcja:A(t) : t > 5 A(t) : t > 5 → B(t+1)CD(t*0.5, t-2)→ B(t+1)CD(t*0.5, t-2)

Symbol A ma 1 parametr – tSymbol A ma 1 parametr – t if ( t>5 ) A zamienione jest na ……if ( t>5 ) A zamienione jest na ……

Domyślna produkcja: a → aDomyślna produkcja: a → a Przykład:Przykład:

ωω: : B(2)A(4,4)B(2)A(4,4) p1: p1: A(x,y) : y<=3 A(x,y) : y<=3 → → A(x*2,x+y)A(x*2,x+y) p2: p2: A(x,y) : y>3 A(x,y) : y>3 → → B(x)A(x/y,0)B(x)A(x/y,0) p3: p3: B(x) : x<1 B(x) : x<1 → → CC p4: p4: B(x) : x>=1 B(x) : x>=1 → → B(x-1)B(x-1)

B(2)A(4,4) → B(1)B(4)A(1,0) → B(0)B(3)A(2,1) → CB(2)A(4,3) → B(2)A(4,4) → B(1)B(4)A(1,0) → B(0)B(3)A(2,1) → CB(2)A(4,3) → CB(1)A(8,7) → CB(0)B(8)A(8/7,0) → CCB(7)A(16/7,8/7) → ….CB(1)A(8,7) → CB(0)B(8)A(8/7,0) → CCB(7)A(16/7,8/7) → ….

Page 34: Automaty komórkowe Cellular Automata CA

Interpretacja ciągów znaków - żółwInterpretacja ciągów znaków - żółw

Stan żółwia: (x,y,Stan żółwia: (x,y,C)C) x,y –położeniex,y –położenie αα – kierunek – kierunek

Dane:Dane: krok = dkrok = d zmiana kąta = zmiana kąta = ββ

Ciąg znaków – komenda:Ciąg znaków – komenda: F – krok do przodu o d w kierunku F – krok do przodu o d w kierunku αα z rysowaniem linii z rysowaniem linii f – krok do przodu bez rysowania liniif – krok do przodu bez rysowania linii + – skręt w lewo o + – skręt w lewo o ββ - – skręt w prawo o - – skręt w prawo o ββ

Page 35: Automaty komórkowe Cellular Automata CA
Page 36: Automaty komórkowe Cellular Automata CA

Kwadratowa wyspa KochaKwadratowa wyspa Kocha F – krok do przodu o dF – krok do przodu o d + – skręt w lewo o 90+ – skręt w lewo o 9000

- – skręt w prawo o 90- – skręt w prawo o 9000

ωω: F-F-F-F: F-F-F-Fp1: F → F – F + F + FF – F – F + Fp1: F → F – F + F + FF – F – F + F

n=0

n=1

Page 37: Automaty komórkowe Cellular Automata CA

Wyspy KochaWyspy Kocha

Page 38: Automaty komórkowe Cellular Automata CA

F – krok do przodu + F – krok do przodu + rysowanie liniirysowanie linii[ - zapisz na stosie stan[ - zapisz na stosie stan] – zdejmij stan z stosu] – zdejmij stan z stosu

Page 39: Automaty komórkowe Cellular Automata CA
Page 40: Automaty komórkowe Cellular Automata CA

liścieliście

Page 41: Automaty komórkowe Cellular Automata CA