agent-based modelling piper jackson phd candidate software technology lab school of computing...

22
Agent-Based Modelling Piper Jackson PhD Candidate Software Technology Lab School of Computing Science Simon Fraser University

Post on 20-Dec-2015

218 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Agent-Based Modelling Piper Jackson PhD Candidate Software Technology Lab School of Computing Science Simon Fraser University

Agent-Based Modelling

Piper Jackson

PhD CandidateSoftware Technology LabSchool of Computing ScienceSimon Fraser University

Page 2: Agent-Based Modelling Piper Jackson PhD Candidate Software Technology Lab School of Computing Science Simon Fraser University

• Von Neumann machines:

– Self-reproducing

– Cellular Automata

• Object oriented programming (OOP)

History

Page 3: Agent-Based Modelling Piper Jackson PhD Candidate Software Technology Lab School of Computing Science Simon Fraser University

Example: Boids

• Simple agents

– 3 rules for movement

• Complex, realistic movement

– Small changes different behaviour

http://cs.gmu.edu/~eclab/projects/mason/

1. Separation

2. Alignment

3. Cohesion

Page 4: Agent-Based Modelling Piper Jackson PhD Candidate Software Technology Lab School of Computing Science Simon Fraser University

Agents

• Interact with others and/or environs

• Intelligent and purposeful

• Goal driven and decision making

• Bounded rationality

Page 5: Agent-Based Modelling Piper Jackson PhD Candidate Software Technology Lab School of Computing Science Simon Fraser University

Agents

• Features:– Autonomy

– Social Ability

– Reactivity

– Proactivity

• Characteristics:– Perception

– Performance• Motion

• Communication

• Action

–Memory

– Policy

N. Gilbert (2008) Agent-Based Models

Page 6: Agent-Based Modelling Piper Jackson PhD Candidate Software Technology Lab School of Computing Science Simon Fraser University

Characteristics

Complex

Emergent

Chaotic

Dynamic

Interactive

Page 7: Agent-Based Modelling Piper Jackson PhD Candidate Software Technology Lab School of Computing Science Simon Fraser University

Benefits

• Isolating prime mechanics

• Interaction of micro & macro

• What if? scenarios

• Finding equlibria

• Clarity & Transparency

Page 8: Agent-Based Modelling Piper Jackson PhD Candidate Software Technology Lab School of Computing Science Simon Fraser University

Ontological Correspondence

• Entities organized in an easily

comprehensible fashion

• Conceptual model validation

– Embedded in theory

• Communication & Visualization

• Reproducibility

Page 9: Agent-Based Modelling Piper Jackson PhD Candidate Software Technology Lab School of Computing Science Simon Fraser University

Drawbacks

• Analysis

– Not a replacement for analytical methods

• Operational Validation

–Many assumptions

– Improbable or unmeasurable IRL

• Difficult for prediction

Page 10: Agent-Based Modelling Piper Jackson PhD Candidate Software Technology Lab School of Computing Science Simon Fraser University

Example: Sugarscape

• Mobile agents on a grid

• Collecting & metabolizing sugar

• Sugar: metaphor for any resource

– Evolution, marital status, inheritance

http://sugarscape.sourceforge.net/

Page 11: Agent-Based Modelling Piper Jackson PhD Candidate Software Technology Lab School of Computing Science Simon Fraser University

Example: Mastermind

Page 12: Agent-Based Modelling Piper Jackson PhD Candidate Software Technology Lab School of Computing Science Simon Fraser University

Tasks & Requirements

• Identify phenomena

– Agents, events, factors

• Formalize domain concepts

– Formal methods, equations

• Simplify!

– Reduce, group, isolate

Page 13: Agent-Based Modelling Piper Jackson PhD Candidate Software Technology Lab School of Computing Science Simon Fraser University

Abstract State Machines

• First order structures & state

machines

• ASM Thesis

• Ground model

• Refinement

Page 14: Agent-Based Modelling Piper Jackson PhD Candidate Software Technology Lab School of Computing Science Simon Fraser University

Control State Diagrams

Page 15: Agent-Based Modelling Piper Jackson PhD Candidate Software Technology Lab School of Computing Science Simon Fraser University

Agent Specifics

• Scenario parameters

• Variables

• Functions: what an agent can do

• Model of intelligence

• Logic

Page 16: Agent-Based Modelling Piper Jackson PhD Candidate Software Technology Lab School of Computing Science Simon Fraser University

Models of Intelligence

• Reactive

• Beliefs, Desires & Intentions

• OODA Orient

Decide

Act

Observe

Page 17: Agent-Based Modelling Piper Jackson PhD Candidate Software Technology Lab School of Computing Science Simon Fraser University

Implementing Logic

• Conditionals

– state machine

• Fuzzy

• Deterministic/Non-Deterministic

Page 18: Agent-Based Modelling Piper Jackson PhD Candidate Software Technology Lab School of Computing Science Simon Fraser University

Programming

• Agent-Based simulation software:

– Repast

– MASON

• Object oriented

programming

– Java, Python, C#

Page 19: Agent-Based Modelling Piper Jackson PhD Candidate Software Technology Lab School of Computing Science Simon Fraser University

Iterative Experimentation

Design

Computation

Results

Interpretation

Page 20: Agent-Based Modelling Piper Jackson PhD Candidate Software Technology Lab School of Computing Science Simon Fraser University

From R. Sargent(2010) Verification And Validation Of Simulation Models

Page 21: Agent-Based Modelling Piper Jackson PhD Candidate Software Technology Lab School of Computing Science Simon Fraser University

Hybrid Models

• Geographical CA/ABM Hybrid– Y. Xie, M. Batty, and K. Zhao (2007) “Simulating Emergent

Urban Form Using Agent-Based Modeling: Desakota in the

Suzhou-Wuxian Region in China”

– 2 kinds of agents: developers, townships

• Active at different scales

– Cellular landscape: suitability variable

Page 22: Agent-Based Modelling Piper Jackson PhD Candidate Software Technology Lab School of Computing Science Simon Fraser University

22

CoreASM

• Abstract State Machine paradigm

• Executable

– Validation by

testing

• Open source

• Interaction with Java