Visualizing Cellular Automata – I
Genetics has been a topic I was interested in for as long as I can remember. Recently I started reading about how biological systems function and how their principles are applied in creating programs. This led me to read more about genetic programming and AI, and eventually I came across Complex Systems and Cellular Automata. A quick google search was enough to get me excited about its generative nature and emergent patterns. The fact that I could create a purely rational system on my computer which applied logical rules on a set of states to generate such complex structures- orderly and chaotic at the same time, encouraged me to explore this as a project for 594P.
The origins of Cell Automaton lie in Von Neumann’s simplification of the process of Kinematic Automata, a system designed to create self-replicating robots, due to Stanislaw Ulam’s insight on his methods. Though it became popular within a small computing community with John Conway’s “Game of Life”, it was Stephen Wolfram’s publication of “A New Kind of Science”, a book that explains how complex systems emerge from seemingly simplistic ones like Cell Automata, that reintroduced its concept as a thoroughly systematic investigation. The basics are very straightforward- you start with a set of initial states, iterate through all the cells, checking each cell’s neighborhood (a finite number of cells around it) and mapping its states to the rule being employed to calculate the next state of the cell. All the cells are updated once the rule is employed and then the process is repeated.
I started with Elementary Cellular Automata- 1D structure of cells, where each cell’s neighborhood is composed of itself, the cell on its right and the cell on its left, and there are only two possible states for each cell: ’0′ and ’1′. With this configuration you have a possibility of 256 (2^(2^3)) rules to govern the behavior. Interesting behaviors emerge when the evolution of 1D cellular automata is tracked for a number of iterations. The following images display some of the interesting rules. The major observation Wolfram made was how some structures were very orderly while some very stochastic in nature. Although some of the most interesting ones are with a combination of both, order and randomness in their structure, for example rule 110.
( Continued on Visualizing Cellular Automata – II… )
One Response to “Visualizing Cellular Automata – I”