sc::Optimize Class Reference

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

#include <opt.h>

Inheritance diagram for sc::Optimize:

sc::SavableState sc::DescribedClass sc::RefCount sc::Identity sc::EFCOpt sc::LineOpt sc::QNewtonOpt sc::MCSearch List of all members.

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< Functionfunction () const
 Returns information about the Function being optimized.
Ref< SCMatrixKitmatrixkit () const
RefSCDimension dimension () const

Protected Attributes

int max_iterations_
int n_iterations_
int ckpt_
int print_timings_
double max_stepsize_
char * ckpt_file
Ref< Functionfunction_
Ref< Convergenceconv_

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

checkpoint
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

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::EFCOpt, sc::LineOpt, and sc::QNewtonOpt.

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

Do the optimization.

Returns nonzero if the optimization is complete.

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

Take a step.

Returns 1 if the optimization has converged, otherwise 0.

Implemented in sc::EFCOpt, sc::MCSearch, and sc::QNewtonOpt.


The documentation for this class was generated from the following file:
Generated at Mon Dec 3 23:23:56 2007 for MPQC 2.3.1 using the documentation package Doxygen 1.5.2.