class BrentLineSearch : public LineSearch

BrentLineSearch class

Inheritance:


public members:

BrentLineSearch ( ObjectiveFunction * f, int iter )
a constructor
ObjectiveFunction * f
pointer to an objective fuunction class
int iter
maximum number of iterations allowed in search
Model <double> search ( Model <double>& m0, Vector <double>& direction, double tol , double delta)
search for minimum model along a 1-D direction
Model <double>& m0
initial model to initiate the bracketing procedure
Vector <double>& direction
the direction of the line search
double tol
the minimum is within the returned value +/- tol
double delta
a parameter used in the bracketing procedure
Model <long> search ( Model <long>&, Vector <double>&, double, double)
search for minimum model along a 1-D direction

Inherited from LineSearch:

public members:

Vector <double> gradient( Model <double>& m)
double evaluate( Model <double>& m)
Vector <double> gradient( Model <long>& m)
double evaluate( Model <long>& m)
List <int> allSearchIterations()
int searchIterations()
double currentValue()
const char* objName()

protected members:

int iterMax
int iterNum
List <int>* iterHistory
double value
ObjectiveFunction * fp
void appendSearchNumber()

Documentation

BrentLineSearch class was inpired by the Numerical Recipes book, performs an unidimensional search for the minimum of the objective function along a specified direction. The minimum is at first bracket using the Golden search procedure. After bracketing the Brent's algorithm is used to isolate the minimum to a fractional precision of about the specified tolerance.

This line search was not thoroughly tested. The CubicLineSearch procedure, that requires certain derivative information on the objective function (that can be provided by numerical methods) has demonstrated to be a more efficient line search procedure.

Model <double> search ( Model <double>& m0, Vector <double>& direction, double tol , double delta)
The initial interval for the bracketing is from $0$ to $delta \times STEP_MAX$, where $STEP_MAX$ is hard coded to $5$. The sought minimum is returned by the function.


this class has no child classes.

alphabetic index hierarchy of classes


this page has been generated automatically by doc++

(c)opyright by Malte Zöckler, Roland Wunderling