sc::Optimize(3)

NAME
sc::Optimize -

The Optimize class is an abstract base class for classes that find the extreme points of Function's'.

SYNOPSIS

#include <opt.h>

Inherits sc::SavableState'.

Inherited by sc::EFCOpt, sc::GDIISOpt, sc::LineOpt, sc::NewtonOpt, sc::QNewtonOpt, and sc::SteepestDescentOpt'.

  Public Member Functions
Optimize (StateIn &)
Restore the state of a Function object'.
Optimize (const Ref< KeyVal > &)
The KeyVal constructor reads the following information:
void save_data_state (StateOut &)
Save the base classes (with save_data_state) and the members in the same order that the StateIn CTOR initializes them'.
virtual int optimize ()
Do the optimization'.
void set_checkpoint ()
Set up for checkpointing'.
void set_checkpoint_file (const char *)
void set_function (const Ref< Function > &)
Set the function to be optimized'.
void set_max_iterations (int)
Set the iteration limit'.
virtual void init ()
Initialize the optimizer'.
virtual int update ()=0
Take a step'.
virtual void apply_transform (const Ref< NonlinearTransform > &)
Ref< Function > function () const
Returns information about the Function being optimized'.
Ref< SCMatrixKit > matrixkit () const
RefSCDimension dimension () const

  Protected Attributes
int max_iterations_
int n_iterations_
int ckpt_
int print_timings_
double max_stepsize_
char * ckpt_file
Ref< Function > function_
Ref< Convergence > conv_

Detailed Description

The Optimize class is an abstract base class for classes that find the extreme points of Function's'.

Constructor & Destructor Documentation

  sc::Optimize::Optimize (const Ref< KeyVal > &)

The KeyVal constructor reads the following information: .IP "checkpoint" 1c If true, the optimization will be checkpointed'. The default is false'.

checkpoint_file
    The name of the checkpoint file'. The name defaults to opt_ckpt'.dat'.

max_iterations
    The maximum number of interations'. The default is 10'.

max_stepsize
    The maximum stepsize'. The default is 0'.6'.

function
    A Function object'. There is no default'.

convergence
    This can be either a floating point number or a Convergence object'. If it is a floating point number then it is the convergence criterion'. See the description Convergence class for the default'.

Member Function Documentation

  virtual int sc::Optimize::optimize () [virtual]

Do the optimization'. Returns nonzero if the optimization is complete'.

  void sc::Optimize::save_data_state (StateOut &) [virtual]

Save the base classes (with save_data_state) and the members in the same order that the StateIn CTOR initializes them'. This must be implemented by the derived class if the class has data'.

Reimplemented from sc::SavableState'.

Reimplemented in sc::LineOpt, sc::QNewtonOpt, sc::EFCOpt, sc::GDIISOpt, sc::NewtonOpt, and sc::SteepestDescentOpt'.

  virtual int sc::Optimize::update () [pure virtual]

Take a step'. Returns 1 if the optimization has converged, otherwise 0'.

Implemented in sc::Backtrack, sc::QNewtonOpt, sc::EFCOpt, sc::GDIISOpt, sc::MCSearch, sc::NewtonOpt, and sc::SteepestDescentOpt'.

Author

Generated automatically by Doxygen for MPQC from the source code'.