Rico Schrage and Jens Sager and Jan Philipp Hörding and Stefanie Holly
SoftwareX
Agent-based simulations, especially those including communication, are complex to model and execute. To help researchers deal with this complexity and to encourage modular and maintainable research software, the Python-based framework mango (modular python agent framework) has been developed. The framework enables users to quickly implement software agents with different communication protocols and message codecs. Furthermore, mango provides various options for developing an integrated agent simulation. This includes a scheduler module, which can control the agents’ tasks, a (distributed) clock mechanism for time synchronization, and a specific simulation component, which can be coupled with other (co-)simulation software. These features are complemented by modular implementation patterns and a well-evaluated performance with the ability to simulate across multiple computing processes to ensure scalability.