History
● Original concept of CA is most strongly associated with John von [Link]
Neumann was interested in the connections between biology and the then new study
of automata theory. Stanislaw Ulam suggested that von Neumann 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.
● “CA were introduced by John von Neumann and Stanislaw Ulam in 1940 as a
possible idealization of biological systems with particular purpose of modelling
biological self production.”
1
What Are Cellular Automata?
CA are mathematical model for systems in which many simple components act together to
produce complicated patterns of behavior. Thus CA are simple models, which are used for
studying complex systems behavior in different fields of science. These automata are
discrete dynamic systems, which work can be completely described in the terms of local
interactions. Cellular systems form common paradigm of parallel computations as Turing
machines do for the consecutive computations.
CA Definition
• A cellular automaton (CA) is a discrete dynamical system, where space, time, and
the states of the system are all discrete. It is grid or lattice of a large number of
identical cells in a regular lattice in one, two or three dimensions.
• Each site or cell can be in one of a finite set of states. The state may be represented
by integer values. They may also be boolean (eg. dead/TRUE – dead/FALSE =alive).
Changes in a cell’s state are controlled by rules. The cell’s rules depend only on the
state of the cell and its neighbours. At each step, the state of every cell (at time t+1)
is calculated using the states of neighbouring cells at time t.
2
Define Cellular Automata using Finite Automation
To simplify construction of CA systems we use Formal definition of Finite Automation.
The following conversations are universally employed.
CA={Q, Σ, δ, q0,N)
1. Q – All FA are defined to use the same set of states Q. In CA set of states are
depends upon time say t,t+1,t+2,…t+n.
2. N (Neighborhood Template) –All FA use same Neighborhood Template ‘N’ .”if
current state is q(say) and current input symbol is 0(say) then next state is p(say).
3. Σ (Cellular Space) –input symbols in FA and cells in case of CA (0 or 1 ,Black or
White ,True or False).
4. δ (Transition Rules) – In CA the cell’s rules depend only on the state of the cell and
its neighbours. At each step, the state of every cell (at time t+1) is calculated using
the states of neighbouring cells at time t.
5. q0 (Initial State) –In CA it is initial configuration.
3
Types of CA
1. One Dimensional Cellular Automata.
2. Two Dimensional Cellular Automata.
3. Multi Dimensional Cellular Automata(till now area of research not achievement).
1. One Dimensional Cellular Automata -A one-dimensional cellular automaton
consists of two things: a row of "cells" and a set of "rules". A CA doesn't just sit there.
Over time, the cells can change from state to state. The cellular automaton's rules
determine how the states change. It works like this: When the time comes for the cells
to change state, each cell looks around and gathers information on its neighbors' states.
Based on its own state, its neighbors' states, and the rules of the CA, the cell decides
what its new state should be. All the cells change state at the same time.
Example:-Let us see example of one dimensional CA having Formal Definition as
CA= (Q, CS, N, t=0, TR)
Here Q is set of states t=0, t=1.
CS –Cellular Space – (0, 1).
N-Neighborhood Template we take three cell’s at a time one is own cell and two its
neighbors one is left another is right.
TR- transition rule table is given by:-
4
Neighborhood 111 110 101 100 011 010 001 000
:
Output: 1 1 1 0 1 0 0 0
At time t=0 is initial state and Initial configuration is given by:-
t=0 0 1 1 0 1 0 1 1 0 1 1 1
After applying rules we get:-
t=0 0 1 1 0 1 0 1 1 0 1 1 1
t=1 1 1 1 1 0 1 1 1 1 1 1 1
2. Two Dimensional Cellular Automata – Two –dimensional cellular
automata, which use rectangular grids of cell and rest of working is same as one
dimensional CA.
1. Neumann uses four orthogonal variables “not include diagonal neighborhoods”.
2. Moore uses eight orthogonal variables + diagonal neighborhoods.
Example:- John Conway’s Game of Life
This game is actually a zero player game which means that it need only initial
configuration and needs no input from user (human players).”one can only interact with
the game by creating initial configuration and observing how It evolves.”
Formal description of Game of Life: - CA= (Q, CS, N, t=0, TR)
Here Q is set of states t0, t1, t2, t3 and t4.
CS –Cellular Space – (0, 1). 0 for died cell and 1 for live cell.
N –Uses Moore Neighborhood “four neighbors”.
TR- transition rule table is given By :-
-A live cell with two or three neighbors survives to the next round.
5
-A live cell with four or more neighbors dies of overpopulation.
-A cell with one or no neighbors dies of isolation .
-Any died cell exactly with exactly three neighbors become a live cell in next round.
Working of Game of Life:-
At time t=0 is initial state and Initial configuration is given by:-
1 1 1
At time t=1 it becomes
1
1 1 1
1
At time t=1 it becomes
1 1 1
1 1 1
1 1 1
At time t=3 it becomes
1 1 1
1 1 1 1 1
1 1 1 6
At time t=4 it becomes
1 1 1 1 1
1 1 1 1 1
1 1 1 1 1
Wolfram's Qualitative CA Classes
In 1984, Stephen Wolfram undertook a detailed study of Cellular Automata and their
relationship to dynamical systems. His study identified four distinct classes of cellular
automaton behavior .These classes are distinguished by the level of predictability of their
“final” large time behavior given their initial state.
Class I (limit points)
From almost any initial configuration, cellular automata evolve to a homogeneous
state after a finite number of time steps.” after a finite number of time steps, the CA
tends to achieve a unique state from nearly all possible starting conditions”
Class II (limit cycles)
The CA creates patterns that repeat periodically or are stable – probably equivalent to a
regular grammar/finite state automaton
Class III (strange attractors or chaotic patterns)
Evolution of cellular automata from almost all possible initial states leads to
aperiodic- chaotic patterns. After sufficiently many time steps, the statistical
properties of these patterns are typically the same for almost all initial
configurations(self-similar fractal curves). Cellular automata in this class can
exhibit maximal disorder on both global and local scales. Used in VLSI
implementation.
Class IV (structured)
7
After a finite number of steps, the CA usually dies, but there are a few stable (periodic)
patterns possible (e.g. Game of Life) - Class 4 CA are believed to be capable of universal
computation
Class I Class II Class III Class IV
Figure: Wolfram class examples. Each image a time-evolution of a 2-state CA on a circle
using neighborhood size of 3 (central cell and its two neighbors).
Formal languages and Cellular Automata
The formal language is a language in which words are collection of symbols which fit
together in a regular way. The possibilities of combination are their syntax which often
expressed as a set of grammatical rules.
The set of configurations of CA can be viewed as Formal Language with each word in the
language representing a CA configuration . Such infinite set of configurations are then
completely specified by sets of grammatical rules.
Chomsky Hierarchy
Type Language Automata Production Rules
3 Regular Language Finite State Automata or
2 Context Free Language Non-Deterministic Push Down
Automata
1 Context Sensitive Linear Bounded Automata
Language
0 Recursively Enumerable Turing Machine (Unrestricted)
Now we will try to find Relation of CA with Formal Languages:- We can build this
relationship by the behavior and Memory needed By CA classes and above Automata’s .
8
We know Formal Languages are differ with each other by their Production Rules. And also
CA is divided into four Classes according to their behavior.
Relationship between CA classes and Formal Languages
Language Classes Memory Behavior
Type 3 I No Memory After some steps achieve final state.
Type 2 II Stack Stack is used to push and pop periodic behavior of
CA.
Type 1 III Proportional to CA has aperiodic behavior thus change in
input word length unpredictable and random ways thus need
proportional memory.
Type 0 IV Large perform Universal Computation so need Large
memory
VLSI Application of CA
Because of its simplicity, regularity, modularity and cascadable structure with local
neighborhood, additive CA are ideally suited for V LSI implementation. Different
applications ranging from V LSI test domains to the design of a hardwired version of
different CA based schemes have been proposed. V LSI Design and Test : Based on the
statistical properties of the patterns generated, Wolfram broadly classified the 3-
neighborhood CA into 4 major categories. Out of these, Class 3 CA rules are found to be
most suitable for pseudo random pattern generation. Hortensius proposed the hybrid CA
based pseudo random pattern generator (P RP G) for built in self test in V LSI circuits.
Subsequently, the performance of CA-based P RP Gs has been compared with other
existing P RP G by a number of researchers.
More applications and details on [Link]/bison/publications/[Link]
9
Conclusion
This paper reports a detailed survey of the various modeling applications of CA. The
survey also provides a vivid sketch of the different theoretical developments which have
taken place over the years in the CA research field. These developments have established
the immense potential of CA in modeling different applications, thus spreading the appeal
of cellular automata over a wide cross-section of researchers. The extensive bibliography in
support of the different developments of CA research provided with the paper should be of
great help to CA researchers in the future.
10
References:-
[Link]
[Link]
[Link]
[Link]
[Link]
[Link]/~sutner/papers/[Link]
[Link]/philosophy/papers/[Link]
11