SimCraft Documentation
SimCraft is a discrete event simulation (DES) framework for Python, designed for academic research, industrial applications, and integration with optimization algorithms including reinforcement learning.
Key Features
Event-Driven Architecture: O(log n) event scheduling with priority support
Hierarchical Composition: Build complex models from reusable components
Rich Resource Management: Servers, queues, resources, and resource pools
Comprehensive Statistics: Counters, tallies, time-series, and monitors
20+ Random Distributions: Reproducible random number generation
Optimization Integration: Native support for simulation-optimization and RL
Full Type Hints: Complete type annotations for IDE support
Quick Example
import simcraft
class HelloWorld(simcraft.Simulation):
def on_init(self):
self.schedule(self.say_hello, delay=1.0)
def say_hello(self):
print(f"Hello at time {self.now}!")
self.schedule(self.say_hello, delay=1.0)
sim = HelloWorld()
sim.run(until=5.0)
Getting Started
Tutorials
Examples
API Reference
API Reference
Project Information
Project Info