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. | |
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 | |
Real | rel_change_c_star (const RealVector &curr_c_star, const RealVector &prev_c_star) |
Computes relative change between successive c_stars using Euclidean norm. | |
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 | |
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(), EffGlobalMinimizer::meritFnStar, Iterator::numFunctions, SurrBasedMinimizer::origNonlinEqTargets, SurrBasedMinimizer::origNonlinIneqLowerBnds, SurrBasedMinimizer::origNonlinIneqUpperBnds, EffGlobalMinimizer::truthFnStar, and EffGlobalMinimizer::varStar.
Referenced by EffGlobalMinimizer::minimize_surrogates_on_model().