Discrete Event Simulation: It's Easy with SimPy!
Dmitry Zinoviev

TL;DR
This paper demonstrates how SimPy, a Python library, simplifies the process of building, analyzing, and visualizing discrete event simulations for complex systems, making DES accessible to practitioners and researchers.
Contribution
It introduces practical techniques for using SimPy to model complex systems, including resource contention and deadlock scenarios, with integration into Python's analytical tools.
Findings
SimPy enables efficient modeling of complex discrete event systems.
The approach facilitates system analysis, debugging, and optimization.
Simulation results support system design improvements.
Abstract
This paper introduces the practicalities and benefits of using SimPy, a discrete event simulation (DES) module written in Python, for modeling and simulating complex systems. Through a step-by-step exploration of the classical Dining Philosophers Problem, we demonstrate how SimPy enables the efficient construction of discrete event models, emphasizing system states, transitions, and event handling. We extend the scenario to introduce resources, such as chopsticks, to model contention and deadlock conditions, and showcase SimPy's capabilities in managing these scenarios. Furthermore, we explore the integration of SimPy with other Python libraries for statistical analysis, showcasing how simulation results inform system design and optimization. The versatility of SimPy is further highlighted through additional modeling scenarios, including resource constraints and customer service…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsSimulation Techniques and Applications
