simpy

Model discrete-event simulations in Python with processes and resources.

Updated Aug 23, 2026
One-click install
npx skills add https://github.com/Org-GAgent/result-interpreter --skill simpy-org-gagent
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: simpy
Source: https://github.com/Org-GAgent/result-interpreter/tree/main/.skills/scientific-skills/simpy
Command: npx skills add https://github.com/Org-GAgent/result-interpreter --skill simpy-org-gagent

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires simpy, and includes scripts (resource) and references (resource) components.

What problem does it solve?

SimPy provides a Python-based framework for building process-oriented, discrete-event simulations that model how entities interact with shared resources over time.

Core Features & Use Cases

  • Process-based modeling using Python generator functions to define workflows.
  • Resource management across several types (Resource, PriorityResource, PreemptiveResource, Container, Store, PriorityStore) for realistic contention and queuing.
  • Event scheduling and coordination with a rich set of events, including timeouts, channeling of process outcomes, and composite events.
  • Real-time simulation support via the Real-time Environment for hardware-in-the-loop and interactive demos.
  • Monitoring and data collection hooks to observe utilization, queue lengths, and performance metrics.

Quick Start

Run a simple SimPy model that creates a few processes, a resource, and a small timeline to observe scheduling and resource contention.

Frequently Asked Questions about simpy

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I build a discrete-event simulation in Python for manufacturing or logistics?

Model complex discrete-event simulations in Python using process generators to define workflows and manage resource contention. It handles environment management, event scheduling, and queuing logic for manufacturing, healthcare, network systems, and logistics operations.

What is discrete-event simulation and when do I need it for resource scheduling?

Discrete-event simulation models how entities interact with shared resources over time using event-driven scheduling. You need it when analyzing systems where items queue for limited resources, such as service operations, network systems, or manufacturing lines.

How do I simulate priority queuing and resource contention in Python?

Simulate priority queuing and resource contention in Python using PriorityResource and PreemptiveResource types. These resource variants manage realistic contention by prioritizing or preempting processes waiting for shared facilities.

Can I run real-time simulations with hardware-in-the-loop in Python?

Run real-time simulations with hardware-in-the-loop using the Real-time Environment feature. It synchronizes the simulation clock with wall-clock time, enabling interactive demos and hardware integration testing within your Python process model.

How do I monitor utilization and queue lengths during a Python simulation?

Monitor utilization and queue lengths during a Python simulation using built-in monitoring and data collection hooks. These utilities observe performance metrics and track resource usage throughout the event scheduling lifecycle.

Does Python discrete-event simulation support Store and Container resource types?

Python discrete-event simulation supports Store, PriorityStore, and Container resource types alongside standard Resource variants. These model bulk resource storage and item sorting, expanding contention modeling for logistics and manufacturing scenarios.