400 likes | 544 Vues
Spatial Dynamical Modelling with TerraME Lectures 4: Agent-based modelling. Gilberto Câmara. Agent-based modelling with TerraME. What are complex adaptive systems?. Agent: flexible, interacting and autonomous. Agent.
E N D
Spatial Dynamical Modelling with TerraME Lectures 4: Agent-based modelling Gilberto Câmara
Agent: flexible, interacting and autonomous Agent An agent is any actor within an environment, any entity that can affect itself, the environment and other agents.
Agents: autonomy, flexibility, interaction Synchronization of fireflies
Agents: autonomy, flexibility, interaction football players
Representations Communication Communication Action Perception Environment Agent-Based Modelling Goal Gilbert, 2003
Agents 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
Bird Flocking No central authority: Eachbirdreacts to its neighbor Bottom-up: notpossible to modeltheflock in a global manner. It is necessary to simulatethe INTERACTION betweentheindividuals
Bird 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/
Characteristics 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;
Characteristics 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.
Bird Flocking Reynolds Model (1987) http://ccl.northwestern.edu/netlogo/models/Flocking Animation example
Emergence “Can you grow it?” (Epstein; Axtell; 1996) source: (Bonabeau, 2002)
Epstein (Generative Social Science) • If you didn´t grow it, you didn´t 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
Scientific method Science proceeds by conjectures and refutations (Popper)
Explanation and Generative Sufficiency Conjectures Agent model A1 Macrostructure ? Agent model A2 Spatial segregation Bird flocking Refutation ? Agent model A3
Explanation and Generative Sufficiency Agent model A1 Macrostructure ? Agent model A2 Occam´s razor: "entia non sunt multiplicanda praeter necessitatem", or "entities should not be multiplied beyond necessity".
Explanation and Generative Sufficiency Agent model A1 Macrostructure ? Agent model A2 Popper´s view "We prefer simpler theories to more complex ones because their empirical content is greater and because they are better testable"
Explanation and Generative Sufficiency Agent model A1 Macrostructure ? Agent model A2 Einstein´s 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.
TerraME extension for agent-based modelling ForEachAgent = function(agents, func, event) nagents = table.getn(agents) for i = 1, nagents do func (agents[i],(event)) end end Replicate = function(agent, nagents) ag = {} for i = 1, nagents do ag[i] = agent() ag[i].id = i end return ag end (contained in file agent.lua)
ABM example Urban Dynamics in Latin American cities: an agent‐based simulation approach Joana Barros
Latin 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.
Peripherization 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
Urban growth Peripherization in Latin America (Brazil) “Urban sprawl” in United States “Urban sprawl”in Europe (UK)
Research 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)
The Peripherisation Model • Four modules: Peripherisation module Spontaneous settlements module Inner city processes module Spatial constraints module
Peripherization 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
Peripherization 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 agent’s cell: then the latter is evicted and must find another
Peripherization module: rules Spatialpattern: 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
Comparison 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
TerraME extension for agent-based modelling ForEachAgent = function(agents, func, event) nagents = table.getn(agents) for i = 1, nagents do func (agents[i],(event)) end end Replicate = function(agent, nagents) ag = {} for i = 1, nagents do ag[i] = agent() ag[i].id = i end return ag end (contained in file agent.lua)