Inleiding Adaptieve Systemen Cellulaire automaten Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
Inhoud Conway’s game of life Periodiciteit, notie van verdichtingspunt Eén-dimensionale cellulaire automaten Ruimte van regelverzamelingen Chaos vs. complexiteit (→ Turing-volledigheid) Langton’s λ-parameter als maat voor CA-compexiteit Reversibiliteit, Garden of Eden Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
Waarom cellulaire automaten? Modelleren, simuleren, begrijpen en ontwerpen van: Fysische systemen (gassen, vloeistoffen) Aardbevingen, het weer Biologische patroonvorming (tumorweefsel) Sociaal emergent gedrag (roddels, infectieziekten, paniek-uitbraak bij dodenherdenking 4 Mei 2010 op De Dam) Verkeersmodellen Bosbranden Theorie van berekenbaarheid (Turing-volledigheid) Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
Conway’s game of life Als de speelranden worden verbonden krijg je een .. .. of cilinder, of Möbius band, of fles van Klein, of projectief vlak Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
Fles van Klein (Eng.: Klein bottle) Torus, Fles van Klein Fles van Klein (Eng.: Klein bottle) Torus Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
Möbius band, projectief vlak Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
Conway’s game of life De meest bekende CA. October 1970 nummer van de Scientific American, in Martin Gardner's “Mathematical Games” column. Een twee-dimensionaal rooster. Elke cel kan aan zijn (bewoond gebied) of uit (onbewoond). Regels: Een lege cel wordt bewoond gebied als er precies drie bewoonde buurcellen zijn. Een bewoonde cel wordt verlaten als Er minder dan twee bewoonde buren zijn (eenzaamheid). Er meer dan drie bewoonde buurcellen zijn (over-bevolking). Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
Enkele typische regels Sterfte door Eenzaamheid: Sterfte door Overbevolking: Geboorte: De ring van de onderste rij blokken wordt gevormd door oude toestanden Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
Typische patronen Stabiel: Blok Vis Bill Gosper’s “Gliding Gun” voor het maken van gliders Blinker Dingetje Oscil-lerend: Glijder Ver-schui-vend: Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
Glider gun factory Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
Hoe kwam Conway terecht bij juist deze regels? Aantal mogelijke regels Er zijn 8 buurcellen die de toestand van de centrumcel bepalen. Elke buurcel kent 2 toestanden: dus 28 = 256 verschillende omgevings-toestanden. Voor elke omgevingstoestand zijn er ook weer 2 keuzes voor de centrumcel. 256 keer kiezen uit 2 centrumtoestanden geeft 2256 1E77 verschillende mogelijke regelverzamelingen. Modulo rotatie en spiegeling: veel minder dan 256 omgevingen. Gebaseerd op aantal buren: nog maar 29 = 512 mogelijke regels. Mogelijke motivatie Conway Patronen moeten in het begin lekker kunnen groeien. Lange-termijn gedrag is onvoorspelbaar. Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
Martin Gardner, 1970 “Conway chose his rules carefully, after a long period of experimentation, to meet three desiderata: There should be no initial pattern for which there is a simple proof that the population can grow without limit. There should be initial patterns that apparently do grow without limit. There should be simple initial patterns that grow and change for a considerable period of time before coming to an end in three possible ways: Fading away completely (from overcrowding or from becoming too sparse), settling into a stable configuration that remains unchanged thereafter, or entering an oscillating phase in which they repeat an endless cycle of two or more periods. In brief, the rules should be such as to make the behavior of the population both interesting and unpredictable.” Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
Hoe eindigen configuraties? Beginpatronen kunnen voor aanzienlijke tijd veranderen. We komen uiteindelijk terecht in één van de volgende situaties Stabiel. Een configuratie eindigt in een stabiele toestand (er komen geen cellen bij en er gaan geen cellen af). Bijzonder deelgeval: verdwijning (= stabiel 0). Een configuratie verdwijnt volledig vanwege onder- of overbevolking. Alle andere gevallen: stabiel > 0. Periodiek. Een configuratie komt terecht in een cyclus met een bepaalde periode. Na, zeg N, generaties komen we weer terug bij een eerdere generatie. Chaotisch. (Rest-categorie.) Kenmerken: variërend van ruisig tot complex. Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
Wanneer chaos in een CA? Vraag Bekijk Conway’s game of life op een 100x100 rooster, met de randen in elkaar overlopend. (Torus.) Een willekeurige beginconfiguratie bestaande uit 6667 levende cellen. We itereren onbeperkt. Piet beweert: “deze configuratie blijft zich chaotisch ontwikkelen”. Waar of niet waar? Antwoord Niet waar. Een rooster bevat een eindig aantal vlakjes, zeg NxN. Elk vlakje kan eindig veel toestanden aannemen, zeg M. Het hele rooster kan hoogstens MNxN patronen doorlopen. Of de randen nu niet (vierkant) of wel (torus) verbonden zijn. Mogelijke scenario’s: Stabiel Periodiek met een periode ten hoogste MNxN. Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
Chaos versus periodiciteit Net vastgesteld: in eindige CA’s is er geen chaos mogelijk. Dus chaotisch gedrag in CA’s is op (conventionele) computers is onmogelijk op te roepen. Het aantal generaties vóórdat een CA in een stabiele toestand of periode terechtkomt, heet de overgangsperiode (eng.: transient period). Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
Gedrag op oneindig rooster Op eindig rooster: alleen convergentie of periodiciteit. Op oneindig rooster: glider. Geen convergentie (blijft bewegen). Geen periodiciteit (komt nooit meer op dezelfde plek terug). Totale chaos? Nee: er is tenminste één patroon dat oneindig vaak terugkomt over het hele rooster (!) Benamingen: limietpunt verdichtingspunt ophopingspunt Let op: “punt” ≠ “cel” “punt” = “globale configuratie” Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
König’s lemma (voor bomen) “Elke oneindige boom met eindige (niet noodzakelijk begrensde) vertakkingen, bezit een oneindige tak.” Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
Jarkko Kari, lecture notes Cellular Automata, 2009 Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
Bewijs van het bestaan van ten minste één terugkerend patroon 31 30 29 28 27 26 Stap 1: Enumereer alle cellen in het oneindige rooster. Dat kan op verschillende manieren. 13 12 11 10 25 14 3 2 9 24 15 4 1 8 23 16 5 6 7 22 17 18 19 20 21 Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
Enumereren kan ook in taal: Laat Cn van verzameling van cellen (x, y) zodanig dat |x| + |y| = n. Cn bevat eindig veel elementen. Enumerereer eerst C0, zet daar dan achter C1, dan C2 , etc. Zo krijg je: (0, 0); (1,0), (-1,0), (0, 1), (0, -1); (2,0) , (1,1), (-1,1), …. …. Als je maar een methode hebt waarvan je inziet dat elke cel uiteindelijk een nummer krijgt. Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
1 Stap 2: König’s lemma 1 Immers, in een oneindige rij 0,1,1,0,0,1,1,1,0,1,0,1,0,1,1,1,0,1, … komt 0 hetzij 1 oneindig vaak voor 1 1 Immers, in een oneindige rij 00,01,01,00,00,01,01,00,01,01,00, … komt 00 hetzij 01 oneindig vaak voor Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
Jarkko Kari, lecture notes Cellular Automata, 2009 Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
Conway’s game of life is Turing-compleet Een computer kan worden gezien als een elektrische stroom die, gesynchroniseerd door een pulsklok, vloeit door een groot aantal logische schakelingen. Stroom: reeks gliders (1) vs. geen reeks gliders (0). Pulsklok: alle glider-reeksen zijn gesynchroniseerd. Gevolg: als twee reeksen elkaar ontmoeten doven deze elkaar uit. Logische schakelingen: het slim tegen elkaar opzetten van input en glider-reeksen. Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
Een Not-Gate in Conway’s game of life Het is belangrijk dat beide stromen in fase zijn Als input 0 is, vindt deze glider ongehinderd doorgang. Als input 1 is, heffen beide gliders elkaar op dit kruispunt op. Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
Constructie not-gate en and-gate ¬ A ¬ B ¬A B X A B A X A X Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
Constructie or-gate X X X A B B A Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
Conway’s game of life is Turing-compleet Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
Variaties op Conway’s life Meer toestanden per cel. I.p.v. “aan” en “uit”: Bosbrand: begroeid, minder begroeid, kaal, begroeid en hevig brandend, etc. Brian’s brain: actief, (tijdelijk) inactief, dood. Andere connectiviteit van buren: In 3D. (Hoeveel buren? Hoeveel mogelijke regels? Welke regelset correspondeert met 2D-life?) In 2D hexagonaal grid (honingraat). Is er een maximum connectiviteit in 2D? Andere timing van updates: Nu: synchroon. Alternatieven: serieel geordend, serieel ongeordend, of random asynchroon Non-deterministische toestandovergangen Zg. probabilistische of stochastische cellulaire automaten. Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
Conway’s game of life in 3D Geen triviale (rechtoe-rechtaan) uitbreiding mogelijk naar 3D Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
Brian’s Brain Cellen stellen neuronen voor. I.p.v. twee, drie toestanden: In rust (zwart). Activatie (wit). Net geactiveerd (rood). Regels: Witte cellen worden rood. Rode cellen worden zwart. Een zwarte cel wordt geactiveerd door twee witte buren. Verschillen met Conway’s game of life: Activiteit “golft” over het rooster en is aanmerkelijk directioneel. Doet (in de verre verte) denken aan neurofysiologische signaal-overdracht in zenuwen. Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
Twee klokken en een XOR-poort. Wire world Brian Silverman in 1987. Kan elke logische poort simuleren. Daardoor Turing-compleet. Regels: Zwart: achtergrond, invariant. Geel: “draad”. Wordt rood als buur rood is. Rood: “electron”. Maakt gele buren rood. Blauw: “uitdovend electron”. Twee diodes. Twee klokken en een XOR-poort.
Maximum connectiviteit in 2D? Constant Neighbor Dihedral Tilings with 15, 32, and 43 Neighbors Friedman, Erich and Zwaag van der, Berend Jan (2002) Constant Neighbor Dihedral Tilings with 15, 32, and 43 Neighbors. Geombinatorics, XI (3). pp. 74-77. Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
Algemene definitie van een CA Eindig of oneinding veel cellen. Elke cel kan zich in een bepaalde toestand bevinden. Mogelijkheden: Eindig veel toestanden (komt in 98% van de gevallen voor). Aftelbaar oneindig veel mogelijke toestanden (N) (1%). Overaftelbaar oneindig veel mogelijke toestanden ([0,1], of R) (1/2%). De toestandruimte kan eigenlijk iedere verzameling zijn! De toestandruimte kan homogeen (elke cel dezelfde toestandruimte) of niet homogeen (elke cel een andere verz. mogelijk toestanden) zijn. De cellen zijn met elkaar verbonden door een connectiviteitspatroon (= elke cel kan vertellen wie zijn buren zijn). Connectiviteit kan symmetrisch of a-symmetrisch zijn. Connectiviteit kan uniform of gedifferentieerd zijn. Er is een transitiefunctie gedefinieerd. Deze bepaalt de volgende toestand van een cel op basis van zijn huidige toestand, en de huidige toestanden van zijn buren. Een transitiefunctie kan deterministisch of non-deterministisch (≈ er zit een random element in) zijn. De toestandsovergangen kunnen simultaan (synchroon) plaatsvinden, serieel geordend, serieel ongeordend, of random asynchroon (stochastisch). Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
Deel II: back to the basics 1-dimensionale cellulaire automaten Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
Eén-dimensionale CA’s Een één-dimensionale CA is een eindig rijtje van N cellen die elk K toestanden kunnen aannemen. De toestanden worden aangeduid met met { 0, …, K 1 }. We nemen weer aan dat randcellen elkaars buren zijn. Laat R een niet-negatief geheel getal zijn, de zogenaamde radius. De volgende toestand wordt bepaald door de toestand van de cel zelf en de toestand van haar 2R buren. In de tekening hierboven is N = 14, K = 2 (en R onbekend) Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
Progressie ééndimensionale CA t = 0 t = 1 t = 2 t = 3 t = 4 t = 5 Progressie is in 2D te volgen (analoog zou je progressie in Conway’s life in 3D kunnen visualiseren). Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
Voorbeeld progressie 1-dim. CA Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
Regelverzameling van een één-dimensionale CA De regelverzameling van een één-dimensionale CA kan worden gevisualizeerd als boven: Het aantal toestanden, K, is 2. Wit = Toestand 0, Zwart = Toestand 1. De radius, R, is hier 1. De omvang van de omgeving is dus 3. Er zijn (dus) 23 = 8 regels. Er zijn (dus) 28 = 256 mogelijke regelverzamelingen. In het algemeen: De omvang van een omgeving is 2R+1. Het aantal verschillende omgevingen voor een CA met radius R en aantal toestanden K is K(2R+1). Een regelverzameling bestaat (dus) uit K(2R+1) regels. Er zijn (dus) K mogelijke regelverzamelingen. Er zijn (dus) evenveel mogelijke CAs met K toestanden op een omgeving van 2R+1 cellen. ( K(2R+1) ) Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
Omvang regelverzamelingen K R # Regels # Regelverz. 2 1 8 256 3 27 4.5e17 5 125 2.3e87 Bekijk de regelverzamelingen die gebaseerd zijn op de som van de toestanden. (N.B. in 2D diskwalificeert dit Conway’s life!!) Minimum som: (2R+1) x 0 = 0. Maximum som: (2R+1) x (K 1). Grootte regelverzameling is nu dus: (2R+1)(K1) + 1. Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
Speciale codering van 1-dim. CA Σ = 0 → 0 Σ = 1 → 0 Σ = 2 → 0 Σ = 3 → 4 Σ = 4 → 0 Σ = 5 → 0 Σ = 6 → 0 ….. Σ = 28 → 4 Voorbeeld (Flake, p. 237). Het aantal regels in een regelverzameling voor K = 5 en R = 3 is (2R+1)(K1) + 1 = 7 x 4 + 1 = 29. (Dus 529 mogelijke regelverzamelingen.) Voor een regelverzameling worden alle specifieke 29 regels op een rij gezet: Alleen de consequenten van die 29 regels geven eigenlijk informatie. Elke regelverzameling correspondeert dus uniek met een rijtje cijfers uit { 0,.. 4 } ter lengte 29. Voorbeeld: 00040001002000200020030000004 Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
Wolfram’s Class I-IV typeringen Class I automata: monden uit in een stabiele toestand. Class II automata: monden uit in periodieke structuren. Class III automata: monden uit in chaotisch gedrag (static white noise). Class IV automata: monden uit complexe patronen met locale structuren. Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
Class I automata Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
Class II automata Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
Class II automata (vervolg) Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
Class III automata Witte ruis (als bij slechte TV ontvangst). Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
Class IV automata Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
Rule 110 is Turing-compleet 01101110binair = 110decimaal Twee gliders interacteren en vormen een nieuwe glider Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
Langton’s λ-parameter Motivatie: vind een eenvoudig kenmerk dat de complexiteit van een CA aangeeft. Langton: λ =Def 1 – het deel regels met een toestand van rust (de “nul-toestand”) in de consequent / totale aantal regels Extrema: λ = 0 : dooie boel λ = 1 : totale chaos Wolfram’s vier klassen: Klasse I (stabiel): λ = 0.27, 0.19, 0.23 : dicht bij nul. Klasse II (periodiek): λ = 0.52, 0.43, 0.33, 0.44, 0.43, 0.48 : verder van nul af. Klasse III (chaos): λ = 0.82, 0.79, 0.85, 0.82. Klasse IV (complex): λ = 0.43, 0.51, 0.56. Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
Langton’s indeling van de regelruimte Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
Reversibiliteit Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
CA is functie van G naar G G = is een globale configuratie (officieel: een functie van ZN naar S = (bv.) {0,1}. Een CA is een functie van G naar G (Maar niet alle functies van G naar G zijn CAs!) Een CA moet aan de localiteits-eigenschap voldoen: gedrag is uniform locaal gedefinieerd. G G Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
Reversibiliteit en weespatronen G Injectiviteit: G Injectief + surjectief = bi-jectief. CA heet reversibel d.e.s.d.a. regelverzameling injectief is. Men zegt dat CA “tuin van Eden” bezit d.e.s.d.a. regelverzameling niet surjectief is. Surjectiviteit: Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
Reversibiliteit Een CA heet reversibel als elk patroon slechts kan worden veroorzaakt door één uniek voorgaand patroon (Eng. pre-image). Simulatie reversibiliteit van gas- en vloeistofdynamiek (thermodynamica, Navier-Stokes, 1823). (Vgl. Langton’s Ant en Lattice Gas Automation.) Voor alle één-dim. CA’s kan worden uitgezocht of deze reversibel is. Voor 2-dim. CA’s is onderzoek op reversibiliteit onbeslisbaar (Jarkko Kari, 1991, met Wang tilings). Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
Samenvatting Meeste bekende CA, Conway’s game of life, is Turing compleet. Eén-dimensionale CA’s, hoewel eenvoudiger, zijn beter systematischer te onderzoeken dan hoger-dimensionale varianten. Er zijn verschillende naamgevingssystematieken voor 1D-CA’s. Het is belangrijk de verschillen te kennen en te begijpen! Gedrag van 1D-CA’s valt volgens Wolfram onder te verdelen in vier klassen, waarvan klasse IV de meest interessante is vanwege complex gedrag. 1D-CA “Rule 110” (uit Klasse IV) is Turing-compleet. Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
Ongebruikte slides Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
Strategic Bugs Strategic bugs is een ALife model, voorgesteld door Bedau en Packard, in 1992. De omgeving is een 2-dimensionaal rooster. Een cel in de omgeving kan een bug of agent of voedsel kan bevatten. Voedsel groeit automatisch in de omgeving: af en toe komt er voedsel in een willekeurige cel. Bugs krijgen energie door voedsel te vinden. Voedsel wat gegeten wordt, verdwijnt. Bugs gebruiken energie om te bewegen en sterven als ze geen energie meer hebben. Bugs kunnen zichzelf klonen of met een andere bug een offspring (kind) maken. Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
Langton’s Loop Samenhang met celdeling en mitose: zelf-reproducerende cellulaire automaat. Zie Hiroki Sayama's applet. Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk