org.ddogleg.optimization
Interface LineSearch
-
- All Superinterfaces:
- IterativeOptimization, java.io.Serializable
- All Known Implementing Classes:
- CommonLineSearch, LineSearchFletcher86, LineSearchMore94
public interface LineSearch extends IterativeOptimization
Line search for nonlinear optimization. Computes function values at different step lengths. all step lengths must be greater than or equal to zero. The derivative at step zero must be less than zero.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method and Description doublegetFunction()Function value at the current stepdoublegetStep()Returns the current approximate solution for the line searchvoidinit(double funcAtZero, double derivAtZero, double funcAtInit, double stepInit, double stepMin, double stepMax)Initializes and resets the line search.voidsetFunction(CoupledDerivative function)Sets the function being optimized.-
Methods inherited from interface org.ddogleg.optimization.IterativeOptimization
getWarning, isConverged, isUpdated, iterate
-
-
-
-
Method Detail
-
setFunction
void setFunction(CoupledDerivative function)
Sets the function being optimized.- Parameters:
function- Line search function and derivative
-
init
void init(double funcAtZero, double derivAtZero, double funcAtInit, double stepInit, double stepMin, double stepMax)Initializes and resets the line search. In some implementations a reasonable minimum and maximum step bound is set here.- Parameters:
funcAtZero- Value of f(0)derivAtZero- Derivative of at f(0)funcAtInit- Value of f at initial value of step: f(step)stepInit- Initial step sizestepMin- Minimum allowed step.stepMax- Maximum allowed step.
-
getStep
double getStep()
Returns the current approximate solution for the line search- Returns:
- current solution
-
getFunction
double getFunction()
Function value at the current step
-
-
DataMelt 3.0 © DataMelt by jWork.ORG