Repast Agent Simulation Toolkit
Mục lục bài viết
News
-
OR/MS Today has published a paper on agent-based modeling in general and Repast in particular in the
Auguest 2006 issue. The full citation:-
Douglas Samuelson and Charles Macal, “Agent-based Simulation Comes of Age,” OR/MS Today, Vol. 33, Number 4, pp. 34-38,
Lionheart Publishing, Marietta, GA, USA (August 2006).
OR/MS Today is a “magazine for members of the Institute for Operations Research and the Management Sciences (INFORMS)” that “provides a comprehensive look at operations research and management science”. An online version of the article can be found here.
-
-
ACM Transactions on Modeling and Computer Simulation has recently published a paper on Repast. The full citation:
-
North, M.J., N.T. Collier, and J.R. Vos, “Experiences Creating Three Implementations of the Repast Agent Modeling Toolkit,”
ACM Transactions on Modeling and Computer Simulation, Vol. 16, Issue 1, pp. 1-25, ACM, New York, New York, USA
(January 2006).
Please use this paper as the primary reference for Repast.
-
Repast 3 Overview
The Recursive Porous Agent Simulation Toolkit (Repast) is one of
several agent modeling toolkits that are available. Repast borrows
many concepts from the Swarm agent-based modeling toolkit [1].
Repast is differentiated from Swarm since Repast has multiple pure
implementations in several languages and built-in adaptive features
such as genetic algorithms and regression. For reviews of Swarm,
Repast, and other agent-modeling toolkits, see the 2002 survey by
Serenko and Detlor, the 2002 survey by Gilbert and Bankes, and the
2003 toolkit review by Tobias and Hofmann [2][3][4].
Repast is a free open source toolkit that was originally developed
by Sallach, Collier, Howe, North and others [5]. Repast was created
at the University of Chicago. Subsequently, it has been maintained
by organizations such as Argonne National Laboratory. Repast is now
managed by the non-profit volunteer Repast Organization for
Architecture and Development (ROAD). ROAD is lead by a board of
directors that includes members from a wide range of government,
academic and industrial organizations. The Repast system, including
the source code, is available directly from the web.
Repast seeks to support the development of extremely flexible
models of living social agents, but is not limited to modeling
living social entities alone. From the ROAD home page:
Our goal with Repast is to move beyond the representation of agents as discrete, self-contained entities in favor of a view of social actors as permeable, interleaved, and mutually defining; with cascading and recombinant motives. We intend to support the modeling of belief systems, agents, organizations, and institutions as recursive social constructions.
At its heart, Repast toolkit version 3 can be thought of as a
specification for agent-based modeling services or functions. There
are three concrete implementations of this conceptual
specification. Naturally, all of these versions have the same core
services that constitute the Repast system. The implementations
differ in their underlying platform and model development
languages. The three implementations are Repast for Java (Repast
J), Repast for the Microsoft.Net framework (Repast.Net), and Repast
for Python Scripting (Repast Py). Repast J is the reference
implementation that defines the core services. In general, it is
recommended that basic models can be written in Python using Repast
Py due to its visual interface and that advanced models be written
in Java with Repast J or in C# with Repast .Net.
Repast 3 has a variety of features including the following:
-
Repast includes a variety of agent templates and examples.
However, the toolkit gives users complete flexibility as to how
they specify the properties and behaviors of agents. - Repast is fully object-oriented.
-
Repast includes a fully concurrent discrete event scheduler.
This scheduler supports both sequential and parallel discrete
event operations. -
Repast offers built-in simulation results logging and graphing
tools. - Repast has automated Monte Carlo simulation framework.
-
Repast provides a range of two-dimensional agent environments
and visualizations. -
Repast allows users to dynamically access and modify agent
properties, agent behavioral equations, and model properties at
run time. -
Repast includes libraries for genetic algorithms, neural
networks, random number generation, and specialized mathematics. - Repast includes built-in systems dynamics modeling.
- Repast has social network modeling support tools.
-
Repast has integrated geographical information systems (GIS)
support. -
Repast is fully implemented in a variety of languages including
Java and C#. -
Repast models can be developed in many languages including Java,
C#, Managed C++, Visual Basic.Net, Managed Lisp, Managed Prolog,
and Python scripting. -
Repast is available on virtually all modern computing platforms
including Windows, Mac OS, and Linux. The platform support
includes both personal computers and large-scale scientific
computing clusters.
References
- Swarm Development Group: Swarm 2.2, Available at http://wiki.swarm.org (Aug. 2004)
-
Serenko, A. and Detlor, B.: Agent Toolkits: A General Overview
of the Market and an Assessment of Instructor Satisfaction with
Utilizing Toolkits in the Classroom (Working Paper 455),
McMaster University, Hamilton, Ontario, Canada (2002) -
Gilbert, N., and Bankes, S.: Platforms and Methods for
Agent-based Modeling, Proceedings of the National Academy of
Sciences of the USA, vol. 99, suppl. 3, National Academy of
Sciences of the USA, Washington, DC, USA (May 14, 2002) pp.
7197-7198 -
Tobias, R. and Hofmann, C.: Evaluation of Free Java-libraries
for Social-scientific Agent Based Simulation, Journal of
Artificial Societies and Social Simulation, University of
Surrey, vol. 7, no. 1 (Jan. 2003) -
Collier, N., Howe, T., and North, M.: Onward and Upward: The
Transition to Repast 2.0, Proceedings of the First Annual North
American Association for Computational Social and Organizational
Science Conference, Electronic Proceedings, Pittsburgh, PA USA
(June 2003) -
Repast Organization for Architecture and Development,
http://repast.sourceforge.net, 2003
The design of this web site is, in part, based on the web design of
the excellent graph library JUNG, http://jung.sourceforge.net
Thanks to the people at “YourKit Java
Profiler” for providing us with an open source license for their Java
profiler. It has been very useful in optimizing updates to Repast’s spatial classses.