Repast: A Software Toolkit for
Agent-Based Social Science Modeling

Self-Study Guide for Java-Based Repast (RepastJ)

Last Updated: 3 March 2008

Site Maintained By:
Leigh Tesfatsion
Professor of Economics and Mathematics
Department of Economics
Iowa State University
Ames, Iowa 50011-1070
Telephone: (515) 294-0138
http://www.econ.iastate.edu/tesfatsi/
tesfatsi AT iastate.edu

Guide for Newcomers to Agent-Based Modeling
Agent-Based Computational Economics (ACE) Resources
Online ACE Course (self-study eBook)
ACE/CAS Comp Labs and Demo Software
ACE/CAS General Software and Toolkits

Objectives and Topic Listing:

Repast (REcursive Porous Agent Simulation Toolkit) is a freely available agent-based simulation toolkit specifically designed for social science applications. Repast permits the systematic study of complex system behaviors through controlled and replicable computational experiments. Originally developed by David Sallach and other researchers at the University of Chicago and the Argonne National Laboratory, Repast is now managed by the non-profit volunteer organization ROAD (Repast Organization for Architecture and Development).

Repast provides a core collection of classes for the building and running of agent-based simulations and for the collection and display of data through tables, charts, and graphs. A particularly attractive feature of Repast is its ability to integrate GIS (geographical information science) data directly into simulations.

At present, Repast has been released in four versions supporting model development in three different programming languages: (1) RepastJ (Java based); (2) RepastPy (based on the Python Scripting language); (3) Repast.Net (implemented in C# but any .Net language can be used); and (4) RepastS (Repast Simphony, Java based). Repast can be run on virtually all modern computing platforms (e.g., Windows, Mac OS, and Linux).

The latest releases of Repast, along with detailed technical information regarding the installation and use of Repast, can be found at the Repast Sourceforge Website.

In summer 2004 an informal Repast Study Group was organized at Iowa State University for those wishing to undertake a study of the Repast toolkit. The primary reason for organizing the group was to help participants obtain some facility with Repast through readings, hands-on experience with Repast demos, and simple programming exercises. The objective was to determine the degree to which Repast provides a useful and user-friendly agent-based modeling tool for economics and related fields.

This site, originally developed for Repast Study Group participants, provides links to readings, discussion materials, software, and other resources of potential use to those wishing to embark on a self-study of RepastJ, i.e., Repast based on a Java development environment. Although some prior programming experience is desirable, it is not presumed.

**0.For Those Who Want to Jump Right In

  1. Introduction to Agent-Based Social Science Modeing
    1. What is a Complex Adaptive System (CAS)?
    2. What is Agent-Based Modeling (ABM)?
    3. What is Agent-Based Computational Economics (ACE)?
  2. Agent-Oriented Programming
    1. General Overview
    2. Introduction to Java
  3. Getting Acquainted with RepastJ
    1. Background Materials
    2. Downloadable Stand-Alone RepastJ Demos
  4. Programming with RepastJ
    1. The RepastJ Software Framework
    2. RepastJ Development Environments
    3. RepastJ Documentation and Tutorials
    4. RepastJ Demos and Applications (Open Source)
    5. Design of Experiments
  5. Possible Repast Modeling Application Areas: On-Line Resource Sites

Topics

0. For Those Who Want to Jump Right In

I.Introduction to Agent-Based Social Science Modeling

I.A What is a Complex Adaptive System (CAS)?

I.B What is Agent-Based Modeling (ABM)?

I.C What is Agent-Based Computational Economics (ACE)?


Other introductory source materials on ACE/CAS

II. Agent-Oriented Programming

II.A General Overview

II.B Introduction to Java

Other source materials related to agent-oriented programming

III. Getting Acquainted with RepastJ

III.A Background Materials

III.B Downloadable Stand-Alone RepastJ Demos

IV. Programming with RepastJ

IV.A The RepastJ Software Framework

IV.B RepastJ Development Environments

Note: Integrated Development Environments (IDEs) are programs that permit you to write, compile, run, and debug programs from within a single environment.

IV.C Other Repast Documentation and Tutorials

IV.D RepastJ Demos and Applications (Open Source)

IV.E Design of Experiments

Possible Repast Modeling Application Areas

Copyright © 2007 Leigh Tesfatsion. All Rights Reserved.