Top Banner
©Copyright JASSS Cynthia Nikolai and Gregory Madey (2009) Tools of the Trade: A Survey of Various Agent Based Modeling Platforms Journal of Artificial Societies and Social Simulation vol. 12, no. 2 2 <http://jasss.soc.surrey.ac.uk/12/2/2.html> For information about citing this article, click here Received: 29-Jul-2008 Accepted: 05-Mar-2009 Published: 31-Mar-2009 Abstract Agent Based Modeling (ABM) toolkits are as diverse as the community of people who use them. With so many toolkits available, the choice of which one is best suited for a project is left to word of mouth, past experiences in using particular toolkits and toolkit publicity. This is especially troublesome for projects that require specialization. Rather than using toolkits that are the most publicized but are designed for general projects, using this paper, one will be able to choose a toolkit that already exists and that may be built especially for one's particular domain and specialized needs. In this paper, we examine the entire continuum of agent based toolkits. We characterize each based on 5 important characteristics users consider when choosing a toolkit, and then we categorize the characteristics into user- friendly taxonomies that aid in rapid indexing and easy reference. Keywords: Agent Based Modeling, Individual Based Model, Multi Agent Systems Introduction 1.1 In the past few years, several seminal ABM surveys have emerged. They are a giant stride in the right direction, but current surveys generally are limited to four or five mainstay and characteristically or historically similar toolkits (Castle 2006 ; Railsback 2006 ; Tobias 2004 ). Moreover, these surveys are presented from the point of view and for the intended audience of one or two communities of interest (Castle 2006 ; Railsback 2006 ; Serenko 2002 ; Tobias 2004 ). However, different groups of users prefer different and sometimes conflicting aspects of a toolkit. For example, social scientists, who may have little or no programming experience, are concerned more with ease of use, the degree of programming skills required, and the inclusion of intuitive interfaces to manage simulations. Many, in general, are not concerned about whether the software is open source or restricted open source. To computer scientists, however, the type of license that governs the toolkit is a big consideration; they want the ability to "get behind the scenes" of a toolkit and to have the programming flexibility to modify or extend the software with third party applications if necessary. They also generally prefer saving execution time by programming simulations themselves rather than using built-in interfaces, which usually are less computationally efficient. Teachers of ABM, on the other hand, want packages that are easy to learn, that offer pedagogical insights, and that provide the student with the ability to transition to more difficult and comprehensive toolkits in the future. 1.2 In this paper we address the issues of the broader ABM community. This paper is a survey of the toolkits that are available today and how they compare to each other from an interdisciplinary and multi-stakeholder perspective. Our goal is to provide users with the ability to better choose a suitable toolkit based on the features abstracted from various documentation and compiled into an easy to use compendium. In addition, we expand the ABM body of knowledge to include information about a breadth of characteristically and historically diverse platforms. 1.3 This work is the result of ongoing research into various characteristics of ABM toolkits. In this paper, we examine 5 characteristics across the spectrum of toolkits: programming language required to create a model or simulation, operating system required to run the toolkit, type of license governing the platform, primary domain for which the toolkit is intended, and degree of support available to the user of the toolkit. 1.4 This paper is structured as follows. First, we begin with some limitations of current ABM surveys. This is followed by a comparison of the characteristics of various toolkits in the form
37

Tools of the Trade - Journal of Artificial Societies and ...jasss.soc.surrey.ac.uk/12/2/2/2.pdf · The second main ABM survey is by Castle and Crooks (2006). In this paper, Castle

Mar 20, 2020

Download

Documents

dariahiddleston
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Tools of the Trade - Journal of Artificial Societies and ...jasss.soc.surrey.ac.uk/12/2/2/2.pdf · The second main ABM survey is by Castle and Crooks (2006). In this paper, Castle

©Copyright JASSS

Cynthia Nikolai and Gregory Madey (2009)

Tools of the Trade: A Survey of Various Agent Based ModelingPlatforms

Journal of Artificial Societies and Social Simulation vol. 12, no. 2 2<http://jasss.soc.surrey.ac.uk/12/2/2.html>

For information about citing this article, click here

Received: 29-Jul-2008 Accepted: 05-Mar-2009 Published: 31-Mar-2009

Abstract

Agent Based Modeling (ABM) toolkits are as diverse as the community of people who usethem. With so many toolkits available, the choice of which one is best suited for a project isleft to word of mouth, past experiences in using particular toolkits and toolkit publicity. Thisis especially troublesome for projects that require specialization. Rather than using toolkitsthat are the most publicized but are designed for general projects, using this paper, one willbe able to choose a toolkit that already exists and that may be built especially for one'sparticular domain and specialized needs. In this paper, we examine the entire continuum ofagent based toolkits. We characterize each based on 5 important characteristics usersconsider when choosing a toolkit, and then we categorize the characteristics into user-friendly taxonomies that aid in rapid indexing and easy reference.

Keywords:Agent Based Modeling, Individual Based Model, Multi Agent Systems

Introduction

1.1In the past few years, several seminal ABM surveys have emerged. They are a giant stride inthe right direction, but current surveys generally are limited to four or five mainstay andcharacteristically or historically similar toolkits (Castle 2006; Railsback 2006; Tobias 2004).Moreover, these surveys are presented from the point of view and for the intended audienceof one or two communities of interest (Castle 2006; Railsback 2006; Serenko 2002; Tobias2004). However, different groups of users prefer different and sometimes conflicting aspectsof a toolkit. For example, social scientists, who may have little or no programmingexperience, are concerned more with ease of use, the degree of programming skills required,and the inclusion of intuitive interfaces to manage simulations. Many, in general, are notconcerned about whether the software is open source or restricted open source. To computerscientists, however, the type of license that governs the toolkit is a big consideration; theywant the ability to "get behind the scenes" of a toolkit and to have the programming flexibilityto modify or extend the software with third party applications if necessary. They alsogenerally prefer saving execution time by programming simulations themselves rather thanusing built-in interfaces, which usually are less computationally efficient. Teachers of ABM,on the other hand, want packages that are easy to learn, that offer pedagogical insights, andthat provide the student with the ability to transition to more difficult and comprehensivetoolkits in the future.

1.2In this paper we address the issues of the broader ABM community. This paper is a survey ofthe toolkits that are available today and how they compare to each other from aninterdisciplinary and multi-stakeholder perspective. Our goal is to provide users with theability to better choose a suitable toolkit based on the features abstracted from variousdocumentation and compiled into an easy to use compendium. In addition, we expand theABM body of knowledge to include information about a breadth of characteristically andhistorically diverse platforms.

1.3This work is the result of ongoing research into various characteristics of ABM toolkits. In thispaper, we examine 5 characteristics across the spectrum of toolkits: programming languagerequired to create a model or simulation, operating system required to run the toolkit, type oflicense governing the platform, primary domain for which the toolkit is intended, and degreeof support available to the user of the toolkit.

1.4This paper is structured as follows. First, we begin with some limitations of current ABMsurveys. This is followed by a comparison of the characteristics of various toolkits in the form

Page 2: Tools of the Trade - Journal of Artificial Societies and ...jasss.soc.surrey.ac.uk/12/2/2/2.pdf · The second main ABM survey is by Castle and Crooks (2006). In this paper, Castle

of tabular taxonomies followed by a text explanation. Finally, we conclude the paper with afull representation of features for each toolkit in a quick and easy to use matrix format.

Related Work

2.1In the last few years, the ABM community has made giant strides in developing practical agentbased modeling toolkits that enable individuals to develop significantly sized applications.More and more such toolkits are coming into existence, and each toolkit has a variety ofcharacteristics. Some toolkits are built for general purpose modeling and some are built for aparticular domain. Some are open source, some are closed source, and others are proprietary.Some toolkits have a simple user interface, and others require complex programmingtechniques. Several individuals have made attempts to compare toolkits to each other. One ofthe seminal papers has been the investigation by Railsback, Lytinen, and Jackson (2006). Inthis paper, the authors examine four main platforms: NetLogo, Mason, Repast, and Swarm.They create a template, called a "StupidModel," for various levels from which to evaluate andcompare toolkits to each other. For example, for level 1, they examine the underlyingenvironment and how various toolkits display agents in their environment. With each newlevel, they add more capabilities and examine how each toolkit compares to the others. Forlevel 2, they add more agent actions and examine how different platforms implementscheduling for these actions. They continue adding more capabilities through 15 differentlevels, through which they examine characteristics such as environmental issues, modelstructure, agent scheduling, file input and output, random number generation, and statisticalcapabilities.

2.2This survey is a great step in the right direction, but the main limitation is that it onlyexamines 4 platforms. In addition, most of the toolkits are historically similar in nature. Evento the extent that Swarm and Mason were designed as general purpose toolkits, Repast wasdesigned for social scientific use, and NetLogo was intended as an educational tool, three ofthe toolkits are descendants of Swarm, while one is descended from an educational lineage.Our work differs from Railsback et al, in three main respects. First, we expand the ABM body.We consider not only general or mainstay toolkits from the same lineage, but we also considerless well known and diverse specialized platforms as well. A second difference is that in thispaper, we do not evaluate toolkits as better or worse than others. Our goal is to present thefacts and to let the reader choose which toolkit is the most suitable match for his/her project.In future continuation of this work, we hope to "get under the hood" and do a morecomparative study of the toolkits. Finally, whereas Railsback et al evaluate four toolkits indepth, this work only scratches the surface of the toolkits. For now, we only examine 5characteristics that individuals examine when attempting to choose a toolkit for their project.

2.3The second main ABM survey is by Castle and Crooks (2006). In this paper, Castle and Crooksexamine 8 simulation platforms: Swarm, Mason, Repast, StarLogo, NetLogo, Obeus,AgentSheets, and AnyLogic. They have a particular focus on evaluating geospatial capabilities.They also address several additional characteristics including date of inception,implementation language, required programming experience, and availability ofdemonstration models and tutorials.

2.4Again the main limitation is that the study only examines a handful of the ABM toolkits thatare available. The main audience is the domain of geospatial modeling, and again, itcompares only general purpose, characteristically similar toolkits and toolkits specialized forthe social sciences. In our work in this paper, we expand the ABM knowledge base toincorporate a more diverse and expansive continuum of toolkits. We also examine severalcharacteristics in more detail. In addition, we facilitate toolkit selection by including not onlycomparisons of characteristics across toolkits, but we also include matrices comparingtoolkits across characteristics.

2.5The third survey is by Tobias and Hofmann (2004). In this survey, the authors examine 4main open source toolkits: Repast, Swarm, Quicksilver, and VSEit, and they evaluate thembased on various types of criteria, to include general criteria, modeling and experimentation,support for modeling, and modeling options. Altogether, they examine 19 differentcharacteristics across these 4 platforms. Next they rank the platforms by assigning scores torepresent the quality of the criteria of interest. The paper examines a broad range ofcharacteristics, and this is what we hope to model in our future toolkit research. The mainlimitation of this survey is that it is from the point of view of social scientists, and it onlyexamines "free" libraries in use by the social scientific community that use Java as the mainprogramming language. With our work, on the other hand, we hope to appeal to the broaderABM community. We also bring to the fore additional toolkits that are geared toward thesocial sciences, both in general and in particular specializations.

2.6A fourth survey paper on agent based toolkits is by Serenko et al (2002). In this work, theauthors investigate 20 toolkits from an educational perspective based on their use aspedagogical tools in post-secondary courses. They classify toolkits based on 4characteristics, namely, ability to create mobile agents, ability to develop a multi-agentsystem, ability to create different kinds of agents for different purposes (effectively, agentbased toolkits), and ability to retrieve information. They also examine the underlyinglanguage required for programming a model or simulation. Next they interview 87 instructorswho are using these toolkits and who evaluate the toolkits based on user satisfaction with

Page 3: Tools of the Trade - Journal of Artificial Societies and ...jasss.soc.surrey.ac.uk/12/2/2/2.pdf · The second main ABM survey is by Castle and Crooks (2006). In this paper, Castle

platform functionality, performance, and user interaction. This is a good attempt to comparea breadth of the agent toolkits across multiple characteristics. Our work in this paper issimilar in that we attempt to survey the breadth of available toolkits. However, we examinetoolkits from a multi-stakeholder perspective. We also investigate more objectivecharacteristics. In the future, we hope to implement a questionnaire to survey similaradvanced characteristics.

Limitations

3.1Before we delve too far into this paper, we would like to underscore a few limitations. Themajor limitation of this survey is its scope. We chose to examine a large breadth of platformsacross a small range of characteristics. This has two important implications. First, we are notable to evaluate the depth of the platforms in terms of all of their characteristics. Second, weare not able to examine a wide berth of characteristics. While this is a good base of potentialcharacteristics of interest, certainly, there are additional characteristics that are importantfactors in one's decision to choose one platform over another. In our ongoing research intoABM toolkits, we will examine more in-depth and complex characteristics.

3.2Another limitation of this survey is the disparity in degree of documentation for varioustoolkits. Some platforms are widely in use and have ample documentation, and otherplatforms have barely any documentation. Even so, we tried to look at each platform in anequal manner. However, we were limited to what we were able to find on the internet and injournals. In addition, we tried to examine each characteristic as completely andcomprehensively as possible. However, our study is not complete. In places where it is notcomplete, it is because the developers have not specified the complete granularity of theplatforms with respect to the characteristics evaluated.

3.3Third, there is a disparity in the quality of documentation that is included with each platform.Documentation ranges from very detailed to hardly any details at all. In this survey, we do notattempt to evaluate the quality of the documentation. Rather, we try to classify the toolkitsbased on the types of documentation that are available to support the user.

3.4Finally, another challenge to this study is the conflicting use of terms in different domains.Since the agent based modeling field has developed from multiple disciplines (e.g. socialscience, artificial intelligence, and computer science), many of the terms are not usedconsistently across various domains . For example, the three most inconsistent terms are"agent," "agent-based," and "multi-agent." When toolkits from different domains use theterm multi-agent system, it is unclear if they mean a system capable of modeling a largenumber of fairly homogenous agents (agent based system) or a smaller system ofheterogeneous agents equipped with artificial intelligence (true multi-agent system). We donot attempt to disambiguate the terms for each of the fields in this paper. Rather, we attemptto examine the overall domain from an agent based perspective (as opposed to a multi-agentsystem perspective). Because of the inconsistent use of terms, it was difficult to classify thetoolkits into precise taxonomies.

Methodology

4.1We began this survey by gathering a comprehensive list of agent based toolkits available andthat are being used in some fashion for ABM purposes. These include any platforms that areavailable in the public domain, including open source and closed source, general purpose andspecialized, as well as free and proprietary toolkits. We tried to make this as comprehensiveas possible. Next, we gathered as much information as we could from open sources. Wescoured white papers, technical papers, journals, and various websites to gather as muchinformation as possible. Where there was third hand information, we confirmed it by goingdirectly to the source. Next, we sorted through all the information and created varioustaxonomies based on major classifications. Based on the taxonomies, we createdcorresponding tables that allow individuals to quickly compare various toolkits based onparticular characteristics of interest. The following toolkits were considered:

Agent Building and Learning Environment (ABLE)AgentBuilder Lite/ProTryllian Agent Development Kit (ADK)AgentSheetsAnyLogicAscapeBrahmsBreveCommon-pool Resources and Multi-Agent Systems (Cormas)CougaarDeXDistributed operator model architecture (DOMAR)ECHOjEchoECJiGenJADE

Page 4: Tools of the Trade - Journal of Artificial Societies and ...jasss.soc.surrey.ac.uk/12/2/2/2.pdf · The second main ABM survey is by Castle and Crooks (2006). In this paper, Castle

JASJava Auction Simulator API (JASA)JCA-SimJava Enterprise Simulator (jES)JESSLaboratory for Simulation Development (LSD)Multi Agent Development Kit (Madkit)Rules Based Multi-Agent System (MAGSY)Multi-agent modeling language (MAML)MasonMulti-Agent Simulations for the SOCial Sciences (MAS-SOC)Matrix Laboratory (Matlab)Micro-und Multilevel Modelling Software (MIMOSE)ModulecoNetLogoObject Based Environment for Urban Simulation (OBEUS)oRISPolitical Science- Identity (PS-I)Framework for Agent-based Modelling with Java (FAMOJA)Quicksilver (now called omonia)REcursive Porous Agent Simulation Toolkit (Repast) and family (e.g. RepastS, RepastPy,RepastJ, Repast.net)Strictly Declarative Modeling Language (SDML)Jade's sim++SimPlusPlusSimAgent (aka sim_agent)SimBioSysMultimodeling Object-Oriented Simulation Environment (Moose)SimPackSpatial Modeling Environment (SME)Shell for Simulated Agent Systems (SeSAm)SOARStarLogo and family (e.g. StarLogo T, StarLogo TNG, OpenStarLogo, MacStarLogo)SugarscapeSwarmVersatile Simulation Environment for the Internet (VSEit)Zeus

Results

5.1The five characteristics we examine in this paper are: language required to program a modeland to run a simulation, operating system required to run the toolkit, type of license thatgoverns the toolkit, primary domain for which the toolkit is intended, and types of supportavailable to the user. We chose these characteristics because they are usually the first featuresthat one looks at when choosing a toolkit for a project (Castle 2006; Leszczyna 2004; Tobias2004). We have two main results. First, we define taxonomies that allow for easy comparisonof one characteristic across all of the platforms. This enables one to select candidate toolkitsfrom across the ABM spectrum based on one or two characteristics of interest. Second, wedefine a matrix that shows in a condensed form all of the characteristics of interest acrossone platform. This helps one to see how a particular platform measures up as a whole foreach of the characteristics across one's needs.

Programming Language

5.2There are various programming languages that may be used to program an agent basedmodel and to run a simulation. Programming languages are important because differentlanguages have different implications in terms of ease of programming, portability, andcompatibility. The main programming languages used across the ABM spectrum aresummarized below. Note that these are the languages that are used to program a modelusing the toolkit rather than the underlying languages that are used to create the toolkit.

Able Rule Language (ARL)Any language that supports activeX components (e.g. C, C++, VB, VBA, Java)All languages that are compiled into Java or scripting languages which are executed inthe Java Virtual MachineBeanShell (Java interpreted)Brahms language (an agent oriented language)CC++Cellular Description Language (CDL) (for input to simulation)COGNET Execution Language (CEL)dML (deX Modeling Language): a domain-specific language based on C++AgentSpeak(XL), an extension of Agentspeak(L) and (Environment Description Languagefor Multi-Agent Simulation) ELMS, a language for modelling environments wherecognitive agents are situatedJavaJess (rule based language)UML-RT (UML for real time)Knowledge Query and Manipulation Language (KQML)

Page 5: Tools of the Trade - Journal of Artificial Societies and ...jasss.soc.surrey.ac.uk/12/2/2/2.pdf · The second main ABM survey is by Castle and Crooks (2006). In this paper, Castle

LispLogoNetLogoMacStarLogoStarLogo (an extension of Logo)StarLogoTStarLogo TNGLSD (functional language derivative)Magsy (production language)Multi-agent Modeling Language (MAML)MATLAB®Microsoft.net .NET languages (C#, C++, Visual Basic, .Net, J#)Model Description Language (derived from functional language paradigms)Objective COris (dynamic and interpreted multi-agent language very close to C++ and Java)Pop-11 (similar to common lisp)PrologPythonScheme (Kawa)SeSAm-Impl and SeSAm-UMLSmalltalkStandard MLStarLogo TNG visual programming languageSteve (a simple interpreted object oriented language)Tcl/tk scriptingVisual programmingVisual AgentTalk (VAT)

5.3Agent models can be programmed in virtually all of the main programming languages,including C, C++, and Java. These are mainly used for the toolkits that are designed forgeneral purposes. The rest of the languages are languages that stem from a need forspecialization. Most languages in specialized toolkits are created and used specifically forthat toolkit. We can also see in this table a little of the direction/roots of the languages. Forexample, we see a small lineage forming around the Logo language. That is, NetLogo,MacStarLogo, StarLogo, StarLogoT, and StarLogo TNG are derivatives of Logo.

Platforms Per Subcategory

5.4By far, the main programming language most models have adopted is Java. About 42% of theplatforms employ Java as their primary programming language. Toolkits that support Javaprogramming are listed below.

ADKAgentBuilderAnyLogicAscapeCougaarDOMAR-JjEchoECJFAMOJAiGenJadeJASJASAJCA-SimjESJESSMadkitMasonModulecoOmoniaRepastSRepastJSimPackSOAR6SugarscapeSwarmVSEit

5.5The next three largest contingents are C, C++, and the Logo dialects. About 17% of theplatforms use C++ to program models, about 11% use C, and about 8% use a variant of Logo.Approximately 28% of the toolkits use a platform specific language which the toolkit authorsdesigned to facilitate programming models and simulations in that domain. Note that the sumof this collective is above 100%. This is because several platforms support multiplelanguages. We will begin with toolkits that support C++ programming. These are:

AgentBuilderDeX

Page 6: Tools of the Trade - Journal of Artificial Societies and ...jasss.soc.surrey.ac.uk/12/2/2/2.pdf · The second main ABM survey is by Castle and Crooks (2006). In this paper, Castle

iGenLSDMadkitMOOSEJade's Sim++SimBioSysSimPackSOAR6

5.6Next, we have toolkits that support C programming.

AgentBuilderEchoiGenMadkitMAMLSimPack (no longer maintained)SOAR6

5.7Third, we have toolkits that support programming in Logo Dialects.

NetLogoMacStarLogoStarLogoOpenStarLogoStarLogoTStarLogo TNG

5.8Finally, we have toolkits that support visual programming (table 1). That is, these platformshave graphical-based programming capabilities that generally are much more simple to learnand use than traditional programming languages. In the future work, we would like toexamine further the extent to which toolkits have visual programming capability in addition toprogramming language capability.

Table 1: Toolkits That Support Visual Programming

Visual Programming Language ToolkitGeneral visual programming MAML

PS-IRepastSSeSAmSimPlusPlusSMEZeus

StarLogo TNG visual programming language StarLogo TNGVisual AgentTalk (VAT) AgentSheets

5.9Table 2 depicts the remaining domain of toolkits per programming language.

Table 2: Remaining Toolkits per Programming Language

Programming Language ToolkitAble Rule Language (ARL) ABLEAny language that supports activeX components (e.g. C,C++, VB, VBA, Java)

SimPlusPlus

All languages that are compiled into Java or scriptinglanguages which are executed in the Java Virtual Machine

Madkit

BeanShell (Java interpreted) MadkitBrahms language (an agent oriented language) BrahmsCellular Description Language (CDL) (for input to simulation) JCA-SimCOGNET Execution Language (CEL) iGendML (deX Modeling Language): a domain-specific languagebased on C++

DeX

AgentSpeak(XL), an extension of Agentspeak(L) and(Environment Description Language for Multi-AgentSimulation) ELMS, a language for modelling environmentswhere cognitive agents are situated

MAS-SOC

Jess (rule based language) JESSMadkit

UML-RT (UML for real time) AnyLogicKnowledge Query and Manipulation Language (KQML) AgentBuilderLisp OMAR-L

Page 7: Tools of the Trade - Journal of Artificial Societies and ...jasss.soc.surrey.ac.uk/12/2/2/2.pdf · The second main ABM survey is by Castle and Crooks (2006). In this paper, Castle

SimAgentSOAR1-5

LSD (functional language derivative) LSDMagsy (production language) MAGSYMulti-agent Modeling Language (MAML) MAMLMATLAB® MatlabMicrosoft.net .NET languages (C#, C++, Visual Basic, .Net,J#)

OBEUSRepast.net

Model Description Language (derived from functionallanguage paradigms)

MIMOSE

Objective C SwarmOris (dynamic and interpreted multi-agent language veryclose to C++ and Java)

oRIS

Pop-11 (similar to common lisp) SimAgentProlog SimAgentPython Breve

DeXMadkitRepastPy

Scheme (Kawa) MadkitSeSAm-Impl and SeSAm-UML SeSAmSmalltalk Cormas

SDMLStandard ML SimAgentSteve (a simple interpreted object oriented language) BreveTcl/tk scripting PS-I (only to

applyaffects)SOAR

Type of License

5.10The main domain of licenses that governs various toolkits is depicted below.

Associated third party licenses (usually non-proprietary)Contact authors for availabilityContact Tryllian to acquire a closed source licenseFree

Open SourceAcademic Free LicenseArtistic License AgreementBSDCougaar Open Source License (COSL)GPLLGPL

Closed SourceConditionally FreeAcademic PurposesTo modify but not to distribute the modified versionUse and distribution for non-commercial purposesSee license for details

ProprietaryDiscounted

Academic License

5.11The type of license is important because it has implications for releasing the source codeunder commercial distribution. For example, for platforms licensed under the GNU LesserGeneral Public License (LGPL), if one wants to release a modified version of the toolkit forcommercial purposes, one also has to release the source code of the modified platform (GNUWebsite). Toolkits licensed under the Berkley Software Distribution (BSD) license, on the otherhand, do not require one to release the source code of commercial extensions to the platform(freebsd.org website).

5.12We have organized the licenses into four main branches. We can see that the majority of thetoolkits are free (about 76%). These are broken down further into open source (about 53%),closed source (about 9%), and free with restrictions (14%). Of the remaining toolkits, about17% are proprietary. The last 5% are available under contract through case by casearrangements with the authors. Finally, in addition to regular licenses, some of the toolkitscome with associated third party licenses for software that is already incorporated into thetoolkit or for additional features that may be incorporated into the toolkit by the user.

Platforms Per Subcategory

Page 8: Tools of the Trade - Journal of Artificial Societies and ...jasss.soc.surrey.ac.uk/12/2/2/2.pdf · The second main ABM survey is by Castle and Crooks (2006). In this paper, Castle

5.13We begin with free toolkits. As depicted in list 6 above, we have free open source, free closedsource, and conditionally free toolkits. Free open source toolkits release the source code withtheir toolkit and allow modifications in accordance with their governing license. Commonopen source licenses include Berkley Software Distribution (BSD), GNU General Public License(GPL), GNU Lesser General Public License (LGPL), and the Cougaar Open Source License. Freeclosed source toolkits, on the other hand, do not release the source code to the public.Finally, we have conditionally free licenses. These toolkits are free, but they have conditionson how they are used. For example, some licenses are free if they are used only for academicpurposes. Others are free as long as they are used for non-commercial purposes. Theselicenses are mostly closed source. Proprietary toolkits, on the other hand, require the user topay the toolkit authors for a license. Finally, some toolkit authors will negotiate licenses withthe users according to the circumstances or intended purposes of the user. These fall under"contact authors for availability." The toolkits classified as free under open source are shownin table 3 below.

Table 3: List of Toolkits Classified as Free Under Open Source Licenses

Type of License ToolkitOpen Source(uncategorized1)

ABLE (for academic and non-commercial use)DeXDOMARECHOjECHOMAML (for evaluation purposes)SimAgentZeus (read license)

Academic Free License ECJjESMason

Artistic License Agreement SimBioSysBSD Ascape

Repast (RepastJ, RepastPy, RepastS,Repast.net)SOAR

Cougaar Open SourceLicense (COSL)

Cougaar

GPL BreveJASA LSDMadkit (for development and non-commercial applications)ModulecoPS-IJade's sim++SDMLSimPlusPlusSimPackSMESugarscapeSwarm

LGPL ADKiGenJadeJASMadkit (for basic libraries)FAMOJAOmoniaSeSAm

1 These toolkits do not fall under standard licensing agreements such asBSD, GPL, and LGPL. The licensing generally is defined by theauthors/developers of the toolkits

5.14The following toolkits do not release the source code.

BrahmsJCA-SimMAGSYMacStarLogoMIMOSENetLogoOBEUSStarLogoStartLogo TStarLogo TNGVSEit

Page 9: Tools of the Trade - Journal of Artificial Societies and ...jasss.soc.surrey.ac.uk/12/2/2/2.pdf · The second main ABM survey is by Castle and Crooks (2006). In this paper, Castle

5.15The list below shows the toolkits that have proprietary licenses. Note that some of thesetoolkits are free or discounted if they are used solely for academic purposes.

AgentBuilder (discounted academic licenses)AgentSheetsAnyLogiciGen (discounted academic licenses)JESS (free for academic purposes)MatlaboRIS (free for academic purposes)

5.16Finally, in table 4, we see the spectrum of toolkits that are free under certain restrictions. Forexample, some platforms are free to use and distribute as long as they are used for solelynon-commercial purposes. Others are free as long as they are used for academic purposes.Another category of toolkits is governed by licenses that restrict individuals from distributingmodified versions of the source code. Finally, some platforms have their own unique/hybridlicenses that are best suited for user to view for himself/herself.

Table 4: Toolkits That Are Free Under Certain Restrictions

Type of License ToolkitAcademic Purposes ABLE

Brahms (closedsource)JESSoRISSDML

To modify but not to distribute the modifiedversion

Cormas

Use and distribution for non-commercial purposes ABLEOpenStarLogo

See license for details SimAgent

5.17The majority of the remaining toolkits use their own special purpose licenses. These toolkitsare depicted in table 5 below.

Table 5: Licenses Employed by Various ABM Toolkits

Type of License ToolkitAssociated third party licenses (usually non-proprietary)

MAS-SOCSDMLSimAgent

Contact authors for availability MAS-SOCContact Tryllian to acquire a closed source license ADK

Operating System

5.18The third category we examine is the operating system on which the toolkits run. Theoperating system domain is depicted as follows. Note the variety of operating systemspecifications defined in the literature.

ADUXAIXAny platform that supports C++/any C++ compilerAny platform with a Java Virtual Machine (JVM)

Java 2 JVMSDK version 1.4.1 or laterJava 2 SDKJava Runtime Environment (JRE) 1.5.0 or laterJava SDK 5.0 or betterJDK 1.1Any Java Development Kit (JDK) installationJava 2 Runtime Environment(JRE) and Internet Explorer 5.x or greaterJRE Java version 1.4JRE version 1.3.1Bea's JRockit JVMIBM's JVM

BSDDOSEmulation of Windows NT or LinuxHPUXIA32 Linux; PPC Linux

Page 10: Tools of the Trade - Journal of Artificial Societies and ...jasss.soc.surrey.ac.uk/12/2/2/2.pdf · The second main ABM survey is by Castle and Crooks (2006). In this paper, Castle

IBM mainframesJava-1.4-capable PDAsLinux

x86 or x86_64 linuxSuSE Open Linux 10.2 or later, x86-32Ubuntu Linux 7.04 or later, x86-32

MacintoshOS XOS X 10.2.6 or higher with Java 1.4 installedOS X 10.4.1 or later

Multi-computer systemsMeiko and BBNSun3, Sun 4, and HP 9000 workstations

OS/2OS/370OS/400SGISun SolarisSparc/Intel SolarisSunOSUnixWindows

Windows 3.1Windows 95Windows 98Windows NTWindows 2000Windows XPWindows as a DOS ApplicationWindows Vista, x86-32

5.19As depicted, the majority of toolkits run on Windows and Linux, although there is a largecontingent that runs on Macintosh. There also is a growing trend toward implementing andrunning models in Java, both because of the simplicity of programming and also because ofthe platform independence that Java offers. We also can see this trend in table 6 (ToolkitsThat Run on Various Windows Operating Systems). An important note for the reader is thatwe tried to look at each toolkit as completely and comprehensively as possible. We gatheredthis information from open source documentation provided by the authors and by thirdparties who used the platform. However, this table is not complete; Rather, it is a baseline ofplatforms that have been known and documented to work on particular operating systems.Note that this does not necessarily exclude toolkits from running on additional operatingsystems. For example, a toolkit that runs on Windows NT may also run on Windows 2000,Windows XP, and Windows Vista. In places where this table is not complete, it is because thedevelopers have not specified the complete granularity of the platforms with respect todifferent operating systems.[2]

Platforms Per Subcategory

5.20We will begin with the Windows platforms. Where specified in documentation, we havedecomposed the platforms into Windows 3.1, 95, 98, 2000, ME, NT, XP, and Vista. See table6. Again, the reader should note that this is not a complete representation; rather it presentsa categorization of platforms based on documented success for each platform on eachoperating system.

Table 6: Toolkits That Run On Various Windows Operating Systems

Operating System ToolkitWindows (version not specified) AgentSheets

AscapeBreveCormasDOMARLSDMatlabModulecoStarLogoStarLogo TNGOBEUSoRISPS-IRepast.NetSeSAmSimAgent (without graphics)Swarm

Windows 3.1 SDMLWindows 95 ABLE

iGenSDML

Page 11: Tools of the Trade - Journal of Artificial Societies and ...jasss.soc.surrey.ac.uk/12/2/2/2.pdf · The second main ABM survey is by Castle and Crooks (2006). In this paper, Castle

ZeusWindows 98 ABLE

CougaariGenSDMLZeus

Windows NT ABLEAgentBuilder CougaariGenMIMOSE (Java based client)SDMLZeus

Windows 2000 AgentBuilderADKBrahmsiGenSDMLZeus

Windows XP AgentBuilderADKAnyLogicBrahmsCougaariGen

Windows as a DOS Application MOOSESimPlusPlus

Windows Vista, x86-32 AnyLogic

5.21The next prominent platform is Linux and its distributions such as Ubuntu and SuSE. Theseare depicted in table 7.

Table 7: Toolkits That Run On Linux Operating Systems

Operating System ToolkitLinux (version not specified) AgentBuilder

ADKAscapeBrahmsBreveCormasCougaarDOMARMAGSYMAMLMatlabMIMOSE (client/server version)MIMOSE (Java based client)ModulecoMOOSEoRISSimAgentStarLogoPS-ISDMLSeSAmSwarmZeus

X86 or x86_64 linux DeXSuSE Open Linux 10.2 or later, x86-32 AnyLogicUbuntu Linux 7.04 or later, x86-32 AnyLogic

5.22Next we have toolkits supported by the Macintosh operating system (table 8). These includetoolkits such as Ascape, AgentSheets, Cormas, Cougaar, Brahms, Breve, SeSAm, StarLogoTNG,and Swarm.

Table 8: Toolkits That Run On Macintosh Operating Systems

Operating System ToolkitMacintosh (version not specified) Ascape

CormasLSDMatlab

Page 12: Tools of the Trade - Journal of Artificial Societies and ...jasss.soc.surrey.ac.uk/12/2/2/2.pdf · The second main ABM survey is by Castle and Crooks (2006). In this paper, Castle

ModulecoMacStarLogoStartLogo TStarLogo TNG

OS X AgentSheetsBrahmsBreveCougaarSeSAmSwarm

OS X 10.2.6 or higher with Java 1.4 installed StarLogoOS X 10.4.1 or later AnyLogic

5.23The next major contingent of toolkits are those that will run on any machine that has a JavaVirtual Machine (JVM) or Java Runtime Environment (JRE) installed. These are depicted in table9. Where specified in the documentation, we have decomposed these into severalsubcategories, including any platform with a Java Virtual Machine, at least SoftwareDevelopment Kit (SDK) 1.4.1 or later, SDK 2.0 or later, Java Runtime Environment 1.5 or later,and several more. Again, the reader should note that this is not a complete representation;rather it presents a categorization of platforms based on documented success for eachplatform on each operating system; Thus, some toolkits may work with additional virtualmachines or subcategories.

Table 9: Toolkits That Run on Various Java Virtual Machines

Type of Java Virtual Machine ToolkitAny platform with a Java Virtual Machine (JVM) AgentBuilder

ADKAgentSheetsjECHOECJJadeJASJASAJCA-SimjESJESSRepastSRespastJ

Java 2 JVM ABLEMadkit

SDK version 1.4.1 or later ADKNetLogoSimPack

Java 2 SDK SugarscapeJava Runtime Environment (JRE) 1.5.0 or later AnyLogic

JASJava SDK 5.0 or better ADK (but must contact

for support)SeSAm

JDK 1.1 VSEit (Java 1.1.7 or later)Any Java Development Kit (JDK) installation FAMOJA

OmoniaJava 2 Runtime Environment(JRE) and InternetExplorer 5.x or greater

Sugarscape

JRE Java version 1.4 ADKJRE version 1.3.1 ADK

MasonBea's JRockit JVM ADKIBM's JVM ADK

5.24Another prominent platform is Unix. Toolkits that will run specifically on Unix platforms are:

ABLEADKAscapeCormasDOMARECHOLSDMAGSYStarLogoSDML

Page 13: Tools of the Trade - Journal of Artificial Societies and ...jasss.soc.surrey.ac.uk/12/2/2/2.pdf · The second main ABM survey is by Castle and Crooks (2006). In this paper, Castle

SimAgentSMEZeus

5.25Finally, we also have a small contingent of toolkits that run on the Sun Solaris platform.

AgentBuilderADKMAGSYMatlabMIMOSE (client/server version)MIMOSE (Java based client)SDMLZeus

5.26Table 10 depicts the remaining domain of toolkits per operating system.

Table 10: Remaining Toolkits per Operating System

Operating System ToolkitADUX SDMLAIX SDMLAny platform that supports C++/any C++compiler

SimBioSysSimPackSimPlusPlus

BSD ZeusDOS MOOSE

SimPlusPlusEmulation of Windows NT or Linux PS-IHPUX SDMLIA32 Linux; PPC Linux oRISIBM mainframes ADK (paid support)Java-1.4-capable PDAs CougaarMulti-computer systemsMeiko and BBN Sun3, Sun 4, and HP 9000 workstations

Jade's sim++

OS/2 ABLESimPlusPlus (as a DOSapplication)

OS/370OS/400

ADK

SGI MOOSEoRISSDML

Sparc/Intel Solaris Brahms (available uponrequest)

SunOS MAGSYMOOSE

Domain

5.27In this section, we examine various domains for which the toolkits are specialized. Many ofthe toolkits are specifically tailored for particular domains, and many are general purposetoolkits that can be used for a variety of domains. The main domains are shown below.

Applied simulations/electronic CADArtificial Intelligence (general purpose)

Machine learning and reasoningSocial sciences3D simulations

multi-agent systemsHuman-like intelligent agents

BiologyCellular automataComputational economics/Auction mechanismsDistributed simulations

Large scaleMobile (distributed) agentsSmall scale embeddedVirtual realityHighly distributed, scalable, reliable, survivable applications

Ecological modelingEducation

Page 14: Tools of the Trade - Journal of Artificial Societies and ...jasss.soc.surrey.ac.uk/12/2/2/2.pdf · The second main ABM survey is by Castle and Crooks (2006). In this paper, Castle

Artificial IntelligenceFor students to model the behavior of decentralized systemsImplementing software agentsLearning (including explanation based learning)Teaching computer simulation

At the undergraduate (senior) and graduate levelsK-12 social sciences, social studies, math, and science

Using object oriented principlesTeaching programming techniques to students new to simulationScientific and engineering math and computation; data analysis, exploration, andvisualization

EnterprisesSingle enterpriseSystems of enterprises

Evolutionary computingGeneral purpose agent based

Multi-agent systems with agent based simulation layerGeneral-purpose parallel applications

Human performance modelingTraining systemsPerformance support systems

Multi-agent systems (general purpose)Large scale distributedComplex environmentsDistributedDecision-making in complex environments (with limited rationality)Organizational processes

Natural resources managementNatural SciencesPolitical phenomenaRule engine and scripting environmentSimulating organizational processesSocial sciences

Help beginning users get started authoring modelsSocial systems

Testing Base24 applicationsUrban simulation

5.28The major specializations are agent based systems, artificial intelligence, distributedsimulation, education, multi-agent systems, and social and natural sciences. An importantnote for the reader is that these are the primary domains for which the toolkit has beendesigned, and these are the primary domains for which the toolkit has been documented as aprimary domain. Note that many toolkits are used for more domains that just their primary.However, the secondary domains have extremely unequal and incomplete representation.Therefore, we do not attempt to classify toolkits further than their primary domain. Also notethat the domain categories listed here are the terminology of the toolkit documentation. Assuch, we do not attempt to disambiguate domain terminology. Rather, the goal is to give theuser a broad feel for the types of domains for which these toolkits may be applicable, so thatit will bring to the fore potential toolkits that the user otherwise may not have considered.The user should then explore further the differences between similar terminology in thedomain categories of interest.

Platforms Per Subcategory

5.29We will begin with general purpose agent based platforms (table 11). These toolkits are notgeared toward special domains but rather can be used for general classes of agent basedsimulation. These include toolkits such as Swarm, Mason, Magsy, AgentBuilder Lite/Pro,Anylogic, Madkit, DeX, DOMAR, and Ascape. One toolkit of note is Madkit. It actually is amulti-agent platform, but it includes an agent based simulation layer. Another toolkit of noteis DeX. DeX has an additional special emphasis on parallel applications.

Table 11: General Purpose Agent Based Toolkit

Purpose ToollkitGeneral purpose agent based AnyLogic

AscapeDOMARJASMAGSYMasonSeSAmSimPackSwarm

Multi-agent systems with agent based simulation layer MadkitGeneral-purpose parallel applications DeX

5.30

Page 15: Tools of the Trade - Journal of Artificial Societies and ...jasss.soc.surrey.ac.uk/12/2/2/2.pdf · The second main ABM survey is by Castle and Crooks (2006). In this paper, Castle

Next, we have toolkits that specialize in distributed simulation (table 12). Here we see severaltoolkits that have even more particular specializations within this domain. For example,Cougaar and Tryllian Agent Development Kit specialize in large scale distributed applications,whereas oRIS specializes in virtual reality. Cougaar, in addition, has subspecializations inscalable, reliable, survivable and small scale embedded applications.

Table 12: Toolkits Specializing in Distributed Simulation

Type of Distributed Simulation ToolkitGeneral purpose distributed simulations AnyLogic

DOMARJadeMadkit

Large scale ADKCougaarSimAgent

Mobile (distributed) agents ADKSmall scale embedded CougaarVirtual reality oRISHighly distributed, scalable, reliable, survivable applications Cougaar

5.31Another main focus is education. Few toolkits are oriented toward education as their primaryspecialization. The forerunners as pedagogical tools are AgentSheets, StarLogoT, NetLogo,oRIS, and StarLogo (and decedents OpenStarLogo and StarLogoTNG). Since there is a stronginterest in education (Serenko 2002), and because many of the platforms can be and arebeing used for pedagogical purposes in addition to their primary specialization, we haveincluded in our educational taxonomy toolkits with secondary educational foci (see table 13).There are general purpose educational platforms, and there are toolkits that specialize inparticular aspects of education. The general purpose toolkits include StarLogo, NetLogo,StarLogoT and MIMOSE. Within educational subspecializaties, there are toolkits that specializein teaching programming techniques (Matlab, Sugarscape), object oriented principles (jECHO),math and computation (Matlab), how to model decentralized systems (StarLogo, StarLogoT,StarLogoTNG), computer simulation (FAMOJA, oRIS, Matlab, SeSAm), and implementingsoftware agents (Brahms, SimAgent). Teaching computer simulation is further specialized forK-12 students (AgentSheets, StarLogo), and undergraduate (senior) and graduate levelstudents (SimPack).

Table 13: Documented Platforms With a Primary or SecondaryPedagogical Focus

Pedagogical Focus ToolkitGeneral purpose education3 MIMOSE

NetLogoStarLogoStarLogoTStarLogoTNGVSEit

Artificial Intelligence BreveFor students to model the behavior of decentralized systems StarLogo

StarLogoTStarLogoTNG

Implementing software agents BrahmsSimAgent

Learning (including explanation based learning) SOARTeaching computer simulation FAMOJA

MatlaboRISSeSAm

At the undergraduate (senior) and graduate levels SimPackK-12 social sciences, social studies, math, and science AgentSheets

StarLogoUsing object oriented principles jECHOteaching programming techniques to students new tosimulation

MatlabNetLogoStarLogoTNGSugarscape

scientific and engineering math and computation; dataanalysis, exploration, and visualization

Matlab

3 Few toolkits are oriented toward education as their primaryspecialization. The forerunners as pedagogical tools are AgentSheets,StarLogoT, NetLogo, oRIS, and StarLogo (and decedents OpenStarLogo

Page 16: Tools of the Trade - Journal of Artificial Societies and ...jasss.soc.surrey.ac.uk/12/2/2/2.pdf · The second main ABM survey is by Castle and Crooks (2006). In this paper, Castle

and StarLogoTNG). Since there is a strong interest in education (Serenko2002), and because many of the platforms can be and are being used forpedagogical purposes in addition to their primary specialization, we haveincluded in our educational taxonomy toolkits with secondary educationalfoci.

5.32The next major specialization is multi-agent systems (table 14). While many of these toolkitsdo have support and are being used for agent based modeling, their main purpose is forbuilding multi-agent systems. These toolkits include Brahms, Cormas, Cougaar, Jade, Madkit,Magsy, Moduleco, oRIS, and SDML.

Table 14: Toolkits With Primary Specialization in Multi-Agent Systems

Type of Multi-agent System ToolkitMulti-agent systems (general purpose) AgentBuilder

oRISMAGSY

Large scale distributed ADKCougaar

Complex environments SimAgentDistributed JadeDecision-making in complex environments (with limitedrationality)

SDML

Organizational processes Brahms

5.33The next major contingent of toolkits are those that specialize in artificial intelligence. Theseinclude toolkits that are geared for artificial intelligence in general, for machine learning, forcreating human-like intelligent agents, and for artificial intelligence for the social sciences inparticular (See table 15).

Table 15: Toolkits With a Primary Specialization in Artificial Intelligence

Type of Artificial Intelligence Focus ToolkitArtificial Intelligence (general purpose) Breve

iGenSOAR

Machine learning and reasoning ABLEZeus

Social sciences Omonia3D simulations multi-agent systems

Breve

Human-like intelligent agents SimAgent

5.34In table 16, we see the toolkits that are geared specifically for the social sciences. Again,there are general purpose toolkits as well as particular subspecializations within.

Table 16: Toolkits With A Primary Specialization Toward the SocialSciences

Type of Social Science Specialization ToolkitGeneral purpose Social Sciences AgentSheets

LSDFAMOJAMAMLMAS-SOCMIMOSENetLogoRepastSimBioSysStarLogoStarLogoTStarLogo TNGSugarscapeVSEit

Help beginning users get started authoring models NetLogoSocial systems Moduleco

5.35

Page 17: Tools of the Trade - Journal of Artificial Societies and ...jasss.soc.surrey.ac.uk/12/2/2/2.pdf · The second main ABM survey is by Castle and Crooks (2006). In this paper, Castle

Finally, we have toolkits that are geared toward the natural sciences. These are:

MatlabNetLogoOpenStarLogoStarLogoStarLogoTStarLogo TNG

5.36The rest of the domains are highly specialized and only have one or two supporting toolkits.These can be found in the table 17.

Table 17: Highly Specialized Documented Primary Domains Across theABM Spectrum

Documented Primary Domain ToolkitApplied Simulations/Electronic CAD Jade's Sim++Biology SimBioSysCellular automata JCA-SimComputational economics/Auction mechanisms JASAEcological modeling ECHO

jEchoSME

Enterprises jESEvolutionary computing ECJHuman performance modeling iGen

SOARTraining systems iGenPerformance support systems iGenNatural Resources Management CormasPolitical phenomena PS-IRule engine and scripting environment JESS

ZeusSimulating organizational processes BrahmsTesting Base24 applications SimPlusPlusUrban simulation OBEUS

User Support

5.37Another important category that individuals and organizations look at when determining atoolkit to use is the degree of support that is available to the user. In this section we examinethe types of user support that are available. These include project wikis, documentation (suchas user manuals), consulting, bug lists, formal training, example models, tutorials, third partyextensions, selected references, application programming interfaces (APIs), and frequentlyasked questions (FAQ) sections. The types of support in the user support domain are:

APIBug ListConsultingDocumentationExample ModelsFAQFormal TrainingSelected ReferencesTutorialsThird Part ExtensionsWiki

Platforms Per Subcategory

5.38Next, we have toolkits that have some form of user documentation. By user documentation,we are looking for manuals that explain how to use the toolkit. Almost every platform comeswith a user manual. Note that in this survey, we do not attempt to compare thecomprehensiveness of the user manuals; we merely are mentioning that the toolkit at leastcomes with some degree of documentation. We did, however, note several toolkits inparticular that have limited documentation (as indicated below).

ABLEADKAnyLogicAscapeBrahmsBreve

Page 18: Tools of the Trade - Journal of Artificial Societies and ...jasss.soc.surrey.ac.uk/12/2/2/2.pdf · The second main ABM survey is by Castle and Crooks (2006). In this paper, Castle

CormasCougaarDeXECJFAMOJAiGENJADEJASJASA (limited)JCA-SimjES (limited)JESSLSDMacStarLogoMagsy (limited)MasonMatlabMIMOSEModuleco (limited)MOOSENetLogoOBEUSOmoniaOpenStarLogooRISPS-IRepastSDML (limited)SimAgentSimPackSMESOARStarLogoStarLogoTStarLogo TNGSwarmVSEitZeus

5.39Some toolkits have tutorials set up to assist the user in getting started authoring models.These toolkits are:

ABLEAgentSheetsBrahmsBreveCougaarECJFAMAJOJADEJASMAMLMasonNetLogoRepastSDMLSeSAmSimAgentSOARStarLogoStarLogoTStarLogo TNGSwarm

5.40Again, in this survey, we do not attempt to evaluate the quality of the tutorials, only that thesetoolkits have tutorials established to support the user.

5.41Third, we identify toolkits which include mailing lists, listservs, or online forums to supportthe user:

ABLEADKAgentBuilderAnyLogicAscapeBrahmsBreveCormasCougaar

Page 19: Tools of the Trade - Journal of Artificial Societies and ...jasss.soc.surrey.ac.uk/12/2/2/2.pdf · The second main ABM survey is by Castle and Crooks (2006). In this paper, Castle

DeXECJJADEJASAJESSMadkitMasonNetLogoOpenStarLogoRepastSDMLSeSAmSimPackSMESOARStarLogoStarLogo TNGSwarm

5.42Many toolkits also have a section for frequently asked questions. These toolkits include:

ABLEADKAgentBuilderAgentSheetsBreveCougaarJADEJESSMadkitNetLogoOpenStarLogoRepastSeSAmSOARStarLogoStarLogo TNGSwarm

5.43Some toolkits include their APIs. These are depicted below.

ABLEADKAscapeBreveDeXDOMARECJFAMOJAJADEJASJASAJCA-SimMasonModulecooRISStarLogoTStarLogo TNGSugarscape

5.44Some toolkits also have defect (also known as "bug") lists.

ADKAgentBuilderBreveJADEMadkitMatlabNetLogoOpenStarLogoRepastSOARStarLogoStarLogoTSwarmVSEit

5.45In addition to tutorials, many toolkits also have example models available.

Page 20: Tools of the Trade - Journal of Artificial Societies and ...jasss.soc.surrey.ac.uk/12/2/2/2.pdf · The second main ABM survey is by Castle and Crooks (2006). In this paper, Castle

ADKCormasECJJCA-SimJESSLSDMadkitMAMLOmoniaOpenStarLogooRISRepastSimAgentSOARSwarmVSEit

5.46These differ from tutorials because these are more comprehensive templates that individualscan use to help them use author models. They may not necessarily come with directions onhow to use the toolkit in general. Tutorials, on the other hand, are designed to walk the userstep by step through how to use the toolkit. They may or may not include model templates.

5.47Some toolkits also include selected references/publications that users can read for moreinformation on the toolkit. These are depicted below.

ABLEAgentSheetsAnyLogicAscapeCormasCougaarECHOiGENJASAMAMLMasonMOOSENetLogoPS-IRepastSDMLSimAgentSimPackSOARSwarm

5.48Several of the toolkits have consulting services available in conjunction with their toolkit.

AnyLogicAgentBuilderiGenMatlab

Note that these are all proprietary toolkits, so the user probably will have to pay extra forthese services.

5.49Some toolkits also have specialized training classes available for users.

AgentBuilderAgentSheetsAnyLogicCormasiGENMatlab

Again, these are mostly proprietary toolkits.

5.50Some toolkits have links on their website to third party extensions that individuals havedeveloped to fulfill a specialized need.

JESSMasonMatlabNetLogoRepastSOAR

For example, Mason has third party extensions that aid in social network statistics, rigid body

Page 21: Tools of the Trade - Journal of Artificial Societies and ...jasss.soc.surrey.ac.uk/12/2/2/2.pdf · The second main ABM survey is by Castle and Crooks (2006). In this paper, Castle

physics, and integration with the Jung social network system (Mason website).

5.51Finally, we have toolkits that have project wikis as part of user support (shown below).

BrahmsFAMOJAJESSSeSAmSOARSwarm

Characteristics per platform

5.52In this section, we compiled all of the preceding information into an easy-to-use matrix.Whereas the previous section aids the user in viewing toolkits across one or twocharacteristics, this section is helpful for the user who wants to examine all of thecharacteristics across one platform. For better viewing purposes, we split the matrix into twosubmatrices (See Appendices 2 and 3).

Conclusion: On-going and Future Work

6.1We have developed a web-based tool that incorporates all of our findings so far. This is asearchable repository of ABM platforms into which users input a range of characteristics, andthe tool returns a list of candidate platforms that contain those characteristics. This tool isavailable at http://agent.cse.nd.edu/abmsearchengine.php.

6.2We also have created a corresponding page in Wikipedia based on this research. In addition tosummarizing our current results, we include several categories of interest concerning 3D andGIS capabilities. The article is entitled "ABM Software Comparison," and it is linked from themain "Agent Based Model" wiki. We invite the ABM community to participate in expanding thisresearch further.

6.3In the future, we would like to continue our research into various ABM toolkits. In particular,we would like to examine more complex characteristics across the ABM spectrum. In our nextwork, we will design a survey to explore characteristics such as ease of use, degree ofprogramming required, maximum number of agents supported, statistical support, andfeature completeness.

6.4In this paper, we have begun a comprehensive survey of ABM platforms. We gathered as manyplatforms as possible that were being used for ABM purposes, and we began to classify them.In particular, we examined 5 characteristics in depth: programming language required, type oflicense governing the toolkit, type of operating system required, primary domain for whichthe toolkit has been designed, and degree of support available to the user. Our goal was togive project designers the capability to easily compare toolkits based on these characteristicsand to help him/her better choose a toolkit that suits his/her needs. As such, we haveincluded a range of general as well as specialized toolkits. Some of the toolkits have neverbeen included in surveys before, and we hope that including these will help individualschoose toolkits that are more suited for their projects rather than having to "redesign thewheel." In order to facilitate comparison, we created several taxonomies which have beenpresented here in tabular form. With these representations, the user can quickly examine onecharacteristic across a range of toolkits as well as a range of characteristics across one toolkit.

Acknowledgements

We would like to thank Curtis Blais, Ranjeev Mittu, and Amy Henninger for their assistance inthis research.

Notes

1There is some ambiguity concerning the terms "platform" and "toolkit." From the ComputerScience domain, the term "toolkit" denotes the application level software package, and thetern "platform" denotes the underlying hardware on which the software runs. In the SocialScience domain, on the other hand, the term "platform" and "toolkit" have been usedinterchangeably (Gilbert 2002; Tobias 2004). In this paper, we also use the terms "platform"and "toolkit" interchangeably.

2Please note this limitation in this section and throughout the remainder of the paper.

Appendix 1: Glossary of Acronyms

ABLEAgent Building and Learning Environment

Page 22: Tools of the Trade - Journal of Artificial Societies and ...jasss.soc.surrey.ac.uk/12/2/2/2.pdf · The second main ABM survey is by Castle and Crooks (2006). In this paper, Castle

ADKTryllian Agent Development Kit

APIApplication Programming Interface

BSDBerkley Software Distribution

CormasCommon-pool Resources and Multi-Agent Systems

DOMARDistributed operator model architecture

FAMOJAFramework for Agent-based Modelling with Java

FAQFrequently Asked Questions

GPLGNU General Public License

JASAJava Auction Simulator API

JDKJava Development Kit

jESJava Enterprise Simulator

JREJava Runtime Environment

JVMJava Virtual Machine

LGPLGNU Lesser General Public License

LSDLaboratory for Simulation Development

MAGSYRules Based Multi-Agent System

MatlabMatrix Laboratory

MIMOSEMicro-und Multilevel Modelling Software

MadkitMulti Agent Development Kit

MAMLMulti-agent modeling language

MAS-SOCMulti-Agent Simulations for the SOCial Sciences

MOOSEMultimodeling Object-Oriented Simulation Environment

OBEUSObject Based Environment for Urban Simulation

PS-IPolitical Science- Identity

RepastREcursive Porous Agent Simulation Toolkit

SDKSoftware Development Kit

SeSAMShell for Simulated Agent Systems

SMESpatial Modeling Environment

SDMLStrictly Declarative Modeling Language

VSEitVersatile Simulation Environment for the Internet

Appendix 2: Characteristics Per Platform - Domain, License, and ProgrammingLanguage Required

Platform Domain1 LicenseProgrammingLanguage Required

AgentBuilding andLearningEnvironment(ABLE)

Building intelligent agents usingmachine learning and reasoning

Open source(free foracademic andnon-commercialuse)

Able Rule Language(ARL)

AgentBuilderLite/Pro

General purpose multi-agentsystems

Proprietary; Discountedacademiclicensesavailable

Knowledge Query and Manipulation Language(KQML); Java; C; C++2

Tryllian AgentDevelopmentKit (ADK)

Large scale distributed applications; Mobile (distributed)agents

Dual licensed: either accept theLGPL or contact

Java

Page 23: Tools of the Trade - Journal of Artificial Societies and ...jasss.soc.surrey.ac.uk/12/2/2/2.pdf · The second main ABM survey is by Castle and Crooks (2006). In this paper, Castle

Tryllian toacquire a closedsource license

AgentSheets Teaching simulation to grades K-12 in social studies, mathematics,sciences, and social sciences

Proprietary Visual AgenTalk (VAT); arule-based visualprogramming language;can be exported to Java;programming byexample andprogramming bydemonstration

AnyLogic Agent based general purpose;distributed simulations

Proprietary Java; UML-RT (UML forreal time)

Ascape General-purpose agent-basedmodels.

BSD Java

Brahms Multi-agent environment forsimulating organizationalprocesses

Free, but onlyavailable forresearch or non-commercialpurposes

Brahms language (anagent oriented language)

Breve Building 3D simulations of multi-agent systems and artificial life.

GPL Simple Interpreted objectoriented language calledSteve; agent behaviorscan be written in python

Common-poolResourcesand Multi-Agent Systems(Cormas)

Natural resources management Free to modifybut not todistribute the modified version

Smalltalk (requiresVisualWorks to run)

Cougaar Multi-agent systems; highlydistributed, scalable, reliable,survivable applications;Domain independent; large scaledistributed, complex, dataintensive (can be configured forsmall-scaled embedded Applications

Cougaar OpenSource License(COSL) is amodified versionof the OSIapproved BSDLicense

Java

DeX Developing, analyzing, andvisualizing dynamic agent-basedand multi-body simulations;parallel applications

Free (opensource) - readlicense

C++; dML (deX ModelingLanguage): a domain-specific language basedon C++; python

Distributed operatormodel architecture (DOMAR)

General purpose simulation environment

Free (opensource) - readlicense

Java (OMAR-J); lisp(OMAR-L)

ECHO Ecological modeling Free, opensource

C

jEcho Ecological modeling using object oriented principles

Free, opensource

Java

ECJ Evolutionary computation; genetic programming

Academic Free License - opensource

Java

Frameworkfor Agent-basedModellingwith Java(FAMOJA)

Resource flow management,theoretical systems science,applied systems, environmentalsystems analysis

LGPL Java

iGen Artificial intelligence engine; human performance modeling;embeddable cognitive agents

Proprietary(various pricesfor Developer's License;Modeler'sLicense; RuntimeLicense; andAcademicLicenses)

COGNET Execution Language (CEL); C++; C; Java

JADE Distributed applications composedof autonomous entities

LGPL version 2 Java

JAS General purpose agent based LGPL; associatedthird partylicenses (usuallynonÂproprietary)

Java

Page 24: Tools of the Trade - Journal of Artificial Societies and ...jasss.soc.surrey.ac.uk/12/2/2/2.pdf · The second main ABM survey is by Castle and Crooks (2006). In this paper, Castle

Java AuctionSimulator API(JASA)

Computational economics; Agentbased computational economics

GPL Java

JCA-Sim Cellular automata; Generalpurpose simulator

Free (closedsource)

Java; Cellular DescriptionLanguage (CDL) (forinput to simulation)

JavaEnterprise Simulator (jES)

A single enterprise or a system of enterprises

Academic free license

Java

JESS Rule engine and scripting environment

Proprietary; free for academic use

Java/Jess/JessML(declarative xml rulelanguage)

Laboratory forSimulation Development (LSD)

A language for simulation models; social sciences

GPL C++; LSD

Multi AgentDevelopmentKit (Madkit)

A generic, highly customizableand scalable platform; generalpurpose multi-agent platformwith agent based simulation layer

LGPL for basiclibraries; GPL fordevelopmentand non-commercialapplications

Java; MadKit may bedeveloped in alllanguages that arecompiled into Java; forthe moment, MadKitcomes with 4 scriptinglanguages which areexecuted in the JavaVirtual Machine: Scheme(Kawa), Jess (rule basedlanguage), BeanShell(Java interpreted) andPython (jython). Usingthe JNI (Java NativeInterface) technique, itshould be possible todevelop agents writtenin C or C++. It is alsopossible to embed Javaagents in C/C++ applications using thesame technique, usingJNI as a glue between thetwo worlds.

Rules BasedMulti-Agent System (MAGSY)

General purpose multi-agentsystems

Free (closedsource)

Magsy (productionlanguage)

Multi-agentmodelinglanguage(MAML)

Social science; domain specificprogramming language fordeveloping agent based models

The compiler isfreelydownloadablefor evaluation purposes (opensource) Later thesystem will beput under GNUlicense

MAML language; C;visual programminginterface

Mason General purpose; social complexity, physicalmodeling, abstract modeling, AI/machine learning

Academic Free License (opensource)

Java

Multi-AgentSimulationsfor the SOCialSciences (MAS-SOC)

Social simulation Contact authorsfor availability

AgentSpeak(XL), an extension ofAgentspeak(L) and (Environment Description Language forMulti-Agent Simulation) ELMS, a language for modelling environments where cognitive agentsare situated. Future workto implement in Java

MatrixLaboratory (Matlab)

Teaching simulation programming techniques tostudents new to simulation;scientific and engineering mathand computation; data analysis,exploration, and visualization

Proprietary MATLAB® is a high-levellanguage that includesmatrix-based datastructures, its owninternal data types, anextensive catalog offunctions, anenvironment in which todevelop your ownfunctions and scripts,

Page 25: Tools of the Trade - Journal of Artificial Societies and ...jasss.soc.surrey.ac.uk/12/2/2/2.pdf · The second main ABM survey is by Castle and Crooks (2006). In this paper, Castle

the ability to import andexport to many types ofdata files, object-oriented programmingcapabilities, andinterfaces to externaltechnologies such asCOM, Java, programswritten in C and Fortran,and serial port devices.

Micro- undMultilevelModellingSoftware(MIMOSE)

Social sciences; education Free (closedsource)

A model descriptionlanguage (derived fromfunctional languageparadigms)

Moduleco Multi-agent platform GPL JavaStarLogo Social and natural sciences;

Educators; for students to modelthe behavior of decentralizedsystems; user friendly for K-12students

Free (closedsource) -ClearthoughtSoftwareLicense, Version1.0

StarLogo (an extensionof Logo)

MacStarLogo Social and natural sciences;Educators; for students to modelthe behavior of decentralizedsystems; user friendly for K-12students

Free (closedsource)

MacStarLogo

OpenStarLogo Social and natural sciences;Educators; for students to modelthe behavior of decentralizedsystems; user friendly for K-12students

Free for use anddistribution fornon-commercialpurposes (opensource)

StarLogo (an extensionof Logo)

StarLogoT Social sciences; Education; decentralized networks

Free (closedsource)

StarLogoT

StarLogo TNG(The NextGeneration)

Social and natural sciences;teaching basic computerprogramming skills

StarLogo TNGLicense v1.0 -(closed source) -the code may befreed upeventually. The original StarLogois apparentlygoing to be released under an open source licensesoon

StarLogo TNG language- a graphicalprogramming languageand a 3d world

NetLogo Social and natural sciences; Helpbeginning users get startedauthoring models

Free, not opensource; A quicksummary of thelicense is thatuse isunrestricted,includingcommercial use,but there aresomerestrictions onredistributionand/ormodification(unless youcontact UriWilensky toarrange differentterms)

NetLogo

Object BasedEnvironmentfor UrbanSimulation(OBEUS)

Urban simulation Free (closedsource)

Microsoft.net .NETlanguages - C#, C++, orVisual Basic.

oRIS Teaching; programming byconcurrent objects, multi-agentsystems, distributed virtual reality,adaptive control

Proprietary -(free foracademicinstitutions)

Oris language; Very closeto C++ and Java(dynamic and interpretedmulti-agent language)

PoliticalScience-Identity (PS-I)

Political phenomena GPL No programmingrequired; TCL/TK scripting toapply effects

Page 26: Tools of the Trade - Journal of Artificial Societies and ...jasss.soc.surrey.ac.uk/12/2/2/2.pdf · The second main ABM survey is by Castle and Crooks (2006). In this paper, Castle

Quicksilver(now calledomonia)

AI/social sciences LGPL Java

RecursivePorous AgentSimulationToolkit(Repast)

Social sciences BSD Java (RepastS, RepastJ);Python (RepastPy); VisualBasic, .Net, C++, J#, C#(Repast.net)

StrictlyDeclarativeModelingLanguage(SDML)

Multi-agent systems (with limitedrationality)

GPL; third partylicense (forVisualWorks)

Smalltalk release 5i.2Non-Commercial

Jade's sim++ Parallel simulation; Appliedsimulations; network planning;electronic CAD; real timecommunication simulation

GPL version 2 C++

SimPlusPlus Testing Base24 applications GPL Fully programmable withany language that cansupport activeXcomponents (e.g. C,C++, VB, VBA, Java, andothers), but noprogramming required

SimAgent (akasim_agent)

Research and teaching related to the development ofinteracting agents in environmentsof various degrees and kinds ofcomplexity; exploratory researchon human-like intelligent agents;systems involving large numbersof highly distributed fairlyhomogeneous relatively 'small'agents; primarily designed tosupport design andimplementation of very complexagents, each composed of verydifferent interacting components(like a human mind) where thewhole thing is embedded in anenvironment that could be amixture of physical objects andother agents of many sorts

Free (opensource);MIT/XFREE86 license (forpoploglibraries); maylater be replacedby GPL

Pop-11, like CommonLisp, is a powerfulextendable multi-purpose programminglanguage supportingmultiple paradigms.Within the Poplogenvironment Pop-11also supports programswritten in Prolog,Common Lisp orStandard ML

SimBioSys Agent-based evolutionarysimulations in both biology andthe social sciences

Artistic LicenseAgreement

C++

MultimodelingObject-Oriented Simulation Environment (Moose)

General purpose, agent abased(modeled from SimPack)

Unable to verifythat available forpublic use

C++

SimPack General purpose, agent based;teaching computer simulation atthe underÂgraduate (senior) andgraduate levels

GPL C++; (C libraries nolonger maintained); Java

SpatialModeling Environment (SME)

Ecological economic; Ecoystems modeling

GPL No knowledge ofcomputer programmingrequired

Shell forSimulated AgentSystems (SeSAm)

General purpose (agent based);teaching

LGPL SeSAm-Impl andSeSAm-UML; Visualprogramming

SOAR General purpose AI; human performance modeling;learning (including explanation-based learning)

BSD Soar 1 to 5 in Lisp; Soar6 in C; Java, C++, TCL

Sugarscape Social sciences; education GPL JavaSwarm General purpose agent based GPL Java; Objective CVSEit Social sciences; education Free (closed

source)Java

ZEUS Rules engine and scriptingenvironment; Distributed multi-agent simulations

Open source(read license)

Visual editors and codegenerators

Page 27: Tools of the Trade - Journal of Artificial Societies and ...jasss.soc.surrey.ac.uk/12/2/2/2.pdf · The second main ABM survey is by Castle and Crooks (2006). In this paper, Castle

1 An important note for the reader is that these are the primary domains for which thetoolkit has been designed. Note that many toolkits are used for more domains that just theirprimary domain. However, the secondary domains have extremely unequal and incompleterepresentation. Therefore, we do not attempt to classify toolkits further than their primarydomain.

2 Developer-defined interagent communications commands; built-in Java classes (suppliedby the AgentBuilder toolkit) and domain-specific Java classes provided by the developer. Allof these classes used by AgentBuilder agents are referred to as Project Accessory Classes(PACs); PACs can be written entirely in Java, or can be written in C/C++ and invoked via theJava Native Interface (JNI)

Appendix 3: Characteristics Per Platform - Platform Supports, User Support,and Website

PlatformPlatformSupports3 User Support Website

AgentBuilding andLearningEnvironment(ABLE)

OS/2; Windows95; Windows 98;Windows NT; andUNIX (any Java 2JVM)

FAQ; tutorial;examples; discussionforum; emailingdevelopers;selectedpublications;API;documentation

http://www.alphaworks.ibm.com/tech/able

AgentBuilder Lite/Pro

Windows NT;Windows 2000;Windows XP;Linux; SunSolaris; anyplatform with aJava VirtualMachine

Consulting;training;example; FAQ;users manuals;defectreporting;mailing list

http://www.agentbuilder.com/Documentation/Lite/

Tryllian AgentDevelopmentKit (ADK)

Windows; Unix;Big Iron IBMmainframes4;anywhere thatthe Java StandardEdition version1.4 runs; SunJava RuntimeEnvironmentversion 1.3.1 or1.4; JDK 5.05;any platform onwhich Sun hasmade available aJVM; Windows2000; WindowsXP; Solaris;GNU/Linux;Additionally, theADK has beentested onOS/400 andOS/370. Apple'sOS X is notsupported, butpart of thedevelopment ofthe ADK is doneon OS X.

FAQ; defectreporting;documentation;mailing list;quickstartguide;examples;emailmaintainer formore support;API

http://www.tryllian.com

AgentSheets Windows;Macintosh OS X(PowerPCs)Macintosh OS X(Intel Macs);should run onany Java VirtualMachine

Manuals;tutorial movies;FAQ;recommendedreadings onprogrammingand simulation;personalcontact withdevelopers;elementaryschool training;teacher guides

http://www.agentsheets.com/index.html

Page 28: Tools of the Trade - Journal of Artificial Societies and ...jasss.soc.surrey.ac.uk/12/2/2/2.pdf · The second main ABM survey is by Castle and Crooks (2006). In this paper, Castle

AnyLogic AnyLogic 6models arestandalone Javaapplications (orapplets) and runon any Java-enabled platformor in any Java-enabled browserwith thefollowing versionof JRE (JavaRuntimeEnvironment):JRE1.5.0 or later;Java plug-in(needed to runmodels in a Browser) isoptionallyinstalled with theJRE; WindowsVista, x86-32;Windows XP,x86-32; AppleMacintosh OS X10.4.1 or later,Universal; SuSEOpen Linux 10.2or later, x86-32;Ubuntu Linux7.04 or later,x86-32

Demos;training;consulting;knowledgebase; onlineforum; ask aquestion;documentation;selectedreferences

http://www.xjtek.com/anylogic/

Ascape Windows;Macintosh; Unix;Linux; web

Online forum(emailing list);selectedreferences;documentation;API

http://ascape.sourceforge.net/index.html#Introduction

Brahms Windows 2000;Windows XP;Linux; Sparc/IntelSolaris; andMacintosh OS X

Documentation;API; tutorials;discussionforums; emailcontacts

http://www.agentisolutions.com/index.htm

Breve Macintosh OS X;Linux; andWindows

Emaildeveloper;tutorials; FAQ;forums; defectssection; API;documentation

http://www.spiderland.org/node/2602

Common-poolResourcesand Multi-Agent Systems(Cormas)

Linux; Macintosh;Unix; Windows

Training,selectedreferences;examples;online forum;emaildevelopers;documentation

http://cormas.cirad.fr/indexeng.htm

Cougaar Windows 98;Windows NT;Windows XP;Linux; MacintoshOS X; and Java-1.4-capablePDAs

FAQ; tutorials;slide shows;documentation;selectedreferences;email support;public forums;mailing lists

http://www.cougaar.org/

DeX X86 or x86_64Linux

Users guide;demo; API; peerto peeraccount; authorsupport

http://dextk.org/dex/index.html

Distributed operatormodel architecture (DOMAR)

Windows; Unix;Linux

API; technicalsupport fromauthors

http://omar.bbn.com/

ECHO Unixworkstations;

A few selectedpublications;

http://www.santafe.edu/~pth/echo/

Page 29: Tools of the Trade - Journal of Artificial Societies and ...jasss.soc.surrey.ac.uk/12/2/2/2.pdf · The second main ABM survey is by Castle and Crooks (2006). In this paper, Castle

Developed onSun Sparcarchitectureusing Sunos4.1.3

one outdatedpublication onhow to compileand use Echo

jEcho Any Javaplatform

Limiteddocumentation;Author haslimited time towork withclients

http://www.brianmcindoe.com/

ECJ Any Javaplatform

Tutorials;examples; API;documentation;online mailinglist

http://cs.gmu.edu/~eclab/projects/ecj/

Frameworkfor Agent-basedModellingwith Java(FAMOJA)

JDK installation Tutorial; API;wiki;documentation;

http://www.usf.uos.de/projects/famoja/

iGen Windows 95, 98, 2000, NT, XP

Consulting;training;selectedpublications;(user's forumanddocumentationunderconstruction,but not onlineyet)

http://www.cognitiveagent.com/

JADE Any Javaplatform

FAQ; mailinglist; defect list;tutorials; API;documentation

http://jade.tilab.com

JAS Any Javaplatform version1.5 or higher

API;documentation;tutorials; emailauthors

http://jaslibrary.sourceforge.net/

Java AuctionSimulator API(JASA)

Any Javaplatform

Public forum,not very wellused; API; smallset of selectedreadings;limiteddocumentation

http://sourceforge.net/projects/jasa/

JCA-Sim Any Javaplatform

Examples;documentation;API; onecontact listed

http://www.jweimar.de/jcasim/

JavaEnterprise Simulator (jES)

Any Javaplatform

limiteddocumentation

http://web.econ.unito.it/terna/jes/

JESS Java VirtualMachine

FAQ;documentation;mailing list;examples; thirdparty plug insand libraries;wiki

http://herzberg.ca.sandia.gov/jess/

Laboratory forSimulation Development (LSD)

Windows; Unix;Macintosh

Documentation;a couple ofexamples; 2contacts onwebpage (buthave to dig forthem)

http://www.business.aau.dk/lsd/lsd.html

Multi AgentDevelopmentKit (Madkit)

JVM (Java 2) FAQ;documentation;online forum;examples;defect list

http://www.madkit.org/

Rules BasedMulti-Agent System (MAGSY)

UNIX, LINUX, SunOS andSolaris systems.

Limiteddocumentation;some example(inside

http://www-ags.dfki.uni-sb.de/~kuf/magsy.html

Page 30: Tools of the Trade - Journal of Artificial Societies and ...jasss.soc.surrey.ac.uk/12/2/2/2.pdf · The second main ABM survey is by Castle and Crooks (2006). In this paper, Castle

installationpackage); nousers supportgroups; nocontact evenfor authors

Multi-agentmodelinglanguage(MAML)

PC; Linux Tutorial;examples;referencepapers; contactdevelopers

http://www.maml.hu/

Mason Any Javaplatform (1.3 orhigher)

Mailing list;documentation;Tutorials; thirdpartyextensions;referencepapers; API

http://cs.gmu.edu/~eclab/projects/mason/

Multi-AgentSimulationsfor the SOCialSciences (MAS-SOC)

Information notavailable

Information notavailable

http://inf.ufrgs.br/massoc (project page not available)

MatrixLaboratory (Matlab)

Windows; Linux; Solaris;Macintosh

Training;consulting;documentation;third partyproducts andservices;multiplesupportgroups; defectreports

http://www.mathworks.com/access/helpdesk/help/techdoc/matlab_product_page.html

Micro- undMultilevelModellingSoftware(MIMOSE)

Client/serverversion onSun/Solaris/ andLinux; Java basedclient onWindows NT,Solaris, andLinux

User's manual http://www.uni-koblenz.de/~moeh/projekte/mimose.html

Moduleco Windows; Linux;Macintosh

API; minimaldocumentation

http://www.cs.manchester.ac.uk/ai/public/moduleco/

StarLogo Macintosh OS X10.2.6 or higherwith Java 1.4installed;Windows; Unix;Linux (StarLogodoes not seem tobe compatiblewith Java 5/1.5on Solaris)

Mailing list;tutorials; FAQ;bug list;documentation;developercontacts

http://education.mit.edu/starlogo/

MacStarLogo Macintosh Downloadavailable fromStarLogowebpage, butnot activelydevelopedanymore

Link removed Off the starlogo webpage

OpenStarLogo Macintosh OS X10.2.6 or higherwith Java 1.4installed;Windows; Unix;Linux (StarLogodoes not seem tobe compatiblewith Java 5/1.5on Solaris)

FAQ; defects;online supportlists; examplesanddocumentation

http://education.mit.edu/openstarlogo/

StarLogoT Macintosh Tutorials; API;documentation;defect list;contact authors

http://ccl.northwestern.edu/cm/starlogoT/

StarLogo TNG(The NextGeneration)

Macintosh andWindows

Tutorials; FAQ;documentation;mailing lists;API

http://education.mit.edu/starlogo-tng/index.htm

Page 31: Tools of the Trade - Journal of Artificial Societies and ...jasss.soc.surrey.ac.uk/12/2/2/2.pdf · The second main ABM survey is by Castle and Crooks (2006). In this paper, Castle

NetLogo Any Java VirtualMachine, version1.4.1 or later, isinstalled. Version1.5.0_12 or lateris preferred.

Documentation;FAQ; selectedreferences;tutorials; thirdpartyextensions;defect list;mailing lists

http://ccl.northwestern.edu/netlogo/models/

Object BasedEnvironmentfor UrbanSimulation(OBEUS)

Windows User's manual http://www.enib.fr/~harrouet/oris.html

oRIS IA32 Linux; PPCLinux; SGI Irix;and Windows

Documentation;examples inFrench; API

http://www.enib.fr/~harrouet/

PoliticalScience-Identity (PS-I)

Cross platformwith binariesavailable forwin32; Windows;Linux; PS-I is notcurrentlyavailable forMacintosh usersexcept viaemulation of aWindows, NT, orLinuxenvironment.

Documentation;selectedpublications

http://ps-i.sourceforge.net/

Quicksilver(now calledomonia)

JDK installation Examples; littledocumentation

http://www.xlog.ch/omonia

RecursivePorous AgentSimulationToolkit(Repast)

Java version 1.4,although a 1.3version forMachintosh OS Xis available. Torun thedemonstrationsimulations,you'll need a JavaRuntimeEnvironment(RepastS,RepastJ);platformindependent(RepastPy);Windows(Repast.net)

Documentation;mailing list;defect list;referencepapers;external tools;tutorials; FAQ;examples

http://repast.sourceforge.net (RepastS)http://repast.sourceforge.net/repast_3/download.html (RepastPy, RepastJ, Repast.net)

StrictlyDeclarativeModelingLanguage(SDML)

Windows 3.1;Windows 95;Widows 98;Windows 2000;Windows NT;Linux; Intel;PowerMac; Unix;ADUX/AIX/HPUX/SGI/Solaris

Mailing list;tutorial;selectedreferences;limiteddocumentationincluded withsoftwarepackage

http://cfpm.org/sdml/

Jade's sim++ Available forMeiko and BBNmultiÂcomputersystems and canbe used on anetwork withSun3, Sun 4, andHP 9000workstations

Information notavailable

no longer available

SimPlusPlus Sim++ can beused with C codeor C++ code, butyou MUST have aC++ compiler.DOS; Windows(as a DOSapplication) orOS2 (as a DOSapp). TheSimPack software

Author contact http://www.simplusplus.com/

Page 32: Tools of the Trade - Journal of Artificial Societies and ...jasss.soc.surrey.ac.uk/12/2/2/2.pdf · The second main ABM survey is by Castle and Crooks (2006). In this paper, Castle

is currently beingoverhauled touse C++exclusively;however, it willstill be possibleto use Cprograms, asbefore, to accessthe C++routines.

SimAgent (akasim_agent)

At least prologversion 15;Windows;Macintosh OS X;Linux; Unix

Tutorials;documentation;Selectedpublications;examples;author contact

http://www.cs.bham.ac.uk/research/projects/poplog/packages/simagent.html

SimBioSys Any platform thatsupports C++

None http://www.lucifer.com/~david/SimBioSys/

MultimodelingObject-Oriented Simulation Environment (Moose)

IBM PC runningDOS/Windows orVersion of Unix(such as Linux orBSD); UnixWorkstations(SUN, SGI)

Selectedreferences;user's manualin toolkitpackage

http://www.cise.ufl.edu/~fishwick/moose.html

SimPack Any platform thatsupports C++;Technically, theprocessingenvironment issupposedlychecked for Java1.4 but Java 1.5seems to workfine. Simpackjhas been testedwith 1.5 andexhibits noissues. The SDKis preferred overthe JRE, as thiscould be usefulfor certain typesof Java code thatyou may bewriting. The SDKincludes a JRE

Selectedpublications;mailing list;user's manual

http://www.cis.ufl.edu/~fishwick/simpack/simpack.html

SpatialModeling Environment (SME)

Unix Documentation;mailing list (butwasn'tfunctional whenwent to thewebsite)

http://www.uvm.edu/giee/SME3/

Shell forSimulated AgentSystems (SeSAm)

Java 5.0 orbetter;Windows; Linux;MacintoshOS X

Tutorials;mailing list;FAQ; wiki;author contact

http://www.simsesam.de/

SOAR Windows 98;Windows ME;Windows 2000;Windows XP;Linux; OS X

Documentation;FAQ; selectedpublications;defect list; thirdpartyextensions;mailing list;contactauthors;tutorial;examples; wiki

http://sitemaker.umich.edu/soar/home

Sugarscape Java 2 SDK or(Internet Explorer5.x or greater AND theJava 2 RuntimeEnvironment

API http://sugarscape.sourceforge.net/

Page 33: Tools of the Trade - Journal of Artificial Societies and ...jasss.soc.surrey.ac.uk/12/2/2/2.pdf · The second main ABM survey is by Castle and Crooks (2006). In this paper, Castle

(JRE))Swarm Windows; Linux;

Macintosh OS XWiki; tutorials;examples;documentation;FAQ; selectedpublications;mailing lists

http://www.swarm.org/

VSEit To runsimulations: aJava enabledinternet browserlike NetscapeNavigator orMicrosoftExplorer. VSEit isknown to rununder NetscapeNavigator 4.06 orhigher, onWindows 95/98and Windows NT;to developsimulations: anyJava platformsupporting Java1.1.7.

Examples;users guide;defect list

http://www.vseit.de

ZEUS Windows 95;Windows 98;Windows NT;Windows 2000;Windows XP;Linux; BSD;UNIX-like OSes;Solaris

Documentation;author contact

http://labs.bt.com/projects/agents/zeus/

3 An important note for the reader is that we tried to look at each toolkits as completely and comprehensively as possible. However, ourstudy is not complete. In places where it is not complete, it is because the authors have not specified the complete granularity of theplatforms with respect to different operating systems.

4 Tryllian can offer paid support for running the ADK on IBM mainframes or AS/400 machines. Apple's OS X is not supported, but part ofthe development of the ADK is done on OS X. 5 If you need to run the ADK on JDK 5.0, please contact Tryllian. The ADK will not work outof the box with version 5.0 of the JDK. The ADK has also been tested with Bea's JRockit JVM and with IBM's JVM; both appear to supportrunning the ADK.

References

AGENT BUILDING AND LEARNING ENVIRONMENT (ABLE) Website.http://www.alphaworks.ibm.com/tech/able.

AGENTBUILDER LITE/PRO Website. . http://www.agentbuilder.com/Documentation/Lite/.

AGENTSHEETS Website. http://www.agentsheets.com/research/c5/index.html.

ANYLOGIC Website. http://www.xjtek.com/anylogic/.

ASCAPE Website. http://ascape.sourceforge.net/index.html#Introduction.

BALAN, G, Cioffi-Revilla, C, Luke, S, Panait, L and Paus, S (2003) Mason: A Java Multi-AgentSimulation Library. Proceedings of the Agent 2003 Conference, October 2003. pp59-64.

BELLIFEMINE, F, Caire, G, Poggi, A and Rimassa, G (2003) JADE - A White Paper. TILAB EXP insearch of innovation 3 (3) http://jade.tilab.com/papers-exp.htm.

BELLIFEMINE, F, Poggi, A and Rimassa, G (1999) JADE - A FIPA-Compliant Agent FrameworkProceedings of the Practical Applications of Intelligent Agents, 1999. pp97-108.

BIGUS, J, Schlosnagle, D, Pilgrim, J, Mills III, W and Diao, Y (2002) ABLE: A Toolkit for BuildingMultiagent Autonomic Systems. IBM Systems Journal, September 2002. pp350-371.

BONABEAU E (2002) Agent-based Modeling: Methods and Techniques for Simulating HumanSystems. Proceedings of the National Academy of Sciences of the United States of America,May 2002. pp7280-7287.

BORDINI R, Carlos da Rocha Costa, A, Hubner, J, Moreira, A, Okuyama, F and Vieira, R (2005)MAS-SOC: a Social Simulation Platform Based on Agent-Oriented Programming. Journal ofArtificial Societies and Social Simulation 8 (3) 7 http://jasss.soc.surrey.ac.uk/8/3/7.html.

BORSHCHEV A, Karpov Y, and Kharitonov, V (2002) Distributed Simulation of Hybrid Systemswith AnyLogic and HLA. Future Generation Computer Systems, May 2002. pp 829-839.

BORSHCHEV A and Filippov A (2004) From System Dynamics and Discrete Event to Practical

Page 34: Tools of the Trade - Journal of Artificial Societies and ...jasss.soc.surrey.ac.uk/12/2/2/2.pdf · The second main ABM survey is by Castle and Crooks (2006). In this paper, Castle

Agent Based Modeling: Reasons, Techniques, and Tools. 22nd International Conference of theSystem Dynamics Society, July 2004. pp959-966.

BRAIN AND HEAD MODELLING SYSTEM (BRAHMS) Website.http://sourceforge.net/forum/forum.php?forum_id=685983.

BRASSEL K (2001) Flexible Modelling with VSEit, the Versatile Simulation Environment for theInternet. Journal of Artificial Societies and Social Simulation 4 (3) 10http://www.soc.surrey.ac.uk/JASSS/4/3/10.html.

BREVE Website. http://www.spiderland.org/node/2602.

CARVALHO J (2000) Using AgentSheets to Teach Simulation to Undergraduate Students.Journal of Artificial Societies and Social Simulation 3 (3) 2http://www.soc.surrey.ac.uk/JASSS/3/3/forum/2.html.

CASTLE C and Crooks A (2006), Principles and Concepts of Agent-Based Modelling forDeveloping Geospatial Simulations. Working paper 110, Centre for Advanced Spatial Analysis,University College London, September 2006.

COLLIER N and North M (2004) Repast for Python Scripting. Proceedings of the Agent 2004Conference, October 2004. pp231-237.

COMMON-POOL RESOURCES AND MULTI-AGENT SYSTEMS (CORMAS) Website.http://cormas.cirad.fr/indexeng.htm.

CONTE, R, Gilbert, N and Simao Sichman, J (1998) MAS and Social Simulation: A SuitableCommitment. Lecture Notes in Computer Science 1534. pp. 1-9.

COUGAAR Website. http://www.cougaar.org/.

DEX Website. http://dextk.org/dex/index.html.

DISTRIBUTED OPERATOR MODEL ARCHITECTURE (D-OMAR) Website. http://omar.bbn.com/.

ECHO Website. http://www.santafe.edu/~pth/echo/.

ECJ Website. http://cs.gmu.edu/~eclab/projects/ecj/.

FORREST S and Jones T (1994) Modeling Complex Adaptive Systems with Echo. ComplexSystems: Mechanism of Adaptation, 1994. pp 3-21.

FRAMEWORK FOR AGENT-BASED MODELLING WITH JAVA (FAMOJA) Website.http://www.usf.uos.de/projects/famoja/.

FREEBSD.ORG Website. http://www.freebsd.org/copyright/license.html.

FREIWALD U and Weimar J (2000) JCA-Sim - A Java System For Simulating Cellular Automata.Proceedings of the Fourth International Conference on Cellular Automata for Research andIndustry: Theoretical and Practical Issues on Cellular Automata, 2000. pp47-54.

GILBERT N and Bankes S (2002) Platforms and Methods for Agent-based Modeling.Proceedings of the National Academy of Sciences. May 2002. pp197-198.

GNU Homepage. http://www.gnu.org/licenses/licenses.html.

GULVAS, L, Kosik, T and Corliss, J (1999) The Multi-Agent Modelling Language and the ModelDesign Interface. Journal of Artificial Societies and Social Simulation 2 (3) 8http://www.soc.surrey.ac.uk/JASSS/2/3/8.html.

HELSINGER, A, Thome, M and Wright, T (2004) Cougaar: A Scalable, Distributed Multi-AgentArchitecture. IEEE INTERNATIONAL CONFERENCE ON SYSTEMS MAN AND CYBERNETICS 2,October 2004. pp1910-1917.

HERMANS B (1997) Intelligent Software Agents on the Internet: An Inventory of CurrentlyOffered Functionality in the Information Society and a Prediction of (Near) FutureDevelopments. First Monday 2 (3) 123 http://www.firstmonday.dk/issues/issue2_3/ch_123.

IGEN Website. http://www.cognitiveagent.com/.

JADE Website. http://jade.tilab.com.

JADE'S SIM++. no longer available online.

JAS Website. http://jaslibrary.sourceforge.net/.

JAVA AUCTION SIMULATOR API (JASA) Website. http://sourceforge.net/projects/jasa/.

JAVA ENTERPRISE SIMULATOR (JES) Website. http://web.econ.unito.it/terna/jes/.

JCA-SIM Website. http://www.jweimar.de/jcasim/jcasim.html.

JECHO Website. http://www.brianmcindoe.com/.

JESS Website. http://herzberg.ca.sandia.gov/jess/.

KOEHLER M and Tivnan B (2005) Clustered Computing with NetLogo and Repast J: Beyond

Page 35: Tools of the Trade - Journal of Artificial Societies and ...jasss.soc.surrey.ac.uk/12/2/2/2.pdf · The second main ABM survey is by Castle and Crooks (2006). In this paper, Castle

Chewing Gum and Duct Tape. Proceedings of the Agent 2005 Conference, October 2005.pp43-54.

LABORATORY FOR SIMULATION DEVELOPMENT (LSD) Website.http://www.business.aau.dk/lsd/lsd.html.

LESZCZYNA R (2004) Evaluation of Agent Platforms. Proceedings of the Fifth International JointConference on Autonomous Agents and Multiagent Systems, 2004. pp1063-1070.

LOMOW G and Baezner D (1991) A Tutorial Introduction to Object-Oriented Simulation andSim++. Proceeedings of the 1991 Winter Simulation Conference, December 1991. pp157-163.

LUKE, S, Cioffi-Revilla, C, Panait, L and Sullivan, K (2004) MASON: A New Multi-AgentSimulation Toolkit. Swarmfest 2004, Eighth Annual Swarm Users/Researchers Conference,May 2004.

LUSTICK I (2002) PS-I: A User-Friendly Agent-Based Modeling Platform for Testing Theoriesof Political Identity and Political Stability. Journal of Artificial Societies and Social Simulation 5(3) 7 http://jasss.soc.surrey.ac.uk/5/3/7.html.

MACAL C (2004) Agent-Based Modeling and Social Simulation with Mathematica and MatlabProceedings of the Agent 2004 Conference, October 2004. pp185-204.

MACAL C and Howe T (2005) Linking Repast and Computational Mathematics Systems:Mathematica and Matlab. Proceedings of the Agent 2005 Conference, October 2005. pp5-24.

MACSTARLOGO. Available from the StarLogo webpage: http://education.mit.edu/starlogo/.

MULTI-AGENT SYSTEM (MAGSY) Website. http://www-ags.dfki.uni-sb.de/~kuf/magsy.html.

MASON Website. http://cs.gmu.edu/~eclab/projects/mason/.

MATRIX LABORATORY (MATLAB) Website.http://www.mathworks.com/access/helpdesk/help/techdoc/index.html?/access/helpdesk/help/techdoc/learn_matlab/f48955.html&http://www.mathworks.com/access/helpdesk/help/tec-doc/matlab_product_page.html.

MCINDOE B (2005) jECHO: A New Implementation Of Holland's Complex Adaptive SystemsModel With The Aim Of Seeking Answers To Some Fundamental Open Questions. Master ofScience Dissertation, February 2005. http://www.brianmcindoe.com.

MICRO-UND MULTILEVEL MODELLING SOFTWARE (MIMOSE) Website. http://www.uni-koblenz.de/~moeh/projekte/mimose.html.

MODULECO Website. http://www.cs.manchester.ac.uk/ai/public/moduleco/.

MOHRING M (1995) Social Science Multilevel Simulation with MIMOSE. Social ScienceMicrosimulation, May 1995. pp123-137.

MULTI AGENT DEVELOPMENT KIT (MADKIT) Website. http://www.madkit.org/.

MULTI-AGENT MODELING LANGUAGE (MAML) Website. http://www.maml.hu/.

MULTI-AGENT SIMULATIONS FOR THE SOCIAL SCIENCES (MAS-SOC) Website.http://inf.ufrgs.br/massoc.

MULTIMODELING OBJECT-ORIENTED SIMULATION ENVIRONMENT (MOOSE) Website.http://www.cise.ufl.edu/~fishwick/moose.html.

NAJLIS R and North M (2004) Repast for GIS. Proceedings of the Agent 2004 Conference,October 2004. pp255-259.

NETLOGO Website. http://ccl.northwestern.edu/netlogo/models/.

NGUYEN, G, Dang ,T, Hluchy, L, Laclavik, M, Balogh, Z and Budinska, I (2002) Agent PlatformEvaluation and Comparison. II-SAS, Pellucid EU 5FP IST-2001-34519 RTD, Technical report,June 2002.

NORTH, M, Howe, T, Collier, N and Vos, J (2005) The Repast Simphony DevelopmentEnvironment. Proceedings of the Agent 2005 Conference, October 2005. pp159-166.

NORTH, M, Howe, T, Collier, N and Vos, J (2005) The Repast Simphony Runtime System.Proceedings of the Agent 2005 Conference, October 2005. pp151-158.

NORTH, M, Sydelko, P, Vos, J, Howe, T and Collier, N (2006) Legacy Model Integration withRepast Simphony. Proceedings of the Agent 2006 Conference, October 2006. pp95-106.

OBJECT BASED ENVIRONMENT FOR URBAN SIMULATION (OBEUS) Website.http://eslab.tau.ac.il/Research/OBEUS/default.aspx.

OPENSTARLOGO Website. http://education.mit.edu/openstarlogo/.

ORIS Website. http://www.enib.fr/~harrouet/.

PARKER M (2001) What is Ascape and Why Should You Care? Journal of Artificial Societies and

Page 36: Tools of the Trade - Journal of Artificial Societies and ...jasss.soc.surrey.ac.uk/12/2/2/2.pdf · The second main ABM survey is by Castle and Crooks (2006). In this paper, Castle

Social Simulation 4 (1) 5 http://jasss.soc.surrey.ac.uk/4/1/5.html.

PHAN D and Beugnard A (2001) Moduleco, a Multi-Agent Modular Framework for theSimulation of Network Effects and Population Dynamics in Social Sciences, Markets &Organisations. 8th Rencontre Internationale ACSEG (Approches Connexionnistes en SciencesEconomiques et de Gestion), October 2001.

POLITICAL SCIENCE-IDENTITY (PS-I) Website. http://ps-i.sourceforge.net/.

QUICKSILVER (NOW CALLED OMONIA) Website. http://www.xlog.ch/omonia/.

RAILSBACK, S, Lytinen, S and Jackson, S (2006) Agent-Based Simulation Platforms: ReviewAnd Development Recommendations. Simulation, September 2006. pp609-623.

RECURSIVE POROUS AGENT SIMULATION TOOLKIT (REPAST) Website.http://repast.sourceforge.net.

REPAST.NET Website. http://repast.sourceforge.net/repast_3/download.html.

REPASTJ Website. http://repast.sourceforge.net/repast_3/download.html.

REPASTPY Website. http://repast.sourceforge.net/repast_3/download.html.

REPASTS Website. http://repast.sourceforge.net.

REPENNING, A, Ioannidou, A and Zola, J (2000) AgentSheets: End-User ProgrammableSimulations Journal of Artificial Societies and Social Simulation 3 (3) forum 1http://www.soc.surrey.ac.uk/JASSS/3/3/forum/1.html.

SAMUELSON D and Macal C (2006) Agent-Based Simulation Comes of Age. OR/MS Today,August 2006. pp34-38.

SERENKO A and Detlor B (2002) Agent Toolkits: A General Overview of The Market and anAssessment of Instructor Satisfaction with Utilizing Toolkits in the Classroom. Working Paper#455.

SHELL FOR SIMULATED AGENT SYSTEMS (SESAM) Website. http://www.simsesam.de/.

SIERHUI, M, Clancey, W and van Hoof, R (2007) BRAHMS A Multi-agent Modelling Environmentfor Simulating Work Processes and Practices. International Journal of Simulation and ProcessModelling, 2007. pp134-152.

SIMAGENT Website.http://www.cs.bham.ac.uk/research/projects/poplog/packages/simagent.html.

SIMBIOSYS Website. http://www.lucifer.com/~david/SimBioSys/.

SIMPACK Website. http://www.cis.ufl.edu/~fishwick/simpack/simpack.html.

SIMPLUSPLUS Website. http://www.simplusplus.com/.

SOAR Website. http://sitemaker.umich.edu/soar/home.

SONNESSA M (2003) JAS: Java Agent-based Simulation Library. An Open Framework forAlgorithm-Intensive Simulation. Industry And Labor Dynamics: The Agent-BasedComputational Economics Approach, October 2003. pp43-56.

SPATIAL MODELING ENVIRONMENT (SME) Website. http://www.uvm.edu/giee/SME3/.

STANDISH R and Leow R (2003) EcoLab: Agent Based Modeling for C++ Programmers.Proceedings SwarmFest, April 2003.

STARLOGO TNG (THE NEXT GENERATION) Website. http://education.mit.edu/starlogo-tng/index.htm.

STARLOGO Website. http://education.mit.edu/starlogo/.

STARLOGOT Website. http://ccl.northwestern.edu/cm/starlogoT/.

STRICTLY DECLARATIVE MODELING LANGUAGE (SDML) Website. http://cfpm.org/sdml/.

SUGARSCAPE Website. http://sugarscape.sourceforge.net/.

SWARM Website. http://www.swarm.org.

TATARA, E, North, M, Howe, T, Collier, N and Vos, J (2006) An Introduction to RepastSimphony Modeling Using a Simple Predator-Prey Example. Proceedings of the Agent 2006Conference on Social Agents, October 2006. pp1-11.

TERNA P (2001) Creating Artificial Worlds: A Note on Sugarscape and Two Comments. Journalof Artificial Societies and Social Simulation 4 (2) 9http://www.soc.surrey.ac.uk/JASSS/4/2/9.html.

THORNGATE W (2000) Teaching Social Simulation with Matlab Journal of Artificial Societiesand Social Simulation 3 (1) forum 1 http://jasss.soc.surrey.ac.uk/3/1/forum/1.html.

TISSEAU J (2001) Virtual Reality - In Virtuo Autonomy Computer Science Thesis of the

Page 37: Tools of the Trade - Journal of Artificial Societies and ...jasss.soc.surrey.ac.uk/12/2/2/2.pdf · The second main ABM survey is by Castle and Crooks (2006). In this paper, Castle

University of Rennes, December 2001. pp61-74.

TISUE S and Wilensky U (2004) NetLogo: Design and Implementation of a Multi-AgentModeling Environment. Proceedings of the Agent 2004 Conference, October 2004. pp161-184.

TOBIAS R and Hofmann C (2004) Evaluation of free Java-libraries for social-scientific agentbased simulation. Journal of Artificial Societies and Social Simulation 7 (1) 6http://jasss.soc.surrey.ac.uk/7/1/6.html.

TRYLLIAN AGENT DEVELOPMENT KIT Website. http://www.tryllian.com.

VSEIT Website. http://www.vseit.de.

VOS J and North M (2004) Repast.net. Proceedings of the Agent 2004 Conference, October2004. pp239-254.

XU H and Shatz S (2003) ADK: An Agent Development Kit Based on a Formal Design Model forMulti-Agent Systems. Automated Software Engineering, October 2003. pp337-365.

ZAUNER, G, Leitner, D and Breitenecker, F (2007) Modeling Structural - Dynamics Systems inMODELICA/Dymola, MODELICA/Mosilab and AnyLogic. Proceedings of the 1st InternationalWorkshop on Equation-Based Object-Oriented Languages and Tools, July 2007. pp 99-110.

ZEUS Website. http://labs.bt.com/projects/agents/zeus/ .

Return to Contents of this issue

© Copyright Journal of Artificial Societies and Social Simulation, [2009]