Introduction

Download Report

Transcript Introduction

Introduction to
Computational Modeling of Social Systems
Prof. Lars-Erik Cederman
ETH - Center for Comparative and International Studies (CIS)
Seilergraben 49, Room G.2, [email protected]
Nils Weidmann, CIS Room E.3, [email protected]
http://www.icr.ethz.ch/teaching/compmodels
Today’s agenda
• Introduction
– Course goals
– Course contents
– Examples
• Course logistics
– Prerequisites and grading
– Schedule
– Hardware requirements
2
Course goals
•
•
•
•
•
Become familiar with the paradigm
Learn programming in Java
Master RePast libraries
Construct a simple computational model
Start to think about how to apply the method to your own
research puzzle
3
Course contents
• Introduction to the principles of agent-based modeling
• Introduction to Java programming
• Introduction to RePast modeling
• In SS 2005 there will be an advanced course extending this
introductory lecture
4
What is agent-based modeling?
• ABM is a computational methodology that allows the analyst to create,
analyze, and experiment with, artificial worlds populated by agents that
interact in non-trivial ways
• Different from other types of computational techniques: econometrics,
numerical solution, global modeling, AI modeling
5
Disaggregated modeling
If
<cond>
then
<action1>
else
<action2>
6
Inanimate agents
Animate agents
Observer
Data
Organizations of agents
Artificial world
Example: Iterated prisoner's dilemma
• Generations of agents are pitted against each other in an
interaction topology
• Each game involves two agents that make iterated, simultaneous
choices
• Strategies evolve over time, from generation to generation
7
Java
8
• Conceived by Sun in the early 1990s
• Became the new standard for
the web thanks to
platform-independence
C
C++
object model
Modeling in RePast
• “Recursive Porous Agent Simulation Toolkit”
• RePast is an open-source software framework for creating agent-based
simulations using the Java programming language
• Initially developed by the Social Science Research Computing at the
University of Chicago since January 2000: http://repast.sourceforge.net
• Modeled on Swarm but easier to use and better documented
9
RePast framework
10
Controlling simulations
Displaying behavior
Charting
Managing
parameters
Course logistics
• Prerequisites: No programming experience needed but obviously helpful
• Grading:
– Four sets of exercises
– Final tournament
• Resources:
– Course web page
http://www.icr.ethz.ch/teaching/compmodels/
11
Readings on Java
• Eckel, Bruce. 2003. Thinking in Java. Upper Saddle River, NJ:
Prentice Hall. See also: http://www.mindview.net
• Schildt, Herbert. 2001. Java 2: A Beginner’s Guide. Osborne
McGraw Hill.
• See also Sun’s Java Tutorial:
http://java.sun.com/docs/books/tutorial/
12
General readings on agent-based modeling
• Axelrod, Robert. 1997. The Complexity of Cooperation: Agent-Based Models of
Competition and Collaboration. Princeton: Princeton University Press.
• Casti, John L. 1997. Would-Be Worlds: How Simulation Is Changing the Frontiers of
Science. New York: Wiley.
• Cederman, Lars-Erik. 1997. Emergent Actors in World Politics: How States and
Nations Develop and Dissolve. Princeton: Princeton University Press.
• Epstein, Joshua M. and Robert Axtell. 1996. Growing Artificial Societies: Social Science
From the Bottom Up. Cambridge, Mass.: MIT Press.
• Holland, John H. 1995. Hidden Order: How Adaptation Builds Complexity. Reading,
Mass.: Addison-Wesley.
13
Course schedule
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
October 19:
October 26:
November 2:
November 9:
November 16:
November 23:
November 30:
December 7:
December 14:
December 21:
January 11:
January 18:
January 25:
February 1:
February 8:
Introduction
Examples of agent-based models in the social sciences
The principles of agent-based modeling
Java Primer I
Java Primer II
Java Primer III
A hand-crafted agent-based model
Introduction to the Iterated Prisoner’s Dilemma
RePast Introduction and Tutorial I
RePast Tutorial II
RePast Tutorial III
Emergent-structure models
Emergent-network models
Emergent-actor models
TBA
14
Gearing up
• Hardware
– Windows computer with Pentium II, 400MHz, 256MB RAM, 150MB disk space
or
– Macintosh running OS X or
– Linux / Unix
• Software (all free!)
–
–
–
–
Java
RePast
IntelliJ IDEA (or other development environment)
Installation guide (see link to Models on class web page)!
15