A Fast Embedded Language for Continuous-Time Agent-Based Simulation

Köster, Till and Reinhardt, Oliver and Hinsch, Martin and Bijak, Jakub and Uhrmacher, Adelinde M. (2024) A Fast Embedded Language for Continuous-Time Agent-Based Simulation. Journal of Artificial Societies and Social Simulation, 27 (1), p. 10. ISSN 1460-7425.

Full text not available from this repository.
Official URL: http://jasss.soc.surrey.ac.uk/27/1/10.html


In agent-based simulation methods and applications, discrete timestep approaches prevail. To support continuous-time agent-based simulation, we analyze how methods for simulating population-based Con-tinu-ous-Time Markov Chains (CMTCs) can be adopted and derive implications for the concrete realization. To corroborate our findings, we develop an efficient internal domain-specific language (DSL) based on ML3, a modeling language for linked lives in demography. The design as an internal DSL, implemented within the Rust programming language, allows the modeler to exploit the complete feature set of the host language, such as data types and structures, when programming decision processes. A concise and expressive modeling of an agent's discrete decisions and behavior introducing exponentially distributed sojourn times can be supported by adapting the concept of guarded commands from population-based CTMCs. The execution of models relies on an optimized version of the direct method. This method is a variant of stochastic simulation algorithms, an established method for executing population-based CTMCs in other application areas, notably biochemistry. To efficiently handle the large set of possible transitions inherent to continuous-time agent-based models, we use a dependency graph whose updating scheme caters to the dynamic dependencies within agent-based models and the need for efficient implementation. The presented case studies include implementations of a continuous-time, agent-based migration model and a comparative performance study based on an extended SIR model of infection spread, allowing us to draw conclusions about the impact of different design choices on efficiency.

Item Type: Article
Additional Information: DOI: 10.18564/jasss.5232
Projects: BAPS, MoSSiLDe