Cellular Automata - PowerPoint PPT Presentation

About This Presentation
Title:

Cellular Automata

Description:

Each cell follows the same simple rule for updating its state. ... treat the CA surface as a Toroid. This just means wraparound in. the way indicated by the ... – PowerPoint PPT presentation

Number of Views:152
Avg rating:3.0/5.0
Slides: 63
Provided by: macs3
Category:

less

Transcript and Presenter's Notes

Title: Cellular Automata


1
Cellular Automata

Biologically Inspired Computing Various credits
for these slides, which have in part been adapted
from slides by Ajit Narayanan, Rod Hunt, Marek
Kopicki.
2
Cellular Automata
  • A CA is a spatial lattice of N cells, each of
    which is one of k states at time t.
  • Each cell follows the same simple rule for
    updating its state.
  • The cell's state s at time t1 depends on its own
    state and the states of some number of
    neighbouring cells at t.
  • For one-dimensional CAs, the neighbourhood of a
    cell consists of the cell itself and r neighbours
    on either side. Hence, k and r are the parameters
    of the CA.
  • CAs are often described as discrete dynamical
    systems with the capability to model various
    kinds of natural discrete or continuous dynamical
    systems

3
SIMPLE EXAMPLE
Suppose we are interested in understanding how a
forest fire spreads. We can do this with a CA as
follows.
Start by defining a 2D grid of cells, e.g.
This will be a spatial representation of our
forest.
4
SIMPLE EXAMPLE continued
Now we define a suitable set of states. In this
case, it makes sense for a cell to be either
empty, ok_tree, or fire_tree meaning
empty no tree here ok_tree there is a
tree here, and its healthy fire_tree there
is a tree here, and its on fire. When we
visualise the CA, we will use colours to
represent the states. In these cases white,
green and red seem the right Choices.
5

A fairly dense forest with a couple of trees on
fire -- maybe from lightning strikes




6
SIMPLE EXAMPLE continued
Next we define the neighbourhood structure when
we run our CA, cells will change their state
under the influence of their neighbours, so we
have to define what counts as a neighbour.
Youll see example neighbourhoods in a later
slide, but usually you just use a cells 8
immediately surrounding neighbours. Lets do that
in this case. Next we decide what the
neighbourhood will be like at the boundaries of
the grid.
7
CA Rules
  • Now, the main thing how do we update the states
    at the next time step? We use sensible rules.
  • E.g.
  • If a tree is not on fire, and has n neighbours
    on fire, it catches fire next step with
    probabilty n/8.
  • If a tree has been on fire for 3 steps, it dies

8

Step 0




9

Step 1




10

Step 2




11

Step 3




12

Step 4 and so on




13
CA Rules
  • A small number of sensible rules, for any given
    suitable application, usually leads to convincing
    behaviour.
  • Every CA rule says
  • A cell in state X changes to a cell of state
    Y if certain neighbourhood conditions are
    satisfied
  • What about the tree on fire dies after three
    steps rule? This can be easily modelled with
    pure CA rules. How?
  • CAs are increasingly used to simulate a wide
    number of complex systems, to see what would
    happen if, and generally investigate the
    effects of various strategies

14
Modelling HIV infection
15
See HIV CA demo
4 states Healthy, Infected1, Infected2, Dead
Rule 1 - If an H cell has at least one I1
neighbour, or if has at least 2 I2 neighbours,
then it becomes I1. Otherwise, it stays
healthy.   Rule 2 An I1 cell becomes I2 after 4
time steps (simulated weeks). (to operate this
the CA maintains a counter associated with each
I1 cell).   Rule 3 - An I2 cell becomes D.   Rule
4 A D cell becomes H, with probability
I1, with probability
otherwise, it
remains D
16
Some additional things about CAs
A simple 1D CA to illustrate these
points States 0 and 1 Wraparound 2D array of
30 cells Rules if both neighbours are 1,
become 1 if both neighbours are
0, become 0 otherwise, stay the
same.
Synchronous update most CAs operate this way.
Each cells new state for time t1 is worked out
in parallel based on the situation at t.
Start 101001010001101000101010010001
T1 110000000001110000010100000001
T2 110000000001110000001000000001
17
Some additional things about CAs
Asynchronous update Sometimes applied in
preference it is arguably a more valid way to
simulate some systems. Here, at each time step,
one cell is chosen at random and updated.
Start 101001010001101000101010010001
T1 101001000001101000101010010001
T2 101001000001101000101010010001
T3 111001000001101000101010010001
T4 111001000001101000101010000001
T5 etc ...
Clearly if there are n cells, then n timesteps in
an asynchronous CA corresponds to the 1 timestep
of a synchronous CA.
18
Boundary conditions
But what about cells on the edge?
19
Types of neighbourhood
Many more neighbourhood techniques exist - see
http//cell-auto.com and follow the link to
neighbourhood survey
20
Classes of cellular automata (Wolfram)
Class 1 after a finite number of time steps, the
CA tends to achieve a unique state from nearly
all possible starting conditions (limit
points) Class 2 the CA creates patterns that
repeat periodically or are stable (limit cycles)
probably equivalent to a regular grammar/finite
state automaton Class 3 from nearly all starting
conditions, the CA leads to aperiodic-chaotic
patterns, where the statistical properties of
these patterns are almost identical (after a
sufficient period of time) to the starting
patterns (self-similar fractal curves) computes
irregular problems Class 4 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
21
John Conways Game of Life
  • 2D cellular automata system.
  • Each cell has 8 neighbors - 4 adjacent
    orthogonally, 4 adjacent diagonally. This is
    called the Moore Neighborhood.

22
Simple rules, executed at each time step
  • A live cell with 2 or 3 live neighbors survives
    to the next round.
  • A live cell with 4 or more neighbors dies of
    overpopulation.
  • A live cell with 1 or 0 neighbors dies of
    isolation.
  • An empty cell with exactly 3 neighbors becomes a
    live cell in the next round.

23
Is it alive?
  • http//www.bitstorm.org/gameoflife/
  • Compare it to the definitions

24
Glider
25
Langtons Loops
  • CA are a main part of the research area
    Artificial Life. A common definition of life
    involves that the living organism(s) must be
    capable of self-reproduction. Langtons Loops
    achieve that.
  • Characteristics
  • 8 states, 2D Cellular automata
  • Needed CA grid of 100 cells
  • Self Reproduction into identical copy
  • A simple set of rules produces self-reproducing
    organism a deep connection between Life and
    Computation.

26
Langtons Loop
0 Background cell state 3, 5, 6 Phases of
reproduction 1 Core cell state 4 Turning arm
left by 90 degrees 2 Sheath cell state
state 7 Arm extending forward cell state
27
Langtons Loops

28
There remains debate and interest about the
essentials of life issue with CAs, but their
main BIC value is as modelling techniques.
Weve seen HIV here are some more examples.
  • Modelling Sharks and Fish
  • Predator/Prey Relationships
  • Bill Madden, Nancy Ricca and Jonathan Rizzo
  • Graduate Students, Computer Science Department
  • Research Project using Departments 20-CPU
    Cluster

29
  • This project modeled a predator/prey relationship
  • Begins with a randomly distributed population of
    fish, sharks, and empty cells in a 1000x2000 cell
    grid (2 million cells)
  • Initially,
  • 50 of the cells are occupied by fish
  • 25 are occupied by sharks
  • 25 are empty

30
Heres the number 2 million
  • Fish red sharks yellow empty black

31
Rules
  • A dozen or so rules describe life in each cell
  • birth, longevity and death of a fish or shark
  • breeding of fish and sharks
  • over- and under-population
  • fish/shark interaction
  • Important what happens in each cell is
    determined only by rules that apply locally, yet
    which often yield long-term large-scale patterns.

32
Do a LOT of computation!
  • Apply a dozen rules to each cell
  • Do this for 2 million cells in the grid
  • Do this for 20,000 generations
  • Well over a trillion calculations per run!
  • Do this as quickly as you can

33
Rules in detail Initial Conditions
  • Initially cells contain fish, sharks or are empty
  • Empty cells 0 (black pixel)
  • Fish 1 (red pixel)
  • Sharks 1 (yellow pixel)

34
Rules in detail Breeding Rule
  • Breeding rule if the current cell is empty
  • If there are gt 4 neighbors of one species, and
    gt 3 of them are of breeding age,
  • Fish breeding age gt 2,
  • Shark breeding age gt3,
  • and there are lt4 of the other species
  • then create a species of that type
  • 1 baby fish (age 1 at birth)
  • -1 baby shark (age -1 at birth)

35
Breeding Rule Before

EMPTY

36
Breeding Rule After



37
Rules in Detail Fish Rules
  • If the current cell contains a fish
  • Fish live for 10 generations
  • If gt5 neighbors are sharks, fish dies (shark
    food)
  • If all 8 neighbors are fish, fish dies
    (overpopulation)
  • If a fish does not die, increment age

38
Rules in Detail Shark Rules
  • If the current cell contains a shark
  • Sharks live for 20 generations
  • If gt6 neighbors are sharks and fish neighbors
    0, the shark dies (starvation)
  • A shark has a 1/32 (.031) chance of dying due to
    random causes
  • If a shark does not die, increment age

39
Shark Random Death Before
I Sure Hope that the random number chosen is
gt.031



40
Shark Random Death After
YES IT IS!!! I LIVE ?



41
Results
  • Next several screens show behavior over a span of
    10,000 generations

42
Generation 0
43
Generation 100
44
Generation 500
45
Generation 1,000
46
Generation 2,000
47
Generation 4,000
48
Generation 8,000
49
Generation 10,500
50
Long-term trends
  • Borders tended to harden along vertical,
    horizontal and diagonal lines
  • Borders of empty cells form between like species
  • Clumps of fish tend to coalesce and form convex
    shapes or communities

51
What can be discovered by simulating very small
populations
  • Fish can live in stable isolated communities as
    small as 20-30
  • A community of less than 200 sharks tends not to
    be viable

52
Forest Fire Model (FFM)
Forest Fire Model is a stochastic 3-state
cellular automaton defined on a d-dimensional
lattice with Ld sites. Each site is occupied by
a tree, a burning tree, or is empty.
During each time step the system is updated
according to the rules
  1. empty site ? tree with the growth rate
    probability p
  2. tree ? burning tree with the lightning rate
    probability f, if no nearest neighbour is burning
  3. tree ? burning tree with the probability 1-g, if
    at least one nearest neighbour is burning, where
    g defines immunity.
  4. burning tree ? empty site

53
The application
54
Eventually

After some time forest reaches the steady state
in which the mean number of growing trees equals
the mean number of burning trees.
55
Modelling brain tumour growthKansal et al, 2000,
Journal of Theoretical Biology
Incidence of primary malignant brain tumours is
8/100,000 p.a. 3D CA, modelling brain tumour
growth Shows that Macroscopic tumour behaviour
can be predicted via microscopic parameters Uses
only 4 parameters Makes predictions that match
the biological reality
56
MRI scan showing a tumour the white
area Represents blood leakage around the tumour
57
Kansal et al use the Delaunay Tesselation as
their lattice on the right we see blackened
cells representing the tumour, in a simplified 2D
version
58
States and Rules
Not easy to glean from the paper, but cells are
either healthy (empty lattice site) or
tumour. Tumour cells are either proliferative
(they divide into additional tumour cells) or
not. When a proliferative tumour cell wants to
divide, it fills a healthy space with a new
tumour cell if it can find one within delta_p of
its position. If it cant find one, it becomes
non-proliferative.
59

1.5M lattice sites Initial tumour is 1000
proliferative cells at centre of lattice
Result seems realistic
60
Very good fit to real data The lines are the CA
model predictions of tumour radius and volume
against time The plotted points are measurements
from real cases of untreated tumours
61
Read about various applications for yourself.
See the www site for the Influenza CA paper
Tumour CA paper A Traffic Simulation CA paper
Historic urban growth in the San Francisco bay
area CA
Not examinable reading, but recommended
62
Next week
  • revision lecture
  • Ill go quickly over the examinable material
    from
  • my lectures (not Patricias)
  • Ill be here to answer (reasonable) questions
    about
  • the exam
Write a Comment
User Comments (0)
About PowerShow.com