Complex Systems Engineering SwE 488 Artificial Complex Systems - Cellular Automata - Cellular Automata 2 Purpose • In Theory: • Computation of all computable functions • Construction of (also non-homogenous) automata by other automata, the offspring being at least as powerful (in some well-defined sense) as the parent • In Practice: • Exploring how complex systems with emergent patterns seem to evolve from purely local interactions of agents. I.e. Without a “master plan!” 3 Cellular Automata • A cellular automata is a family of simple, finitestate machines that exhibit interesting, emergent behaviors through their interactions in a population 4 Emergent Behavior The famous BOIDS model shows how flocking behavior can emerge from a collection of agents following a few simple rules. 5 • Original concept of CA is most strongly associated with John von Neumann who was interested in the connections between biology and the new study of automata theory • Stanislaw Ulam suggested to von Neumann the use a cellular automata as a framework for researching these connections. • The original concept of CA can be credited to Ulam, while the early development of the concept is credited to von Neumann. • Ironically, although von Neumann made many contributions and developments in CA, they are commonly referred to as “non-von Neumann style”, while the standard model of computation (CPU, globally addressable memory, serial processing) is know as “von Neumann style”. 6 Cellular Automata (CAs) • Have been used as: • • • • • VLSI Testing Data Encryption Error Correcting Code Correction Testable Synthesis Generation of hashing Function • Currently being investigated as model of quantum computation (QCAs) • massively parallel computer architecture • model of physical phenomena (Fredkin, Wolfram) 7 • Grid • Mesh of cells. • Simplest mesh is one dimensional. • Cell • Basic element of a CA. • Cells can be thought of as memory elements that store state information. • All cells are updated synchronously according to the transition rules. 8 • Local interaction leads to global dynamics. • One can think of the behaviour of a cellular automata like that of a “wave” at a sports event. • Each person reacts to the state of his neighbours (if they stand, he stands). 9 • Rule Application • Next state of the core cell is related to the states of the neighbouring cells and its current state. • An example rule for a one dimensional CA: 011->x0x • All possible states must be described. • Next state of the core cell is only dependent upon the sum of the states of the neighbouring cells. • For example, if the sum of the adjacent cells is 4 the state of the core cell is 1, in all other cases the state of the core cell is 0. 10 Structure • Discrete space (lattice) of regular cells • 1D, 2D, 3D, … • rectangular, hexagonal, … • At each unit of time a cell changes state in response to (Time advances in discrete steps): • its own previous state • states of neighbors (within some “radius”) • All cells obey same state update rule, depending only on local relations • Synchronous updating (parallel processing) 11 Structure: Neighborhoods 12 1-DIMENSIONAL AUTOMATA 13 One-Dimensional CA’s • Game of Life is 2-D. Many simpler 1-D CAs have been studied • For a given rule-set, and a given starting setup, the deterministic evolution of a CA with one state (on/off) can be pictured as successive lines of colored squares, successive lines under each other 14 Neighborhoods 15 • • • • 3 Black = White 2 Black = Black 1 Black = Black 3 White = White Now make your own CA 16 “A New Kind of Science” ISBN 1-57955-008-8 Stephen Wolfram www.wolframscience.com 1-D CA Example cell# 1 2 3 4 5 6 7 8 9 10 11 12 13 Rules time = 1 time = 2 time = 3 time = 4 0 0 1 1 0 1 1 Rule# = 2 + 4 + 16 + 32 = 54 time = 5 time = 6 time = 7 18 0 Wolfram Model 1 1 1 1 1 1 1 0 Rule #126 = 64 + 32 + 16 + 8 + 4 + 2 + 0 = 126 1 1 1 1 1 1 0 0 Rule #124 = 64 + 32 + 16 + 8 + 4 + 0 + 0 = 124 Most of the rules are degenerate, meaning they create repetitive patterns of no interest. However there are a few rules which produce surprisingly complex patterns that do not repeat themselves. 19 Wolfram Model we can view the state of the model at any time in the future as long as we step through all the previous states. 20 Hundred generations of Rule 30 21 CA Example: Rule 30 111 110 101 100 011 010 001 000 0 0 0 1 1 1 1 0 Rule (0 + 0 + 0 + 16 + 8 + 4 + 2 +0 ) = 30 22 Conus Textile pattern 23 The pattern is neither regular nor completely random. It appears to have some order, but is never predictable. 24 Wolfram Model Rule #45=32+8+4+1 = 0 27+ 0 26+ 1 25+ 0 24+1 23+ 1 22+ 0 21+ 1 20 =0 0 1 0 1 1 0 1 Rule #30=16+8+4+2 = 0 27+ 0 26+ 0 25+ 1 24+1 23+ 1 22+ 1 21+ 0 20 =0 0 0 1 1 1 1 0 This naming convention of the 256 distinct update rules is due to Stephen Wolfram. He is one of the pioneers of Cellular Automata and author of the book a New Kind of Science, which argues that discoveries about cellular automata are not isolated facts but have significance for all disciplines of science. See Demo - NetLogo 25 Wolfram Rule 90 0 1 0 1 1 0 1 0 Rule (0 + 2 + 0 + 8 + 16 + 0 + 64) = 90 26 Wolfram Rule 110 Proven to be Turing Complete - Rich enough for universal computation interesting result because Rule 110 is an extremely simple system, simple enough to suggest that naturally occurring physical systems may also be capable of universality 27 Wolfram Rule 99 Rule# 99 = 0 27 + 1 26 + 1 25 + 0 24 + 0 23 + 0 22 + 1 21 + 1 20 0 + 64 + 32 + 0 + 0 + 0 + 2 + 1 28 29 Mollusc Pigmentation Patterns 30 Wolfram’s CA classes 1,2 From observation, initially of 1-D CA spacetime patterns, Wolfram noticed 4 different classes of rulesets. Any particular rule-set falls into one of these:-: CLASS 1: From any starting setup, pattern converges to all blank -- fixed attractor CLASS 2: From any start, goes to a limit cycle, repeats same sequence of patterns for ever. -- cyclic attractors 31 Wolfram’s CA classes 3,4 CLASS 3: Turbulent mess, chaos, no patterns to be seen. CLASS 4: From any start, patterns emerge and continue without repetition for a very long time (could only be 'forever' in infinite grid) Classes 1 and 2 are boring, Class 3 is messy, Class 4 is 'At the Edge of Chaos' - at the transition between order and chaos -- where Game of Life is!. 32 2-DIMENSIONAL AUTOMATA 33 2-dimensional cellular automaton consists of an infinite (or finite) grid of cells, each in one of a finite number of states. Time is discrete and the state of a cell at time t is a function of the states of its neighbors at time t-1. 34 Neighborhoods Von Neumann Moore margolus 35 Snowflakes 36 Example: Conway’s Game of Life • Invented by Conway in late 1960s • A simple CA capable of universal computation • Structure: • • • • • 2D space rectangular lattice of cells binary states (alive/dead) neighborhood of 8 surrounding cells (& self) simple population-oriented rule 37 Example: Conway’s Game of Life Cell State = dead/off/0 State = alive/on/1 38 Example: Conway’s Game of Life • A cell dies or lives according to some transition rule transition rules T=0 T=1 • The world is round (flips over edges) • How many rules for Life? 20, 40, 100, 1000? 39 State Transition Rule • Live cell has 2 or 3 live neighbors stays as is (stasis) • Live cell has < 2 live neighbors dies (loneliness) • Live cell has > 3 live neighbors dies (overcrowding) • Empty cell has 3 live neighbors comes to life (reproduction) 40 State Transition Rule • Survive with 2 or 3 live neighbors Live cell stays as is (stasis) otherwise dies from loneliness or overcrowding • Generate with 3 live neighbors Empty cell comes to life (reproduction) 41 State Transition Rule Three simple rules: • dies if number of alive neighbor cells =< 1 (loneliness) • dies if number of alive neighbor cells >= 4 (overcrowding) • generate alive cell if number of alive neighbor cells = 3 (procreation) 42 State Transition Rule Examples of the rules • loneliness (dies if #alive =< 1) • overcrowding (dies if #alive >= 4) • procreation (lives if #alive = 3) 43 CA: Discrete Time, Discrete Space Initial Setup After Pass 1 Number of Neighbors After Pass 2 44 Game of Life: 2D Cellular Automata using simple rules neighboring values T=0 Emergent pattern: Blinker T=1 45 Emergent patterns Conway automaton can simulate a number of different effects that can be found in the evolution of a living population. Equilibria Oscillation Movement square 2 steps beehive 2 steps diagonal horizontal instability boat 3 steps ship 15 steps toast (all the space is filled up by horizontal lines) instability chaos? 46 Game of Life: emergent patterns Gosper’s glider gun : emits glider stream Conway’s Rules: Game of Life Survive with 2 – 3 living neighbors Generate with 3 living neighbors gliders: patterns that moves constantly across the grid 47 Emergent Patterns 48 Emergent Patterns Oscillators-objects that change from step to step, but eventually repeat themselves. These include, but are not limited to, period 2 oscillators, including the blinker and the toad. Blinker Toad 49 Emergent Patterns: A Clock See Demo: Game of Life 50 Emergent Patterns: Oscillator Pulsar SpaceShip Beacon Glider See Demo: Game of Life Barber’s Pole 51 Emergent Patterns: Gosper’s Glider Gun See Demo: Game of Life 52 Emergent Patterns: Puffer train 53 Emergent Patterns: Double-Barreled Gun 54 Emergent Patterns: Edge Shooter 55 Emergent Patterns: Evolution of a breeder ... 56 Conclusions 57 Conclusions • This topic is very hot and has widespread implications • Biology • Chemistry • Computer science • Complexity • We’ve seen the basic concepts … • But we’ve only scratched the surface! From now on, Think Biology, Emergence, Complex Systems … 58 References 59 References • Jay Xiong, New Software Engineering Paradigm Based on Complexity Science, Springer 2011. • Claudios Gros : Complex and Adaptive Dynamical Systems. Second Edition, Springer, 2011 . • Blanchard, B. S., Fabrycky, W. J., Systems Engineering and Analysis, Fourth Edition, Pearson Education, Inc., 2006. • Braha D., Minai A. A., Bar-Yam, Y. (Editors), Complex Engineered Systems, Springer, 2006 • Gibson, J. E., Scherer, W. T., How to Do Systems Analysis, John Wiley & Sons, Inc., 2007. • International Council on Systems Engineering (INCOSE) website (www.incose.org). • New England Complex Systems Institute (NECSI) website (www.necsi.org). • Rouse, W. B., Complex Engineered, Organizational and Natural Systems, Issues Underlying the Complexity of Systems and Fundamental Research Needed To Address These Issues, Systems Engineering, Vol. 10, No. 3, 2007. 60 References • Wilner, M., Bio-inspired and nanoscale integrated computing, Wiley, 2009. • Yoshida, Z., Nonlinear Science: the Challenge of Complex Systems, Springer 2010. • Gardner M., The Fantastic Combinations of John Conway’s New Solitaire Game “Life”, Scientific American 223 120–123 (1970). • Nielsen, M. A. & Chuang, I. L. ,Quantum Computation and Quantum Information, 3rd ed., Cambridge Press, UK, 2000. 61 62
© Copyright 2026 Paperzz