Demonstration Software for the On-Line Guide for Newcomers to ABM (Axelrod and Tesfatsion)
Demonstration Software for:
On-Line Guide for Newcomers to
Agent-Based Modeling in the Social Sciences
Robert Axelrod and Leigh Tesfatsion
- Last Updated: 19 January 2009
- Site Maintained By:
- Leigh Tesfatsion
- Professor of Econ, Math, and ECpE
- Department of Economics
- Iowa State University
- Ames, Iowa 50011-1070
- (515) 294-0138
-
http://www.econ.iastate.edu/tesfatsi/
tesfatsi AT iastate.edu
-
Acknowledgements:
- This site provides demonstration software in support of Robert Axelrod
and Leigh Tesfatsion, "A Guide for Newcomers to Agent-Based Modeling in
the Social Sciences"
(pdf preprint, 46K) ,
Appendix A in Leigh Tesfatsion and Kenneth L. Judd (Eds.), Handbook of
Computational Economics, Vol. 2: Agent-Based Computational Economics
(Table of Contents,html),
Handbooks in Economics Series, Elsevier/North-Holland, Amsterdam, 2006.
- The authors thank Stephanie Forrest, Ross Hammond, Ken Judd, Bob Marks,
John Miller, Scott Page, and Rick Riolo for helpful advice. For financial
support, the first author thanks the National Science Foundation and the LS&A
Enrichment Fund of the University of Michigan.
-
On-Line Guide for Newcomers to Agent-Based Modeling in the Social Sciences
TABLE OF CONTENTS
- Complexity and ABM
- Emergence of Collective Behavior
- Evolution
- Learning
- Norms
- Markets
- Institutional Design
- Networks
- Modeling Techniques
- General Software Support
-
Software Release Disclaimer:
- All demonstration software provided below is unsupported and provided
as-is, without warranty of any kind, unless otherwise specified by the
provider.
COMPLEXITY AND ABM
- Complex Adaptive Systems Demos (Macintosh)
- Robert Goldstone (Department of Psychology, Indiana University) maintains
a site that provides
Complex Adaptive Systems Demonstration Software
for an undergraduate course he teaches on complex adaptive systems. The
software programs available at this site, designed to be run on Macintosh
computers, permit students to explore complex systems interactively by
setting experimental parameters, conducting experiments, and instantly seeing
the results of the experiments.
- Emergence: Interactive Tutorial
- Mitchel Resnick and Brian Silverman (Epistemology and Learning
Group, MIT Media Laboratory) have developed an interactive tutorial on
Emergence.
The authors examine how objects and patterns can arise from simple
interactions in ways that are surprising and counterintuitive.
- Note: A Java-enabled browser is required to run the applets
accompanying this tutorial.
- Game of Life
- Paul Callahan maintains a site called
What is the Game of Life?.
This site explains and presents, in interactive form, a delightful game
invented by John Conway and his students in 1970 demonstrating that even very
simple rules can lead to extremely complicated outcomes.
- Johan Bontes (University of Wisconsin) maintains a site titled
Life32
where people can go to download and install freeware for the Game of Life
suitable for Windows Win9x/NT/2000/XP. Bontes describes Life32 as the "best,
fastest, most user-friendly life player around."
- Mandelbrot and Julia Sets
- David Joyce (Department of Mathematics and Computer Science, Clark
University, Worcester, MA) maintains an interactive website where interested
parties can create and view images of
Mandelbrot and Julia Sets.
The website also includes an archive of recently created images as well as
pointers to related websites.
- Newton Basins
-
Nonlinear equations F(x)=0 typically have multiple solutions x. Newton's
method for finding solutions to nonlinear equations is a successive
approximation technique with the property that different starting points can
converge to different solutions. A Newton basin is a set of starting
points for Newton's method that all lead to one particular solution. It
turns out that Newton basins are "fractals" in the complex plane with
beautifully intricate boundaries that can be visualized by applying distinct
colorations to starting points converging to distinct solutions (or to no
solution). David Joyce (Department of Mathematics and Computer Science,
Clark University, Worcester, MA) maintains an interactive website where
interested parties can create and view images of
Newton Basins.
- Schelling Segregation Model (Windows, C#/.Net)
- Chris Cook (Computer Science Department, Iowa State University,
Ames) has developed an interactive demo of the Schelling Segregation Model
(SSM), due to Thomas Schelling (Micromotives and Macrobehavior,
Norton, 1978). Targeted for pc's operating under the Microsoft Windows
operating system, the SSM demo has an easily manipulated graphical user
interface. Agents are located on a chess board with 64 locations. The user
determines the population mix from among three agent types (red, green, and
blue), or chooses from among various default settings. The user can also
specify a "happiness rule" for each agent type or select a default setting.
The happiness rule determines when an agent is happy with his current board
location, taking into account both the number and the types of his neighbors.
If unhappy, the agent either attempts to move to a more desirable board
location or exits the board altogether.
- Chris Cook has released his SSM demo as freeware under the GNU
Public License. Automatic installation software for his SSM demo can be
obtained at
The Schelling Segregation Model: Demonstration Software
Also available at this site is a more detailed description of the SSM, a
description of the SSM demo's capabilities, instructions for using the
automatic installation software, a link for accessing the SSM demo source
code (C#/.Net), and copyright information.
- Schelling Segregation Simulator (Windows, Java Applet)
- Mark Fossett (Department of Sociology, Texas A&M University) has
developed
SimSeg,
an interactive software program simulating the dynamics of residential
segregation by ethnic and socioeconomic status. Program files and
documentation files for downloading, installing, and running SimSeg are
available at the SimSeg site. In addition, Fossett has developed a more
limited Java applet version of the SimSeg program called
SimSeg Lite,
that can be run on-line via a java-enabled browser.
- Schelling Segregation Model: Computer Exercises (Visual
Basic/Pascal)
- Robert Axelrod (Political Science and Public Policy, University of
Michigan) has developed a series of computer exercises related to the
Schelling Tipping (Segregation) Model,
implemented in Visual Basic and Pascal. Materials available at this site
include documentation and software.
EMERGENCE OF COLLECTIVE BEHAVIOR
- Boids: Simulation of Flocking Creatures
- Craig Reynolds (Sony, Research and Development Group) maintains a web
site titled
Boids
featuring his simulations of flocking creatures called "boids." His basic
flocking model consists of three simple steering behaviors possessed by each
individual boid that govern how each boid maneuvers itself based on the
positions and velocities of its nearby flockmates. As illustrated by the
Java applets at this site, the model results in amazingly life-like
collective flocking dynamics. Also available at this site is a link to work
by Reynolds on an interactive system permitting user interaction with large
groups of autonomous characters. The characters respond in real time to the
user's interaction as well as to each other and their environment.
- Local-Interaction Games (Windows)
- Giorgio Fagiolo (St. Anna School of Advanced Studies, Pisa, Italy)
has developed user-friendly software for the Windows desktop (9x/ME/00/XP)
implementing several forms of
Bilateral Games with Local Interaction Structure.
The interation structure is exogenously given and can be either a lattice or
a stochastic graph. The user can set all parameters (including the form of
decision rule employed by the agents) and plot and save the simulation
results. The software can be downloaded in a zip file. Once the set-up file
is executed, an installation wizard provides guidance for all subsequent
installation steps.
- Sand Pile Model
- Jos Thijssen (Applied Physics, Delft University of Technology, the
Netherlands) maintains a site on Per Bak's sand pile model titled
The Sand Pile Model and Self-Organized Criticality.
Linked to this site is Thijssen's interactive sand pile demo in which the
sand pile is modeled as a regular array of columns consisting of cubic sand
grains.
EVOLUTION
- Biomorphs: Simulation of Biological Evolution
- In The Blind WatchMaker (W.W. Norton and Co., New York, 1987),
Richard Dawkins introduces the concept of "biomorphs," i.e., encapsulated
software programs capable of breeding. Those bred within a particular
"pedigree" have a precisely known relationship to each other and a precisely
known genetic make-up. Dawkins (Appendix, p. 15) claims that these features
make biomorphs "ideally suited to verifying methods of taxonomy, and also to
teaching the principles of taxonomy."
- A large variety of interactive biomorph demos are available on-line. For
a simple example, see the demo at
Richard Dawkins' Biomorphs.
An interactive biomorph demo with interesting additional features can be
found at
Introduction to Biomorphs.
An annotated list of biomorph demos and related support materials is
available at
Richard Dawkins: Software and Biomorphs.
- Exhibits on Evolution
- The Museum of Paleontology at the University of California
at Berkeley maintains an on-line
Museum of Paleontology Evolution Wing
that permits visitors to explore exhibits and other resources related to the
theory of evolution and the history of evolutionary thought.
LEARNING
- TNG Lab: A Computational Laboratory for
Evolutionary Trade Networks (Windows, C++/Visual Basic)
- Leigh Tesfatsion (Iowa State University) and co-authors have
developed the Trade Network Game (TNG) Laboratory for exploring the
evolution of trade networks among strategically interacting traders. The TNG
traders repeatedly choose and refuse their trade partners on the basis of
expected payoffs, and trade interactions are modeled as two-person games.
The TNG traders use genetic algorithm learning to evolve their trading
strategies over time. Users can vary key model parameters, including game
payoffs and learning parameters, on an easily operated graphical user
interface and see run-time displays of the resulting experimental outcomes.
The TNG Lab is targeted for the Microsoft Windows desktop (9x/00/ME/NT/XP).
Automatic installation software for the TNG Lab, together with tutorials and
research articles, can be obtained at the
TNG Home Page.
NORMS
-
Axelrod Tournament (Windows, C#/.Net)
- In 1979, Robert Axelrod (University of Michigan, Ann Arbor) posed an
intriguing question: What type of strategy (if any) ensures good
individual performance over the long haul when one is engaging in repeated
Prisoner's Dilemma game play in round-robin fashion with multiple strangers
whose strategies are not known in advance? Axelrod explored this question by
conducting a computer tournament with strategies solicited from game
experts from all over the world.
- Chris Cook (Computer Science Department, Iowa State University,
Ames) has developed the Axelrod Tournament, a computational laboratory
that captures and extends the salient aspects of Axelrod's 1979 tournament.
The Axelrod Tournament permits a user to specify as treatment factors the
number of tournament iterations, the total number of agents (strategies)
comprising the initial tournament population, the types of agents in this
population, and the form of payoff matrix for each agent type. The latter
feature extends Axelrod's original tournament by permitting matched agents to
engage in a wide variety of two-player games (Chicken, Stag Hunt, etc.)
depending on their specified types. The user can then observe the
comparative performance over time of each agent, and each agent type, by
means of run-time graphical and text displays. The Axelrod Tournament is
available as freeware for Windows desktops under the GNU Public License.
Automatic installation software, together with more detailed information
about its capabilities and implementation, can be obtained at
The Axelrod Tournament: Demonstration Software (html).
-
Evolution of Cooperation and the Prisoner's Dilemma
- The
Complexity of Cooperation Website
provides software and documentation (as well as other resources)
related to two books by
Robert Axelrod:
(a) The Complexity of Cooperation: Agent-Based Models of Competition and
Collaboration, Princeton University Press, 1997; and (b) The Evolution
of Cooperation, Basic Books, 1994.
- Evolution of Cooperation: Interactive Tutorial
- The University of Toronto maintains an interactive tutorial on the
Evolution of Cooperation,
using the Prisoner's Dilemma Game for concrete illustration.
- Evolution of Trade Networks Supporting Cooperative Behavior
- Leigh Tesfatsion (Iowa State University) and coauthors have developed the
Trade Network Game (TNG) Laboratory
for exploring the evolution of trade networks among strategically interacting
traders. The TNG traders repeatedly choose and refuse their trade partners
on the basis of expected payoffs, and trades are modeled as two-person games
in which the traders can either "cooperate" or "defect". The TNG user can
set trade payoffs to mimic a wide variety of game configurations (e.g.,
prisoner's dilemma, chicken, stag hunt,...). The TNG lab permits systematic
experimentation to determine conditions under which the trade networks that
evolve over time support cooperative behaviors among buyers and sellers
(e.g., workers and employers).
MARKETS
- Endogenous Growth Model (Windows)
- Giorgio Fagiolo (St. Anna School of Advanced Studies, Pisa, Italy)
has developed user-friendly software for the Windows desktop
(9x/ME/00/XP) implementing
Islands: An Endogenous Growth Model
earlier developed by Dosi and Fagiolo (2002). The software simulates an
open-ended economy where boundedly rational firms can exploit existing
resources, imitate other firms, explore the technological space, and/or
endogenously introduce innovations. System parameters controlling
technological and behavioral regimes can be set by the user or loaded from a
text file. The software can be downloaded in a zip file. Once the set-up
file is executed, an installation wizard provides guidance for all subsequent
installation steps.
- Multi-Agent Economy Simulation (Java)
- Erich Kutschinski and Thoman Uthmann (University of Mainz, Germany)
together with Daniel Polani (University of Hertfordshire, UK) have packaged
and made publicly available the
DMarks II software
to accompany their article "Learning Competitive Pricing Strategies by
Multi-Agent Reinforcement Learning," Journal of Economic Dynamics and
Control, Volume 27 (2003), 2207-2218. Materials provided at this site
include the source and compiled code, javadoc, some scripts showing how to
run simulations, and a powerpoint presentation. The article is available
online at
Science Direct.
- Santa Fe Artificial Stock Market (Swarm and Objective C)
- The Santa Fe Institute (SFI) has open-sourced the Santa Fe Artificial
Stock Market (ASM) simulation model, originally developed by a number of SFI
researchers in Objective C using the Swarm toolkit. The
latest ASM-Swarm file releases
can be downloaded from an ASM sourceforge page and repository maintained by
Paul E. Johnson (Political Science, University of Kansas, Lawrence).
- Zero-Intelligence Trading Demo (Java Applet/NegLogo Model)
-
Mark McBride
(Economics Department, Miami University, Oxford, Ohio) has developed
Zero-Intelligence Trading Demonstration Software
that is based upon the double-auction trading experiments
conducted with "Zero-Intelligence (ZI)" traders by Gode and Sunder (Journal of Political Economy, 1993).
A Java Applet is available at this site that permits you to run ZI trading experiments in a Java-enabled browser
(Java 1.4.X or later). Alternatively, a NetLogo model can be downloaded for running on a personal computer
with a NetLogo 3.1.1 (or later) installation.
INSTITUTIONAL DESIGN
NETWORKS
- Small-World Trade Network Demo (NetLogo)
- The
Small-World Trade Network Demo
developed by
Mark McBride
(Professor of Economics, Miami University, Oxford, Ohio) implements a trade model designed by
(Alan Wilhite (Computational Economics, 2001).
The purpose of the Wilhite trade model is to examine the effects of a small-world network structure on the market efficiency of bilateral trade. The Small-World Trade Network Demo can be either be run in a web browser or downloaded as a NetLogo file to run locally using NetLogo 4.0.3 (or higher).
Possible network structures available for testing include globally (completely) connected, locally connected, locally disconnected, and small-world (local connectivity with global reach). See, also,
Notes on the Wilhite Trade Model.
- TNG Lab: A Computational Laboratory for
Evolutionary Trade Networks (Windows, C++/Visual Basic)
- Leigh Tesfatsion (Iowa State University) and co-authors have
developed the Trade Network Game (TNG) Laboratory for exploring the
evolution of trade networks among strategically interacting traders. The TNG
Lab is targeted for the Microsoft Windows desktop (9x/00/ME/NT/XP) and is
both modular and extensible (C++/Visual Basic). It permits visualization of
the formation and evolution of trade networks by means of run-time
animations, run-time charts, and run-time data displays. A clear, easily
operated graphical user interface permits testing of key parameters
pertaining to learning, payoffs, types and numbers of agents, and the physics
controlling network displays. Automatic installation software for the TNG
Lab, together with tutorials and research articles, can be obtained at the
TNG Home Page.
MODELING TECHNIQUES
- Steven F. Railsback, Steven L. Lytinen, and Stephen K. Jackson have developed
StupidModel: A Template Model for ABM Platforms.
The template model is implemented in five different platforms: NetLogo; RepastJ; MASON; Java Swarm; and Objective C Swarm. Although relatively simple, StupidModel includes many commonly used features of agent-based modeling (ABM) platforms. Sixteen versions of StupidModel are implemented for each platform, beginning with a bare bones version and ending with a relatively sophisticated version that involves two agent types,
a full agent life cycle (birth, reproduction, predation, and death), and a habitat with data read from an input file. Each implementation is made available as freeware with accompanying implementation notes. In addition, the authors include at this site a pointer to a paper titled
"Agent-Based Simulation Platforms: Review and Development Recommendations"
that reviews and compares the five ABM platforms and seeks to identify key development priorities both
for these specific ABM platforms and for ABM platforms in general.
GENERAL SOFTWARE SUPPORT
-
Software and Toolkits for Agent-Based Modeling
-
Agent-Based Computational Laboratories and Demonstration Software
- Matt Weisfeld, The Object-Oriented Thought Process, SAMS
Publishing (Division of Macmillan), Indianapolis, Indiana, 2000, ISBN:
0-672-31853-9 (paperback).
- Agent-based computational modeling is often implemented using
languages with object-oriented programming (OOP) capabilities, such as Java,
C++, and C#. This book is designed to help newcomers learn OOP guidelines
for solid class design and master the major OOP concepts of inheritance,
composition, interfaces, and abstract classes. The author motivates and
illustrates his points by taking readers step by step through simple concrete
examples.
- Matt Weisfeld has more than 18 years of experience as a professional
software developer and project manager using COBOL, Pascal, C, C++,
smalltalk, and Java. He currently teaches Java programming and project
management at Cleveland State University.
Copyright © 2009 Robert Axelrod and Leigh Tesfatsion.
All Rights Reserved.