Mesa
See the official Mesa documentation for detailed information.
A Python Library for Agent-Based Modeling
Mesa1 is a Python library designed for creating agent-based models (ABMs)2. It provides tools to define, run, and visualize models in which individual entities, called agents, interact within an environment (the model). Mesa is highly flexible, allowing to simulate complex systems and observe emergent behaviors arising from simple rules.
Agent-Based Modeling and Complex Societal Questions
Multi-agent-based simulation is a valuable tool to research voting rules and collective decision-making as it allows for the modeling of very complex interactions that are challenging to capture with traditional methods3. ABM is mainly used to research and analyze complex relationships. The focus is on understanding how individual behaviors and interactions lead to collective outcomes. It is often used in fields like social sciences, economics, and environmental science to model and analyze scenarios that are impractical to study otherwise.
Figure 1: Example of a simple Schelling-Model in Mesa
-
Jackie Kazil, David Masad, and Andrew Crooks. Utilizing Python for Agent-Based Modeling: The Mesa Framework. In: Social, Cultural, and Behavioral Modeling. Ed. by Robert Thomson, Halil Bisgin, Christopher Dancy, Ayaz Hyder, and Muhammad Hussain. Cham: Springer International Publishing, 2020, pp. 308–317 ↩
-
Dirk Helbing. Agent-based modeling. In: Social self-organization: Agent-based simulations and experiments to study emergent social behavior. Springer, 2012, pp. 25–70 ↩
-
Robert L Axtell and J Doyne Farmer. Agent-based modeling in economics and finance: Past, present, and future. In: Journal of Economic Literature (2022), pp. 1–10 ↩