#include <sMC.h>
Inheritance diagram for sMC::

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