• Nem Talált Eredményt

Egydimenziós, kétállapotú sejtautomaták - Wolfram vizsgálataivizsgálatai

In document Párhuzamos algoritmusmodellek (Pldal 88-91)

B. Nagy: DNS számítógépek és formális modelljeik, Gyires Béla Tananyag Tárház, Typotex, 2014

3.4.3.4.1. Egydimenziós, kétállapotú sejtautomaták - Wolfram vizsgálataivizsgálatai

Tekintsük most az egydimenziós, r = 1, vagyis a legközelebbi szomszédság használatával definiált esetet. Ekkor egy sejt következő állapotát az ő és a két szomszédja, vagyis összesen három egymás melletti cella jelenlegi állapota határozza meg. Ha bináris a rendszer, vagyis minden sejtnek maximum két állapota lehet, akkor ez összesen 22·2·2 = 28 = 256 lehetőséget jelent, ennyi különböző ilyen rendszert definiálhatunk. Szokás ezeket a rendszereket a bináris kódjukkal, illetve annak decimális változatával leírni a következőképpen.

Definíció: Legyen adott egy 1 dimenziós CA = (Z,{0,1},N,d), ahol Z az egész számok halmaza, N = {+1,-1}, a két szomszéd számérték, a d átmenetfüggvény pedig megadható a következőképpen: tekintsük a {0,1}3 elemeit hárombetűs szavaknak ({0,1}* felett) és rendezzük őket lexikografikusan (felhasználva, hogy 0 < 1) csökkenő sorrendbe. Ez azt jelenti, hogy egy adott CA esetén ebben a nyolc esetben kell megadnunk, hogy a sejt értéke 0 vagy 1 legyen. Mivel rögzítettük a nyolc elem sorrendjét, egy nyolc betű hosszúságú {0,1}*-beli szó megadja tehát az átmenetfüggvényt. Ezt a nyolc bittel leírt szót, mint bináris számot tekinthetjük, és a CA Wolfram-számának nevezzük. Általában bináris mellett/helyett decimális értékként is használjuk (0 és 255 közé esik).

Példa (egydimenziós sejtautomata Wolfram-száma) d átmenetfüggvény. Tehát CA = (Z,{0,1},{+1,-1},d), olyan egydimenziós sejtautomata, amiben a sejt következő állapota 0 lesz, ha mind neki, mind a két szomszédjának 1 volt az ez előtti időpillanatban az állapota; 1 lesz a sejt következő állapota, ha a bal szomszédjának és neki is 1 volt az értéke, a jobb szomszédjának viszont 0; 1 lesz akkor is az állapota, ha 0 volt, miközben mindkét szomszédjáé 1 volt; ugyancsak 1 lesz, ha a bal szomszédja 1 állapotban volt, míg ő és jobb szomszédja 0 állapotban, stb.

Az egydimenziós sejtautomaták dinamikus viselkedését a tér-idő diagram segítségével ábrázolhatjuk: a kép első sora tartalmazza a c0 konfigurációt, minden további sor pedig az előző utáni időpillanatbeli konfigurációt. Az ilyen diagramokon a különböző állapotoknak különböző színek felelnek meg. Természetesen az ábrázolás során

csak egy véges részt tudunk ábrázolni (mind térben, mind időben), de ahhoz, hogy vizsgálni tudjuk ezeket a rendszereket, ezen ábrázolások jó kiindulást jelentenek.

Nézzük most az egydimenziós, kétállapotú, legközelebbi szomszédsággal definiált sejtautomatákat. Ezeket a rendszereket Wolfram (tapasztalati úton) a következő négy osztályba sorolja véletlenszerű kezdőkonfigurációból kiinduló dinamikus viselkedésük szerint:

1. Az első csoportba azon Wolfram-számú rendszerek kerülnek, amelyek konstans konfigurációhoz (melyben minden sejt állapota ugyanaz, pl. 0) tartanak tetszőleges kiindulásból. A 3.6. ábrán egy ilyen, a 160 számmal leírható sejtautomata tér-idő diagramját adjuk meg. Látható, hogy elég hamar csak 0 állapotú sejtek lesznek.

(Ezen az ábrán az időtényezőt a különböző sorok különböző árnyalatban történő megjelenítésével is szemléltetjük.) Ugyancsak ebbe a csoportba tartoznak az első lépésben minden pixelt 0-ra (fehér) vagy 1-re (fekete) váltó, 0 és 255 sorszámú sejtautomaták is.

3.6. ábra - A 160-as sorszámú automata evolúciója egy adott kiindulásból.

2. A második csoportba azon modellek kerültek, amelyek tetszőleges kiindulási konfiguráció esetén időbeli periodikus viselkedésre állnak be (rövid, akár 1 periódusidővel). A 3.7. ábrán a 4-es sorszámú automata (itt csak a 010 értékek esetén lesz 1 a cella értéke, vagyis csak akkor marad 1 egy sejt állapota, ha mindkét szomszédjáé 0 volt) egy számítását mutatjuk be, itt végül a periódusidő 1, vagyis időben konstans konfiguráció alakul ki, az ilyeneket nevezzük stabil konfigurációnak. A 3.8. ábra a 108-as automata működését mutatja be, láthatjuk, hogy itt (időbeli) periodikus konfiguráció jött létre.

A fontos jellemzője ennek az osztálynak, hogy egy adott minta fennmarad (vagy helyben, vagy elmozdulva, mint pl. a 2-es automata esetén, a mozgás maximális sebessége pedig egy cella lépésenként). Az automaták kétharmadában a minta fix méretben marad meg, a maradék esetek mintegy felében a minta a végtelenségig nő (pl. 50-es automata), de szépen megjelenő, egyszerű, szabályos, ismétlődő mintával. Az automaták kb.

egyhetede komplexebb viselkedést mutat, ahogy a következő osztályokban bemutatjuk.

3.7. ábra - A 4-es automata stabil konfigurációt állít elő.

3.8. ábra - A 108-as automata periodikus konfigurációsorozatba fut.

3. A harmadik csoport a ,,véletlenszerű''-nek látszó mintázatokat létrehozó sejtautomatákat gyűjti össze. Tíz olyan átmenetfüggvény van, amik ilyen kaotikus viselkedésű rendszereket írnak le. Ezek fraktáljellegű alakzatok, az előző csoportra jellemző kiszámíthatóság, szabályosság nem jellemzi őket. Alapvetően három létrehozott minta tartozik ide. A 3.9. ábrán a 22-es sejtautomatát mutatjuk be, itt pontosan akkor lesz egy cella értéke 1, ha a megelőző konfigurációban az értéket meghatározó hármasban pontosan egy 1-es érték volt. Ez az automata egyébként, ha a kiinduló konfiguráció egyetlen 1-est tartalmaz, éppen a Sierpinski háromszög néven ismert fraktál egy változatát állítja elő (a tér-idő diagramon).

3.9. ábra - A 22-es automata evolúciója véletlenszerű kiindulásból.

4. A negyedik csoportban pedig a ,,bonyolultan viselkedő'' modellek találhatóak, ilyen pl. a 110-es számú. A másik három idetartozó sejtautomata ezzel ekvivalens (jobb-bal, illetve fekete-fehér cserével megkapható ebből). A 3.10. ábrán mutatunk rövid részt ennek az automatának az evolúciójából. Ez az automata ötvözi a stabil és a kaotikus viselkedést. Ha olyan konfigurációból indítjuk, amiben egyetlen 1-es állapotú sejt van, akkor jól megfigyelhető, hogy megjelennek periodikusan ismétlődő mintázatok, illetve olyan sáv is, ahol a viselkedés a kaotikus viselkedésre hasonlít, a két rész pedig elég bonyolultnak látszó kölcsönhatásban van az érintkezésüknél. Erről az automatáról azt is belátták, hogy univerzális (így a legegyszerűbb Turing-univerzális számítási modellnek tekinthetjük).

3.10. ábra - Példa a 110-es szabályú automata működésére.

Nagyon érdekes, hogy egy ilyen egyszerű algoritmus mennyire váratlanul bonyolult módon képes viselkedni.

Szokásos például az a vizsgálat, amikor a kiindulási konfigurációban pontosan egy sejt van az 1 állapotban és minden más sejt a 0 állapotban. Ekkor a páros sorszámú sejtautomaták (vagyis azok, amikben a 000-hoz 0 tartozik a következő időpillanatban) felfoghatóak úgy, mint amik egész számok bináris alakjait generálják, vagyis minden ci konfiguráció éppen a számsor i-edik tagját jelenti.

Példa (számsorgenerálás sejtautomatával)

Tekintsük a 220-as sorszámú sejtautomatát. Ez binárisan a 11011100 sorozatot jelenti. A kiindulás, a 0.

időpillanatban, az 1 szám kódja, az automata átmenetfüggvénye az 111, az 110, az 100, a 011 és a 010 értékekhez rendel 1-et. Ez alapján könnyen ellenőrizhető, hogy az 1. lépésben a 11 áll elő (ami a 3 bináris kódja), a 2. időpillanatban a 111 (a 7-nek felel meg), majd a 1111 (ami a 15) stb. Az automata által generált számsorozat i-edik tagja: 2i+1-1.

Eddig a legegyszerűbb, a kétállapotú sejtautomatákat tekintettük (egydimenzióban, legkisebb szomszédsággal).

Itt jegyezzük meg, hogy abban az esetben, ha három állapot van (egy harmadik szín is megjelenik), már a legkisebb szomszédság használatával is reménytelenül sokféle automata írható le: hármas számrendszerben 33 = 27 jegyű számok (a bevezető 0-kat is megengedve) adják meg ezen automaták kódjait. Wolfram ezek közül csak a totális rendszereket vizsgálta (azokat, ahol a cella következő állapotának értéke csak a szomszédságában tekintett cellák állapotérékeinek összegétől függ), és azt tapasztalta, hogy ezek alapvetően ugyanazokba az osztályokba sorolhatóak, mint az itt tárgyalt kétállapotú rendszerek.

In document Párhuzamos algoritmusmodellek (Pldal 88-91)