Welcome to Ciw’s documentation!¶
Ciw is a discrete event simulation library for open queueing networks. Its core features include the capability to simulate networks of queues, multiple customer classes, and implementation of Type I blocking for restricted networks. A number of other features are also implemented, including priorities, baulking, reneging, schedules, batch arrivals, dynamic customer classes, and deadlock detection.
The name Ciw is the Welsh word for a queue.
Ciw is currently supported for and regularly tested on Python versions 3.7, 3.8 and 3.9.
Contents:
- Installing Ciw
- Tutorials - Part 1
- Tutorials - Part 2
- Guides
- How to Set a Seed
- How to Implement a Progress Bar
- How to Implement Exact Arithmetic
- How to Simulate For a Certain Number of Customers
- How to Pause and Restart the Simulation
- How to Set Arrival & Service Distributions
- How to Set Phase-Type Distributions
- How to Define Time and State Dependent Distributions
- How to Simulate Processor Sharing
- How to Set Priority Classes
- How to Set Batch Arrivals
- How to Simulate Baulking Customers
- How to Simulate Reneging Customers
- How to Set Server Schedules
- How to Set Server Priorities
- How to Set Dynamic Customer Classes
- How to Track the System’s State
- How to Detect Deadlock
- How to Define Process-Based Routing
- How to Read & Write to/from File
- How to Get More Custom Behaviour
- How to Parallelise Trials
- Reference
- Background