Towards reusable building blocks for agent-based modelling and theory development

Publikation: Beitrag in FachzeitschriftForschungsartikelBeigetragenBegutachtung

Beitragende

  • Uta Berger - , Professur für Forstliche Biometrie und Systemanalyse (Autor:in)
  • Andrew Bell - (Autor:in)
  • C. Michael Barton - (Autor:in)
  • Emile Chappin - (Autor:in)
  • Gunnar Dreßler - (Autor:in)
  • Tatiana Filatova - (Autor:in)
  • Thibault Fronville - (Autor:in)
  • Allen Lee - (Autor:in)
  • Emiel van Loon - (Autor:in)
  • Iris Lorscheid - (Autor:in)
  • Matthias Meyer - , Technische Universität Hamburg (Autor:in)
  • Birgit Müller - , Helmholtz-Zentrum für Umweltforschung (UFZ), Brandenburgische Technische Universität Cottbus-Senftenberg, Deutsches Zentrum für integrative Biodiversitätsforschung (iDiv) Halle-Jena-Leipzig (Autor:in)
  • Cyril Piou - (Autor:in)
  • Viktoriia Radchuk - (Autor:in)
  • Nicholas Roxburgh - (Autor:in)
  • Lennart Schüler - (Autor:in)
  • Christian Troost - (Autor:in)
  • Nanda Wijermans - (Autor:in)
  • Tim G. Williams - (Autor:in)
  • Marie-Christin Wimmler - , Professur für Forstliche Biometrie und Systemanalyse (Autor:in)
  • Volker Grimm - (Autor:in)

Abstract

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.

Details

OriginalspracheEnglisch
Aufsatznummer106003
FachzeitschriftEnvironmental modelling & software
Jahrgang175
PublikationsstatusVeröffentlicht - Apr. 2024
Peer-Review-StatusJa

Externe IDs

ORCID /0000-0002-4542-6764/work/155840436
Scopus 85187198327
Mendeley 1dea3802-2a6c-3cc8-abd5-e7d651fe78a5

Schlagworte

Schlagwörter

  • Best practices, Complex adaptive systems, Individual-based modelling, Software engineering, Theory development