Implementation of Efficient Global Optimization/Least Squares algorithms. More...
Public Member Functions | |
EffGlobalMinimizer (Model &model) | |
standard constructor | |
~EffGlobalMinimizer () | |
alternate constructor for instantiations "on the fly" | |
void | minimize_surrogates () |
Used for computing the optimal solution using a surrogate-based approach. Redefines the Iterator::run() virtual function. | |
const Model & | algorithm_space_model () const |
return the result of any recasting or surrogate model recursion layered on top of iteratedModel by the derived Iterator ctor chain | |
Private Member Functions | |
void | minimize_surrogates_on_model () |
called by minimize_surrogates for setUpType == "model" | |
void | get_best_sample () |
called by minimize_surrogates for setUpType == "user_functions" | |
Real | expected_improvement (const RealVector &means, const RealVector &variances) |
expected improvement function for the GP | |
RealVector | expected_violation (const RealVector &means, const RealVector &variances) |
expected violation function for the constraint functions | |
void | update_penalty () |
initialize and update the penaltyParameter | |
Static Private Member Functions | |
static void | EIF_objective_eval (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 (EIF) problem formulation for PMA | |
Private Attributes | |
String | setUpType |
controls iteration mode: "model" (normal usage) or "user_functions" (user-supplied functions mode for "on the fly" instantiations). | |
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 | meritFnStar |
minimum penalized response from among true function evaluations | |
RealVector | truthFnStar |
true function values corresponding to the minimum penalized response | |
RealVector | varStar |
point that corresponds to the optimal value meritFnStar | |
short | dataOrder |
order of the data used for surrogate construction, in ActiveSet request vector 3-bit format; user may override responses spec | |
Static Private Attributes | |
static EffGlobalMinimizer * | effGlobalInstance |
pointer to the active object instance used within the static evaluator functions in order to avoid the need for static data |
Implementation of Efficient Global Optimization/Least Squares algorithms.
The EffGlobalMinimizer class provides an implementation of the Efficient Global Optimization algorithm developed by Jones, Schonlau, & Welch as well as adaptation of the concept to nonlinear least squares.
~EffGlobalMinimizer | ( | ) |
alternate constructor for instantiations "on the fly"
destructor
This is an alternate constructor for instantiations on the fly using a Model but no ProblemDescDB.
References SurrBasedMinimizer::approxSubProbMinimizer, EffGlobalMinimizer::eifModel, Model::free_communicators(), and Iterator::maximum_concurrency().
void get_best_sample | ( | ) | [private] |
called by minimize_surrogates for setUpType == "user_functions"
determine best solution from among sample data for expected imporovement function
References Model::approximation_data(), SurrBasedMinimizer::augmented_lagrangian_merit(), Model::compute_response(), Model::continuous_variables(), Dakota::copy_data(), Model::current_response(), EffGlobalMinimizer::fHatModel, Response::function_values(), Iterator::iteratedModel, EffGlobalMinimizer::meritFnStar, Iterator::numFunctions, SurrBasedMinimizer::origNonlinEqTargets, SurrBasedMinimizer::origNonlinIneqLowerBnds, SurrBasedMinimizer::origNonlinIneqUpperBnds, Model::primary_response_fn_weights(), EffGlobalMinimizer::truthFnStar, and EffGlobalMinimizer::varStar.
Referenced by EffGlobalMinimizer::minimize_surrogates_on_model().