Skip to content

Methodology

Risk modelling with Quantik

The simulation is the easy part. What makes a QRA defensible is the model: what is ranged, what is a risk event, how things move together, and how precisely the answer is known. This page sets out the method Quantik supports and why.

Figures on this page come from the detailed highway job used to test Quantik 0.7: a $54.1M base estimate, 56 BOQ items, 25 register lines and an 86-week construction programme.

01 · P50, P90 and contingency

A QRA turns an estimate into a distribution of possible totals. The confidence levels in that distribution are written as P-values:

  • Pnn is the cost with an nn% chance of not being exceeded. P50 is the median: it is not the mean, and Quantik reports both.
  • Contingency at Pnn = Pnn − base estimate. The base estimate is the most likely cost of the defined scope, in base-date dollars, with no contingency and no escalation.
  • Escalation sits outside contingency. Quantik's Escalation sheet takes the base, P50 and P90 from base-date to outturn dollars using a spend profile and rates by financial year.
Build-up from base estimate to P90 outturn Base estimate $54.1M, plus P50 contingency $4.5M gives P50 $58.6M; plus a further $4.3M gives P90 $62.9M; escalation at a factor of 1.0767 gives a P90 outturn of $67.7M. Base $54.1M P50 $58.6M +$4.5M P90 $62.9M +$4.3M P90 outturn $67.7M × 1.0767 escalation (outside contingency)
Detailed highway job, risk-driver method: base $54,117,750; P50 $58,606,767 (+8.3%); P90 $62,890,606 (+16.2%); P90 outturn $67,713,115. Bars not to scale.

Which P-value is funded, and who holds what, depends on the authority. Quantik reports the levels each one asks for.

AuthorityFunded level and who holds contingency
Commonwealth (DITRDCA)Probabilistic P50 and P90 outturn for projects over $25M. Funding approvals on the P50 outturn; P90 held against the project.
Queensland (TMR PCEM)Funded at P90 (QTRIP budget).
NSW (INSW CCF)Tier 1 at P90, Tier 2 at P50. The Project Director holds the P50 contingency; P90 − P50 is managed by the agency's senior executive.
Victoria (DTF RTCC)TEI = base cost estimate + base risk estimate (to P50, including escalation) + excess risk estimate. The TEI confidence level is assumed to be P90 in the template; confirm with DTF.

02 · Inherent and contingent risk

A cost-risk model has two kinds of uncertainty, and keeping them apart is how you avoid counting the same thing twice.

Inherent riskContingent risk
What it isUncertainty in what is already in the estimate: quantities and rates for defined scope.Events that may or may not happen: rock in cut, a service clash, an approval delay.
Probability100%: the work will be done; only the cost is uncertain.Below 100%: a likelihood, then a cost if it happens.
In QuantikSYN.RANGE on each quantity and rate (or SYN.DRIVER on sections).SYN.EVENT(p, SYN.RANGE(low, ml, high)) on each register line.
Lives onBOQ - Inherent sheetBOQ - Contingent sheet (the risk register)

Both are simulated together in one run, and percentiles are never added up across components. In the example models the register is organised by who carries the risk:

  • principal's risks, retained by the client;
  • shared risks, where the principal carries a stated share;
  • contractor's risks, transferred and priced in the tender (0% to the principal);
  • opportunities, which reduce cost when they occur;
  • an optional unidentified-risks allowance.

Each line records likelihood and cost before and after controls, so one switch runs the model residual (controls in place, their cost added) or unmitigated. A second switch gives the principal's view or the whole of project.

Double counting

If the earthworks range already allows for poor ground, a "rock in cut" risk on top counts it twice. The register has a basis and double-count column for every line; a tool cannot detect overlap on its own, so it is a review point in every QRA.

03 · Ranges and distributions

Most cost inputs are three-point ranges from estimators and workshops. Quantik supports:

DistributionUse it for
PERT (SYN.PERT)The default three-point range: min, most likely, max, with shape λ = 4 (adjustable).
Range (SYN.RANGE)A three-point range read as min/max or P10/P90 by one workbook setting.
PERT from percentiles (SYN.PERTALT)Ranges given as P10 / most likely / P90, as RiskPertAlt does.
Triangular, TrigenStraight-line ranges; Trigen from a low and high percentile.
Uniform, Normal, LognormalFlat ranges, symmetric uncertainty, or skewed positive quantities.
Bernoulli, Binomial, Poisson, DiscreteOccurrence, counts of events, and scenario tables.
Truncate, ShiftLimits and offsets, with @RISK's semantics.

Min/max or P10/P90: the biggest single lever

Workshop ranges are usually closer to P10/P90 ("we'd be surprised to go below this") than to absolute limits. Reading the same ranges as P10/P90 instead of min/max widens every distribution. On the detailed highway job (Quantik 0.7.1, with everything else unchanged), the P90 contingency goes from 13.3% to 28.9%: it is the biggest single assumption in the model. Quantik makes this one switch in Settings, so the choice is visible and recorded in the method statement.

04 · Correlation and why it matters

Clusters of linked teal points over a wireframe road and rail corridor
Correlated inputs move together in groups (a section, a trade, a shared driver), with weaker links between groups. Illustration.

When a total is the sum of many independent items, highs and lows cancel out. That is good arithmetic and bad risk analysis: on a real project, the things that push one rate up (a tight market, poor ground, a slow contractor) tend to push others up too. Ignoring that makes the P90 look tighter than it is.

P90 contingency on the detailed highway job under four correlation settings Line-item ranging with sections independent: 7.9 per cent. With correlation 0.3 between sections: 13.3 per cent. Risk drivers: 16.2 per cent. Correlation test at rho equal to 1: 20.5 per cent. Sections independent ρ 0.3 between sections Risk drivers Fully correlated (ρ = 1) 7.9% 13.3% 16.2% 20.5% P90 contingency, % of the $54.1M base
Detailed highway job. Only the correlation structure changes between the first, second and fourth bars; the third uses the risk-driver method.

The lesson from testing is that correlation only within groups is not enough. With ρ applied inside each of the eight BOQ sections but the sections independent, raising ρ all the way to 0.9 added less than one point of contingency, because the sections still averaged each other out. Quantik 0.7 therefore adds correlation between groups through a factor model (default 0.3, the DoD/NASA default cited by the US GAO), and reports the achieved correlation every run.

The GN3A correlation test

DITRDCA's GN3A asks for the model to be run at zero and full correlation, the gap compared, and the chosen level documented. Correlation Test on the ribbon does this in one click, on the same seed and random numbers:

Detailed highway job, 10,000 iterations each, seed 42
ρ = 0As modelledρ = 1
P90$58,404,303$61,290,443$65,221,368
P90 contingency7.9%13.3%20.5%
Gap at P90 (ρ = 1 less ρ = 0)$6,817,065; the model sits 42% of the way across it

A large gap with the model sitting near ρ = 0 means the P90 rests on an assumption that is pulling it down. The answer is usually risk drivers, not a bigger ρ.

05 · Risk drivers

A risk driver (or risk factor) is a shared cause, such as ground conditions or the market, applied as a multiplier to every cost it affects. DITRDCA's GN3A v2 lists the risk-factor method first, then risk drivers, then hybrid approaches; with a probability below 1, a driver applies only when it occurs, as in Hulett's risk-driver method. Correlation then comes from the shared causes instead of a guessed ρ.

A risk factor that always applies, and a risk driver that applies in 20% of iterations:

=SYN.DRIVER("Ground conditions", 0.95, 1.00, 1.25)
=SYN.DRIVER("Latent contamination", 1.00, 1.10, 1.40, 0.2)

Multiply each section's cost by the drivers that affect it; in the example models the Risk Drivers sheet does this for you. Give each driver a most likely of 1.00 so the base estimate is the most likely case.

The example models include a Risk Drivers sheet: a matrix of drivers × BOQ sections, each section's combined factor, and guidance. Six road drivers are set up by default: ground, design growth, market, productivity, services interfaces and client costs. A method switch on the Risk Model sheet chooses:

  • Line-item ranging: a range on every quantity and rate;
  • Risk drivers: item ranges off; sections × factors;
  • Hybrid: both, with a warning about double counting.

Drivers rank in the tornado like any other input, so the conversation moves from "which line item" to "which cause".

06 · Schedule-linked costs and joint confidence

Preliminaries, supervision, traffic management and site facilities cost more the longer the job runs. Quantik's Schedule sheet simulates the duration: base construction weeks × an inherent range, plus register lines flagged Programme delay that add weeks (with a concurrency factor). When linked, time-related BOQ items scale with the simulated duration, and delay risks stop being priced as weeks × rate, so nothing is counted twice.

Programme86 wkBase construction duration
Duration P5088.4 wk
Duration P9094.1 wk
Joint confidence81%Cost and duration both at or below P90

Joint confidence (JCL) is the share of iterations in which cost and duration both come in at or under their targets. P90 cost and P90 duration together are not 90% likely; on the highway job they are 81% likely. SYN.JCL computes it for any pair of targets.

07 · Low-probability, high-consequence risks and screening

A 5% chance of a $3M failure adds only $150k to the expected cost, but it can dominate a P95 and barely touch a P90. GN3A suggests large, low-probability, high-consequence (LPHC) risks are better held as a stand-alone allowance than weighted into the contingency, and that minor risks are combined rather than modelled one by one. The example models put this on the register:

Setting (Risk Model)DefaultEffect
LPHC: probability at or below10%A risk meeting both is flagged LPHC: hold outside contingency (GN3A) in the register's GN3A screening column.
LPHC: principal's high cost at or above2.5% of base
Screening threshold: expected cost below0.5% of baseFlagged Below screening threshold: combine or note.
LPHC treatmentIn the modelHeld outside contingency leaves flagged lines out of the simulation and reports their principal's high cost separately, below the contingent total.

08 · Precision you can state

A simulated P90 is an estimate with its own sampling error. Quantik measures it: because the hypercube is drawn in independent blocks of 1,000, the spread of P90 across blocks gives a 95% interval (batch means). Results, the contingency sheet, the report and the status bar all show it as "P90 ± $X (95%)", and SYN.PRECISION returns it in a cell.

  • Line-item highway model: P90 ±$117k, 1.6% of the contingency.
  • Risk-driver highway model: P90 ±$103,949 at 10,000 iterations.

Auto-stop stops when P90 is known to within ±x% of the P90 contingency (default 2.5%), at a block boundary and never before 5,000 iterations. On the test model it stopped at 6,000. Contribution splits on the Contingency sheet and the Revision Bridge carry their own ± as well.

Why contingency, not total

"P90 within 0.25% of the total" sounds precise, but on a $54M job that is ±$135k against a contingency of a few million. Stating precision as a share of the contingency is the honest test.

09 · Estimate maturity and the outside view

The BOQ example's Estimate Maturity sheet classifies the estimate (stage, design maturity, AACE class), scores data quality on eight elements, and checks the last run against:

  • AACE 18R-97 expected-accuracy ranges for the class;
  • an indicative P90 contingency band (a policy setting);
  • a reference-class cross-check (Flyvbjerg / UK DfT optimism-bias uplifts) as an outside view, never added on, because stacking an uplift on a full QRA counts the same risk twice;
  • the tail beyond P90.

A P90 well below the band for its class is a prompt to revisit ranges, correlation or method, not a result to report as-is.

10 · Alignment with Australian guidance

Quantik and its templates were written against the authorities' published documents (October 2026). They help meet the requirements below; they are not a substitute for an authority's own templates or forms, and items marked "to confirm" should be checked with the authority.

GuidanceWhat Quantik supports
DITRDCA GN3A v2 (probabilistic estimation)Risk-factor and risk-driver methods; 5,000–10,000 iterations; correlation test at 0 and 1; P5–P95 at 5% steps, unescalated; tornado with regression and rank table; LPHC flagging; inputs sufficient to re-run.
DITRDCA GN2 / GN4Base estimate by PCB category (mapping to confirm against the issued PCB workbook); escalation outside contingency, P50 and P90 outturn by financial year.
TMR PCEM 9th ed. (Nov 2025)Annexure L / M4755 layout summary; planned (line-item) and unplanned (register) risk; estimate category check against Table 3.3.7; contingency monitoring; run log for replication.
INSW Cost Control Framework (Mar 2025)Tier and funded P-level; P50 / P90 − P50 contingency split; schedule QRA and JCL; escalation sensitivity and deferral.
DTF RTCC and HVHR guidelinesBCE, base risk (with escalation) and excess risk to TEI; allocation table (placeholder percentages); contingency tracking.
AS ISO 31000 / IEC 31010Criteria and risk matrix, treatment owners and dates, review dates, workshop record, method statement and sign-off on the Governance sheet.
AACE 40R-08, 41R-08, 44R-08, 18R-97Contingency as Pnn − base; range estimating; expected-value risk events; estimate class and maturity checks.
Still open

Escalation uncertainty (rates as ranges), management reserve and contingency drawdown, a structured risk-to-BOQ reconciliation, and agency export formats are on the roadmap.