cellular automata : a simple introduction

44
Presented by ADEKUNLE ONAOPEPO HUSAMAT CELLULAR AUTOMATA 1

Upload: adekunle-onaopepo

Post on 02-Jun-2015

492 views

Category:

Science


6 download

DESCRIPTION

Explaining the concepts in cellular automata in an illustrative way, showng the advantages and drawbacks as a modelling and simulation formalism.

TRANSCRIPT

Page 1: Cellular automata : A simple Introduction

1

Presented by

ADEKUNLE ONAOPEPO HUSAMAT

CELLULAR AUTOMATA

Page 2: Cellular automata : A simple Introduction

2

INTRODUCTION BACKGROUND SYNTAX COMPONENTS BEHAVIOUR VARIANTS APPLICATIONS CASE STUDIES LEVEL OF KNOWLEDGE ADVANTAGES DRAWBACKS REFERENCES

OVERVIEW

Page 3: Cellular automata : A simple Introduction

3

“A CA is an array(Spatial Lattice) of identically programmed automata,

or cells,which interact with one another in a

neighborhood and havedefinite state”

What are Cellular Automata? CA are discrete dynamic systems.

CA's are said to be discrete because they operate in finite space and time and with properties that can have only a finite number of states.

CA's are said to be dynamic because they exhibit dynamic behaviours.

Basic Idea: Simulate complex systems by interaction of cells following easy rules.

“Not to describe a complex system with complex equations, but let the complexity emerge by interaction of simple individuals following simple rules.”

INTRODUCTION

From Another Perspectiveit is a Finite State Machine, with one transition function for all the cells, this transition function changes the current state of a cell depending on the previous state for that cell and its neighbors.

Page 4: Cellular automata : A simple Introduction

BACKGROUND

4

Time Frame Major Players Contribution

Early 50’s J. Von Neuman, E.F. Codd, Henrie & Moore , H Yamada & S. Amoroso

Modeling biological systems - cellular models

‘60s & ‘70s A. R. Smith , Hillis, Toffoli Language recognizer, Image Processing

‘80 s S. Wolfram ,Crisp,Vichniac Discrete Lattice,statistical systems, Physical systems

‘87 - ‘96 IIT KGP, Group Additive CA, characterization,applications

‘97 - ‘99 B.E.C Group GF (2p) CA

Page 5: Cellular automata : A simple Introduction

5

Cellular Automata: Lattice, Neighbourhood, Set of discrete states, Set of transition rules, Discrete time.

“CAs contain enough complexity to simulate surprising and novel change as reflected in emergent phenomena”(Mike Batty)

SYNTAX

Page 6: Cellular automata : A simple Introduction

6

Cell Basic element of a CA. Cells can be thought of as memory

elements that store state information. All cells are updated synchronously

according to the transition rules. Lattice

Spatial web of cells. Simplest lattice is one dimensional. Others include 2,3… Dimensional

COMPONENTS

Initialcurrent

1 1 1 1 1 0 1 0 1 1 0 0 0 1 1 0 1 0 0 0 1 0 0 0 0 1 1 1 1 1 1 0Rule #126

Page 7: Cellular automata : A simple Introduction

7

• 2 dimensional

• 3 dimensional•For 1D CA:

23 = 8 possible “neighborhoods” (for 3 cells)

28 = 256 possible rules

• For 2D CA:29 = 512 possible “neighborhoods”2512 possible rules (!!)

Page 8: Cellular automata : A simple Introduction

8

•The cells on the end may (or may not) be treated as "touching" each other as if the line of cells were circular.

If we consider them as they touch each other, then the cell (A) is a neighbor of cell (C)

Page 9: Cellular automata : A simple Introduction

9

• if #alive =< 2, then die• if #alive = 3, then live• if #alive >= 5, then die

• if #alive =< 2, then die• if #alive = 3, then live• if #alive >= 5, then die

• if #alive =< 2, then die• if #alive = 3, then live• if #alive >= 5, then die

“A CA is an array of identically programmed automata, or cells,which interact with one another in a neighbourhood and havedefinite state”

BEHAVIOUR

Page 10: Cellular automata : A simple Introduction

10

“A CA is an array of identically programmed automata, or cells,which interact with one another in a neighborhood and havedefinite state”

BEHAVIOUR

Von Neumann Neighborhood

Moore Neighborhood

Page 11: Cellular automata : A simple Introduction

11

“A CA is an array of identically programmed automata, or cells,which interact with one another in a neighborhood and havedefinite state”

2 possible states: ON OFF

O

W JA

R

I T

D

G M

X E

N Z

R

P

A

Z

26 possible states: A … Z

Never infinite!

BEHAVIOUR

Page 12: Cellular automata : A simple Introduction

12

Rules Space and Time

t

t1

BEHAVIOUR

Initial Configuration

Initial Starting state of all cells in the lattice e.gthe initial configuration for all the cells is state 0, except for 4 cells in state 1.

Page 13: Cellular automata : A simple Introduction

13

Asynchronous CA CA rules are typically applied simultaneously across all cells in the lattice.

This variant allows the state of the cells to be updated asynchronously. Probabilistic CA

The deterministic state-transitions are replaced with specifications of the probabilities of the cell-value assignments.

Non-homogenous CA State transition rules are allowed to vary from cell to cell.

Mobile CA Some or all lattice sites are free to move about the lattice. Essentially primitive models of mobile robots. Used to model some aspects of military engagements.

Structurally Dynamic CA The topology (the sites and connections among sites) are allowed to evolve.

VARIANTS

Page 14: Cellular automata : A simple Introduction

14

Self-reproduction Diffusion equations Artificial Life Digital Physics Simulation of Cancer cells growth Predator – Prey Models Art Simulations of Social Movement Alternative to differential

equations CA based parallel processing

computers Image processing and pattern

recognition

SimulationsGas behaviorBiological

processesForest fire

propagationUrban

developmentTraffic flowAir flowCrystallization

process

APPLICATIONS

Page 15: Cellular automata : A simple Introduction

15

Study of evolution of rules involving one dimensional cellular automata

CASE STUDY

Page 16: Cellular automata : A simple Introduction

16

CASE STUDY

Page 17: Cellular automata : A simple Introduction

17

CASE STUDY

Page 18: Cellular automata : A simple Introduction

18

CASE STUDY

Page 19: Cellular automata : A simple Introduction

19

I. Always reaches a state in which all cells are dead or alive

II. Periodic behavior

III. Everything occurs randomly

IV. Unstructured locally organized patterns and complex behavior

Results: Classifying Cellular Automata RulesCASE STUDY

Page 20: Cellular automata : A simple Introduction

20

CASE STUDY

During each time step the system is updated according to the rules:

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.

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

Forest Fire Model (FFM)

Page 21: Cellular automata : A simple Introduction

21

CASE STUDY

Page 22: Cellular automata : A simple Introduction

22

The application

CASE STUDY

Page 23: Cellular automata : A simple Introduction

23

Eventually

After some time forest reaches the steady state in which the mean number of growing trees equals the mean number of burned trees.

CASE STUDY

Page 24: Cellular automata : A simple Introduction

24

Model predator/prey relationship by CA 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

CASE STUDY

Page 25: Cellular automata : A simple Introduction

25

Breeding rule: if the current cell is empty If 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)

CASE STUDY

Initially cells contain fish, sharks or are emptyEmpty cells = 0 (black pixel)Fish = 1 (red pixel)Sharks = –1 (yellow pixel)

Page 26: Cellular automata : A simple Introduction

26

EMPTY

CASE STUDY

Breeding Rule: Before

Page 27: Cellular automata : A simple Introduction

27

CASE STUDY

Breeding Rule: After

Page 28: Cellular automata : A simple Introduction

28

Shark rule: DetailsIf 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

CASE STUDY

Fish rule: DetailsIf 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

Page 29: Cellular automata : A simple Introduction

29

Results

Next several screens show behavior over a span of 10,000+ generations

CASE STUDY

Page 30: Cellular automata : A simple Introduction

30

Generation: 0

CASE STUDY

Page 31: Cellular automata : A simple Introduction

31

Generation: 500

CASE STUDY

Page 32: Cellular automata : A simple Introduction

32

Generation: 100

CASE STUDY

Page 33: Cellular automata : A simple Introduction

33

Generation: 1,000

CASE STUDY

Page 34: Cellular automata : A simple Introduction

34

Generation: 2,000

CASE STUDY

Page 35: Cellular automata : A simple Introduction

35

Generation: 4,000

CASE STUDY

Page 36: Cellular automata : A simple Introduction

36

Generation: 8,000

CASE STUDY

Page 37: Cellular automata : A simple Introduction

37

Generation: 10,500

CASE STUDY

Page 38: Cellular automata : A simple Introduction

38

Borders tended to ‘harden’ along vertical, horizontal and diagonal lines

Borders of empty cells form between like speciesClumps of fish tend to coalesce and form convex shapes or

‘communities’

Long-term trendsCASE STUDY

Page 39: Cellular automata : A simple Introduction

39

Generation 100 20001000

4000 8000

Medium-sized population (1/16 of grid)

Random placement of very small populations can favor one species over another

Fish favored: sharks die out Sharks favored: sharks predominate, but fish survive in

stable small numbers

CASE STUDY

Page 40: Cellular automata : A simple Introduction

40

Cellular automata provides structural knowledge level through the initial configuration of the system that evolved

Generative knowledge level is also provided by the transition rule to generate next data set of the system

LEVEL OF KNOWLEDGE

Page 41: Cellular automata : A simple Introduction

41

Powerful computation engines. Allow very efficient parallel computation

Discrete dynamical system simulator. Allow for a systematic investigation of complex phenomena.

Original models of fundamental physics. Instead of looking at the equations of fundamental physics, consider

modelling them with CA. Emergent behaviour of complex group from simple individual

behaviour can be studied. Simulation results are much more intuitive as it is well visually

represented Simple to Implement

ADVANTAGES

Page 42: Cellular automata : A simple Introduction

42

Not suitable for systems that require synthesis. Since CA rules cannot be easily predict results

Results may contain redundant information. Patterns which seem complex can be generated but are un-important data

as concerned with emergent behaviour of the actual system. It is not sometimes easy to obtain perfect rules governing

evolution of the system It is difficult to understand whether a CA model captures the dynamics of

the system being modelled fully or adds superfluous dynamics

DISADVANTAGES

Page 43: Cellular automata : A simple Introduction

43

Wolfram, S.: A new kind of science. Wolfram Media, Inc. (2002) Adamatzky, A., Alonso-Sanz, R., Lawniczak, A., Juarez Martinez, G.,

Morita, K., Worsch,T. (eds.): AUTOMATA-2008 Theory and Application of Cellular Automata (2008) http://cell-auto.com http://

www.brainyencyclopedia.com/encyclopedia/c/ce/cellular_automaton.html

Debasis Das: A Survey on Cellular Automata and Its Applications

REFERENCES

Page 44: Cellular automata : A simple Introduction

44

THANK YOU