OPTPP::OptPDS Class Reference

#include <OptPDS.h>

Inheritance diagram for OPTPP::OptPDS:

OPTPP::OptDirect List of all members.

Public Member Functions

 OptPDS ()
 OptPDS (NLP0 *p)
 OptPDS (NLP0 *p, TOLS t)
virtual ~OptPDS ()
virtual NEWMAT::ColumnVector computeSearch (NEWMAT::SymmetricMatrix &)
virtual void acceptStep (int k, int step_type)
virtual void updateModel (int k, int ndim, NEWMAT::ColumnVector x)
virtual void reset ()
void setSSS (int s)
 Set number of points in the search scheme.
void setSimplexType (int t)
 Set type of simplex used by the algorithm.
void setScale (NEWMAT::ColumnVector x)
 Set vertex scale factor.
void setSimplex (NEWMAT::Matrix &m)
 Set simplex used by the algorithm.
void setCreateFlag (bool flag=true)
void setSchemeFileName (char *s)
 Override the default value of filename.
void setTRSize (double tr=0)
 Set trust-region size.
void setSimplexSize (double len)
 Set simplex size.
void setNonIter (bool init=false)
 Set first nonlinear iteration to either true or false.
void setTRPDS (bool trcon=false)
int getSimplexType () const
int getSSS () const
NEWMAT::ColumnVector & getScale ()
bool getCreateFlag () const
char * getSchemeFileName ()
double getTRSize ()
double getSimplexSize ()
bool getNonIter ()
bool getMethod ()
void initOpt ()
 Initialize algorithmic parameters.
void optimize ()
 Call the optimization method.
void readOptInput ()
 Read user-specificed input options.
int checkConvg ()
 Check to see if algorithm satisfies conv. criteria.
void printStatus (char *)
 Print status of PDS method.

Protected Attributes

NLP0nlp
 Pointer to an NLP0 object.
NEWMAT::Matrix simplex
 Convex hull of dimension+1 points.
NEWMAT::ColumnVector vscales
 Vector of scale factors to multiply vertices.
int search_scheme_size
 Number of points used in search scheme.
int simplex_type
 Type of simplex chosen by the user.
int reset_param
double tr_size
 Trust-region radius.
double simplex_size
bool create_scheme_flag
bool first
bool trpds
char schemefile_name [80]

Detailed Description

OptPDS is an implementation of a derivative-free algorithm for unconstrained optimization. The search direction is driven solely by the function information. OptPDS is easy to implement on parallel machines. A special feature of this approach is the ease with which algorithms can be generated to take advantage of any number of processors and to addapt to any cost ratio of communication to function evaluation.

For a further description of the parallel direct search methods see J. E. Dennis, Jr. and Virginia Torczon, "Direct Search Methods on Parallel Machines," SIAM J. Optimization, Vol. 1, No. 4, pp. 448--474, November 1991.


Constructor & Destructor Documentation

OPTPP::OptPDS::OptPDS (  )  [inline]

OPTPP::OptPDS::OptPDS ( NLP0 p  )  [inline]

OPTPP::OptPDS::OptPDS ( NLP0 p,
TOLS  t 
) [inline]

virtual OPTPP::OptPDS::~OptPDS (  )  [inline, virtual]


Member Function Documentation

virtual void OPTPP::OptPDS::acceptStep ( int  k,
int  step_type 
) [inline, virtual]

int OPTPP::OptPDS::checkConvg (  ) 

Check to see if algorithm satisfies conv. criteria.

virtual NEWMAT::ColumnVector OPTPP::OptPDS::computeSearch ( NEWMAT::SymmetricMatrix &   )  [inline, virtual]

bool OPTPP::OptPDS::getCreateFlag (  )  const [inline]

bool OPTPP::OptPDS::getMethod (  )  [inline]

bool OPTPP::OptPDS::getNonIter (  )  [inline]

NEWMAT::ColumnVector& OPTPP::OptPDS::getScale (  )  [inline]

char* OPTPP::OptPDS::getSchemeFileName (  )  [inline]

double OPTPP::OptPDS::getSimplexSize (  )  [inline]

int OPTPP::OptPDS::getSimplexType (  )  const [inline]

int OPTPP::OptPDS::getSSS (  )  const [inline]

double OPTPP::OptPDS::getTRSize (  )  [inline]

void OPTPP::OptPDS::initOpt (  ) 

Initialize algorithmic parameters.

void OPTPP::OptPDS::optimize (  ) 

Call the optimization method.

void OPTPP::OptPDS::printStatus ( char *   ) 

Print status of PDS method.

void OPTPP::OptPDS::readOptInput (  ) 

Read user-specificed input options.

virtual void OPTPP::OptPDS::reset (  )  [inline, virtual]

void OPTPP::OptPDS::setCreateFlag ( bool  flag = true  )  [inline]

void OPTPP::OptPDS::setNonIter ( bool  init = false  )  [inline]

Set first nonlinear iteration to either true or false.

void OPTPP::OptPDS::setScale ( NEWMAT::ColumnVector  x  )  [inline]

Set vertex scale factor.

void OPTPP::OptPDS::setSchemeFileName ( char *  s  )  [inline]

Override the default value of filename.

void OPTPP::OptPDS::setSimplex ( NEWMAT::Matrix &  m  )  [inline]

Set simplex used by the algorithm.

void OPTPP::OptPDS::setSimplexSize ( double  len  )  [inline]

Set simplex size.

void OPTPP::OptPDS::setSimplexType ( int  t  )  [inline]

Set type of simplex used by the algorithm.

void OPTPP::OptPDS::setSSS ( int  s  )  [inline]

Set number of points in the search scheme.

void OPTPP::OptPDS::setTRPDS ( bool  trcon = false  )  [inline]

void OPTPP::OptPDS::setTRSize ( double  tr = 0  )  [inline]

Set trust-region size.

virtual void OPTPP::OptPDS::updateModel ( int  k,
int  ndim,
NEWMAT::ColumnVector  x 
) [inline, virtual]


Member Data Documentation

bool OPTPP::OptPDS::create_scheme_flag [protected]

bool OPTPP::OptPDS::first [protected]

NLP0* OPTPP::OptPDS::nlp [protected]

Pointer to an NLP0 object.

int OPTPP::OptPDS::reset_param [protected]

char OPTPP::OptPDS::schemefile_name[80] [protected]

int OPTPP::OptPDS::search_scheme_size [protected]

Number of points used in search scheme.

NEWMAT::Matrix OPTPP::OptPDS::simplex [protected]

Convex hull of dimension+1 points.

double OPTPP::OptPDS::simplex_size [protected]

int OPTPP::OptPDS::simplex_type [protected]

Type of simplex chosen by the user.

double OPTPP::OptPDS::tr_size [protected]

Trust-region radius.

bool OPTPP::OptPDS::trpds [protected]

NEWMAT::ColumnVector OPTPP::OptPDS::vscales [protected]

Vector of scale factors to multiply vertices.


The documentation for this class was generated from the following files:
Bug Reports    OPT++ Developers    Copyright Information    GNU Lesser General Public License
Documentation, generated by , last revised August 30, 2006.