Optimizer Class Reference

Base class for the optimizer branch of the iterator hierarchy. More...

Inheritance diagram for Optimizer:

Minimizer Iterator APPSOptimizer COLINOptimizer CONMINOptimizer DOTOptimizer JEGAOptimizer NCSUOptimizer NLPQLPOptimizer NPSOLOptimizer SNLLOptimizer List of all members.

Protected Member Functions

 Optimizer ()
 default constructor
 Optimizer (Model &model)
 standard constructor
 Optimizer (NoDBBaseConstructor, Model &model)
 alternate constructor for "on the fly" instantiations
 Optimizer (NoDBBaseConstructor, size_t num_cv, size_t num_dv, 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 ()
 destructor
void derived_pre_run ()
void run ()
 run the iterator; portion of run_iterator()
void derived_post_run ()
void print_results (ostream &s)
virtual void find_optimum ()=0
 Redefines the run virtual function for the optimizer branch.

Protected Attributes

size_t numObjectiveFns
 number of objective functions (iterator view)
size_t numUserObjectiveFns
 number of objective functions (user's model view)
bool multiObjFlag
 flag indicating whether multi-objective transformations are necessary
OptimizerprevOptInstance
 pointer containing previous value of optimizerInstance

Static Protected Attributes

static OptimizeroptimizerInstance
 pointer to Optimizer instance used in static member functions

Private Member Functions

void weighted_sum (const Response &full_response, Response &reduced_response, const RealVector &wts) const
 weighted objective for single-objective optimizers
void multi_objective_retrieve (const Variables &vars, Response &response) const
 from the solution of a single-objective optimizer

Static Private Member Functions

static void primary_resp_recast (const Variables &native_vars, const Variables &scaled_vars, const Response &native_response, Response &scaled_response)
 from native (user) to iterator space

Detailed Description

Base class for the optimizer branch of the iterator hierarchy.

The Optimizer class provides common data and functionality for DOTOptimizer, CONMINOptimizer, NPSOLOptimizer, SNLLOptimizer, NLPQLPOptimizer, COLINOptimizer, and JEGAOptimizer.


Constructor & Destructor Documentation

Optimizer ( Model model  )  [protected]

standard constructor

This constructor extracts the inherited data for the optimizer branch and performs sanity checking on gradient and constraint settings.


Member Function Documentation

void derived_pre_run (  )  [protected, virtual]

Implements portions of pre_run specific to Optimizers. This function should be invoked (or reimplemented) by any derived implementations of derived_pre_run() (which would otherwise hide it).

Reimplemented from Minimizer.

Reimplemented in CONMINOptimizer, DOTOptimizer, NLPQLPOptimizer, and SNLLOptimizer.

void run (  )  [inline, protected, virtual]

run the iterator; portion of run_iterator()

Iterator supports a construct/pre-run/run/post-run/destruct progression. This function is the virtual run function for the iterator class hierarchy. All derived classes need to redefine it.

Reimplemented from Iterator.

void derived_post_run (  )  [protected, virtual]

Implements portions of post_run specific to Optimizers. This function should be invoked (or reimplemented) by any derived implementations of derived_post_run() (which would otherwise hide it).

Reimplemented from Minimizer.

Reimplemented in SNLLOptimizer.

void print_results ( ostream &  s  )  [protected, virtual]

Redefines default iterator results printing to include optimization results (objective functions and constraints).

Reimplemented from Iterator.

void primary_resp_recast ( const Variables native_vars,
const Variables scaled_vars,
const Response native_response,
Response iterator_response 
) [static, private]

from native (user) to iterator space

Objective function map from user/native space to iterator/scaled/combined space using a RecastModel. If resizing the response, copies the constraint (secondary) data from native_response too

void weighted_sum ( const Response full_response,
Response reduced_response,
const RealVector multiobj_wts 
) const [private]

weighted objective for single-objective optimizers

This function is responsible for the mapping of multiple objective functions into a single objective for publishing to single-objective optimizers. Used in DOTOptimizer, NPSOLOptimizer, SNLLOptimizer, and SGOPTApplication on every function evaluation. The simple weighting approach (using primaryRespFnWts) is the only technique supported currently. The weightings are used to scale function values, gradients, and Hessians as needed.

void multi_objective_retrieve ( const Variables vars,
Response response 
) const [private]

from the solution of a single-objective optimizer

Retrieve a full multiobjective response based on the data returned by a single objective optimizer by performing a data_pairs search.


The documentation for this class was generated from the following files:
Generated on Wed Nov 5 19:54:06 2008 for DAKOTA by  doxygen 1.5.1