Agent-based models is a fundamental approach to untangle and study complex systems. Over the last decade, the need for more elaborate computing-demanding models has given rise to many frameworks and tools to run ABM simulations. Current state-of-the-art ABM tools focus either on ease of use, performance, or a trade-off between these two elements. Still, efficiency-oriented solutions (required for both large and smallscale simulations) are vulnerable to memory flaws which could invalidate experiment results. This work aims to merge efficiency, reliability, and safety under an innovative ABM software framework based on the Rust programming language. Our framework, krABMaga, is an open-source library that offers a high-level environment by exploiting meta-programming and expandable visualization features. We equipped our library with a dynamic simulation monitoring system and model exploration and optimization capabilities over parallel, distributed and cloud architectures. After presenting the overall architecture and functionalities of krABMaga, we compare our framework’s performance against the most widely adopted ABM software and the scalability potential of our simulation engine on a model calibration experiment running over an AWS EC2 virtual cluster machine. All code and examples models are available on GitHub.

Reliable and Efficient Agent-Based Modeling and Simulation

Cordasco G.;
2024

Abstract

Agent-based models is a fundamental approach to untangle and study complex systems. Over the last decade, the need for more elaborate computing-demanding models has given rise to many frameworks and tools to run ABM simulations. Current state-of-the-art ABM tools focus either on ease of use, performance, or a trade-off between these two elements. Still, efficiency-oriented solutions (required for both large and smallscale simulations) are vulnerable to memory flaws which could invalidate experiment results. This work aims to merge efficiency, reliability, and safety under an innovative ABM software framework based on the Rust programming language. Our framework, krABMaga, is an open-source library that offers a high-level environment by exploiting meta-programming and expandable visualization features. We equipped our library with a dynamic simulation monitoring system and model exploration and optimization capabilities over parallel, distributed and cloud architectures. After presenting the overall architecture and functionalities of krABMaga, we compare our framework’s performance against the most widely adopted ABM software and the scalability potential of our simulation engine on a model calibration experiment running over an AWS EC2 virtual cluster machine. All code and examples models are available on GitHub.
File in questo prodotto:
Non ci sono file associati a questo prodotto.

I documenti in IRIS sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.

Utilizza questo identificativo per citare o creare un link a questo documento: https://hdl.handle.net/11591/531170
Citazioni
  • ???jsp.display-item.citation.pmc??? ND
  • Scopus 0
  • ???jsp.display-item.citation.isi??? 0
social impact