cellular automata by devdutta chakrabarti
TRANSCRIPT
A Case study of Cellular Automata
Written and Presented by:Devdutta Chakrabarti
GNIT_MTECH(CSE) 1
Cellular Automata-Summary
What is cellular automata?History of cellular automata Simple cellular automataRulesApplicationsSummaryReferences
GNIT_MTECH(CSE) 2
What is Cellular Automata?
Cellular Automata(CA): A regular spatial lattice of cells, each of which can have a finite number of states.
The cell states are updated in discrete time steps and defined by its original state and the state of the cells surrounding it.
Every separate cell can be described as its own finite state machine. The finite state machines are determined by different sets of information.
GNIT_MTECH(CSE) 3
How Cellular Automata Began
In 1947, John von Neumann was working in the field of science, focusing on biology. He was studying a self-replicating machine when he designed a two-dimensional CA model of the physics of our universe.
He mathematically proved that the universe he made acted like a self-replicating machine and that it would make endless copies of itself.
GNIT_MTECH(CSE) 4
Simple Cellular Automata
The simplest CA is one dimensional with only two states for each cell. A cell and the cell on each side make up a neighborhood. These cells are the deciding factors as to what state is chosen for the element.
GNIT_MTECH(CSE) 5
Rules
This rule modeled a predator/prey relationshipBegins 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 fish25% are occupied by sharks25% are empty
GNIT_MTECH(CSE) 6
Here’s the number 2 million• Fish: red; sharks: yellow; empty: black
GNIT_MTECH(CSE) 7
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)
GNIT_MTECH(CSE) 8
Rules in detail: Breeding Rule
Breeding rule: if the current cell is emptyIf there are >= 4 neighbors of one species, and >= 3 of them are of breeding age,
Fish breeding age >= 2, Shark breeding age >=3,
and there are <4 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)
GNIT_MTECH(CSE) 9
Breeding Rule: Before
EMPTY
GNIT_MTECH(CSE) 10
Breeding Rule: After
GNIT_MTECH(CSE) 11
GNIT_MTECH(CSE)
Rules in Detail: Fish RulesIf the current cell contains a fish:• Fish live for 10 generations.• If >=5 neighbors are sharks, fish dies (shark
food).• If all 8 neighbors are fish, fish dies
(overpopulation).• If a fish does not die, increment age.
12
GNIT_MTECH(CSE)
Rules in Detail: Shark RulesIf the current cell contains a shark:• Sharks live for 20 generations.• If >=6 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.
13
GNIT_MTECH(CSE)
Shark Random Death: Before
I Sure Hope that the random number chosen is >.031
14
GNIT_MTECH(CSE)
Shark Random Death: After
YES IT IS!!! I LIVE
15
GNIT_MTECH(CSE)
Illustration
Next several screens show behavior over a span of 10,000+ generations (about 25 minutes on a cluster of 20 processors).
16
GNIT_MTECH(CSE)
Generation: 0
17
GNIT_MTECH(CSE)
Generation: 100
18
GNIT_MTECH(CSE)
Generation: 500
19
GNIT_MTECH(CSE)
Generation: 1,000
20
GNIT_MTECH(CSE)
Generation: 2,000
21
GNIT_MTECH(CSE)
Generation: 4,000
22
GNIT_MTECH(CSE)
Generation: 8,000
23
GNIT_MTECH(CSE)
Generation: 10,500
24
GNIT_MTECH(CSE)
Variations of Initial Conditions
Still using randomly distributed populations:Medium-sized population. Fish/sharks occupy:
1/16th of total gridFish: 62,703; Sharks: 31,301
Very small population. Fish/sharks occupy:1/800th of total gridInitial population:Fish: 1,298; Sharks: 609
25
Medium-sized population (1/16 of grid)Generation 100 1000
2000 4000
8000
GNIT_MTECH(CSE) 26
GNIT_MTECH(CSE)
Very Small PopulationsRandom placement of very small populations can favor one species over anotherFish favored: sharks die outSharks favored: sharks predominate, but fish survive in stable small numbers
27
Applications of Cellular Automata
Simulation of Biological ProcessesSimulation of Cancer cells growthPredator – Prey ModelsArtSimulation of Forest FiresSimulations of Social Movement…many more.. It’s a very active area of research.
GNIT_MTECH(CSE) 28
SummaryIt excel at modelling physical systems because the properties of the physical world and cellular lattices are very similar.Cellular automata has an old but brief history.Simple cellular automata is very easy and quite useful.Could have many beneficial qualities if researched and developed.Play The Game of Life, its fun and interesting.
GNIT_MTECH(CSE) 29
Referenceshttp://www.mirwoj.opus.chelm.pl/cahttp://www.brainyencyclopedia.com/encyclopedia/c/ce/cellular_automaton.htmlhttp://www.frank-buss.de/automatonhttp://www.hyperdictionary.com/dictionary/cellular+automatonhttp://www.wordiq/defintion/Cellular_automatonhttp://mathworld.wolfram.com/CellularAutomatonhttp://computing-dictionary.thefreedictionary.com/cellular%20automatonThe New Turing Omnibus by A.K. Dewdney, ch. 44
GNIT_MTECH(CSE) 30
THANK YOU ALL !!
GNIT_MTECH(CSE) 31