![Page 1: A Cellular Automata Approach to Population Modeling Alexa M. Silverman](https://reader030.vdocuments.us/reader030/viewer/2022032722/56649cdd5503460f949a80a9/html5/thumbnails/1.jpg)
A Cellular Automata Approach to Population Modeling
Alexa M. Silverman
![Page 2: A Cellular Automata Approach to Population Modeling Alexa M. Silverman](https://reader030.vdocuments.us/reader030/viewer/2022032722/56649cdd5503460f949a80a9/html5/thumbnails/2.jpg)
Purpose To use cellular automata to model
population growth and change To observe the effects of temperature
on the behavior of populations To determine whether a cellular-based
model of population is valid and realistically predicts the behavior of individuals in a population
![Page 3: A Cellular Automata Approach to Population Modeling Alexa M. Silverman](https://reader030.vdocuments.us/reader030/viewer/2022032722/56649cdd5503460f949a80a9/html5/thumbnails/3.jpg)
Cellular Automata
A cellular automaton is a ‘cell’ on a grid which determines its state (‘live’ or ‘dead’) based on the states of neighboring cells.
2D cellular automata consider all eight neighboring cells.
2D cells with live neighbor counts
![Page 4: A Cellular Automata Approach to Population Modeling Alexa M. Silverman](https://reader030.vdocuments.us/reader030/viewer/2022032722/56649cdd5503460f949a80a9/html5/thumbnails/4.jpg)
Agent-Based Modeling
• Uses individual ‘agents’ with simple instructions to observe emergent behavior
• Based on interactions between agents• More variable results than mathematical models
![Page 5: A Cellular Automata Approach to Population Modeling Alexa M. Silverman](https://reader030.vdocuments.us/reader030/viewer/2022032722/56649cdd5503460f949a80a9/html5/thumbnails/5.jpg)
Agent-Based ModelingSome well known models, in NetLogo:
DaisyworldLovelock & Watson
Rabbits Grass Weeds (Predator/Prey)U. Wilensky
AltruismMitteldorf & Wilson
![Page 6: A Cellular Automata Approach to Population Modeling Alexa M. Silverman](https://reader030.vdocuments.us/reader030/viewer/2022032722/56649cdd5503460f949a80a9/html5/thumbnails/6.jpg)
Life
“Life” notation is written s/b, where numbers on the right side of the slash represent neighbor counts needed to survive and numbers on the left side of the slash represent neighbor counts needed for cell birth.
“34 Life” (34/34) “Conway’s Game of Life” (23/3)
![Page 7: A Cellular Automata Approach to Population Modeling Alexa M. Silverman](https://reader030.vdocuments.us/reader030/viewer/2022032722/56649cdd5503460f949a80a9/html5/thumbnails/7.jpg)
CA Modeling
The field of cellular automata modeling is still relatively new, but several models have been created.
“Rumor Mill” models spread of a rumor
“Urban Suite – Cells”models growth of cities
![Page 8: A Cellular Automata Approach to Population Modeling Alexa M. Silverman](https://reader030.vdocuments.us/reader030/viewer/2022032722/56649cdd5503460f949a80a9/html5/thumbnails/8.jpg)
14/3 Population Model
For this model, the rule 14/3 was chosen because it causes cells to grow and move in a pattern resembling the spread of a species (starts localized and becomes more widespread).
14/3 automata suggest two types of individuals: “antisocial” (survives with 1 neighbor) and “social” (survives with 4 neighbors).
![Page 9: A Cellular Automata Approach to Population Modeling Alexa M. Silverman](https://reader030.vdocuments.us/reader030/viewer/2022032722/56649cdd5503460f949a80a9/html5/thumbnails/9.jpg)
Code and Testing
This program was created in NetLogo because the NetLogo graphics window allows for ‘real time’ view of population growth and change. NetLogo code is object-based, which is ideal for a model where each cell must “know” its state, and the states of its eight surrounding cells.
In test runs, cell population and temperature are graphed. Cell ‘birth rate’ (likelihood of a ‘dead’ cell to come to life) varies quadratically with temperature and temperature varies linearly with changes in population. A highly variable population, therefore, will cause frequent changes in temperature.
![Page 10: A Cellular Automata Approach to Population Modeling Alexa M. Silverman](https://reader030.vdocuments.us/reader030/viewer/2022032722/56649cdd5503460f949a80a9/html5/thumbnails/10.jpg)
Code and Testing
Population varies as 100 - .25(temperature - 21)^2
Temperature varies as current temp + (1/20)(pop. - last pop.)
made using equationgrapher.com
![Page 11: A Cellular Automata Approach to Population Modeling Alexa M. Silverman](https://reader030.vdocuments.us/reader030/viewer/2022032722/56649cdd5503460f949a80a9/html5/thumbnails/11.jpg)
NetLogo Interface
![Page 12: A Cellular Automata Approach to Population Modeling Alexa M. Silverman](https://reader030.vdocuments.us/reader030/viewer/2022032722/56649cdd5503460f949a80a9/html5/thumbnails/12.jpg)
Walls
The “make-wall” button allows the user to draw “walls” around segments of the population. The cells cannot cross these walls.
![Page 13: A Cellular Automata Approach to Population Modeling Alexa M. Silverman](https://reader030.vdocuments.us/reader030/viewer/2022032722/56649cdd5503460f949a80a9/html5/thumbnails/13.jpg)
Code Sample
Methods to ‘birth’ and ‘kill’ cells
Methods to check if a cell will ‘survive’ or be ‘born’ the next turn
![Page 14: A Cellular Automata Approach to Population Modeling Alexa M. Silverman](https://reader030.vdocuments.us/reader030/viewer/2022032722/56649cdd5503460f949a80a9/html5/thumbnails/14.jpg)
Results
High initial density causes quick decline in populations, isolation of groups
![Page 15: A Cellular Automata Approach to Population Modeling Alexa M. Silverman](https://reader030.vdocuments.us/reader030/viewer/2022032722/56649cdd5503460f949a80a9/html5/thumbnails/15.jpg)
Results
Ideal initial density seems to be around 55%
![Page 16: A Cellular Automata Approach to Population Modeling Alexa M. Silverman](https://reader030.vdocuments.us/reader030/viewer/2022032722/56649cdd5503460f949a80a9/html5/thumbnails/16.jpg)
Results
• With default settings for temperature (21 degrees Celsius) and population density (55%), population and temperature eventually drop off.
• Does this model global warming?
![Page 17: A Cellular Automata Approach to Population Modeling Alexa M. Silverman](https://reader030.vdocuments.us/reader030/viewer/2022032722/56649cdd5503460f949a80a9/html5/thumbnails/17.jpg)
ResultsThe nature of cellular automata causes each test run to be slightly different even with the same initial parameters. Here are the results of five test runs with default settings:
1 9 17 25 33 41 49 57 65 73 81 89 97 105
113
121
129
137
145
153
161
169
177
185
193
201
209
217
225
233
241
249
257
265
273
281
289
297
305
313
321
329
337
345
0
500
1000
1500
2000
2500
![Page 18: A Cellular Automata Approach to Population Modeling Alexa M. Silverman](https://reader030.vdocuments.us/reader030/viewer/2022032722/56649cdd5503460f949a80a9/html5/thumbnails/18.jpg)
Java Program
• Will extend capabilities of model due to Java’s object-oriented nature
• Difficulties of Java programming with CA
• Extensions—virus spread modeling?
![Page 19: A Cellular Automata Approach to Population Modeling Alexa M. Silverman](https://reader030.vdocuments.us/reader030/viewer/2022032722/56649cdd5503460f949a80a9/html5/thumbnails/19.jpg)
Java Program
CellDriver
CellPanel JPanel
extends
Cell
Timer
Grid
ActionListener
Graphics
BufferedImage
class hierarchy
![Page 20: A Cellular Automata Approach to Population Modeling Alexa M. Silverman](https://reader030.vdocuments.us/reader030/viewer/2022032722/56649cdd5503460f949a80a9/html5/thumbnails/20.jpg)
Sources and Background
Individual-Based Artificial Ecosystems for Design and Optimization by Srinivasa Shivakar Vulli and Sanjeev Agarwal
Using a Genetic Algorithm to Evolve Behavior in Multi-Dimensional Cellular Automata by R. Brukelaar and Th. Back
A Hybrid Agent-Cellular Space Modeling Approach for Fire Spread and Suprression Simulation by Xiolin Hu, Alexandre Muzy, Lewis Ntaimo
Pattern-Oriented Modeling of Agent-Based Complex Systems: Lessons from Ecology by Grimm, Revilla, et al.
Seeing Around Corners by Jonathan Rauch A Brief History of Cellular Automata by Palash Sarkar
![Page 21: A Cellular Automata Approach to Population Modeling Alexa M. Silverman](https://reader030.vdocuments.us/reader030/viewer/2022032722/56649cdd5503460f949a80a9/html5/thumbnails/21.jpg)
Image Sources on the Web
http://www.anl.govhttp://www.kevlindev.comhttp://ccl.northwestern.edu/netlogo/http://psoup.math.wisc.edu/mcell/http://i.cnn.net