Package pal.math
Class ConjugateDirectionSearch
- java.lang.Object
-
- pal.math.MultivariateMinimum
-
- pal.math.ConjugateDirectionSearch
-
public class ConjugateDirectionSearch extends MultivariateMinimum
methods for minimization of a real-valued function of several variables without using derivatives (Brent's modification of a conjugate direction search method proposed by Powell)- Author:
- Korbinian Strimmer
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class pal.math.MultivariateMinimum
MultivariateMinimum.Factory
-
-
Field Summary
Fields Modifier and Type Field Description boolean
illc
illc should be set to true if the problem is known to be ill-conditioned.int
prin
controls the printed output from the routine (0 -> no output, 1 -> print only starting and final values, 2 -> detailed map of the minimization process, 3 -> print also eigenvalues and vectors of the search directions), the default value is 0double
scbd
scbd is a scaling parameter.double
step
step is a steplength parameter and should be set equal to the expected distance from the solution.-
Fields inherited from class pal.math.MultivariateMinimum
maxFun, numFun, numFuncStops
-
-
Constructor Summary
Constructors Constructor Description ConjugateDirectionSearch()
constructor
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static MultivariateMinimum.Factory
generateFactory()
Generate a MultivariateMinimum.Factory for a ConjugateDirectionSearchvoid
optimize(MultivariateFunction f, double[] xvector, double tolfx, double tolx)
The actual optimization routine (needs to be implemented in a subclass of MultivariateMinimum).void
optimize(MultivariateFunction f, double[] xvector, double tolfx, double tolx, MinimiserMonitor monitor)
The actual optimization routine It finds a minimum close to vector x when the absolute tolerance for each parameter is specified.-
Methods inherited from class pal.math.MultivariateMinimum
copy, findMinimum, findMinimum, findMinimum, stopCondition
-
-
-
-
Field Detail
-
prin
public int prin
controls the printed output from the routine (0 -> no output, 1 -> print only starting and final values, 2 -> detailed map of the minimization process, 3 -> print also eigenvalues and vectors of the search directions), the default value is 0
-
step
public double step
step is a steplength parameter and should be set equal to the expected distance from the solution. exceptionally small or large values of step lead to slower convergence on the first few iterations the default value for step is 1.0
-
scbd
public double scbd
scbd is a scaling parameter. 1.0 is the default and indicates no scaling. if the scales for the different parameters are very different, scbd should be set to a value of about 10.0.
-
illc
public boolean illc
illc should be set to true if the problem is known to be ill-conditioned. the default is false. this variable is automatically set, when the problem is found to to be ill-conditioned during iterations.
-
-
Method Detail
-
optimize
public void optimize(MultivariateFunction f, double[] xvector, double tolfx, double tolx)
Description copied from class:MultivariateMinimum
The actual optimization routine (needs to be implemented in a subclass of MultivariateMinimum). It finds a minimum close to vector x when the absolute tolerance for each parameter is specified.- Specified by:
optimize
in classMultivariateMinimum
- Parameters:
f
- multivariate functionxvector
- initial guesses for the minimum (contains the location of the minimum on return)tolfx
- absolute tolerance of function valuetolx
- absolute tolerance of each parameter
-
optimize
public void optimize(MultivariateFunction f, double[] xvector, double tolfx, double tolx, MinimiserMonitor monitor)
Description copied from class:MultivariateMinimum
The actual optimization routine It finds a minimum close to vector x when the absolute tolerance for each parameter is specified.- Overrides:
optimize
in classMultivariateMinimum
- Parameters:
f
- multivariate functionxvector
- initial guesses for the minimum (contains the location of the minimum on return)tolfx
- absolute tolerance of function valuetolx
- absolute tolerance of each parametermonitor
- A monitor object that receives information about the minimising process (for display purposes)
-
generateFactory
public static final MultivariateMinimum.Factory generateFactory()
Generate a MultivariateMinimum.Factory for a ConjugateDirectionSearch
-
-