Computing Library › Verification Validation
Verification Validation

Surrogate Models for Uncertainty Quantification

A fast approximation trained on a few expensive runs stands in for the real code, making thousands of UQ evaluations feasible.

Standing In for the Expensive Code

When a single code run is expensive, the thousands of runs that UQ and sensitivity analysis want become impractical. A surrogate model, also called a metamodel or emulator, is a fast approximation trained on a limited set of full runs. Once built, it can be evaluated millions of times cheaply, making sampling-based UQ feasible for codes that would otherwise be too slow to explore.

Common Surrogates

Kronos motion — fast proton

The Training Design

A surrogate is only as good as the runs it learns from. The training points should cover the input space efficiently, which is why space-filling designs such as Latin hypercube sampling are used rather than a naive grid. Too few training runs and the surrogate is inaccurate; badly placed runs and it is accurate only where it was trained. Adaptive schemes add runs where the surrogate is least certain.

The Two-Model Trap

A surrogate introduces its own error, on top of the original code's error. Reporting UQ results from a surrogate without quantifying the surrogate's approximation error understates the total uncertainty. The remedy is to validate the surrogate against held-out full runs, report its accuracy, and include that accuracy in the error budget. A Gaussian process is convenient here because it estimates its own uncertainty, which can be propagated alongside the physical uncertainty.

Used honestly, surrogates make otherwise impossible UQ and sensitivity studies routine; used carelessly, they add a hidden layer of error to results that look more precise than they are.