Public Member Functions | Protected Member Functions | Protected Attributes | Static Private Member Functions | Private Attributes | Static Private Attributes
NonDGlobalInterval Class Reference

Class for using global nongradient-based optimization approaches to calculate interval bounds for epistemic uncertainty quantification. More...

Inheritance diagram for NonDGlobalInterval:
NonDInterval NonD Analyzer Iterator NonDGlobalEvidence NonDGlobalSingleInterval

List of all members.

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 NonDGlobalIntervalnondGIInstance
 pointer to the active object instance used within the static evaluator functions in order to avoid the need for static data

Detailed Description

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.


The documentation for this class was generated from the following files: