# Experimenting with Agent-Based Model Simulation Tools
## 1 Introduction  
Simulation models are one of the most effective and successful methods for studying real-world phenomena [1]. The term model refers to an abstract and simplified representation of the object of study that only considers the aspects relevant to the investigation; the concept of simulation indicates a model's manifestation realized through software for reproducing its dynamics and providing analyzable results. Among simulation models, agent-based models (ABMs) are one of the most adopted techniques for representing reality using a bottom-up approach [2]. Starting from a simple independent entity called an agent, the modeler can shape the global behavior of a complex system. An agent is an autonomous, independent entity that acts within an environment and interacts with it as well as with other agents, according to a set of rules the modeler defines. The combination of these interactions creates a reproduction of the reality under investigation that the modeler can evaluate to extract valuable data and meaningful information from its emergent behaviors. The resulting model will exhibit patterns, structures, and behaviors that were not explicitly programmed but arise through agents' interactions [3]. For these reasons, ABMs turn out to be a valuable tool for studying, explaining, and predicting complex phenomena, supporting researchers in investigating how the macroscopic behavior of a system depends on the micro-level properties, constraints, and rules [3; 4; 5]. ABMs are extremely powerful for studying problems centered on an individual's interactions with other individuals or the surrounding environment [4]. This intrinsic characteristic makes ABMs particularly suited to being applied in diverse research fields. Nowadays, ABMs are widely used by researchers in various disciplines, allowing them to test and assess new theories and observe and notice mechanisms never consideredbefore. Applications domains for ABMs include social science [6], economics [7; 8], climate change [9; 10], epidemiology [11; 12], transportation and logistics [13; 14], and many others [2; 5; 15]. The widespread use of ABMs in these various application fields created the need for tools to easily and quickly develop simulations without requiring significant coding skills. Several ABM tools and platforms have been introduced to overcome this requirement by abstracting the complexity of the simulation implementation, allowing modelers to focus on the reality under investigation rather than the coding component. Existing ABMs reviews.The plethora of existing tools, frameworks, and libraries for developing ABM simulations makes it difficult for modelers to choose the right tool. Over the years, several works analyzed and compared the available ABM software to identify their pros and cons from different perspectives and support modelers towards the right choice for their needs. The first review about general-purpose ABM software dates back to 2006 when [PERSON] et al. [16] compared the execution speed and the functionalities offered by some pillar ABM platforms, including MASON, NetLogo, Repast, and Swarm, and identified development priorities for future ABM platforms. In 2010, [PERSON] et al. [15] provided a comprehensive exploration of all the ABM software packages available then, describing the usage of ABMs in different domains and exploring some of the most meaningful works. Five years later, [PERSON] et al. [17] supplied a comparative review of ABM platforms based on given evaluation criteria to classify ABM software and characterize their ideal usage situation. In 2016, [PERSON] et al. [18] proposed a detailed description of ABM platforms running simulations on high-performance architectures; specifically, the authors focused on parallel/distributed multi-agent simulation tools and a performance assessment of the HPC-compliant platforms. A year later, [PERSON] et al.