

NETLOGO REPORTER SOFTWARE
In particular, the popular open-source NetLogo modelling software can be linked at runtime with Mathematica ( Bakshy & Wilensky 2007) and R ( Thiele, Kurth & Grimm 2012), which allows modellers to use the comprehensive analysis and visualization functionalities available in these programming languages.Īs a complement to these connectors, this work introduces the pyNetLogo library, which can be used to control NetLogo through the Python programming language.

The literature therefore presents different connectors to directly interface agent-based modelling software with analysis environments. Conversely, using standalone analysis software to process input and output data files can quickly become unwieldy for complex models – making the analysis workflow more difficult to reproduce. While many agent-based modelling platforms include basic analysis tools, these are typically not sufficient to meet the requirements of a comprehensive analysis and documentation process.

In practice, these documentation protocols are easier to apply when supported by suitable computational tools - for instance to generate experimental designs for uncertain inputs, visualize output data, or apply standard statistical methods. Different initiatives are attempting to address this gap, such as the ODD and TRACE protocols for documentation ( Grimm et al. Without the use of standard frameworks to structure their analysis and documentation, ABMs may yield ad hoc, poorly reproducible results ( Thiele 2015). However, the computational nature of ABMs can make them more difficult to understand and communicate than analytical models ( Grimm et al. Tesfatsion & Judd 2006 Grimm & Railsback 2012 Nikolic, Dam & Kasmire 2013). As such, this approach has been applied across a wide variety of fields such as economics, ecology, or socio-technical systems (e.g. PyNetLogo’s features are demonstrated by controlling one of NetLogo’s example models from an interactive Python environment, then performing a global sensitivity analysis with parallel processing.Īgent-based models (ABMs) are a well-established method for the study of complex adaptive systems, in which the interactions of heterogeneous entities yield emergent large-scale behaviors. Given Python’s increasing popularity for scientific computing, this provides additional flexibility for modellers and analysts. To extend these capabilities to an additional user base, this paper presents the pyNetLogo connector, which allows NetLogo to be controlled from the Python general-purpose programming language. For instance, the popular NetLogo agent-based modelling software can be interfaced with Mathematica and R, letting modellers use the advanced analysis capabilities available in these programming languages. This process can benefit from the use of established software environments for data analysis and visualization. Methods for testing and analyzing agent-based models have drawn increasing attention in the literature, in the context of efforts to establish standard frameworks for the development and documentation of models.
