540 likes | 637 Views
Agent-Based Modeling, the PDC and DiveArch: What Is Susanne Doing Here, Anyway?. Susanne Jul, PhD Pacific Disaster Center sjul@pdc.org. Overview. Agent-based modeling What is it and why is it better than sliced bread? Agents at the PDC A fantasy DiveArch project
E N D
Agent-Based Modeling, the PDC and DiveArch:What Is Susanne Doing Here, Anyway? Susanne Jul, PhDPacific Disaster Center sjul@pdc.org
Overview • Agent-based modeling • What is it and why is it better than sliced bread? • Agents at the PDC • A fantasy • DiveArch project • What is Susanne doing here?
Agent-Based Modeling(What is it and why is it better than sliced bread?)
But First An exercise!
Exercise(High school attraction) • Select another person (anyone) • Try to keep someone between you and the person you selected at all times Predictions?
Exercise(College attraction) • Select another person (anyone) • Try to keep no one between you and the person you selected at all times Predictions?
Point? Changes to individual behaviors yielded changes in system behavior!
Essence of Agent-Based Modeling • Describe individual components of system • Behaviors, including responses to internal and external stimuli • Observe emergentphenomena arise from actions of and interactions among component parts • Not describing interactions • Not describing system behavior
Why ABM Is Better than Sliced Bread • Describe the loaf • Describe the knife The bread slices itself!(Or not)
An Agent-Based Model Is A set of agents,embedded in an environment
An Agent Is • A software module that encapsulates state and behavior representing a single conceptual entity • Defining properties: Agent-based modeling is a programming technique
An Environment Is • The runtime “ether” in which agents operate • Always provides unified concept of time • May be as simple as “clock tick” • May or may not have other properties, • E.g., concept of space • Agents may have environmental properties • E.g., age, location • Agents can detect (some) properties of environment
An Agent-Based Simulation Is A set of agents embedded in an environment going about,doing their thing(s) (reacting to internal and external events)
Scenario • Maui County has received $100,000 for tsunami mitigation/preparedness • Considering using the money to • Upgrade warning sirens dependent on power grid, or • Develop effective self-rescue procedures and educate public (including visitors) about them • PDC has been contracted to develop a model to help answer the question • Which strategy is more likely to lead to fewer casualties?
Real Question Which strategy is more likely to get more people to higher ground faster, safely?
Factors to Model • Possible and probable warnings • Sirens • Ground tremors • Visible water recession • Possible and probable responses • Do nothing • Go look to see what’s going on • Run for the hills • Drive for the hills • Possible and probable impacts • Siren failure • Water surge • Debris damage (casualties)
Agents • Hazards • Earthquake • Tsunami • Structures • Power generator • Warning siren • Humans • Probably at household scale
Hazards • Tsunami does not “know” about earthquakes • Earthquake can be as simple as table lookup
Environment • Geo-referenced space and time • Elevation topology of Maui County • Road network topology of Maui County
Add Agents and Shake • Earthquake(s) occurs (location, magnitude, type generated from real-world data) • Tsunami may or may not trigger • Power generators, sirens may or may not fail • Siren may or may not sound • Household may or may not feel quake, see water recede, hear siren • Household may or may not react And so forth and so on…
Possible Results • More sirens independent of power generators • More households hearing siren warnings • But fewer responding with mauka behavior • More households interpreting all warnings and responding “correctly” • Fewer households hearing siren warnings • But more responding with mauka behavior • Traffic jams? • “False positives”?
PDC • Agents • Earthquake, tsunami probability, effect • Power generators, sirens distribution • Population configuration, distribution • Environment • Elevation topology • Road network topology • Results output
End User (Maui County) • Experiment with • Number and location of upgraded sirens • Number and type of households with modified behaviors • May come back with request for contra-flow traffic patterns • (Hey look, we have half a storm/wildfire/whatever evacuation model!)
Agent-Based Modeling • Most sophisticated models are non-deterministic • Outcome cannot be predicted from inputs • Model configuration may change • Stochastic environmental configuration • Stochastic population-generation • Environment may change • Stochastic environmental change over time • Agent behaviors may change • Stochastic decision-making • Combinatorics of environmental change and behaviors of other agents A butterfly flaps its wings…
Uhm, So How Do I Get Answers? • Run simulation many times to identify patterns of possible dependency • Change system state interactively • As active agent (participant) • As controlling deity
Benefits of Agent-Based Modeling • Natural way of thinking about and describing complex system • Many entities • Many types of entities • Emergent phenomena generated, not specified explicitly • Don’t need to predict dependencies in advance • Modularity allows distributed model development • Plug and play agents • Can incorporate other computational modeling techniques within agents (equational modeling, production-rule system, random guessing, etc.) • Independent nature of agents allow dynamic model and agent modifications • Model is live and can be made interactive
Difficulties with Agent-Based Modeling • Model and agents must be at right level of abstraction and detail • “Perhaps the most common typical modeling mistake is developing a model that is not well disciplined and that has too many pieces. ... One may think adding more detail yields a more accurate picture, but the modeler's job is to discover the system's essential core dynamics.” • True for all types of modeling, but easier to misjudge in agent-based modeling • “Correctness” (validity, calibration, determination of confidence) of model depends on “correctness” of individual agents • Typically not quantifiable • Potentially computationally intensive
“That all sounds really complicated!” -- Bryan Boruff, Nov 6, 2006
What Do You Need to Make It Happen? • Sets of agents and environmental representations • A framework (computational infrastructure) that provides building blocks, and ties agents and environments together • A (computational superstructure) that allows control of and experimentation with simulations, supports data collection and results generation
What Do You Need to Make It Happen? • Sets of agents and environmental representations • A framework (computational infrastructure) that provides building blocks, and ties agents and environments together • A (computational superstructure) that allows control of and experimentation with simulations, supports data collection and results generation
Books and Bookcases “Don't try to do everything for everyone, make it easy for them to do for themselves.” – Ben Bederson, October 18, 2006
DiveArch Research Question What does a framework for disaster-specificagent-based models need to be?
In Other Words • What are the different kinds of agents are needed in disaster-related modeling? • What are the specialized needs of those kinds agents? • What are the specialized needs of disaster-related models?
Think about it • Look at literature and existing disaster-related models • Talk to developers Problem Analysis Design Generation Design Evaluation • Do it • Design and build a simple framework • Test the design against a small number of models Design Realization Iterative Approach
First Step • Find a suitable general-purpose agent-based framework on which to build • Understand issues in agent-based modeling, in general • Understand which issues might be critical to disaster-related agent-based modeling
Preliminary Result • Have comprehensive list of criteria for evaluating general-purpose agent-based frameworks, ~160 criteria in 7 categories: • General criteria • Model development • Model validation & calibration • Model interaction & visualization • Results assembly & publication • Model publication • Modeling options
Preliminary Result • The “right” framework doesn’t exist (yet) • Integration between agent-based and GIS functionality is critical to disaster-related modeling, but is an unsolved problem • Many designs make the “books and bookcases” mistake: • “Finding, understanding and adapting the available libraries to our needs took by far more time, than developing everything from scratch. And even worse: Even for simple changes often complex programming in the system itself was necessary.” – Robert Tobias, October 20, 2006