org.jquantlib.math.optimization
Class EndCriteria
- java.lang.Object
-
- org.jquantlib.math.optimization.EndCriteria
-
public class EndCriteria extends java.lang.ObjectCriteria to end optimization process- maximum number of iterations AND minimum number of iterations around stationary point
- x (independent variable) stationary point
- y=f(x) (dependent variable) stationary point
- stationary gradient
-
-
Nested Class Summary
Nested Classes Modifier and Type Class and Description static classEndCriteria.Type
-
Constructor Summary
Constructors Constructor and Description EndCriteria(int maxIterations, int maxStationaryStateIterations, double rootEpsilon, double functionEpsilon, double gradientNormEpsilon)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method and Description booleancheckMaxIterations(int iteration, EndCriteria.Type ecType)Test if the number of iteration is below MaxIterationsbooleancheckStationaryFunctionAccuracy(double f, boolean positiveOptimization, EndCriteria.Type ecType)Test if the function value is below functionEpsilonbooleancheckStationaryFunctionValue(double fxOld, double fxNew, int statStateIterations, EndCriteria.Type ecType)Test if the function variation is below functionEpsilonbooleancheckStationaryPoint(double xOld, double xNew, int statStateIterations, EndCriteria.Type ecType)Test if the root variation is below rootEpsilonbooleancheckZeroGradientNorm(double gradientNorm, EndCriteria.Type ecType)Test if the gradient norm value is below gradientNormEpsilonbooleanget(int iteration, int statStateIterations, boolean positiveOptimization, double fold, double normgold, double fnew, double normgnew, EndCriteria.Type ecType)Test if the number of iterations is not too big and if a minimum point is not reacheddoublegetFunctionEpsilon()doublegetGradientNormEpsilon()intgetMaxIterations()intgetMaxStationaryStateIterations()doublegetRootEpsilon()
-
-
-
Constructor Detail
-
EndCriteria
public EndCriteria(int maxIterations, int maxStationaryStateIterations, double rootEpsilon, double functionEpsilon, double gradientNormEpsilon)
-
-
Method Detail
-
checkMaxIterations
public boolean checkMaxIterations(int iteration, EndCriteria.Type ecType)Test if the number of iteration is below MaxIterations
-
checkStationaryPoint
public boolean checkStationaryPoint(double xOld, double xNew, int statStateIterations, EndCriteria.Type ecType)Test if the root variation is below rootEpsilon
-
checkStationaryFunctionValue
public boolean checkStationaryFunctionValue(double fxOld, double fxNew, int statStateIterations, EndCriteria.Type ecType)Test if the function variation is below functionEpsilon
-
checkStationaryFunctionAccuracy
public boolean checkStationaryFunctionAccuracy(double f, boolean positiveOptimization, EndCriteria.Type ecType)Test if the function value is below functionEpsilon
-
checkZeroGradientNorm
public boolean checkZeroGradientNorm(double gradientNorm, EndCriteria.Type ecType)Test if the gradient norm value is below gradientNormEpsilon
-
get
public boolean get(int iteration, int statStateIterations, boolean positiveOptimization, double fold, double normgold, double fnew, double normgnew, EndCriteria.Type ecType)Test if the number of iterations is not too big and if a minimum point is not reached
-
getMaxIterations
public final int getMaxIterations()
-
getMaxStationaryStateIterations
public final int getMaxStationaryStateIterations()
-
getRootEpsilon
public final double getRootEpsilon()
-
getFunctionEpsilon
public final double getFunctionEpsilon()
-
getGradientNormEpsilon
public final double getGradientNormEpsilon()
-
-
DataMelt 3.0 © DataMelt by jWork.ORG