Abstract Base Class for the simplex searches
Other initialization methods
Search method
Accessors and Mutators
Abstract Base Class for the simplex searches.
This constructor takes five input parameters.
Other fields are set by default as in
SimplexSearch(long dim, Vector<double> &startPoint).
minPoint points to a point that will be the "origin" or base point of the
simplex points (it will be a part of the simplex)
starting_edgeLengths points to a vector of n doubles, where n is the
dimension of the given search. x_1 will then be located
a distance of starting_edgeLengths[0] away from the base point along the
the x_1 axis, x_2 is edgeLengths[1] away on the x_2 axis, etc. functionCalls is reset to 0.
functionCalls is reset to 0.
Constructors and destructor
SimplexSearch(long dim, Vector<double> &startPoint)
startpoint - the start point for the search. This will be initialized
as the minPoint. SimplexSearch(const SimplexSearch& Original)
SimplexSearch(long dim, Vector<double> &startPoint, double sig)
startpoint - the start point for the search.
This will be initialized as the minPoint.
sig - the user-defined value for sigma, the
shrinking coefficient. SimplexSearch(long dim, Vector<double> &startPoint, double sig, const Vector<double> &lengths)
startpoint - the start point for the search. This will
be initialized as the minPoint.
sig - the user-defined value for sigma, the shrinking
coefficient.
lengths - reference to a Vector of doubles
representing the desired edgelengths of the simplex. SimplexSearch(long dim, Vector<double> &startPoint, double startStep, double stopStep, void (*objective)(long vars, Vector<double> &x, double & func, bool& flag, void* an_obj), void * input_obj)
startPoint - a Vector of doubles, the starting point for the search
startStep - will be used as the edge length of a fixed-length
right simplex.
stopStep - the stopping step length for the search
objective - a pointer to the function to be minimized
input_obj - used to send additional data as needed--will
normally be set to NULL. Other public methods
virtual SimplexSearch& operator= (const SimplexSearch& A)
virtual void BeginSearch()
virtual void ChooseRegularSimplex()
virtual void ChooseRightSimplex()
virtual void ReadInFile(istream& fp)
virtual void PrintDesign() const
Accessor and mutator methods
long GetReplacementIndex() const
void SetStartingEdgeLengths(const Vector<double> & lengths)
void GetStartingEdgeLengths(Vector<double> & lengths)
void SetSigma(double newSigma)
double GetSigma()
void GetCurrentSimplexValues(double* &simValues) const
int GetTolHit() const
long GetMinIndex() const
void GetCentroid(Vector<double>* &troid)
double GetDelta()
bool Is_Stop_on_std() const
void Set_Stop_on_std()
void Set_Stop_on_delta()
protected methods
virtual void ExploratoryMoves()
virtual void CalculateFunctionValue(long index)
virtual bool Stop()
virtual void CopySearch(const SimplexSearch & Original)
virtual void Initialize_Right(Matrix<double> *plex)
virtual void Initialize_Regular(Matrix<double> *plex)
virtual void InitGeneralSimplex(const Matrix<double> *plex)
virtual void SetReplacementIndex(long newIndex)
virtual void FindCentroid()
virtual void ShrinkSimplex()
virtual void ReplaceSimplexPoint(long index, const Vector<double>& newPoint)
newPoint - the point with which to replace the one at index. Protected fields
double* simplexValues
Vector <double> * starting_edgeLengths
double sigma
long minIndex
long replacementIndex
Vector <double> * centroid
int toleranceHit
bool SimplexSpecified
bool Stop_on_std
double delta
Vector <double> * scratch
alphabetic index hierarchy of classes
this page has been generated automatically by doc++
(c)opyright by Malte Zöckler, Roland Wunderling
contact: doc++@zib.de