Title: Spatial Dynamical Modelling with TerraME Lectures 4: Agentbased modelling
1Spatial Dynamical Modelling with TerraME
Lectures 4 Agent-based modelling
2Agent-based modelling with TerraME
3What are complex adaptive systems?
4Agent
An agent is any actor within an environment, any
entity that can affect itself, the environment
and other agents.
- Agent flexible, interacting and autonomous
5Agents autonomy, flexibility, interaction
Synchronization of fireflies
6Agents autonomy, flexibility, interaction
football players
7Agent-Based Modelling
Goal
Gilbert, 2003
8Agents are
- Identifiable and self-contained
- Goal-oriented
- Does not simply act in response to the
environment - Situated
- Living in an environment with which interacts
with other agents - Communicative/Socially aware
- Communicates with other agents
- Autonomous
- Exercises control over its own actions
9Bird Flocking
- No central authority Each bird reacts to its
neighbor - Bottom-up not possible to model the flock in a
global manner. It is necessary to simulate the
INTERACTION between the individuals
10Bird Flocking Reynolds Model (1987)
Cohesion steer to move toward the average
position of local flockmates Separation steer
to avoid crowding local flockmates Alignment
steer towards the average heading of local
flockmates
www.red3d.com/cwr/boids/
11Agents changing the landscape
12Characteristics of CA models (1)
- Self-organising systems with emergent
properties locally defined rules resulting in
macroscopic ordered structures. Massive amounts
of individual actions result in the spatial
structures that we know and recognise
13Characteristics of CA models (1)
- Wolfram (1984) 4 classes of states
- (1) homogeneous or single equilibrium
- (2) periodic states
- (3) chaotic states
- (4) edge-of-chaos localised structures, with
organized complexity.
14Bird Flocking
- Reynolds Model (1987)
-
- http//ccl.northwestern.edu/netlogo/models/Flockin
g - Animation example
15Swarm
16Repast
17Netlogo
18Netlogo
19TerraME
20Development of Agent-based models in TerraME
21Emergence
Can you grow it? (Epstein Axtell 1996)
source (Bonabeau, 2002)
22Epstein (Generative Social Science)
- If you didnt grow it, you didnt explain its
generation - Agent-based model ? Generate a macro-structure
- Agents properties of each agent rules of
interaction - Target macrostruture M that represents a
plausible pattern in the real-world
23Scientific method
Science proceeds by conjectures and refutations
(Popper)
24Explanation and Generative Sufficiency
Conjectures
Agent model A1
Macrostructure
?
Agent model A2
Spatial segregation Bird flocking
Refutation
?
Agent model A3
25Explanation and Generative Sufficiency
Agent model A1
Macrostructure
?
Agent model A2
Occams razor "entia non sunt multiplicanda
praeter necessitatem", or "entities should not
be multiplied beyond necessity".
26Explanation and Generative Sufficiency
Agent model A1
Macrostructure
?
Agent model A2
Poppers view "We prefer simpler theories to more
complex ones because their empirical content is
greater and because they are better testable"
27Explanation and Generative Sufficiency
Agent model A1
Macrostructure
?
Agent model A2
Einsteins rule The supreme goal of all theory
is to make the irreducible basic elements as
simple and as few as possible without having to
surrender the adequate representation of a single
datum of experience" "Theories should be as
simple as possible, but no simpler.
28TerraME extension for agent-based modelling
ForEachAgent function(agents, func,
event) nagents table.getn(agents) for i 1,
nagents do func (agentsi,(event)) end end Re
plicate function(agent, nagents) ag for
i 1, nagents do agi agent() agi.id
i end return ag end (contained in file
agent.lua)
29ABM example
Urban Dynamics in Latin American cities an
agent-based simulation approach Joana Barros
30Latin American cities
- High speed of urban growth (urbanization)
- Poverty spontaneous settlements
- Poor control of policies upon the development
process - Spatial result fragmented set of patches, with
different morphological patterns often
disconnected from each other that mutate and
evolve in time.
31Peripherization
Process in which the city grows by the addition
of low-income residential areas in the peripheral
ring. These areas are slowly incorporated to
the city by spatial expansion, occupied by a
higher economic group while new low-income
settlements keep emerging on the periphery..
São Paulo - Brasil
Caracas - Venezuela
32Urban growth
Peripherization in Latin America (Brazil)
Urban sprawl in United States
Urban sprawlin Europe (UK)
33Research question
- How does this process happen in space and time?
- How space is shaped by individual decisions? ?
Complexity approach - Time Space ? automata model
- Social issues ? agent-based simulation)
34The Peripherisation Model
- Four modules
- Peripherisation module
- Spontaneous settlements module
- Inner city processes module
- Spatial constraints module
35Peripherization moduls
- reproduces the process of expulsion and expansion
by simulating the residential locational
processes of 3 distinct economic groups. - assumes that despite the economic differences all
agents have the same locational preferences. They
all want to locate close to the best areas in the
city which in Latin America means to be close to
high-income areas - all agents have the same preferences but
different restrictions
36Peripherization module rules
- 1. proportion of agents per group is defined as a
parameter - 2. high-income agent can locate anywhere
- 3. medium-income agent can locate anywhere
except on high-income places - 4. low-income agent can locate only in the
vacant space - 5. agents can occupy another agents cell then
the latter is evicted and must find another
37Peripherization module rules
38Peripherization module rules
Spatial pattern the rules do not suggests that
the spatial outcome of the model would be a
segregated pattern Approximates the spatial
structure found in the residential locational
pattern of Latin American cities multiple
initial seeds -resembles certain characteristics
of metropolitan areas
39Comparison with reality
- Maps of income distribution for São Paulo, Brazil
(census 2000) - Maps A and B quantile breaks (3 and 6 ranges)
- Maps C and D natural breaks (3 and 6 ranges)
- No definition of economic groups or social classes
40TerraME extension for agent-based modelling
ForEachAgent function(agents, func,
event) nagents table.getn(agents) for i 1,
nagents do func (agentsi,(event)) end end Re
plicate function(agent, nagents) ag for
i 1, nagents do agi agent() agi.id
i end return ag end (contained in file
agent.lua)