$extrastylesheet
Dakota
Version 6.2
|
Wrapper class for NOMAD Optimizer. More...
Classes | |
class | Evaluator |
NOMAD-based Evaluator class. More... | |
Public Member Functions | |
NomadOptimizer (ProblemDescDB &problem_db, Model &model) | |
Constructor. | |
NomadOptimizer (Model &model) | |
alternate constructor for Iterator instantiations without DB | |
~NomadOptimizer () | |
Destructor. | |
void | find_optimum () |
Calls the NOMAD solver. | |
Private Member Functions | |
void | load_parameters (Model &model, NOMAD::Parameters &p) |
Convenience function for Parameter loading. | |
Private Attributes | |
int | numTotalVars |
Total across all types of variables. | |
int | numNomadNonlinearIneqConstraints |
Number of nonlinear inequality constraints after put into the format required by NOMAD. | |
int | randomSeed |
Algorithm control parameters passed to NOMAD. | |
int | maxBlackBoxEvals |
int | maxIterations |
maximum number of iterations for the iterator | |
Real | epsilon |
Real | vns |
std::string | outputFormat |
Output control parameters passed to NOMAD. | |
std::string | historyFile |
bool | displayAll |
int | numHops |
Parameters needed for categorical neighbor construction. | |
BitArray | discreteSetIntCat |
BitArray | discreteSetRealCat |
RealMatrixArray | discreteSetIntAdj |
RealMatrixArray | discreteSetRealAdj |
RealMatrixArray | discreteSetStrAdj |
RealMatrixArray | categoricalAdjacency |
NOMAD::Point | initialPoint |
Pointer to Nomad initial point. | |
NOMAD::Point | upperBound |
Pointer to Nomad upper bounds. | |
NOMAD::Point | lowerBound |
Pointer to Nomad lower bounds. | |
std::vector< int > | constraintMapIndices |
map from Dakota constraint number to Nomad constraint number | |
std::vector< double > | constraintMapMultipliers |
multipliers for constraint transformations | |
std::vector< double > | constraintMapOffsets |
offsets for constraint transformations |
Wrapper class for NOMAD Optimizer.
NOMAD (is a Nonlinear Optimization by Mesh Adaptive Direct search) is a simulation-based optimization package designed to efficiently explore a design space using Mesh Adaptive Search.
Mesh Adaptive Direct Search uses Meshes, discretizations of the domain space of variables. It generates multiple meshes, and as its name implies, it also adapts the refinement of the meshes in order to find the best solution of a problem.
The objective of each iteration is to find points in a mesh that improves the current solution. If a better solution is not found, the next iteration is done over a finer mesh.
Each iteration is composed of two steps: Search and Poll. The Search step finds any point in the mesh in an attempt to find an improvement; while the Poll step generates trial mesh points surrounding the current best current solution.
The NomadOptimizer is a wrapper for the NOMAD library. It features the following attributes: max_function_evaluations
, display_format
, display_all_evaluations
, function_precision
, max_iterations
.
NomadOptimizer | ( | ProblemDescDB & | problem_db, |
Model & | model | ||
) |
Constructor.
NOMAD Optimizer Constructor
model | DAKOTA Model object |
References ProblemDescDB::get_ba(), ProblemDescDB::get_bool(), ProblemDescDB::get_int(), ProblemDescDB::get_real(), ProblemDescDB::get_rma(), ProblemDescDB::get_string(), NomadOptimizer::maxIterations, NomadOptimizer::numHops, NomadOptimizer::outputFormat, Iterator::probDescDB, and NomadOptimizer::randomSeed.
void load_parameters | ( | Model & | model, |
NOMAD::Parameters & | p | ||
) | [private] |
Convenience function for Parameter loading.
This function takes the Parameters provided by the user in the DAKOTA model.
model | NOMAD Model object Variables for the stuff that must go in the parameters. Will be filled by calling load_parameters after the constructor to capture model recasts. |
References Dakota::_NPOS, Dakota::abort_handler(), Minimizer::bigIntBoundSize, Minimizer::bigRealBoundSize, NomadOptimizer::constraintMapIndices, NomadOptimizer::constraintMapMultipliers, NomadOptimizer::constraintMapOffsets, Model::continuous_lower_bounds(), Model::continuous_upper_bounds(), Model::continuous_variables(), Model::discrete_int_lower_bounds(), Model::discrete_int_sets(), Model::discrete_int_upper_bounds(), Model::discrete_int_variables(), Model::discrete_real_lower_bounds(), Model::discrete_real_upper_bounds(), Model::discrete_real_variables(), Model::discrete_set_int_values(), Model::discrete_set_real_values(), Model::discrete_set_string_values(), Model::discrete_string_variables(), NomadOptimizer::initialPoint, Iterator::iteratedModel, NomadOptimizer::lowerBound, Model::nonlinear_eq_constraint_targets(), Model::nonlinear_ineq_constraint_lower_bounds(), Model::nonlinear_ineq_constraint_upper_bounds(), Minimizer::numContinuousVars, Minimizer::numDiscreteIntVars, Minimizer::numDiscreteRealVars, Minimizer::numDiscreteStringVars, NomadOptimizer::numNomadNonlinearIneqConstraints, Minimizer::numNonlinearEqConstraints, Minimizer::numNonlinearIneqConstraints, NomadOptimizer::numTotalVars, Dakota::set_value_to_index(), and NomadOptimizer::upperBound.
Referenced by NomadOptimizer::find_optimum().