Building blocks
Your process diagram already holds most of a simulation model. This page shows how its shapes become the parts Quodsi simulates, in terms you know from value stream maps.
From diagram to model
A process map shows the steps. It doesn't show what happens when two patients arrive at once and one nurse is free. A simulation model adds that. You keep your diagram, and you add arrival rates, processing times and resource capacity to its shapes in the Quodsi side panel.
A simulation is a run of that model. Quodsi moves work through the steps one event at a time: an arrival, a step finishing, a resource coming free. Queues, waits and bottlenecks then come out of the run as results. You don't type them in.
The parts
| Part | What it is | What you might call it | Clinic example |
|---|---|---|---|
| Generator | Creates work and sends it into the process. | Demand, arrivals, customer takt | Patients walking in |
| Entity | A unit of work that moves through the process. | Flow unit, WIP item | A patient |
| Activity | A step that does work. Its queues sit in front of it and behind it. | Process step | Triage |
| Connector | A path from one shape to the next, with a rule for choosing between paths. | Arrow, routing, yield split | Triage to Treatment |
| Resource | Something limited that work must hold in order to proceed. | Operator, machine, room | A nurse |
| State | A named value the model remembers. | Attribute, flag, counter | Acuity level of a patient |
| Work Schedule | Changes capacity by day and time. | Shift plan | Two nurses on days, one at night |
The Model holds them all, along with settings for the whole run, such as how long it lasts.
A simple picture
Think of a walk-in clinic drawn as three boxes: Arrivals, Triage, Treatment.
- Arrivals is a generator. It creates a patient (an entity) every so often.
- A connector carries the patient to Triage, an activity.
- If Triage is full, the patient waits in its queue. That wait is what you came to measure.
- Inside Triage, the patient gets a nurse (a resource), spends some processing time, and gives the nurse back.
- A connector carries the patient to Treatment. Treatment has no outgoing connector, so the patient leaves the model when that step ends.
Capacity lives in two places
This trips up many first-time modelers. An activity has its own capacity: how many entities it can work on at once. A resource has a capacity too: how many units exist. They answer different questions.
- Use activity capacity for the limit of the step itself, such as two exam rooms.
- Use a resource for something shared between steps, such as one nurse who covers both Triage and Discharge.
When a shared resource is the constraint, its utilization shows it, and the steps that need it queue up.
Complexity views
Quodsi shows you as much of the model as you need. Pick a view under View in Settings. You start in Basic.
| View | What it adds |
|---|---|
| Basic | Build, run and cost a complete model: arrivals, activities, routing and levers. |
| Intermediate | Resources, states, explicit resource control (seize and release), and calendar time. |
| Advanced | Failures, work schedules, arrival patterns, and full flow control. |