Dakota  Version 6.4
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Pages
Classes | Public Member Functions | Private Member Functions | Private Attributes | List of all members
NomadOptimizer Class Reference

Wrapper class for NOMAD Optimizer. More...

Inheritance diagram for NomadOptimizer:
Optimizer Minimizer Iterator


class  Evaluator
 NOMAD-based Evaluator class. More...

Public Member Functions

 NomadOptimizer (ProblemDescDB &problem_db, Model &model)
 Constructor. More...
 NomadOptimizer (Model &model)
 alternate constructor for Iterator instantiations without DB
 ~NomadOptimizer ()
void core_run ()
 Calls the NOMAD solver.

Private Member Functions

void load_parameters (Model &model, NOMAD::Parameters &p)
 Convenience function for Parameter loading. More...

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
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

Additional Inherited Members

- Static Public Member Functions inherited from Optimizer
static void not_available (const std::string &package_name)
 Static helper function: third-party opt packages which are not available.
- Protected Member Functions inherited from Optimizer
 Optimizer ()
 default constructor
 Optimizer (ProblemDescDB &problem_db, Model &model)
 alternate constructor; accepts a model
 Optimizer (unsigned short method_name, Model &model)
 alternate constructor for "on the fly" instantiations
 Optimizer (unsigned short method_name, size_t num_cv, size_t num_div, size_t num_dsv, size_t num_drv, size_t num_lin_ineq, size_t num_lin_eq, size_t num_nln_ineq, size_t num_nln_eq)
 alternate constructor for "on the fly" instantiations
 ~Optimizer ()
void initialize_run ()
void post_run (std::ostream &s)
void finalize_run ()
 utility function to perform common operations following post_run(); deallocation and resetting of instance pointers More...
void print_results (std::ostream &s)
- Static Protected Member Functions inherited from Iterator
static void gnewton_set_recast (const Variables &recast_vars, const ActiveSet &recast_set, ActiveSet &sub_model_set)
 conversion of request vector values for the Gauss-Newton Hessian approximation More...
- Protected Attributes inherited from Optimizer
size_t numObjectiveFns
 number of objective functions (iterator view)
bool localObjectiveRecast
 flag indicating whether local recasting to a single objective is used
 pointer containing previous value of optimizerInstance
- Static Protected Attributes inherited from Optimizer
static OptimizeroptimizerInstance
 pointer to Optimizer instance used in static member functions

Detailed Description

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.

Constructor & Destructor Documentation

NomadOptimizer ( ProblemDescDB problem_db,
Model model 

Member Function Documentation

void load_parameters ( Model model,
NOMAD::Parameters &  p 

Convenience function for Parameter loading.

This function takes the Parameters provided by the user in the DAKOTA model.

modelNOMAD 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::core_run().

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