Cellular Automata Biologically Inspired Computing Various credits for these slides, which have in part been adapted from slides by: Ajit Narayanan, Rod.

Slides:



Advertisements
Similar presentations
Chapter 8 Geocomputation Part A:
Advertisements

Jacob Goldenberg, Barak Libai, and Eitan Muller
Cellular Automata Various credits for these slides: Ajit Narayanan, Rod Hunt, several more.
Sharks and Fishes – The problem
DYNAMICS OF RANDOM BOOLEAN NETWORKS James F. Lynch Clarkson University.
Populations.
Overarching Goal: Understand that computer models require the merging of mathematics and science. 1.Understand how computational reasoning can be infused.
Cellular Automata: Life with Simple Rules
Cellular Automata COMP308 Unconventional models and paradigms.
A Cellular Automata Approach to Population Modeling Alexa M. Silverman.
Game of Life Rules and Games Linh Tran ECE 573. What is Life? Life is just one example of a cellular automaton, which is any system in which rules are.
CITS4403 Computational Modelling Game of Life. One of the first cellular automata to be studied, and probably the most popular of all time, is a 2-D CA.
Slides for Parallel Programming Techniques & Applications Using Networked Workstations & Parallel Computers 2nd ed., by B. Wilkinson & M
1 The Game of Life Supplement 2. 2 Background The Game of Life was devised by the British mathematician John Horton Conway in More sophisticated.
Cellular Automata (Reading: Chapter 10, Complexity: A Guided Tour)
1 Chapter 13 Artificial Life: Learning through Emergent Behavior.
CELLULAR AUTOMATON Presented by Rajini Singh.
CELLULAR AUTOMATA Derek Karssenberg, Utrecht University, the Netherlands LIFE (Conway)
Cellular Automata MATH 800 Fall “Cellular Automata” 588,000 results in 94,600 results in 61,500 results in 2.
Joanne Turner 15 Nov 2005 Introduction to Cellular Automata.
Evolutionary Games The solution concepts that we have discussed in some detail include strategically dominant solutions equilibrium solutions Pareto optimal.
Today’s Plan Introduction to Artificial Life Cellular Automata
Cellular Automata This is week 7 of Biologically Inspired Computing Various credits for these slides, which have in part been adapted from slides by:
Nawaf M Albadia Introduction. Components. Behavior & Characteristics. Classes & Rules. Grid Dimensions. Evolving Cellular Automata using Genetic.
Parallelization: Conway’s Game of Life. Cellular automata: Important for science Biology – Mapping brain tumor growth Ecology – Interactions of species.
CITS4403 Computational Modelling Fractals. A fractal is a mathematical set that typically displays self-similar patterns. Fractals may be exactly the.
Chapter 12: Simulation and Modeling
1 9/8/2015 MATH 224 – Discrete Mathematics Basic finite probability is given by the formula, where |E| is the number of events and |S| is the total number.
Discovery of Cellular Automata Rules Using Cases Ken-ichi Maeda Chiaki Sakama Wakayama University Discovery Science 2003, Oct.17.
Understanding Populations The Human Population From 1900 to 2003, the population tripled in size to reach 6.3 billion people Today, the human population.
The Role of Artificial Life, Cellular Automata and Emergence in the study of Artificial Intelligence Ognen Spiroski CITY Liberal Studies 2005.
1 Cellular Automata. 2 Introduction What are Cellular Automata? CA are discrete dynamic systems. CA's are said to be discrete because they operate in.
Models and Algorithms for Complex Networks Power laws and generative processes.
CS 484 – Artificial Intelligence1 Announcements Lab 4 due today, November 8 Homework 8 due Tuesday, November 13 ½ to 1 page description of final project.
Computer Science Dept, San Jose State University, CA Self Reproducing CA’s and Programs Shruti Parihar May 06, 2003.
Does not Compute 4: Finite Automata In which we temporarily admit defeat with cellular automata (we will face them again, in the epic final “Does Not Compute”
Course material – G. Tempesti Course material will generally be available the day before the lecture Includes.
1 Cellular Automata and Applications Ajith Abraham Telephone Number: (918) WWW:
1 Chapter 13 Artificial Life: Learning through Emergent Behavior.
Activity 2-1: The Game of Life
Introduction to Lattice Simulations. Cellular Automata What are Cellular Automata or CA? A cellular automata is a discrete model used to study a range.
Aftificial Life: Celular Automata Dr. Shazzad Hosain Department of EECS North South Universtiy
Fractals. In colloquial usage, a fractal is "a rough or fragmented geometric shape that can be subdivided in parts, each of which is (at least approximately)
Cellular Automata Spatio-Temporal Information for Society Münster, 2014.
CELLULAR AUTOMATA A Presentation By CSC. OUTLINE History One Dimension CA Two Dimension CA Totalistic CA & Conway’s Game of Life Classification of CA.
Model Iteration Iteration means to repeat a process and is sometimes referred to as looping. In ModelBuilder, you can use iteration to cause the entire.
Cellular Automata. John von Neumann 1903 – 1957 “a Hungarian-American mathematician and polymath who made major contributions to a vast number of fields,
The Science of Complexity J. C. Sprott Department of Physics University of Wisconsin - Madison Presented to the First National Conference on Complexity.
So, what’s the “point” to all of this?….
Cellular Automata FRES 1010 Eileen Kraemer Fall 2005.
Cellular Automata Introduction  Cellular Automata originally devised in the late 1940s by Stan Ulam (a mathematician) and John von Neumann.  Originally.
CS851 – Biological Computing February 6, 2003 Nathanael Paul Randomness in Cellular Automata.
Pedro R. Andrade Münster, 2013
Introduction to Models Lecture 8 February 22, 2005.
Cellular Automata This is week 7 of Biologically Inspired Computing Various credits for these slides, which have in part been adapted from slides by:
1 Cellular Automata What could be the simplest systems capable of wide-ranging or even universal computation? Could it be simpler than a simple cell?
Conway’s Game of Life Jess Barak Game Theory. History Invented by John Conway in 1970 Wanted to simplify problem from 1940s presented by John von Neumann.
© 2015 Pearson Education, Inc. POPULATION STRUCTURE AND DYNAMICS.
Modelagem Dinâmica com TerraME Aula 5 – Building simple models with TerraME Tiago Garcia de Senna Carneiro (UFOP) Gilberto Câmara (INPE)
1 1 2 What is a Cellular Automaton? A one-dimensional cellular automaton (CA) consists of two things: a row of "cells" and a set of "rules". Each of.
Spatio-Temporal Information for Society Münster, 2014
Hiroki Sayama NECSI Summer School 2008 Week 3: Methods for the Study of Complex Systems Cellular Automata Hiroki Sayama
A Cellular Automata Approach to Population Modeling
Illustrations of Simple Cellular Automata
Computational methods in physics
Cellular Automata.
Hiroki Sayama NECSI Summer School 2008 Week 2: Complex Systems Modeling and Networks Cellular Automata Hiroki Sayama
Cellular Automata What could be the simplest systems capable of wide-ranging or even universal computation? Could it be simpler than a simple cell?
A Cellular Automata Approach to Population Modeling
Cellular Automata (CA) Overview
Presentation transcript:

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.

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 t+1 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

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.

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 it’s healthy fire_tree: there is a tree here, and it’s 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.

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

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”. You’ll see example neighbourhoods in a later slide, but usually you just use a cell’s 8 immediately surrounding neighbours. Let’s do that in this case. Next we decide what the neighbourhood will be like at the boundaries of the grid.

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

Step 0

Step 1

Step 2

Step 3

Step 4 … and so on

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

Modelling HIV infection

demo coming soon 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 4 states: Healthy, Infected1, Infected2, Dead

Some additional things about CAs A simple 1D CA to illustrate these points: States 0 and 1: Wraparound 1D 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 cell’s new state for time t+1 is worked out in parallel based on the situation at t. Start: T=1 : T=2 :

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: T=1 : T=2 : Clearly if there are n cells, then n timesteps in an asynchronous CA corresponds to the 1 timestep of a synchronous CA. T=3 : T=4 : T=5 : etc...

Boundary conditions Rules for a cell’s state transitions are usually defined in terms of the cell’s neighbourhood. E.g. this is the Moore neighbourhood: But what about cells on the edge? The common approach in 2D is to treat the CA surface as a Toroid This just means wraparound in the way indicated by the blue and green neighbourhoods illustrated

Types of neighbourhood Many more neighbourhood techniques exist - see and follow the link to ‘neighbourhood survey’

More about 1D 2-state CAs Assuming Moore neighbourhood: there are 8 possible rules: current pattern new state for center cell This is “rule 30” – why?

Rule 30 produces patterns like this

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

John Conway’s Game of Life 2D cellular automata system. Each cell has 8 neighbors - 4 adjacent orthogonally, 4 adjacent diagonally. This is called the Moore Neighborhood.

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.

Is it alive? Compare it to the definitions…

Glider

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. Langton’s “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. Langton’s Loops

Langton’s Loop 0 – Background cell state3, 5, 6 – Phases of reproduction 1 – Core cell state4 – Turning arm left by 90 degrees 2 – Sheath cell state state 7 – Arm extending forward cell state

Langton’s Loops

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

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

Here’s the number 2 million Fish: red; sharks: yellow; empty: black

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.

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

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)

Breeding Rule: Before EMPTY

Breeding Rule: After

Rules in Detail: Fish Rules If 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

Rules in Detail: Shark Rules If 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

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

Spring 2005BM43 Generation: 0

Spring 2005BM44 Generation: 100

Generation: 500

Generation: 1,000

Generation: 2,000

Generation: 4,000

Generation: 8,000

Generation: 10,500

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’

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

Forest Fire Model (FFM) 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 L d 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

The application

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

Modelling brain tumour growth Kansal 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

MRI scan showing a tumour; the white area Represents blood leakage around the tumour

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

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 can’t find one, it becomes non- proliferative.

1.5M lattice sites Initial tumour is 1000 proliferative cells at centre of lattice Result seems realistic

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

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

Next week ‘revision’ lecture I’ll go quickly over the examinable material from my lectures (not Patricia’s) I’ll be here to answer (reasonable) questions about the exam