August 2nd, 2024

SimPy is a process-based discrete-event simulation framework in Python

SimPy is a Python framework for discrete-event simulation, modeling active components and shared resources. It supports various simulation speeds and includes extensive documentation, tutorials, and community resources. The current version is 4.1.1.

Read original articleLink Icon
SimPy is a process-based discrete-event simulation framework in Python

SimPy is a process-based discrete-event simulation framework for Python, designed to model active components such as customers, vehicles, or agents using Python generator functions. It offers various types of shared resources to simulate limited capacity congestion points like servers and checkout counters. Simulations can be executed at different speeds, including real-time and manual stepping through events. While it can theoretically handle continuous simulations, it lacks specific features for that purpose and is not suitable for fixed step size simulations where processes do not interact. The documentation includes a tutorial for beginners, topical guides for in-depth feature explanations, usage examples, and a detailed API reference. An example provided demonstrates two clocks ticking at different intervals. SimPy is released under the MIT License, encouraging developers to share their modeling techniques with the community via a mailing list. Additionally, there are resources such as an introductory talk available in video and slide formats. SimPy has also been reimplemented in other programming languages, with a list of ports available for reference. The current version is 4.1.1, and the project is actively maintained by the SimPy team.

Link Icon 1 comments
By @jononor - 2 months
Has anyone used simpy or another discrete event simulation for a project? If so, what was it?