sMC Class Reference

Abstract base class that defines a structured Monte Carlo sampling algorithm. More...

#include <sMC.h>

Inheritance diagram for sMC::

BaseOptimizer CommonIO sMCint sMCreal List of all members.

General Information

int write (ostream &)
 Print information about the optimizer.

int read (istream &)
 Read information about the optimizer (not presently supported).

Uniform urnd

Iteration Controls

virtual void setup (REAL &fret)=0
 Calculate first point and setup.

virtual void generate_init ()
 Initialize for another iteration.

virtual void generate_point ()=0
 Generate next point.

virtual void do_ls (REAL &)
 Execute local search on current iterate.

virtual void evaluate_point (REAL &fp)=0
 Evaluate generated point.

virtual void set_best (int ndx)=0
 Set best point equal to the current iterate.

virtual void finish_up ()=0
 Finish up; set the function memory to the best point.

virtual void synchronize ()=0
 Finish up; set the function memory to the best point.

int curr_ndx
 Current point index.


Public Methods

General Information
 sMC ()
int minimize ()
 Performs minimization. More...

void set_rng (RNG *rng_)
 Sets the random number generator.

Configuration Controls
void set_batch_size (const int size)

Protected Attributes

Configuration Controls
REAL freq
 Local search frequency.

int npartitions
 Number of partitions.

int batch_size
 The number of evaluations per iteration.


Detailed Description

Abstract base class that defines a structured Monte Carlo sampling algorithm.

The default is to define a MC to uniformly sample over the entire search space. The user can also define partitions to allow this class to sample K disjoint regions of the search space in each iteration. Subclasses of \Ref{sMC} can specify the number of partitions in {\bf num\_partitions} and they can specify the frequency of local search in \Ref{freq}.

\Ref{sMC} defines the main loop for a sMC algorithm. The main loop utilizes the protected methods defined in the Iteration Controls section.


Member Function Documentation

int sMC::minimize   [virtual]
 

Performs minimization.

This method is defined be the subclass. The \Ref{check_convergence} method can be used to utilize the termination controls defined by this class. Also, the \Ref{debug_io} method can be used to print general debugging information in a standard format. If the developer wishes to provide additional debugging information, the \Ref{virt_debug_io} method can be redefined. This method is called from \Ref{debug_io}.

Reimplemented from BaseOptimizer.

Reimplemented in sMCint, and sMCreal.


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