How to use it
- 1. Step one eventThe clock does not tick - it jumps to the next event on the calendar. That jump is what makes DES fast.
- 2. Watch the calendarThe future event list is the whole engine: pop the earliest, execute it, maybe schedule new ones.
- 3. Load the dockPush utilisation past 85% and watch the queue - and waiting time - blow up nonlinearly.
- 4. Check the theoryThe measured averages converge to the analytical M/M/c values - simulation and queueing theory agree.
The loading dock
Run
Parameters
Future event list
Queue length: a step function that only changes at events - nothing happens between them.
Each truck’s wait (dots) and the running average (line) converging to steady state.
Try these experiments
- Step event-by-event and predict each clock jump before you press - arrival or departure, which is next?
- Set λ = 6, c = 2, mean = 18 min (ρ = 90%) and fast-forward: the queue is ugly. Add one dock: ρ drops to 60% and the queue almost vanishes - nonlinearity in action.
- Compare measured vs analytical tiles after ~2,000 events - the gap is pure sampling noise.
About this tool
The concept
Discrete-event simulation advances time event-to-event using a future event list - the standard way industry models warehouses, ports and factories (Arena, AnyLogic, Simio all work this way).
How it works
Exponential inter-arrivals and service times; the engine pops the earliest event, updates state, collects time-weighted statistics, and schedules the consequences.
Winning strategy
Watch ρ = λ·E[S]/c. Waiting grows like 1/(1−ρ): the last 10% of utilisation costs more queue than the first 80% combined.