The maths, gently

Merge bias: why deterministic dates are optimistic

RunMonteCarlo team · 5 min read

Here is the most important piece of arithmetic in schedule risk — small enough to do on a napkin, big enough to explain why projects with competent planners still finish late.

Picture two parallel workstreams converging on one finish: civils and M&E, say. Each, taken alone, has a 50% chance of hitting day 100. What is the chance the project hits day 100?

P(project ≤ 100) = P(A ≤ 100) × P(B ≤ 100) = 0.5 × 0.5 = 25%

The finish needs both paths done, so the probabilities multiply. Two fair coins, both heads. Add a third parallel path and you're at 12.5%. This is merge bias: at every point where parallel paths converge, the schedule silently sheds probability — and the deterministic date, which assumes every path behaves, drifts into the optimistic tail of its own distribution.

It gets worse: the date moves, not just the odds

Make it concrete: path A takes uniformly 80–120 days, path B uniformly 70–130, both "100 days" in the plan. The project's P50 — the date it's actually even odds to make — isn't day 100. It's day 110. That's exactly solvable (the finish CDF is the product of the two path CDFs), and ten days of expected slippage appear from pure geometry — before a single risk, delay event or bad estimate enters the model. The full derivation is on The Maths → Validation, where the same network doubles as our engine's accuracy test: analytic P50 110.000, simulated 110.075.

Why hand methods can't save you

Classic PERT — add the weighted averages along the critical path — sees only one path, so it misses merge bias entirely; MacCrimmon and Ryavec pointed this out in 1964, and it's been quietly ignored at contract signings ever since. Real programmes are lattices of merges: every handover, every "all systems complete" milestone, every commissioning gate multiplies probabilities together. The only honest way to price that is to simulate the whole network — sample every path, re-solve the CPM logic thousands of times, and let the merges do to the model what they will do to the project.

What to do with this on Monday

You can reproduce the numbers above yourself in about two minutes — the network is case study 03, files included, seed printed.

Run one yourself — in your browser, in minutes.

Import a P6 or MS Project file, build the register, press Run. Free tier included; your schedule never leaves your machine.

Launch RunMonteCarlo →