agent based models
TRANSCRIPT
Agent Based Modeling
What is ABM?• Easiest way to describe it is to demo building one
• Agent Based Modeling is a modeling technique
• Made up of autonomous decision making entities called agents
• A collection of interacting agents make up a system
• When we run the system we should see emergent properties. Things that happen because of the interactions between agents.
Simple agent rules, can result in different sorts of complex and interesting behavior in the system.
Lets build a simple ABM1. The Environment
Field
Grass
Mud
Creating a simple ecosystem
2. Agents
Agent. An agent is an autonomous, dynamic rule-based entity within a defined environment.
Predator Agents
Prey Agents
Creating a simple ecosystem
3. Create Rules
Environment Rules• Grass turns to mud if eaten• Grass grows back after certain amount of time
Predator Rules
• Will chase prey?• Need to eat prey for energy• Can reproduce• With no energy the agent will die
Prey Rules • Needs grass for energy• Can Reproduce if near other prey• Walk around• With no energy the agent will die
http://modelingcommons.org/browse/one_model/2401
Running the Model
Construct Virtual World
World develops through agent interaction
Virtual world events driven by agent interactions.(Emergent Behavior)
Creation Stages
Go Back and edit the Virtual World
Predator – Prey game
“This model simulates a predator-prey relationship. The
population consists of wolf packs (predators) and
sheep herds (prey), some controlled by students via
HubNet clients and some androids controlled by the
computer. The wolves gain energy from consuming
sheep, and the sheep gain energy from consuming
grass (a primary producer). The model allows students
to examine simple population dynamics like those
modeled through the Lotka-Volterra equations in a
participatory way.”
Models can be participatory
Other Models
• SKIN Model (Simulating Knowledge Dynamics in
Innovation Networks)o http://cress.soc.surrey.ac.uk/SKIN/
o Agents are firms, universities, consumers, suppliers
o Agents have to produce an initiative product to survive
• Supply chain modelingo http://www.sciencedirect.com/science/article/pii/S0925527308002016
o http://egon.cheme.cmu.edu/ewocp/docs/GonzaloEWO-GG-11Dec.pdf
• Consumer decision makingo http://ccl.northwestern.edu/netlogo/models/community/customerBehavi
or -based on customer questionnaires
Key Points to ABM• Captures Emergent Phenomena
As the components of a system interact with each
other, and influence each other through these
interactions, the system as a whole exhibits emergent
behavior (Roetzheim)
• Flexibility
Can easily be adapted to new constraints – new rules,
agents, changes to environment. Agile?
• Lots of ABM software available
Personal Opinion• ABM has is good at different things depending on
what you are trying to model:o Explanatory models
o Exploratory models
o Predictive purposes
ABM Platforms• Netlogo (very easy, designed to be like Logo)
• Repast Symphony ( Java , Eclipse based )
• Repast HPC ( C++ based for cluster/super
computer simulations )
Useful sites
• Netlogo: https://ccl.northwestern.edu/netlogo/
• Journal of Artificial Societies and Social Simulation:
http://jasss.soc.surrey.ac.uk/
• Modeling Commons http://modelingcommons.org/