Dakota Reference Manual  Version 6.12
Explore and Predict with Confidence
 All Pages

Multilevel methods for sampling-based UQ


Alias: multilevel_mc

Argument(s): none

Child Keywords:

Required/Optional Description of Group Dakota Keyword Dakota Keyword Description
Optional seed_sequence

Sequence of seed values for a multi-stage random sampling

Optional fixed_seed

Reuses the same seed value for multiple random sampling sets

Optional pilot_samples

Initial set of samples for multilevel sampling methods.

Optional sample_type

Selection of sampling strategy

Optional export_sample_sequence

Enable exporting output sample sequences on files

Optional allocation_target

Allocation statistics/target for the MLMC sample allocation.

Optional qoi_aggregation

Aggregation strategy for the QoIs statistics for problems with multiple responses in the MLMC algorithm

Optional max_iterations

Stopping criterion based on number of refinement iterations within the multilevel sample allocation

Optional convergence_tolerance

Stopping criterion based on relative error

Optional final_moments

Output moments of the specified type and include them within the set of final statistics.

Optional distribution

Placeholder for future capabilities

Optional rng

Selection of a random number generator

Optional model_pointer

Identifier for model block to be used by a method


A nascent sampling method that utilizes both multifidelity and multilevel relationships within a hierarchical surrogate model in order to improve convergence behavior in sampling methods.

In the case of a multilevel relationship, multilevel Monte Carlo methods are used to compute an optimal sample allocation per level, and in the case of a multifidelity relationship, control variate Monte Carlo methods are used to compute an optimal sample allocation per fidelity. These two approaches can also be combined, resulting in the three approaches below.

Multilevel Monte Carlo

The Monte Carlo estimator for the mean is defined as

\[ \mathbb{E}[Q] \equiv \hat{Q}^{MC} = \frac{1}{N} \sum_{i=1}^N Q^{(i)} \]

In a multilevel method with $L$ levels, we replace this estimator with a telescoping sum:

\[ \mathbb{E}[Q] \equiv \hat{Q}^{ML} = \sum_{l=0}^L \frac{1}{N_l} \sum_{i=1}^{N_l} (Q_l^{(i)} - Q_{l-1}^{(i)}) \equiv \sum_{l=0}^L \hat{Y}^{MC}_l \]

This decomposition forms discrepancies for each level greater than 0, seeking reduction in the variance of the discrepancy $Y$ relative to the variance of the original response $Q$. The number of samples allocated for each level ( $N_l$) is based on a total cost minimization procedure that incorporates the relative cost and observed variance for each of the $Y_\ell$.

Control Variate Monte Carlo

In the case of two model fidelities (low fidelity denoted as LF and high fidelity denoted as HF), we employ a control variate approach:

\[ \hat{Q}_{HF}^{CV} = \hat{Q}_{HF}^{MC} - \beta (\hat{Q}_{LF}^{MC} - \mathbb{E}[Q_{LF}]) \]

As opposed to the traditional control variate approach, we do not know $\mathbb{E}[Q_{LF}]$ precisely, but rather estimate it more accurately than $\hat{Q}_{LF}^{MC}$ based on a sampling increment applied to the LF model. This sampling increment is based again on a total cost minimization procedure that incorporates the relative LF and HF costs and the observed Pearson correlation coefficient $\rho_{LH}$ between $Q_{LF}$ and $Q_{HF}$. The coefficient $\beta$ is then determined from the observed LF-HF covariance and LF variance.

Multilevel Control Variate Monte Carlo

If both multifidelity and multilevel structure are included within the hierarchical model specification, then a control variate can be applied across fidelities for each level within an outer multilevel approach.

On each level a control variate is active for the discrepancy $Y_{\ell}$ based on

\[ Y_{\ell}^\star = Y_{\ell} + \alpha_\ell \left( \hat{Y}^{\mathrm{LF}}_\ell - \mathbb{E}\left[ Y^{\mathrm{LF}}_\ell \right] \right), \]

where $Y^{\mathrm{LF}}_\ell = \gamma_\ell Q^{\mathrm{LF}}_\ell - Q^{\mathrm{HF}}_\ell$.

The optimal parameter $\gamma_\ell$ is computed from the correlation properties between model forms and discretization levels (see the theory manual for further details) and the optimal allocation $N_\ell$ (per level) is finally obtained from it.

Default Behavior

The multilevel sampling method employs Monte Carlo sampling be default, but this default can be overridden to use Latin hypercube sampling using sample_type lhs.

Expected Output

The multilevel sampling method reports estimates of the first four moments and a summary of the evaluations performed for each model fidelity and discretization level. The method does not support any level mappings (response, probability, reliability, generalized reliability) at this time.

Expected HDF5 Output

If Dakota was built with HDF5 support and run with the hdf5 keyword, this method writes the following results to HDF5:

In addition, the execution group has the attribute equiv_hf_evals, which records the equivalent number of high-fidelity evaluations.

Usage Tips

The multilevel sampling method must be used in combination with a hierarchical model specification. When exploiting multiple discretization levels, it is necessary to identify the variable string identifier that controls these levels using solution_level_control. Associated relative costs also need to be supplied using solution_level_cost.

Additional Discussion

Also see multilevel regression in polynomial_chaos.


The following method block

    model_pointer = 'HIERARCH'
      pilot_samples = 20 seed = 1237
      max_iterations = 10
      convergence_tolerance = .001

results in multilevel Monte Carlo when the HIERARCH model specification contains a single model fidelity with multiple discretization levels, in control variate Monte Carlo when the HIERARCH model specification has multiple ordered model fidelities each with a single discretization level, and multilevel control variate Monte Carlo when the HIERARCH model specification contains multiple model fidelities each with multiple discretization levels.

An example of the former (single model fidelity with multiple discretization levels) follows:

    id_model = 'HIERARCH'
    surrogate hierarchical
      ordered_model_fidelities = 'SIM1'
      correction additive zeroth_order

    id_model = 'SIM1'
      solution_level_control = 'N_x'
      solution_level_cost = 630. 1260. 2100. 4200.

Refer to dakota/share/dakota/test/dakota_uq_heat_eq_{mlmc,cvmc,mlcvmc}.in for additional examples.

See Also

These keywords may also be of interest: