Computational Laboratories
and Demonstration Software
Agent-Based Computational Economics (ACE),
Agent-Based Modeling (ABM), and
Complex Adaptive Systems (CAS)
- Last Updated: 12 February 2025
- Site Developed By:
-
Leigh Tesfatsion
- Professor Emerita of Economics
- Courtesy Research Professor of
- Electrical & Computer Engineering
- Heady Hall 260
- Iowa State University
- Ames, Iowa 50011-1054
- https://www2.econ.iastate.edu/tesfatsi/
tesfatsi AT iastate.edu
-
ACE Website Homepage
-
ACE/ABM/CAS General Software and Agent-Based Toolkits
-
ACE Course 308 (Self-Study eBook)
Site Outline:
-
Site and Software Release Disclaimer:
-
Unfortunately, many links to excellent demos originally posted at this site are now broken and had to be removed. Below are annoted pointers to still-available demonstration software that visitors might find useful and/or of historical interest.
All software linked below is unsupported and provided as-is, without warranty of any kind, unless otherwise specified by the software developer.
Site Overview
Roughly defined,
Agent-based Computational Economics (ACE)
is the computational modeling of economic processes (including whole economies) as open-ended dynamic systems of
interacting agents. ACE researchers generally conduct their studies in the context of Computational Laboratories (CLs). A CL is a software framework together with a library of software components that permits the plug-and-play development and study of a family of computational models.
To date, however, there does not seem to have been any
systematic attempt to encourage the web-publication of these CLs at a centralized accessible site for general ACE research and teaching purposes.
The CLs and demonstration software linked at this site cover ACE applications
as well as general Agent-Based Modeling (ABM)
and Complex Adaptive Systems (CAS) applications of possible interest to ACE researchers. The ultimate goal of this site is to facilitate
the understanding of the ACE methodology by permitting people to obtain
hands-on experience running simple ACE/ABM/CAS experiments under different
parameter settings with no original programming required and with rapid
visual feedback of findings. Not all of the CLs and demos listed below
currently possess these desired attributes, but they constitute a useful
start towards the goal.
ACE Comp Labs and Demos
- Adaptive Modeler - Agent-Based Financial Market Simulation Platform (Proprietary, Free Evaluation Version)
- The
Adaptive Modeler,
developed by Jim Witkam (Altreva, Inc.),
creates agent-based market simulation models for price forecasting of real world stocks, currencies or other market traded securities. The agent-based model simulates a financial market consisting of thousands of agents whose (technical) trading rules evolve through a special adaptive form of genetic programming. The evolution of trading rules combined with market pricing dynamics drives the agent population to learn to recognize and anticipate recurring price patterns while adapting to changing market behavior. Forecasts can be based on either the behavior of all agents or on a dynamic group of the best performing agents. For ACE researchers this application may be of interest to study the behavior and emergent predictive abilities of an agent-based market model that includes information from a real-world market. Several model initialization options are included such as a user configurable genetic programming engine for the creation of trading rules. Simulation of zero intelligence trading is also supported. Various population statistics and other data can be visualized in charts, distribution histograms and scatter plots, all in real-time. Data can be exported to CSV files for further analysis in other applications. A free (non-expiring) evaluation version with extensive documentation can be downloaded from the Adaptive Modeler homepage, above. Adaptive Modeler is targeted for Windows platforms and requires an installation of Microsoft .Net 2.0 or higher.
- Agent-Based Modelling: The BehaviourComposer (U of Oxford, Free)
-
The
BehaviorComposer (GitHub Repository)
is a web-based tool for composing NetLogo micro-behaviors.
-
AMES Wholesale Power Market Test Bed (Java)
- The
AMES Wholesale Power Market Test Bed,
developed entirely in Java by an interdisciplinary team of researchers at Iowa State University,
is an extensible and modular agent-based computational laboratory for studying the
dynamic efficiency and reliability of wholesale power markets restructured in
accordance with guidelines issued by the U.S. Federal Energy Regulatory Commission.
The framework models strategically-learning traders interacting over time in an ISO-managed
wholesale power market operating over an AC transmission grid subject to
congestion effects. Congestion on the grid is managed by means of locational
marginal prices derived from optimal power flow solutions.
- AMES is a free open-source tool suitable for research, teaching, and training
applications. It is designed for the intensive experimental study of small to medium-sized systems. A graphical
user interface permits the creation, modification, analysis and storage of scenarios,
parameter initialization and editing, specification of behavioral rules (e.g.
learning methods) for market participants, and output reports through table and chart displays.
AMES is an acronym for Agent-based Modeling of Electricity Systems.
- Market Demos (Visual Basic)
- Valentino Piana (Director, Economics Web Institute, Italy)
maintains a site devoted to downloadable
interactive market simulation models,
including "Race to Market," "You are an Exporter," "You are a
Monopolist," "The Standard Monopoly Theory," The IS-LM Model" (by Masaru
Uzawa), and "Graphical Representations of Cost Functions."
- 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).
- 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
Allen Wilhite (Computational Economics, 2001).
The purpose of the Wilhite trade model is to examine the effects of 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.
- Sugarscape (MASON, Object Pascal, NetLogo)
- In the mid-nineteen nineties, at the Brookings Institution, Joshua Epstein and Rob Axtell developed an agent-based computational framework Sugarscape for the study of human social phenomena (e.g., trade, migration, group formation, combat, cultural transmission, disease propagation, population dynamics). Their Sugarscape research was published in a well-known monograph: Growing Artificial Societies: Social Science from the Bottom Up, MIT Press/Brookings, MA, 1996. A brief
review (pdf,28K)
of this monograph by L. Tesfatsion was published in the Journal of Economic Literature XXXVI (March 1998), pp. 233-234.
Subsequently, Tony Bigbee released a Java-based
open source replication of the classic Sugarscape model, called
MASON Sugarscape
that implements most of the original Sugarscape capabilities.
Visit
here
for additional details.
- TNG Lab: A Computational Laboratory for
Evolutionary Trade Networks (WinDesktop, C++/Visual Basic)
- The Trade Network Game Laboratory (TNG Lab) is a
computational laboratory for exploring the evolution of trade networks among
strategically interacting traders (buyers, sellers, and dealers) operating under
variously specified market protocols.
The TNG Lab blends and extends standard matching theory and sequential game theory in that each trader
jointly determines over time both whom to seek trades with (partner selection) and how to behave
in any trade interactions that take place (strategy selection).
- Once a trade partnership is determined, the partners engage in a bilateral trade interaction modeled as
a symmetric 2-person game (e.g., Prisoner's Dilemma, Chicken, Stag Hunt).
The traders use genetic algorithm learning to evolve
their trading strategies over time based on outcomes from their past trade interactions.
The TNG Lab has a clear easily-operated Graphical User Interface (GUI)
that permits users to experiment with alternative settings for key parameters pertaining to learning, payoffs,
types and numbers of agents, and the physics controlling network displays.
The formation/evolution of trade networks is visualized by means of run-time animations, run-time
charts, and run-time data displays.
- Automatic installation software for the TNG Lab, together with tutorials and
research articles, can be obtained at the
TNG Home Page.
- Winner's Curse Applet
- Mike Shor (Owen Graduate School of Management, Vanderbilt University)
has developed a
Winner's Curse Applet
that permits users to experimentally explore the well-known "winner's curse"
problem in common-value auctions. The Winner's Curse is the observation that
winners in such auctions typically turn out to pay too much relative to true
valuation. They win because they are overly optimistic.
- Zero-Intelligence Trading Demo (Java Applet/NegLogo Model)
- Mark McBride (Economics Department, Miami University, 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.
General ABM/CAS Comp Labs and Demos
- Artificial Life Resources
-
From 1995-2004 Jörg Heitkötter maintained an extensive, annotated, and carefully categorized site -- titled
Artificial Life Resource Site: Zooland --
that included demos for many of the most famous early artificial life models. Many of these materials have now been subsumed into a blogspot called
The Hitch-Hiker's Guide to
Evolutionary Computation.
- Artificial Life (Java Applets)
- Tim Tyler provides collections of interactive Java applet demonstrations
focusing on artificial life and texture generation at a Web site titled
Lotus Artificial Life
-
Axelrod Tournament Demo (WinDesktop, 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 (B.S. Computer Science, Iowa State University) subsequently developed the
Axelrod Tournament: Demonstration Software.
Cook's demo captures and extends the salient aspects of Axelrod's 1979 tournament. It 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.
- Cook's Axelrod Tournament Demo is
available as freeware under the GNU Public License. Automatic installation
software for this computational laboratory, together with more detailed
information about its capabilities and implementation, can be obtained at the above-linked demo homepage.
- 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
Biomorph Viewer (html)
- Boids: Simulation of Flocking Creatures (Java Applets)
- 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.
- Cellular Automata Lab (WinDesktop)
- From the CelLab User Guide: "The first edition of
CelLab
was developed by Rudy Rucker and John Walker in 1988 and 1989 when both were
working in the Autodesk research lab... Celab allows you to explore cellular
automata on your own personal computer, running under MS-DOS or Windows. You
can define your own rules by writing short programs in Java, C, BASIC, or
Pascal, create patterns of cells and color palettes, then run the rule and
observe its evolution on the screen. We supply a wide variety of
ready-to-run rules, simulating processes as varied as heat flow, diffusion of
gases, annealing of metal, behavior of tubeworms on the ocean floor, chemical
reactions, and ecosystems of artificial life. Complete source code for all
of these rule definitions in included in both Java and Pascal, allowing you
to use our rule definitions as the point of departure for your own
experiments. Advanced users can customize the cellular automata simulator by
writing custom evaluators in assembly language for DOS or Windows, or as a
DLL written in C for the Windows-based simulator."
- Rudy Rucker is Professor
of Mathematics and Computer Science at San Jose State University. John
Walker is founder and former president of Autodesk, Inc.
- Cellular Automata: Mirek's Cellebration (Windows)
-
Mirek's Cellebration: MCell (mirror site))
is a freeware computer program for running one-dimensional and two-dimensional cellular automata. It is written by Mirek Wójtowicz and runs on a Windows platform. It has support for many rules in fifteen different families: "Life", "Generations", "Weighted Life", "Vote for Life", "Rules tables", "Cyclic CA", "1-D binary CA", "1-D totalistic CA", "Neumenn binary", "General binary", "Large than Life", "Margolus neighborhood", "User DLLs", "Special rules", and "Weighted Generations". The latest versions allow users to rewind to previous generations of any open cellular automata, undo changes made to the grid, and find periodic patterns automatically. Extensive CA materials, downloadable source code, and code documentation are available at the above MCell site.
- Game of Life
-
The delightful "Game of Life," invented by John Conway in 1970, is not an agent-based model. However, it is a fascinating illustration of how just three simple behavioral rules for the open-ended progression of a cellular automaton can induce extremely complicated dynamic outcomes.
For an introductory discussion, see Paul Callahan's illustrated introductory discussion titled
"What is the Game of Life? (html),
and try your hand at running
-
Game of Life Demonstration Software
(html)
- Mophological Simulations: Karl Sim's Interactive Works (On-Line)
- Karl Sims (GenArts, Inc., Cambridge, Massachusetts) has created a
variety of interactive computer displays involving the evolution of 3D
animated forms. For more information, visit
Karl Sims' Home Page.
- NetLogo Models
- The Center for Connected Learning (Northwestern University, Evanston,
Illinois) maintains a
NetLogo User Community Models Site
that provides links to models contributed from the NetLogo user community to
be shared with other NetLogo users. The models cover a wide range of topics
in biology, chemistry, physics, and the social sciences. For example, the
social science models include a simple version of the Schelling Segregation
Model and various prisoner's dilemma models.
- Newton Basins
-
Nonlinear equations F(x)=0 often 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. Newton basins for polynomials (and other types of functions) defined over the complex plane can take the form of "fractals" in the complex plane with beautifully intricate boundaries. To determine, visualize, and study the boundaries of Newton basins, distinct colorations can be applied 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.
- Political Simulation (Win or Mac Excel)
- Political Sim was created to make the power of voting rules easy to
understand through visual displays. Political Sim lets players experiment
with forty-one flavors of democratic voting, from Australia to Zuidland.
Political Sim can be downloaded in self-extracting compressed files for use
with Windows Excel or Macintosh Excel. For more information, visit the
Political Sim Homepage.
- Schelling Segregation Model (WinDesktop, C#/.Net)
- Chris Cook (B.S. Computer Science, Iowa State University, Ames) developed an interactive demo of the Schelling Segregation Model (SSM), due to Thomas Schelling, Micromotives and Macrobehavior, Norton, 1978.
-
Cook's SSM demo, targeted for the Microsoft desktop, 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 released his SSM demo as freeware under the GNU Public License. Automatic installation software for Cook's SSM demo can be obtained at the demo homepage:
The Schelling Segregation Model:
Demonstration Software.
Also available at this demo homepage is a more detailed description of the SSM demo's capabilities, a link for downloading the SSM demo source code (C#/.Net), instructions for automatic installation of this source code, and copyright information.
- Schelling Segregation Model (Repast)
- Lars-Eric Cederman (ETH) maintains a
Schelling Segregation Model Demo (Repast)
designed for teaching purposes.
Materials available at this site include documentation and software downloads.
- Tierra (C Source Code)
- Tierra is a digital universe developed by Tom Ray
(University of Oklahoma, Norman, OK) in which self-replicating machine code
programs evolve by natural selection in an open-ended arms race between hosts
and parasites. For a general description of Tierra, together with detailed
instructions for downloading and running the Tierra source code, visit the
Tierra Home Page
maintained by Ray.
Copyright © Leigh Tesfatsion. All Rights Reserved.