Introduction to Agent-Based Modelling Dr Andy Evans.

Slides:



Advertisements
Similar presentations
New Mexico Computer Science for All
Advertisements

Understanding the Complexity of Urban Road Congestion Ed Manley Department of Civil, Environmental and Geomatic Engineering Supervisors: Dr Tao Cheng (UCL)
Dealing with Complexity Robert Love, Venkat Jayaraman July 24, 2008 SSTP Seminar – Lecture 10.
Games as Emergent Systems first schema on “rules”.
G5BAIM Artificial Intelligence Methods
Flocking Behaviors Presented by Jyh-Ming Lien. Flocking System What is flocking system? – A system that simulates behaviors of accumulative objects (e.g.
1 CO Games Development 2 Week 22 Flocking Gareth Bellaby.
Programming for Geographical Information Analysis: Advanced Skills Lecture 9: Modelling I: Agents and Netlogo Dr Andy Evans With additions from Dr Nick.
CITS4403 Computational Modelling Agent Based Models.
Cellular Automata (Reading: Chapter 10, Complexity: A Guided Tour)
1 Chapter 13 Artificial Life: Learning through Emergent Behavior.
CELLULAR AUTOMATON Presented by Rajini Singh.
Agent-Based Modelling Piper Jackson PhD Candidate Software Technology Lab School of Computing Science Simon Fraser University.
The Future of GeoComputation Ian Turton Centre for Computational Geography University of Leeds.
Joanne Turner 15 Nov 2005 Introduction to Cellular Automata.
Today’s Plan Introduction to Artificial Life Cellular Automata
Nawaf M Albadia Introduction. Components. Behavior & Characteristics. Classes & Rules. Grid Dimensions. Evolving Cellular Automata using Genetic.
MASS: From Social Science to Environmental Modelling Hazel Parry
Agent Based Modeling and Simulation
Chapter 12: Simulation and Modeling
ABM Frameworks Dr Andy Evans With additions from Dr Nick Malleson.
Discovery of Cellular Automata Rules Using Cases Ken-ichi Maeda Chiaki Sakama Wakayama University Discovery Science 2003, Oct.17.
Dynamic Models of Segregation
Parallel Computing for Urban Cellular Automata Qingfeng. Gene. Guan 2004-Nov-18 Geography Department Colloquium Univ. of California, Santa Barbara.
Complex systems complexity chaos the butterfly effect emergence determinism vs. non-determinism & observational non-determinism.
Cellular Automata (CA) and Agent-Based Models (ABM) Dr Andy Evans.
Governor’s School for the Sciences Mathematics Day 13.
CS 484 – Artificial Intelligence1 Announcements Lab 4 due today, November 8 Homework 8 due Tuesday, November 13 ½ to 1 page description of final project.
L – Modelling and Simulating Social Systems with MATLAB Lesson 5 – Introduction to agent-based simulations A. Johansson & W. Yu ©
Centre for Advanced Spatial Analysis (CASA), UCL, 1-19 Torrington Place, London WC1E 6BT, UK web Talk.
1 Chapter 13 Artificial Life: Learning through Emergent Behavior.
Activity 2-1: The Game of Life
Introduction to Lattice Simulations. Cellular Automata What are Cellular Automata or CA? A cellular automata is a discrete model used to study a range.
Fractals. In colloquial usage, a fractal is "a rough or fragmented geometric shape that can be subdivided in parts, each of which is (at least approximately)
Cellular Automata Spatio-Temporal Information for Society Münster, 2014.
Trust Propagation using Cellular Automata for UbiComp 28 th May 2004 —————— Dr. David Llewellyn-Jones, Prof. Madjid Merabti, Dr. Qi Shi, Dr. Bob Askwith.
Prof. Lars-Erik Cederman ETH - Center for Comparative and International Studies (CIS) Seilergraben 49, Room G.2, Nils.
Exploring Complex Systems through Games and Computer Models Santa Fe Institute – Project GUTS
Modeling Complex Dynamic Systems with StarLogo in the Supercomputing Challenge
The Science of Complexity J. C. Sprott Department of Physics University of Wisconsin - Madison Presented to the First National Conference on Complexity.
Project funded by the Future and Emerging Technologies arm of the IST Programme FET-Open scheme Project funded by the Future and Emerging Technologies.
Agent-Based Models Dr Andy Evans With additions from Dr Nick Malleson.
Agent Based Modeling (ABM) in Complex Systems George Kampis ETSU, 2007 Spring Semester.
Neural Networks and Machine Learning Applications CSC 563 Prof. Mohamed Batouche Computer Science Department CCIS – King Saud University Riyadh, Saudi.
March Erb Scott E Page University of Michigan and Santa Fe Institute Complex Systems, Political Science, Economics.
Cellular Automata Introduction  Cellular Automata originally devised in the late 1940s by Stan Ulam (a mathematician) and John von Neumann.  Originally.
An Agent Epidemic Model Toward a general model. Objectives n An epidemic is any attribute that is passed from one person to others in society è disease,
MA354 An Introduction to Math Models (more or less corresponding to 1.0 in your book)
CS851 – Biological Computing February 6, 2003 Nathanael Paul Randomness in Cellular Automata.
Cellular Automata BIOL/CMSC 361: Emergence 2/12/08.
Introduction to Enviromental Modelling Lecture 1 – Basic Concepts Gilberto Câmara Tiago Carneiro Ana Paula Aguiar Sérgio Costa Pedro Andrade Neto.
A few of the people involved and what they’ve done.
TRU-COMP3710 Artificial Life and Emergent Behavior1 Course Outline Part I – Introduction to Artificial Intelligence Part II – Classical Artificial Intelligence.
Conway’s Game of Life Jess Barak Game Theory. History Invented by John Conway in 1970 Wanted to simplify problem from 1940s presented by John von Neumann.
Why use landscape models?  Models allow us to generate and test hypotheses on systems Collect data, construct model based on assumptions, observe behavior.
Computational Thinking
MA354 Math Modeling Introduction. Outline A. Three Course Objectives 1. Model literacy: understanding a typical model description 2. Model Analysis 3.
Computing Systems Lecture 12 Future Computing. Natural computing Take inspiration from nature for the development of novel problem-solving techniques.
Implementing Dynamic Data Assimilation in the Social Sciences Andy Evans Centre for Spatial Analysis and Policy With: Jon Ward, Mathematics; Nick Malleson,
Modelagem Dinâmica com TerraME Aula 5 – Building simple models with TerraME Tiago Garcia de Senna Carneiro (UFOP) Gilberto Câmara (INPE)
Artificial Life and Emergent Behavior
Modelling and Simulating Social Systems with MATLAB
Spatio-Temporal Information for Society Münster, 2014
L – Modeling and Simulating Social Systems with MATLAB
Modelling Dr Andy Evans In this lecture we'll look at modelling.
R. W. Eberth Sanderling Research, Inc. 01 May 2007
Examples: Cellular Automata Modelling Agent-based models
Artificial Life and Emergent Behavior
Hiroki Sayama NECSI Summer School 2008 Week 2: Complex Systems Modeling and Networks Agent-Based Models Hiroki Sayama
Introduction to modelling
Presentation transcript:

Introduction to Agent-Based Modelling Dr Andy Evans

What are models? Hypothetical or Theoretical statement of how a system works, ignoring “accidental” influences. Physical recreation of the same using scaled objects and applying the same processes. Computer recreation of the same using virtual objects and applying virtual processes.

Why model? Prediction: Future Past (backcasting) Testing our knowledge is complete. Emergence (how simple processes give us complicated patterns) Holding our knowledge in a framework.

Virtual model types Analytical models Mathematical equation. Logical Prolog models; fuzzy logic; etc. Iterative models Finite element models; agent-based models Statistical models Regression equations; Bayesian nets; etc.

Verisimilitude Abstract models: Simplified objects Subset of processes Thought experiments Verify that core processes are appropriate Alternative is to try and model everything accurately. Is this possible in systems that don’t have closure?

Model scale Aggregate models Regression Disaggregate models Range from area processing to individual-based Individual elements Finite-element models Agent-based models

Individual level modelling Aggregate representation was good when it all had to be done in our heads. Now we have power for individual representation, i.e. as we understand the world. We struggle to understand emergence – how simple rules of individuals end up in complicated system behaviour.

Emergence May seem subjective (how to do recognise “complicated”, why worry about other scales?) But subjective aggregate elements have a big effect (e.g. inflation rates affect interest rates) Systems of small scale elements that combine to make large scale systems in unclear ways are called complex. Individual-level models are a useful way of exploring complexity.

Modelling Identify interesting patterns Build a model of elements you think interact and the processes / decide on variables Verify model Optimise/Calibrate the model Validate the model/Visualisation Sensitivity testing Model exploration and prediction Prediction validation

Cellular Automata (CA) and Agent-Based Models (ABM)

Cellular Automata (CA) Can be used for searching/simulation but much much more. Essentially a grid of cells which may be different states dependant on the conditions around them. Each cell has a rule base determining how it reacts. For example, if a cell has less than two neighbours it dies, if it has more than two it reproduces and the neighbouring cells come alive. Can be used for searches, modelling crowds, ecosystems etc.

One dimensional CA Simplest CA: a line of cells. Each cell has a number of states it can be in, depending on the state of its neighbours and itself at the last time step. Usually drawn as a line of cells, with each line below each other being another time step. Simple rules can generate complex emergent behaviour.

Emergence From the simple rule: if both neighbours the same as you, go white else go black.

One dimensional CA Steven Wolfram classified CAs into… Class 1 always end in the same stable state. Class 2 settle into repeat patterns. Class 3 chaotic / white noise patterns. Class 4 complex patterns of near repetition with movement. Shows the wide range of natural patterns that could develop from simple rules.

One dimensional CA uses While they show that complex patterns can emerge from simple rules, this isn’t necessarily happening. However, we can use them to see if our simple rules develop complex patterns, and how resistant they are to perturbations to the starting conditions. E.g. crowd flow, street development, river networks.

The Schelling Model Thomas Schelling (Harvard) looked at racial segregation. Found that even if people were willing to live in areas made up of 50% other skin colours, segregation would develop. 1D CA. Cells either 1 or 0 (“black” or “white”). If neighbourhood > 50% of another colour, move to nearest area this isn’t true.

Two + dimensional CA Real power in geography comes from having two dimensions. Grid of cells that interact. Complex behaviour emerges that includes movement like a multi-cellular organism. John von Neumann (1966) came up with the idea. John Conway (late 60’s) “Game of Life” simplified it and gave it purpose.

The Game of Life Game of Life If dead, and alive neighbours = 3 → Alive If alive, and alive neighbours < 2 → Die of loneliness If alive and alive neighbours > 3 → Die of overcrowding Otherwise, stays as it is.

Classic two dimensional CA uses Modelling forest fires. Modelling animal and plant systems. Finding routes through mazes / landscapes etc.

Other uses SLEUTH Model of Keith Clarke (Santa Barbara). Uses CA to investigate urban growth. Uses current urban areas, slope, transport, landuse, exclusions. Grows cities. Used to study “what if?” scenarios. Essentially a whole new way of looking at urban form. Gigalopolis:

The lessons of CA Perfect fidelity (representation) isn’t necessary to model the world. Simple rules can lead to realistic and complex behaviour. These can be quite robust – missing information can turn out to be irrelevant to generating patterns, and they can often survive changes. However, representing the world as fixed and movement by state-changes seems wrong. Why not move the objects?

Intelligent Agents In part evolved from CAs. Essentially free moving cells or programs that intelligently interact with each other and their environment. One of the most important was Robert Axelrod’s 1980 cooperation competition.

Axelrod’s competition Imagine you’re an agent. If you cooperate with another agent, you get a moderate reward. Alternatively, if they’re suckered into cooperating with you, and you stab them in the back, you get a massive reward. However, if you both stab each other in the back, you get very little. The competition invited people to put in agents with different behaviours to see who won after hundreds of rounds. Consistently it was “Tit-for-tat”. Starts off cooperating but punishes backstabbers. This competition was later run with intelligent 2D CAs.

SIMCity Jay Forrester (1970) “Urban Dynamics” Describes cities as complex interacting dynamic systems Will Wright takes Forrester’s principals and builds them into a “bottom up” system of CA-like components “SIMCity”.

The SIMs Latest version “The SIMs” moved to direct autonomous humanoid intelligent agents. Similar agent based games include Populus (1989) and Civilization (1991). Intelligent agents are also used in games like Half-Life (1999). The agents adapt to player strategies.

Other Basic Competitive Agent Environments SugarScape. RoboCode.

Coding an Agent Agent Class Has an update method called each iteration, eg. move(), trade(). Has a position. Has a list of all other agents and can get their position. Can communicate with other agents if necessary. Environment Class Has environmental conditions. Calls the agents to update. Agents might, for example, trade with their nearest neighbours.

Uses Modelling crime. Modelling city development. Modelling ecology. Modelling land management.

Petrol Price Modelling: can we determine the rules used by petrol stations to set their prices by guessing them from the patterns? Landscape fragmentation and aphid infection. Itzhak Benenson’s model of Tel-Aviv migration under ethnic influxes. Kai Nagel’s team at ETH in Switzerland. Model ~1million people in Zurich. Examples

Flocks: agent based swarms Utilise the emergent character of agents working together to produce groups that follow each other Like herds of animals, flocks of birds, or schools of fish.

Flocks Invented by Craig Reynolds (1986). Each agent has the following rules… Avoid colliding with your neighbour most of all. Fly in the average direction of your neighbours. Try to move into the centre of the flock (to prevent being eaten / to go for optimal solutions).

Flocks - how they act

Massive Prologue > Armies > Massive Simulator

Uses of Flocking Agents Simulating how crowds move. Popular Post-Hillsborough. Notting Hill Carnival Controlling resilient robot networks.

Our model Agents like herbivores. Move round and eat resources. Communicate with other agents to check not in area. Could equally be the base of: Burglar model Trade model Farm management

Our software Read data file. Save results file. Do some processing.

Further info Steven Wolfram “A new kind of science” A major project applying CAs to Life, the Universe and Everything. MultiAgent Systems and Simulation Craig Reynold’s website.

Further info Flake (2000) The Computational Beauty of Nature: Computer Explorations of Fractals, Chaos, Complex Systems, and Adaptation. Wooldridge (2009) An Introduction to MultiAgent Systems.