Cellular automata by Devdutta Chakrabarti

Preview:

Citation preview

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

Recommended