Class HuangMinimizer
- java.lang.Object
-
- dev.nm.solver.multivariate.unconstrained.c2.steepestdescent.SteepestDescentMinimizer
-
- dev.nm.solver.multivariate.unconstrained.c2.quasinewton.QuasiNewtonMinimizer
-
- dev.nm.solver.multivariate.unconstrained.c2.quasinewton.HuangMinimizer
-
- All Implemented Interfaces:
Minimizer<C2OptimProblem,IterativeSolution<Vector>>
,IterativeC2Minimizer
,IterativeMinimizer<C2OptimProblem>
,MultivariateMinimizer<C2OptimProblem,IterativeSolution<Vector>>
,Optimizer<C2OptimProblem,IterativeSolution<Vector>>
- Direct Known Subclasses:
DFPMinimizer
,McCormickMinimizer
,PearsonMinimizer
,RankOneMinimizer
public class HuangMinimizer extends QuasiNewtonMinimizer
Huang's updating formula is a family of formulas which encompasses the rank-one, DFP, BFGS as well as some other formulas.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description protected class
HuangMinimizer.HuangImpl
an implementation of Huang's formula.-
Nested classes/interfaces inherited from class dev.nm.solver.multivariate.unconstrained.c2.quasinewton.QuasiNewtonMinimizer
QuasiNewtonMinimizer.QuasiNewtonImpl
-
Nested classes/interfaces inherited from class dev.nm.solver.multivariate.unconstrained.c2.steepestdescent.SteepestDescentMinimizer
SteepestDescentMinimizer.SteepestDescentImpl
-
-
Field Summary
-
Fields inherited from class dev.nm.solver.multivariate.unconstrained.c2.steepestdescent.SteepestDescentMinimizer
epsilon, maxIterations
-
-
Constructor Summary
Constructors Constructor Description HuangMinimizer(double theta, double phi, double psi, double omega, double epsilon, int maxIterations)
Construct a multivariate minimizer using Huang's method.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description IterativeSolution<Vector>
solve(C2OptimProblem problem)
Solve a minimization problem with a C2 objective function.
-
-
-
Constructor Detail
-
HuangMinimizer
public HuangMinimizer(double theta, double phi, double psi, double omega, double epsilon, int maxIterations)
Construct a multivariate minimizer using Huang's method.- Parameters:
theta
- θ in Huang's formulaphi
- φ in Huang's formulapsi
- ψ in Huang's formulaomega
- ω in Huang's formulaepsilon
- a precision parameter: when a number |x| ≤ ε, it is considered 0maxIterations
- the maximum number of iterations
-
-
Method Detail
-
solve
public IterativeSolution<Vector> solve(C2OptimProblem problem) throws Exception
Description copied from class:SteepestDescentMinimizer
Solve a minimization problem with a C2 objective function.- Specified by:
solve
in interfaceOptimizer<C2OptimProblem,IterativeSolution<Vector>>
- Specified by:
solve
in classSteepestDescentMinimizer
- Parameters:
problem
- a minimization problem with a C2 objective function- Returns:
- a minimizer
- Throws:
Exception
- when there is an error solving the problem
-
-