Vidal's libraryTitle: | |
Author: | Steven F. Railsback, Steven L. Lytinen, and Stephen K. Jackson |
Journal: | Simulation |
Volume: | 82 |
Number: | 9 |
Pages: | 609--623 |
Year: | 2006 |
DOI: | 10.1177/0037549706073695 |
Abstract: | Five software platforms for scientific agent-based models (ABMs) were reviewed by implementing example models in each. NetLogo is the highest-level platform, providing a simple yet powerful programming language, built-in graphical interfaces, and comprehensive documentation. It is designed primarily for ABMs of mobile individuals with local interactions in a grid space, but not necessarily clumsy for others. NetLogo is highly recommended, even for prototyping complex models. MASON, Repast, and Swarm are "framework and library" platforms, providing a conceptual framework for organizing and designing ABMs and corresponding software libraries. MASON is least mature and designed with execution speed a high priority. The Objective-C version of Swarm is the most mature library platform and is stable and well organized. Objective-C seems more natural than Java for ABMs but weak error-handling and the lack of developer tools are drawbacks. Java Swarm allows Swarm’s Objective-C libraries to be called from Java; it does not seem to combine the advantages of the two languages well. Repast provides Swarm-like functions in a Java library and is a good choice for many, but parts of its organization and design could be improved. A rough comparison of execution speed found MASON and Repast usually fastest (MASON 1-35% faster than Repast), Swarm (including Objective-C) fastest for simple models but slowest for complex ones, and NetLogo intermediate. Recommendations include completing the documentation (for all platforms except NetLogo), strengthening conceptual frameworks, providing better tools for statistical output and automating simulation experiments, simplifying common tasks, and researching technologies for understanding how simulation results arise. |
Cited by 55 - Google Scholar
@Article{railsback06a,
author = {Steven F. Railsback and Steven L. Lytinen and
Stephen K. Jackson},
title = {Agent-based simulation platforms: review and
development recommendations"},
journal = {Simulation},
year = 2006,
volume = 82,
number = {9},
pages = {609--623},
abstract = {Five software platforms for scientific agent-based
models (ABMs) were reviewed by implementing example
models in each. NetLogo is the highest-level
platform, providing a simple yet powerful
programming language, built-in graphical interfaces,
and comprehensive documentation. It is designed
primarily for ABMs of mobile individuals with local
interactions in a grid space, but not necessarily
clumsy for others. NetLogo is highly recommended,
even for prototyping complex models. MASON, Repast,
and Swarm are "framework and library" platforms,
providing a conceptual framework for organizing and
designing ABMs and corresponding software
libraries. MASON is least mature and designed with
execution speed a high priority. The Objective-C
version of Swarm is the most mature library platform
and is stable and well organized. Objective-C seems
more natural than Java for ABMs but weak
error-handling and the lack of developer tools are
drawbacks. Java Swarm allows Swarm’s Objective-C
libraries to be called from Java; it does not seem
to combine the advantages of the two languages
well. Repast provides Swarm-like functions in a Java
library and is a good choice for many, but parts of
its organization and design could be improved. A
rough comparison of execution speed found MASON and
Repast usually fastest (MASON 1-35\% faster than
Repast), Swarm (including Objective-C) fastest for
simple models but slowest for complex ones, and
NetLogo intermediate. Recommendations include
completing the documentation (for all platforms
except NetLogo), strengthening conceptual
frameworks, providing better tools for statistical
output and automating simulation experiments,
simplifying common tasks, and researching
technologies for understanding how simulation
results arise.},
url = {http://jmvidal.cse.sc.edu/library/railsback06a.pdf},
cluster = {14771824564050369362},
doi = {10.1177/0037549706073695}
}
Last modified: Wed Mar 9 10:16:44 EST 2011