Options
Towards reusable building blocks for agent-based modelling and theory development
Citation Link: https://doi.org/10.15480/882.9513
Publikationstyp
Journal Article
Publikationsdatum
2024-04-01
Sprache
English
Author
Boston University, USA
Arizona State University, Tempe, AZ, US
Delft University of Technology, Delft, NL
Helmholtz-Zentrum für Umweltforschung UFZ, Leipzig, Sachsen, DE
Leibniz Institute for Zoo and Wildlife Research, Ecological Dynamics Department, Berlin, Germany
Arizona State University, Tempe, USA
Universiteit van Amsterdam, Amsterdam, NL
Université Montpellier, Montpellier, France
Leibniz Institute for Zoo and Wildlife Research, Ecological Dynamics Department, Berlin, Germany
The James Hutton Institute, Aberdeen, UK
Helmholtz-Zentrum für Umweltforschung UFZ, Leipzig, DE
Universität Hohenheim
Institute for Futures Studies, Stockholm, SE
Vrije Universiteit Amsterdam, Amsterdam, NL
Volume
175
Article Number
106003
Citation
Environmental Modelling and Software 175: 106003 (2024)
Publisher DOI
Scopus ID
Publisher
Elsevier
Peer Reviewed
true
Despite the increasing use of standards for documenting and testing agent-based models (ABMs) and sharing of open access code, most ABMs are still developed from scratch. This is not only inefficient, but also leads to ad hoc and often inconsistent implementations of the same theories in computational code and delays progress in the exploration of the functioning of complex social-ecological systems (SES). We argue that reusable building blocks (RBBs) known from professional software development can mitigate these issues. An RBB is a submodel that represents a particular mechanism or process that is relevant across many ABMs in an application domain, such as plant competition in vegetation models, or reinforcement learning in a behavioural model. RBBs need to be distinguished from modules, which represent entire subsystems and include more than one mechanism and process. While linking modules faces the same challenges as integrating different models in general, RBBs are “atomic” enough to be more easily re-used in different contexts. We describe and provide examples from different domains for how and why building blocks are used in software development, and the benefits of doing so for the ABM community and to individual modellers. We propose a template to guide the development and publication of RBBs and provide example RBBs that use this template. Most importantly, we propose and initiate a strategy for community-based development, sharing and use of RBBs. Individual modellers can have a much greater impact in their field with an RBB than with a single paper, while the community will benefit from increased coherence, facilitating the development of theory for both the behaviour of agents and the systems they form. We invite peers to upload and share their RBBs via our website - preferably referenced by a DOI (digital object identifier obtained e.g. via Zenodo). After a critical mass of candidate RBBs has accumulated, feedback and discussion can take place and both the template and the scope of the envisioned platform can be improved.
Schlagworte
Best practices
Complex adaptive systems
Individual-based modelling
Software engineering
Theory development
DDC Class
004: Computer Sciences
620: Engineering
Publication version
publishedVersion
Loading...
Name
1-s2.0-S1364815224000641-main.pdf
Type
main article
Size
2.05 MB
Format
Adobe PDF