Reykjav´ ık, August 23, 2006 Cellular Automata: Overview and classical results Silvio Capobianco ık, Silvio@ru.is H´ ask´ olinn ´ ı Reykjav´ a degli Studi di Roma “La Sapienza”, capobian@mat.uniroma1.it Universit` 1
Introduction Cellular automata are descriptions of global dynamics in terms of local transformations, applied at all points at the same time. By their own nature, they are easy to implement on a computer, and useful as tools for qualitative analysis of dynamical systems. Their properties are also a very vast research field. 2
Applications of cellular automata • Population dynamics. • Economics. • Fluid dynamics. • Simulations of geological phenomena. • Symbolic dynamics. • Approximation of differential equations. • Screen savers. • And much more... 3
Literature • E. F. Moore, “Machine models of self-reproduction”, Proc. Symp. Appl. Math. 14 (1962), 17–33. • J. Myhill, “The converse of Moore’s Garden-of-Eden theorem”, Proc. Am. Math. Soc. 14 (1962), 685–686. • G. A. Hedlund, “Endomorphisms and automorphisms of the shift dynamical system”, Math. Syst. Th. 3 (1969), 320–375. • D. Richardson, “Tessellations with local transformations”, J Comp. Syst. Sci. 6 (1972), 373–388. • S. Amoroso, Y. N. Patt, “Decision procedures for surjectivity and injectivity of parallel maps for tessellation structures”, J. Comp. Syst. Sci. 6 (1972), 448–464. • J. Kari, “Reversibility of 2D cellular automata is undecidable”, Physica D 45 (1990), 379–385. 4
History • von Neumann, 1950s: mechanical model of self-reproduction • Moore, 1962: the Garden of Eden problem • Hedlund, 1969: shift dynamical system • Richardson, 1972: d -dimensional cellular automata • Hardy, de Pazzis, Pomeau 1976: lattice gas cellular automata • Amoroso and Patt, 1972; Kari, 1990: the invertibility problem 5
The original form John von Neumann’s model of self reproduction, 1950s • An infinite square grid • A finite number of states for each point of the grid • A finite number of neighbors for each point of the grid • An evolution law where the next state of each point only depends on the current states of its neighbors 6
The importance of playing in life The Game of Life was ideated by John Horton Conway in the Sixties, and popularized by Martin Gardner the decade after. The checkboard is an infinite square grid. Each case of the checkboard is “surrounded” by those within a chess’ king’s move, and can be “living” or “ dead”. A “dead” case surrounded by exactly three “living” case, becomes “living”. A “living” case surrounded by two or three “living” cases, survives. A “living” case surrounded by less than two “living” cases, dies of isolation . A “living” case surrounded by more than three “living” cases, dies of overpopulation . 7
Simple rule, complex behavior The structures of the Game of Life can exhibit a wide range of behaviors. This is a glider , which repeats itself every four iterations, after having moved: Gliders can be used to transmit information between regions of the checkboard. Actually, using gliders and other complex structures, any planar circuit can be simulated inside the Game of Life. 8
On a more funny side, this is called the Cheshire cat : 9
... because it vanishes... 10
... and vanishes... 11
... and vanishes... 12
... more... 13
... and more... 14
... until the smile alone cheers at us... 15
... and at last, only a pawprint remains to tell it was there! 16
The ingredients of a classical recipe A cellular automaton is a quadruple A = � d, Q, N , f � where: • d > 0 is an integer —dimension ; • Q = { q 1 , . . . , q n } is a finite set —set of states ; • N = { n 1 , . . . , n k } is a finite subset of Z d —neighborhood index ; • f : Q N → Q is a function —local evolution function . Special neighborhood indexes are: • the von Neumann neighborhood v N = { x ∈ Z d : � d i =1 | x i | ≤ 1 } ; • the Moore neighborhood M = { x ∈ Z d : max 1 ≤ i ≤ d | x i | ≤ 1 } . 17
This is von Neumann’s neighborhood... 18
and this is Moore’s neighborhood, in dimension d = 2 . 19
Examples of cellular automata—1 Put: • d = 1 ; • Q = { 0 , 1 } ; • N = v N , the von Neumann neighborhood; • f ( α − 1 , α 0 , α 1 ) = α − 1 xor α 1 . This is called Wolfram’s rule 90 , and its evolution from a single point is... 20
... Pascal’s triangle, modulo 2. 21
Examples of cellular automata—2 Put: • d = 2 ; • Q = { 0 , 1 } ; • N = M , the Moore neighborhood; if � 1 x ∈M\{ 0 } α x = 3 , • f ( α ) = if � 1 x ∈M\{ 0 } α x = 2 and α 0 = 1 , 0 otherwise . This is Conway’s Game of Life. 22
From local to global An element of Q Z d is called a configuration . The value of c ∈ Q Z d at x ∈ Z d is indicated as c x or c ( x ) . A pattern is a “chunk” of configuration having finite size. The map F A : Q Z d → Q Z d defined by ( F A ( c )) x = f ( c x + n 1 , . . . , c x + n k ) is the global evolution function . 23
Finite configurations A state q is stable if it satisfies f ( q, . . . , q ) = q If A has one or more stable states, then one of them is chosen once and for all, indicated as q 0 , and called the quiescent state . A configuration is finite if only a finite number of cells are nonquiescent. If c is finite, then F A ( c ) is finite as well. 24
Implementations Given their distinctive features, cellular automata rules are easy to implement on a computer. More difficult is to provide a general framework for cellular automata. • Hardware – CAM6 (Toffoli and Margolus, ca. 1985; expansion card for PC) – CAM8 (Toffoli and Margolus, ca. 1990; external device for SparcStation) • Software – JCASim (Weimar; in Java) – SIMP (Bach and Toffoli; in Python) These framework often work on a torus instead of the full plane. 25
Cellular automata and Turing machines Let T be a Turing machine with alphabet Σ and set of states ∆ . Then 1. put d = 1 , 2. put Q = Σ × (∆ ∪ { no − head } ) , 3. put N = {− 1 , 0 , 1 } , and 4. construct f so that it reproduces • the write operation of T on the first component, and • the state update of T and the movement of T ’s head on the right component. Then A = � d, Q, N , f � simulates T , so that 1-dimensional cellular automata are capable of universal computation 26
Associate dynamics A dynamical system is a pair ( X, Φ) where • X is a compact metrizable space— phase space , and • Φ is a continuous function from X to X — transition function . Observe that Q Z d , with the product topology, is compact by Tychonoff’s Theorem. Moreover, putting � ( x 1 , . . . , x d ) � = max {| x 1 | , . . . , | x d |} the product topology is induced by the distance d ( c 1 , c 2 ) = 2 − min {� x �| ( c 1 ) x � =( c 2 ) x } i.e., “near” means “equal on a large neighborhood of the origin”. 27
Theorem (Hedlund, 1969) Let F : Q Z d → Q Z d . The following are equivalent: 1. F is the global evolution function of a cellular automaton; 2. F is continuous in the product topology, and commutes with the translations , i.e., the transformations of Q Z d of the form c x ( y ) = c ( x + y ) ∀ y ∈ Z d Let A = � d, Q, N , f � be a cellular automaton. � � Q Z d , F A is a dynamical system— associate to A . By Hedlund’s Theorem, We can thus say that a cellular automaton has a property, e.g., injectivity or surjectivity or chaoticity, if its associate dynamical system does. 28
Classification of cellular automata One-dimensional cellular automata were extensively studied by Stephen Wolfram. His work was both pioneering and influential. Among other things, he suggested the following, empirical classification: 1. evolution leads to homogenous state ; 2. evolution leads to periodic structures ; 3. evolution leads to chaotic space-time patterns ; 4. evolution leads to complex localized structures . Wolfram’s classification is much an “appeal to common sense” and cannot, for example, identify universal computation. A formalization was suggested by Culik and Yu—and proved to be undecidable. 29
A way of labeling cellular automata rules also takes Wolfram’s name. Given a 1-dimensional, 2-state rule with von Neumann neighborhood, 1. identify the sequence ( α − 1 , α 0 , α 1 ) with the the binary number α − 1 α 0 α 1 , and 2. associate to the rule f the number � 7 j =0 2 j f ( j ) . This is called Wolfram’s number of the rule f . Exercise: compute Wolfram’s number for f ( α − 1 , α 0 , α 1 ) = α − 1 xor α 1 . Hint: α − 1 1 1 1 1 0 0 0 0 α 0 1 1 0 0 1 1 0 0 α 1 1 0 1 0 1 0 1 0 f ( α − 1 , α 0 , α 1 ) 0 1 0 1 1 0 1 0 30
One after another Composition is well defined for cellular automata of same dimension and set of states. 1. Suppose A j = � d, Q, N j , f j � for j = 1 , 2 are given. 2. Set N = { x ∈ Z d | ∃ x 1 ∈ N 1 , x 2 ∈ N 2 | x = x 1 + x 2 } . 3. Define f : Q N → Q as � � f ( α ) = f 2 . . . , f 1 ( . . . , α n 1 ,i + n 2 ,j , . . . , ) , . . . Then A = � d, Q, N , f � satisfies F A = F A 2 ◦ F A 1 . In particular, the class of cellular automata with given dimension and set of states is a semigroup (monoid) under composition. 31
Recommend
More recommend