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
  • Field Details

    • 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.
  • Constructor Details

    • ConjugateDirectionSearch

      public ConjugateDirectionSearch()
      constructor
  • Method Details

    • 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 class MultivariateMinimum
      Parameters:
      f - multivariate function
      xvector - initial guesses for the minimum (contains the location of the minimum on return)
      tolfx - absolute tolerance of function value
      tolx - 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 class MultivariateMinimum
      Parameters:
      f - multivariate function
      xvector - initial guesses for the minimum (contains the location of the minimum on return)
      tolfx - absolute tolerance of function value
      tolx - absolute tolerance of each parameter
      monitor - 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