Spatial Simulations Wolves hunting Caribou Simulation A model
Spatial Simulations • Wolves hunting Caribou
Simulation • A “model” that is a simulation of a past or potential event • Typically the models are not considered general (simpler models may be) • Relies on knowledge of the mechanisms behind the processes that created the event "3 Di. Teams percuss chest". Licensed under CC BY-SA 3. 0 via Wikipedia http: //en. wikipedia. org/wiki/File: 3 Di. Teams_percuss_che st. JPG#/media/File: 3 Di. Teams_percuss_chest. JPG
Simulations are Used In: • • Volcanic eruption processes Species population dynamics Disease propagation Flood dynamics Social dynamics Earthquakes Oil spills Land slides NASA
Validation? • Past Events: – Can ground-truth based but how generalizable are they? • Future Events: – How to ground-truth? • Best case: – Model based on past events, ground-truth, then extend into the future carefully http: //www. dailymail. co. uk/
Civil Engineering • Civil engineering is based on what has worked in the past • New structures are built based on: – Understanding of materials – Books of “margins of error” based on what has worked and not worked in the past – Simulations of potential scenarios
Tacoma Narrows Bridge • http: //www. youtube. com/watch? v=jzcz. JXSxnw • After the Tacoma narrows bridge collapsed, all suspension bridges had to be checked for harmonic oscillations against the typical winds in the area • Today, this is just one of the simulations that are used to test structures in different situations.
Simulation Models • NASA’s Perpetual Ocean – http: //svs. gsfc. nasa. gov/vis/a 000000/a 003827/ • NASA Simulation of aerosols:
Animations / Simulations • Tsunamis: – Tsunami in a city – Blender • Another for fun – Tsunami Floods City 2 - Blender Simulation – NOAA Tsunami Animation • Asteroid Impact Simulation
When to simulate? • Completely hypothetic scenarios • Really minimal data • Temporal process -> compelling animations • The process is believed to be well understood (simulations are typically mechanistic) • When the problem can be simplified enough to run on available hardware! • Educational
Methods • Agent-Based • Cellular automaton
Agent Based Models www. anylogic. com • Agent: – Typically a point – Has “attributes”: health, size, age, sex, etc. – Behaves independently • Moves, feeds, breeds, dies – Can “interact” with other agents – Can “interact” with its envrionment
Environmental Science • Spatially Explicit Individually Based Models (SEIBM) – Each “object” in the model represents one individual • Spatially Explicit Population Based Models (SEPBM) – Each “object” represents N individuals
Simple Model • All Agents –X –Y Pred 1 Prey 1 • Predator – Hunger • Prey 1 – Health Prey 1
How it works • Move agents • Agent interactions – Prey • Update attributes – Hunger – Birth – Death Loop for a period of time
Movement • Each agent has an x, y coordinate • Moves to a new position based on: – Random movement – Directed movement – Terrain – Forces: wind, water, slope Random Directed Lagrangian Movement
“Walking” • Random Walk – Brownian Motion: pseudo-random movement of particles when interacting with other particles • “Directed Walk” – Movement toward a resource • Lévy flight foraging hypothesis – Line lengths drawn from a “heavy tailed” distribution
Interactions • Agents interact with each other: – Breed – Feed – Interact with distance < some minimum • Agents interact with the environment: – Feed on grass
Real Interactions Are Complex https: //i. imgur. com/AZUij. Gp. gifv
Agents Update Attributes • Hunger/Health go down without food • Birth happens at some cycle if conditions are correct • Death – If Hunger/Health are too high/low – Age > maximum – Conditions too harsh • Also can: – Grow – Learn – Bloom, senesce
Life Cycle Birth Youth Adult Death
Model of Riverine Fish Goto et. al, 2015, Spatiotemporal variation in flow-dependent recruitment of long-lived riverine fish: Model development and evaluation
Individually Based Models • Polytechnic University of Catalan Crowds • Princeton’s migration studies • Agent Based Traffic Models
Cellular Automata • Monitor what is in each “cell” – Typically: • Each raster has the number of individuals of one type (or amount of available veg) – Can also include: • Land cover, barriers, water vs. land, etc. • Difficulty to cross area • Open vs. protected areas
Tools • • • Net. Logo Hex. Sim MASON Multi-Agent Simulation Toolkit Repast Programming! – Python – Java – R? • Books: “Agent-Based Models of Geographical Systems”
Python SEIBM • Very simple model • Includes 2 classes: – Animal (prey and predators) – Veg (grass)
SEIBM – Main Script • Imports: tkinter, time, random, Veg, Animal • Setup the GUI • Initialize animal objects in an array • Loop forever: – Update each object – Redraw the window – Let Python process events (mouse clicks) – Sleep for a bit
Others… • HTML 5 Based Simulation Solutions? – EVE (game) – Insight Maker? • For others, see: – Wikipedia
- Slides: 27