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: 8 January 2021
- Site Maintained By:
-
Leigh Tesfatsion
- Research Professor & Professor Emerita of Economics
- Courtesy Research Professor of
Electrical & Computer Engineering
- Heady Hall 260
- Iowa State University
- Ames, Iowa 50011-1054
- http://www2.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, 46KB) ,
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
- 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
(SSMB), 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.
-
EMERGENCE OF COLLECTIVE BEHAVIOR
- Boids: Simulation of Flocking Creatures
-
Boids
is an artifial life simulation developed by Craig Reynolds (Sony, Research and Development Group) for the exploration of flocking behavior. The flocking model incorporated into Boids 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
Java applets, which can be accessed from the above site, the model results in amazingly life-like
collective flocking dynamics.
- Sand Pile Model
- Francisco Esquembre (Open Source Physics) has developed a
Sand Pile Avalanche Model
that simulates the occurences of avalanches in sand piles and plots the frequencies of the size of these avalanches. The simulation software can be downloaded from the above site.
-
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 example, see the
Richard Dawkins and Biomorphs Invention Site.
- 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 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
- Multi-Agent Economy Simulation (Java)
- Erich Kutschinski and Thoman Uthmann (University of Mainz, Germany)
together with Daniel Polani (University of Hertfordshire, UKB) 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.
-
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 (ABMB) 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 A. Weisfeld, The Object-Oriented Thought Process, SAMS
Publishing (Division of Macmillan), Indianapolis, Indiana, Third Edition, 2008, Paperback.
-
Abstract: "Object-oriented programming (OOP) is the foundation of modern programming languages, including C++, Java, C#, and Visual Basic .NET. By designing with objects rather than treating the code and data as separate entities, OOP allows objects to fully utilize other objects’ services as well as inherit their functionality. OOP promotes code portability and reuse, but requires a shift in thinking to be fully understood. Before jumping into the world of object-oriented programming languages, you must first master The Object-Oriented Thought Process. Written by a developer for developers who want to make the leap to object-oriented technologies as well as managers who simply want to understand what they are managing, The Object-Oriented Thought Process provides a solution-oriented approach to object-oriented programming. Readers will learn to understand object-oriented design with inheritance or composition, object aggregation and association, and the difference between interfaces and implementations. Readers will also become more efficient and better thinkers in terms of object-oriented development. This revised edition focuses on interoperability across various technologies, primarily using XML as the communication mechanism. A more detailed focus is placed on how business objects operate over networks, including client/server architectures and web services.
"
- Matt Weisfeld is an associate professor in business and technology at Cuyahoga Community College in Cleveland, Ohio. He has more than 20 years of experience as a professional software developer, project manager, and corporate trainer using C++, Smalltalk, .NET, and Java. He holds a BS in systems analysis, an MS in computer science, and an MBA in project management. Weisfeld has published many articles in major computer trade magazines and professional journals.
Copyright © Robert Axelrod and Leigh Tesfatsion.
All Rights Reserved.