MIS 643 Agent-Based Modeling and Simulation 2016/2017 Fall Chapter 2 Models, Modeling Cycle and the ODD Protocol
Outline 1. What is Model 2. Modeling Cycle 3. ODD Protocol
1. What is a Model? A model is a purposeful simpoified representation of a real system In science: How thinks work Explain patterns that are observed Predict systems bevaior in response to some change Social systems Too complex or slowly changing to be experimentally studied
Models Formulate a model Different ways of simplfing real systems design its assumptions and algorithms Different ways of simplfing real systems Which aspect to include , which to ignore Purpase The questions to be answered is the filter all aspects of the real system irrelevant or insufficiently important to answer the question are filtered out
Searching Mushrooms in a Forest Is there a best strategy for searching mushrooms? observation: mushrooms in clusters An intuitive strategy: scanning an area in wide sweeps upon finding a mushroom turning to smaller scale sweeps as mushrroms in clusters
Searching Mushrooms in a Forest What is large, small sweeps? and How long to search in smaller sweeps? Humans searching prizes, jobs, low price goods, peace with neighbors mushroom hunter sensing radius is limited must move to detect new mushrooms
Why develop a model for the problem try different search strategies not obvious with textual models clearly formulated purpose: what search strategy maximizes musrooms found in a given time Ignore trees and vegitables, soil type Include: mushrooms are distributed as clusters
Simplified hunter mushroom hunter moving point having a sensing radius track of how many mushrooms found how much time passed since last mushroom fouınd
Formulate a model clusters of items (mushrooms) If the agent (hunter) finds an item smaller-scale movement If a critical time passes since last item found swithes back to more streight movement so as to find new clusters of items
Why model Here processes and behavior is simple in general what factors are important regarding the question addresed by the model not possible So formulate implement in computers analize rigorously explore consequences of assuptions
First Formulation First formulation of the model Based on Preliminary understanding about how the system works Proceses structure Based on Empirical knowledge system’s behavior Theory Earlier models with the same purpose Intiution or imagination
no idea about how a system works not formulate a model e.g.: human consciousness
Good model Assumptions at first experimental Test whether they are appropriate and useful Need a criteria – model is a good representation of the real system Patterns and regularities Example: Stock market model Volatility and trends of stock prices volumes,…
Fisrt Versions First version Too simple - lack of prcecesses structure Inconsistant -
2. The Modeling Cycle When developing a model Series of tasks – systematically consequences of simplfiing assumptions Iterating through the tasks First models are Too simple , too complex or wrong questions
The Modeling Cycle Modeling cycle:Grimm and Reilsbeck (2005) Formulate the question Assamble hypothesis Choose model structure Implement the model Analyze the model Communicate the model
Formulate the Question Clear research question Primary compass or filter for designing the model clear focus Experimental may be reformulated E.g.: for MH Model what strategies maximizes the rate of findng items if they are distributed in clusters
Assamble Hypothesis Whether an element or prosses is an esential for addresing the modeling questions - an hypothesis True or false Modeling: Build a model with working hypothsis Test – useful and sufficient Explanation, prediction - observed phenomena
Assamble Hypothesis (cont.) Hypothesis of the conceptual model Verbally graphically Based on Theory and and experience Theory provides a framework to persive a system Experience Knowlede who use the sysem
Assamble Hypothesis (cont.) Formulate many hypothesis What process and structures are essentiaal Start top-down What factors have a strong influence on the phenomena Are these factors independent or interacting Are they affected by ohter important factors
Assamble Hypothesis (cont.) Influence diagrams, flow charts Based on Existing knowledge, simplifications
Basic Strategy Start with as simple as possible even you are sure that some factors are important Gilbert: analogy null hypothesis in satatistics – agaainst my claim Implement as soon as possible
Guidelines Mere realizm is a poor guideline for modeling must be guided by a problem or question about a real system not by just the system itself Constraints are esential to modeling on information understanding time Modeling is hardwired into our brains we use powerful modeling heuristics to solve problems
Heuristics for Modeling pleusable way or reasonalble approach that has often proved to be useful Rephrase the problem Draw simple diagrams Inagine that you are indide the system Try to idendify esential variables identify assumptions Use salami tactics
E.g.: MH Model Esential process swithcing between large scale movements and small scale searching Depending on how long it has been since the hunter has found an item.
Choose scale, state variable, processes, parameters Variables derscribing environment Not all charcteristics Relevant wtih the question Examples Position (location)Age, gender, education, income, state of mind ,…
Choose scale, state variable, processes, parameters Example Parameter being constant Exchange rate between dolar and euro Constrant for travelers, not for traders
Choose scale, state variable, processes, parameters Time and spatial Grain: smalest slica of time or space Extent: total time or area covered by the model The gain or time spen: step over which we ignore variation in variables
Choose scale, state variable, processes, parameters Choose scales, entities, state variables processes and parameters Transfering hypothesis into equations rules Describing dynamics of entities
Choose scale, state variable, processes, parameters Variables – derscribing state of thr system The essential process – cause change of these variables In ABM interacting individuals agent-agent, agent-environment Variables – individual parameters
E.g.: HM Model Space items are in and hunter moves Objects - agents one hunter and items to be searched hunter state variables time how many items found time last found bevaior: search strategy
Implementation Mathematics or computer programs To translate verbal conceptual model into annimated objects Implemented model has its own dynamics and life
Implementation Assumption may be wong or incomplete but impolementation is right Allows to explore the consequences of assumption Start with the simplezt - null model Set parameters , initial values of variables
Analysis Analysing the model and learing with the aid of the model Most time consuming and demanding part Not just implementing agents and run the model What agents behavior can explain important characteristics of real systems When to stop iterations of the model cycle?
E.g.: HM Model Try different search algorithms with different parameters to see which search algorithm – strategy is the best
Communication of the model Communicate model and results to Scientific community Managers Observations, experiments, findings and insights are only when Others repreduce the finings independently and get the same insights
Example of a Model Consumer behavior model: How friends influence consumer choices of indivduals Buy according to their preferences what one buys influeces her friends decisions interraction
Example of a Model verbal mathematical theoretical model Emprical : statistical equations estimated from real data based on questioners simulation models of customer behavior ABMS – interractions, learning, formation of networks
Theoretical Models Analytical models Restrictive assumptions Rationality of agent Representative agents Equilibrium Contradicts with observations Labaratory experiments about humman subjects
Theoretical Models as precision get higher explanatory power lower closed form solutions Relaxation of assumptions geting a closed form solution is impossible
Emprical Models Historically mathematical differential equations Or emprical models represente by algberic or difference equations whose parameters are to be estimated
Simulation Models Simulation ABMS: Represent indiduals as autonomous units, their interractions with each other and environment Chracteristics – variables and behavior Variables – state of the whole system
How ABM differs Units agents differ in terms of resourses, size history Adaptive behavior: adjust themselfs looking current state which may hold information about past as well. other agent environment or by forming expectations about future states Emergence: ABM across-level models
Skills A new language for thiking about or derscribing models Software Strategy for model development and analysis
3. Summery and Conclustions ABM relatively new way of looking old as well as new problems complex (adaptive) systems improve understanding What is modeling What ABM brings Model development cycle
Ant An ant forgang food Model: an abstracted describtion of a process, object event
Ants manipulability A computational model Model implementation textual – hard to manipulatfe E.g.: what if all ants have the same behavior A computational model takes inputs, manipulates by algorithms and produces outputs Model implementation from textual to computer code
Ants an ant – agent properties behavior
Creating the Ant Foraging Model
The ODD Protocol Originaly for decribing ABMs or IBMs Useful for formulating ABMs as well. What kind of things should be in ABM? What bahavior agents should have? What outputs are needed_ A way of think and describe about Agent Based Modeling communicate models to others ease implementation
The ODD Protocol ODD Owverwiew Design concepts and Details Seven elements Three elements overwiew what the model is about One design element Three elements deteild description of the model complete
Purpose Statement of the question or problem addresed by the model What system we are modeling? What we are trying to learn?
Entities, state variable scales What are its entities The kind of thinks represented in the model What variables are used to characterize them ABMs One or more types of agents
Entities, state variable scales The environment in which agents live and interract Local units or patches Global environment State variables: how the model specify their state at any time An agent’s state – properties or attributes Size, age, saving, opinion, memory
Some state variables constant Behavioral strategy: Searching behavior Bidding behavior Learning Some state variables constant Gender location of immobile agents Varies among agents but stay constant through out the life of the agent
Global envionment: variables change over time usually not in space Space : grids networks Global envionment: variables change over time usually not in space Temperature, tax rate , interest rate
Golbal Variables: Usually not affected by agents Exogenuous, Provideded as data input or coming from submodels
time scale time scale space spatial resolution time rosolution temporal extend space spatial resolution
Process overwiew and and Scheduleing Structure v.s. Dynamics Process that change the state variables of model entities Describes the behavior or dynamics of model entity Dercribe each process with a name Selling buying biding influensing
Observer Processes Only processes that are not liked to one of the model entities Modeler – creator of the model Observe and record What the model entities do Why and when they do it Display model’s status ona graphical display Write statistical summaries to output files
Model’s Schedule The order in which processes are executed Action: model’s scedule is a sequence of actions What model entities What processes What order Some simple For many ABMs schedule is complex Use a pseudo code
Design Concepts How a model implements a set of basic concepts standardized way of thinking important and unique characteristics of ABM What outcomes emerge from what characteristics of agents and their environment
Basic principles Emergence Adaptation Objectives Learning Prediction Interraction Sensing Stochasticity Collectives Observation
Initialization Number of agents Provide values for state variables of entities or environment
Initialization Model results depends on initial conditions Price txx rate Not depends on initial conditions Comming from distributions Run the model until memory of the initial state is forgoten the effect of initial valus disapear Replicate the model
Input Data Environmental variables not parameters not initial values usually change over time policy variables price promotions advertising expenditures temperature not parameters they may change over time as well not initial values
Submodels deiteld description o fprosseses not only agorithms or pseudo code but why we formulate the submodel what literature is is based on assumptions where to get parameter values how to test or calibrate the model