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

Configuration Controls | |
| void | set_exploratory_move (const char *str) |
| Set the type of exploratory moves to be called. | |
| void | set_pattern_basis (const char *str) |
| Set the type of basis used for the pattern steps. | |
| int | randomize |
| int | reverse_flag |
| If true, consider -2*Delta if a Delta step fails. More... | |
| int | num_augmented_trials |
| The number of additional trial points that may be considered. | |
| int | trunc_fps |
| If true, then truncate "fast_adaptive" to only allow one iteration where you shrink after one feval. | |
| int | fps_batch |
| int | extended_stopping_rule |
Configuration Controls | |
| virtual void | UpdateDelta (int flag) |
| This method expands or contracts \Ref{Delta} based on the prior success of \Ref{ExploratoryMoves} (as indicated by \Ref{flag}). | |
| void | UpdateMatrix (int) |
| A generic hook to the update of the pattern matrix. More... | |
| int | Lambda_ndx () |
| int | ncore_trials |
| int | ntrials |
| int | em_case |
| int | btype |
Iteration Controls | |
| void | virt_debug_io (ostream &os, const int finishing, const int io_level) |
| Print debugging information for subclasses of \Ref{BaseOptimizer}. More... | |
| void | reflect_pattern (const int id) |
| void | generate_trial (int id, RealVector &x, RealVector &trial, REAL scale, int &feasible) |
| int | ExploratoryMoves (RealVector &x, REAL *fret, RealVector &tmpx) |
| The exploratory moves algorithm samples a finite number of moves that are offsets from the current iterate. More... | |
| int | EM_standard (RealVector &x, REAL *fret, RealVector &tmpx) |
| int | EM_best_first (RealVector &x, REAL *fret, RealVector &tmpx) |
| int | EM_global (RealVector &x, REAL *fret, RealVector &tmpx) |
| int | EM_biased_best_first (RealVector &x, REAL *fret, RealVector &tmpx) |
| int | EM_fast_adaptive (RealVector &x, REAL *fret, RealVector &tmpx) |
| int | EM_test (RealVector &x, REAL *fret, RealVector &tmpx) |
| RealVector | bias |
| IntVector | ndx |
| RealVector | Ans |
| RealVector | tvec |
| BasicArray< RealVector > | pattern |
Public Methods | |
General Information | |
| PatternSearch () | |
| virtual | ~PatternSearch () |
| void | reset () |
| Setup the Delta and Sigma scale information. | |
| int | write (ostream &os) |
| Print information about the optimizer. | |
Protected Attributes | |
| PatternSearch:: { ... } | FA |
| Control data for the fast_adaptive pattern search. | |
| int | ntrial_points |
| int | nfeasible_points |
| int | first |
| int | succ_flag |
| REAL | rho |
| REAL | rho_prev |
| int | ctr |
| int | extended_ctr |
This class defines a variety of pattern search algorithms. Although these algorithms could have been defined with seperate classes, it has proved easier to maintain these algorithms within a single class, using a switch to select which algorithm is executed. See \Ref{Pattern Search Methods} for a complete description of these methods.
Similarly, this code provides options for the choice of several standard bases. The standard maximal basis includes the 2n coordinate offsets, the standard minimal basis include n+1 offsets which represents corners of an n-dimensional polyhderon. Additionally, the user may specify a number of additional search directions which are generated randomly.
|
||||||||||||||||
|
The exploratory moves algorithm samples a finite number of moves that are offsets from the current iterate. The set of these offsets constitutes the {pattern matrix} for the pattern search method. If the method is successful, \Ref{tmpx} contains a solution with a lower value. Reimplemented from GPSOpt. |
|
|
A generic hook to the update of the pattern matrix. Generalized pattern search methods allow the pattern matrix to vary in a slightly restricted fashion. The variable \Ref{flag} indicates whether the last call to \Ref{ExploratoryMoves} was successful. Reimplemented from GPSOpt. |
|
||||||||||||||||
|
Print debugging information for subclasses of \Ref{BaseOptimizer}.
Reimplemented from GPSOpt. |
|
|
If true, consider -2*Delta if a Delta step fails. This is only used by the "best_first" method. |