270 likes | 284 Views
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.
E N D
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 "3DiTeams percuss chest". Licensed under CC BY-SA 3.0 via Wikipedia - http://en.wikipedia.org/wiki/File:3DiTeams_percuss_chest.JPG#/media/File:3DiTeams_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=j-zczJXSxnw • 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/a000000/a003800/a003827/ • 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 • Mechanistic/Physical – we’ll leave this for the geologists, hydrologists, and engineers • Agent-Based • Cellular automaton https://www.ufz.de/index.php?en=36281
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 • Predator • Hunger • Prey • Health Pred 1 Prey 1 Prey 1 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/AZUijGp.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 • NetLogo • HexSim • 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