180 likes | 220 Views
Examples of agent-based models in the social sciences. Today’s agenda. Sample runs of simple models More complex models Where to find more models Gearing up. Simple sample models. Schelling’s segregation model RePast Traffic simulation NetLogo AIDS NetLogo Sugerscape Ascape
E N D
Today’s agenda • Sample runs of simple models • More complex models • Where to find more models • Gearing up
Simple sample models • Schelling’s segregation model RePast • Traffic simulation NetLogo • AIDS NetLogo • Sugerscape Ascape • Labour Market Simulation RePast
Example 1: Neighborhood segregation Micro-level rules of the game Stay if at least a third of neighbors are “kin” < 1/3 Thomas C. Schelling Micromotives and Macrobehavior Move to random location otherwise
Example 2: Traffic simulation (NetLogo) • Model of the movement of cars on a highway • Each car follows a simple set of rules: • if there’s car close ahead, it slows down • if there’s no car ahead, it speeds up • The project demonstrates how traffic jams form spontaneously without obstacles
Example 3: AIDS (NetLogo) • Simulate the spread of the human immunodeficiency virus (HIV), via sexual transmission • Control of the • population's tendency to practice abstinence • amount of time an average "couple" in the population will stay together • population's tendency to use condoms • population's tendency to get tested for HIV
Example 4: Sugarscape (Ascape) • Series of models introduced by Epstein and Axtell 1996 Growing Artificial Societies MIT Press • Emergent features: • wealth distributions • social networks • migration • population dynamics • conflict patterns • price formation • credit networks • Programmed in Ascape
Example 5: Labour Market • Agents represent workers in an international labour market • Agents’ main goal is to have a job and friends • Jobs are available according to a country’s economic situation • If the agent has been unhappy for a certain time period, it moves to another country (Model developed by Pedro Thomi as SS04 CompModels term project)
Complex sample models • Anasazi village formation • Nationalist insurgencies in Geosim • UrbanSim • ILUTE
Example 1: Anasazi Village Formation • Gumerman et al. 2002 SFI Working Paper 02-16-067 (among others) • Reconstruction of settlement patterns and demographics of pueblo Indians in the American Southwest • The main puzzle pertains to the group’s sudden disappearance • Based on the Sugarscape model, and thus also programmed in Ascape
3##44#2# 32144421 Example 2: Geosim • Geopolitical simulation system • Cederman 2004 “Articulating the Mechanisms of Nationalist Insurgencies” • Based on RePast • National identities • Cultural map • State system • Territorial obstacles
Example 3: UrbanSim • UrbanSim is a simulation model for integrated planning and analysis • Developed at the Univ. of Washington, Seattle • Features decision-making by households, businesses, developers and governments • http://www.urbansim.org/
Example 4: ILUTE • Integrated Land Use Transportation Modeling from Toronto http://www.civ.utoronto.ca/sect/traeng/ilute/
Where to find more models: Links • See “Resources” under class home page • Santa Fe Institute: http://www.santafe.edu/ • Center for the Study of Complex Systems at the University of Michigan: http://www.pscs.umich.edu/ • European web sites on Computer simulation of societies http://www.soc.surrey.ac.uk/research/simsoc/and “European Social Simulation Association” http://essa.eu.org/ • For the US counterpart, see http://www.dis.anl.gov/naacsos • Leigh Tesfatsions’s site on computational economics:http://www.econ.iastate.edu/tesfatsi/ace.htm • See also the Journal of Artificial Societies and Social Simulation: http://jasss.soc.surrey.ac.uk/JASSS.html
Gearing up • Installing the Java 2 SDK • Installing IntelliJ IDEA • Create the main project definition • Create and run a simple test program • Adding the RePast module (and optionally Ascape and NetLogo) • Setting up Schelling’s segregation model (depends on RePast)
Development Environment Integrated Development Environment e.g. IDEA Java compiler Editor int a = 12; if (a == b) b++; else a++; JVM Java source code Java libs Repast libs