Declarations of Sequential version of Torczon's Multi-Directional Search
Accessor and mutator methods
protected methods
Protected fields
Other initialization methods
Search method
Accessors and Mutators
Declarations of Sequential version of Torczon's Multi-Directional Search
This constructor takes six input parameters. All are sent to
the SimplexSearch constructor with the same signature.
Other fields are set by default as in
SMDSearch(long dim, Vector<double> &startPoint).
SMDSearch(const SMDSearch& Original)
SMDSearch(long dim, Vector<double> &startPoint, double NewSigma)
startpoint - the start point for the search. This will be
initialized as the minPoint.
NewSigma - the user-defined value for sigma, the shrinking
coefficient. SMDSearch(long dim, Vector<double> &startPoint, double NewSigma, Vector<double> &lengths)
startpoint - reference to a Vector representing the start point
for the search. This will be initialized as the minPoint.
NewSigma - the user-defined value for sigma, the shrinking
coefficient.
lengths - reference to a Vector of doubles representing the
desired edgelengths of the simplex. SMDSearch(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. virtual ~SMDSearch()
edgelengths[] represents the length of each edge of the "triangle":
in this case, all entries of edgelengths[] should be equal. functionCalls is reset to 0
delta is set to edgeLengths[0]
The starting point will be the "origin" of the
simplex points (it will be a part of the simplex and
its function value is found here)
edgeLengths points to an array of n doubles, where n is the
dimension of the given search. x_1 will then be located
a distance of edgeLengths[0] away from the basepoint along the
the x_1 axis, x_2 is edgeLengths[1] away on the x_2 axis, etc. functionCalls is reset to 0
delta is set to the largest value in edgeLengths[]
NOTE: assumes that the basePoint(which will be initialized as
the minPoint) is the last point entered functionCalls is reset to 0
delta is set to the length of the longest simplex side.
void BeginSearch()
void ChooseRegularSimplex()
void ChooseRightSimplex()
void ReadInFile(istream& fp)
void GetCurrentSimplexVBits(long* &simVBits) const
void PrintDesign() const
void printRefSimplex() const
bool Stop()
void InitRegSimplex()
void InitRightSimplex()
void InitGeneralSimplex(Matrix<double> *plex)
void CopySearch(const SMDSearch & Original)
void CreateRefSimplex()
void SwitchSimplices()
void ShrinkSimplex()
long GetAnotherIndex(long& index, long*& validBits)
validBits - reference to a pointer to an array of longs, here
representing a validity array. void CalculateRefFunctionValue(long index)
long* simplexVBits
long currentIndex
long refCurrentIndex
Matrix <double> * refSimplex
double* refSimplexValues
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