Package org.drip.function.rdtor1descent
Class WolfeEvolutionVerifier
java.lang.Object
org.drip.function.rdtor1descent.LineEvolutionVerifier
org.drip.function.rdtor1descent.WolfeEvolutionVerifier
public class WolfeEvolutionVerifier extends LineEvolutionVerifier
WolfeEvolutionVerifier implements the Wolfe Criterion used for the Inexact Line Search Increment
Generation. The References are:
- Armijo, L. (1966): Minimization of Functions having Lipschitz-Continuous First Partial Derivatives Pacific Journal of Mathematics 16 (1) 1-3
- Nocedal, J., and S. Wright (1999): Numerical Optimization Wiley
- Wolfe, P. (1969): Convergence Conditions for Ascent Methods SIAM Review 11 (2) 226-235
- Wolfe, P. (1971): Convergence Conditions for Ascent Methods; II: Some Corrections SIAM Review 13 (2) 185-188
- Module = Computational Core Module
- Library = Numerical Analysis Library
- Project = Rd To Rd Function Analysis
- Package = Rd To R1 Gradient Descent Techniques
- Author:
- Lakshmi Krishnamurthy
-
Constructor Summary
Constructors Constructor Description WolfeEvolutionVerifier(double armijoParameter, boolean maximizerCheck, double curvatureParameter, boolean strongCurvatureCriterion)WolfeEvolutionVerifier Constructor -
Method Summary
Modifier and Type Method Description doublearmijoParameter()Retrieve the Armijo ParameterdoublecurvatureParameter()Retrieve the Curvature ParameterbooleanmaximizerCheck()Indicate if the Check is for Minimizer/MaximizerLineEvolutionVerifierMetricsmetrics(UnitVector targetDirectionUnitVector, double[] currentVariateArray, RdToR1 multivariateFunction, double stepLength)Generate the Verifier Metrics for the Specified Inputsstatic WolfeEvolutionVerifierNocedalWrightStandard(boolean maximizerCheck, boolean strongCurvatureCriterion)Construct the Nocedal-Wright Wolfe Evolution VerifierbooleanstrongCurvatureCriterion()Retrieve Whether of not the "Strong" Curvature Criterion needs to be metMethods inherited from class org.drip.function.rdtor1descent.LineEvolutionVerifier
verifyMethods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Constructor Details
-
WolfeEvolutionVerifier
public WolfeEvolutionVerifier(double armijoParameter, boolean maximizerCheck, double curvatureParameter, boolean strongCurvatureCriterion) throws java.lang.ExceptionWolfeEvolutionVerifier Constructor- Parameters:
armijoParameter- The Armijo Criterion ParametermaximizerCheck- TRUE - Perform a Check for the Function MaximacurvatureParameter- The Curvature ParameterstrongCurvatureCriterion- TRUE - Apply the Strong Curvature Criterion- Throws:
java.lang.Exception- Thrown if the Inputs are Invalid
-
-
Method Details
-
NocedalWrightStandard
public static final WolfeEvolutionVerifier NocedalWrightStandard(boolean maximizerCheck, boolean strongCurvatureCriterion)Construct the Nocedal-Wright Wolfe Evolution Verifier- Parameters:
maximizerCheck- TRUE - Perform a Check for the Function MaximastrongCurvatureCriterion- TRUE - Apply the Strong Curvature Criterion- Returns:
- The Nocedal-Wright Wolfe Evolution Verifier Instance
-
armijoParameter
public double armijoParameter()Retrieve the Armijo Parameter- Returns:
- The Armijo Parameter
-
maximizerCheck
public boolean maximizerCheck()Indicate if the Check is for Minimizer/Maximizer- Returns:
- TRUE - The Check is for Maximizer
-
curvatureParameter
public double curvatureParameter()Retrieve the Curvature Parameter- Returns:
- The Curvature Parameter
-
strongCurvatureCriterion
public boolean strongCurvatureCriterion()Retrieve Whether of not the "Strong" Curvature Criterion needs to be met- Returns:
- TRUE - The "Strong" Curvature Criterion needs to be met
-
metrics
public LineEvolutionVerifierMetrics metrics(UnitVector targetDirectionUnitVector, double[] currentVariateArray, RdToR1 multivariateFunction, double stepLength)Description copied from class:LineEvolutionVerifierGenerate the Verifier Metrics for the Specified Inputs- Specified by:
metricsin classLineEvolutionVerifier- Parameters:
targetDirectionUnitVector- The Target Direction Unit VectorcurrentVariateArray- The Current VariatemultivariateFunction- The Rd To R1 FunctionstepLength- The Incremental Step Length- Returns:
- The Verifier Metrics
-