Skip to content

Monte Carlo

Re-run the critical path again and again over three-point durations and register risks, then commit a chosen confidence level back into the schedule as a real, rescheduled plan.

Who it is for. Anyone who has to state a P80 date or a P80 cost to a board, a lender or a client — and defend how it was derived.

What it is for

A deterministic finish date is a single sample from a distribution and everyone knows it, but quantifying that is normally a separate tool and a separate export. This runs the product’s own CPM engine every iteration, so a delay only moves the finish when it lands on the driving path.

Why it matters

Every simulation uses the same CPM engine as the live schedule. Apply a chosen confidence level as per-activity durations, then reschedule into a valid plan with the whole scenario reversible in one undo.

Monte CarloIllustrative
Finish-date distribution with P10, P50 and P80 against the deterministic finish.

What it does

Every line below is in the product today.

  • The real scheduler, every iteration

    Each pass samples every duration and re-runs the same CPM engine, link manager and calendars the live schedule uses — so simulated and deterministic behaviour cannot diverge.

  • Apply a P-level back to the plan

    Applying a confidence level writes each activity’s own sampled duration and reschedules, producing an internally consistent plan — writing independent per-activity P-level dates would not, since real activity durations move together rather than in isolation.

  • Register risks in the simulation

    Risks are sampled alongside duration uncertainty and injected into the activity they are linked to; opportunities apply the same magnitude with the sign flipped.

  • Activities that might not happen

    An activity sampled out is skipped for that iteration without breaking the logic network, so its predecessors and successors still schedule correctly around it.

  • Criticality index

    The share of iterations in which each activity sat on the critical path, with iterations it was sampled out of correctly excluded.

  • Unquantified risks are counted, not zeroed

    A risk with no impact for the chosen metric is skipped and reported as skipped, so it cannot silently understate exposure.

  • One undo for the whole what-if

    Applying a scenario is wrapped in a single undo batch, so Ctrl+Z reverses the experiment rather than one activity of it.

  • Runs in the background, and cancels for real

    A simulation does not freeze the rest of the app while it runs, shows live progress, and a cancel button that actually stops it.

See it on your own schedule.

Send an XER before the call and we will import it and show you Monte Carlo running against your data.