Class for using global nongradient-based optimization approaches to calculate interval bounds for epistemic uncertainty quantification. More...
Public Member Functions | |
NonDGlobalInterval (Model &model) | |
constructor | |
~NonDGlobalInterval () | |
destructor | |
void | quantify_uncertainty () |
Performs an optimization to determine interval bounds for an entire function or interval bounds on a particular statistical estimator. | |
Protected Member Functions | |
virtual void | initialize () |
perform any required initialization | |
virtual void | set_cell_bounds () |
set the optimization variable bounds for each cell | |
virtual void | get_best_sample (bool find_max, bool eval_approx) |
determine truthFnStar and approxFnStar | |
virtual void | post_process_cell_results (bool minimize) |
post-process a cell minimization/maximization result | |
virtual void | post_process_response_fn_results () |
post-process the interval computed for a response function | |
virtual void | post_process_final_results () |
perform final post-processing | |
void | post_process_gp_results () |
post-process a GP-based optimization iteration: output EIF maximization results, update convergence controls, and update GP approximation | |
Protected Attributes | |
Iterator | daceIterator |
LHS iterator for constructing initial GP for all response functions. | |
Iterator | gpOptimizer |
NCSU DIRECT optimizer for maximizing expected improvement. | |
Model | fHatModel |
GP model of response, one approximation per response function. | |
Model | eifModel |
recast model which assimilates mean and variance to solve the max(EIF) sub-problem | |
Real | approxFnStar |
approximate response corresponding to minimum/maximum truth response | |
Real | truthFnStar |
minimum/maximum truth response function value | |
Static Private Member Functions | |
static void | EIF_objective_min (const Variables &sub_model_vars, const Variables &recast_vars, const Response &sub_model_response, Response &recast_response) |
static function used as the objective function in the Expected Improvement Function (EIF) for minimizing the GP | |
static void | EIF_objective_max (const Variables &sub_model_vars, const Variables &recast_vars, const Response &sub_model_response, Response &recast_response) |
static function used as the objective function in the Expected Improvement Function (EIF) for maximizing the GP | |
Private Attributes | |
const int | seedSpec |
the user seed specification (default is 0) | |
int | numSamples |
the number of samples used in the surrogate | |
String | rngName |
name of the random number generator | |
size_t | eifConvergenceCntr |
counter for number of successive iterations that the optimal EIF is less than the convergenceTol | |
size_t | distConvergenceCntr |
counter for number of successive iterations that the L_2 change in optimal solution is less than the convergenceTol | |
RealVector | prevCStar |
stores previous optimal points for convergence | |
size_t | sbIterNum |
surrogate-based minimization/maximization iteration count | |
bool | approxConverged |
flag indicating convergence of a GP minimization or maximization | |
bool | allResponsesPerIter |
flag for maximal response extraction | |
Static Private Attributes | |
static NonDGlobalInterval * | nondGIInstance |
pointer to the active object instance used within the static evaluator functions in order to avoid the need for static data |
Class for using global nongradient-based optimization approaches to calculate interval bounds for epistemic uncertainty quantification.
The NonDGlobalInterval class supports global nongradient-based optimization apporaches to determining interval bounds for epistemic UQ. The interval bounds may be on the entire function in the case of pure interval analysis (e.g. intervals on input = intervals on output), or the intervals may be on statistics of an "inner loop" aleatory analysis such as intervals on means, variances, or percentile levels. The preliminary implementation will use a Gaussian process surrogate to determine interval bounds.