Package org.apache.commons.math3.optimization.general

# Class NonLinearConjugateGradientOptimizer

java.lang.Object
org.apache.commons.math3.optimization.direct.BaseAbstractMultivariateOptimizer<DifferentiableMultivariateFunction>
org.apache.commons.math3.optimization.general.AbstractScalarDifferentiableOptimizer
org.apache.commons.math3.optimization.general.NonLinearConjugateGradientOptimizer

All Implemented Interfaces:
  `BaseMultivariateOptimizer<DifferentiableMultivariateFunction>`, `BaseOptimizer<PointValuePair>`, `DifferentiableMultivariateOptimizer`

@Deprecated public class NonLinearConjugateGradientOptimizer extends AbstractScalarDifferentiableOptimizer
Deprecated.
As of 3.1 (to be removed in 4.0).
Non-linear conjugate gradient optimizer.

This class supports both the Fletcher-Reeves and the Polak-Ribière update formulas for the conjugate search directions. It also supports optional preconditioning.

Since:
  2.0

## Nested Class Summary

Nested Classes
Modifier and Type
Class
Description
`static class`
`NonLinearConjugateGradientOptimizer.IdentityPreconditioner`
Deprecated.
Default identity preconditioner.

## Field Summary

### Fields inherited from class org.apache.commons.math3.optimization.direct.BaseAbstractMultivariateOptimizer

`evaluations`

## Constructor Summary

Constructors
Constructor
Description
`NonLinearConjugateGradientOptimizer(ConjugateGradientFormula updateFormula)`
Deprecated.
See `SimpleValueChecker()`
`NonLinearConjugateGradientOptimizer(ConjugateGradientFormula updateFormula, ConvergenceChecker<PointValuePair> checker)`
Deprecated.
Constructor with default `line search solver` and `preconditioner`.
`NonLinearConjugateGradientOptimizer(ConjugateGradientFormula updateFormula, ConvergenceChecker<PointValuePair> checker, UnivariateSolver lineSearchSolver)`
Deprecated.
Constructor with default `preconditioner`.
`NonLinearConjugateGradientOptimizer(ConjugateGradientFormula updateFormula, ConvergenceChecker<PointValuePair> checker, UnivariateSolver lineSearchSolver, Preconditioner preconditioner)`
Deprecated.

## Method Summary

Modifier and Type
Method
Description
`protected PointValuePair`
`doOptimize()`
Deprecated.
Perform the bulk of the optimization algorithm.
`void`
`setInitialStep(double initialStep)`
Deprecated.
Set the initial step used to bracket the optimum in line search.

### Methods inherited from class org.apache.commons.math3.optimization.general.AbstractScalarDifferentiableOptimizer

`computeObjectiveGradient, optimize, optimizeInternal`

### Methods inherited from class org.apache.commons.math3.optimization.direct.BaseAbstractMultivariateOptimizer

`computeObjectiveValue, getConvergenceChecker, getEvaluations, getGoalType, getLowerBound, getMaxEvaluations, getStartPoint, getUpperBound, optimize, optimize, optimizeInternal`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Methods inherited from interface org.apache.commons.math3.optimization.BaseMultivariateOptimizer

`optimize`

### Methods inherited from interface org.apache.commons.math3.optimization.BaseOptimizer

`getConvergenceChecker, getEvaluations, getMaxEvaluations`

## Constructor Details

### NonLinearConjugateGradientOptimizer

@Deprecated public NonLinearConjugateGradientOptimizer(ConjugateGradientFormula updateFormula)
Deprecated.
See `SimpleValueChecker()`
Constructor with default `checker`, `line search solver` and `preconditioner`.

Parameters:
  `updateFormula` - formula to use for updating the β parameter, must be one of `ConjugateGradientFormula.FLETCHER_REEVES` or `ConjugateGradientFormula.POLAK_RIBIERE`.

### NonLinearConjugateGradientOptimizer

public NonLinearConjugateGradientOptimizer(ConjugateGradientFormula updateFormula, ConvergenceChecker<PointValuePair> checker)
Deprecated.
Constructor with default `line search solver` and `preconditioner`.

Parameters:
  `updateFormula` - formula to use for updating the β parameter, must be one of `ConjugateGradientFormula.FLETCHER_REEVES` or `ConjugateGradientFormula.POLAK_RIBIERE`.
  `checker` - Convergence checker.

### NonLinearConjugateGradientOptimizer

public NonLinearConjugateGradientOptimizer(ConjugateGradientFormula updateFormula, ConvergenceChecker<PointValuePair> checker, UnivariateSolver lineSearchSolver)
Deprecated.
Constructor with default `preconditioner`.

Parameters:
  `updateFormula` - formula to use for updating the β parameter, must be one of `ConjugateGradientFormula.FLETCHER_REEVES` or `ConjugateGradientFormula.POLAK_RIBIERE`.
  `checker` - Convergence checker.
  `lineSearchSolver` - Solver to use during line search.

### NonLinearConjugateGradientOptimizer

public NonLinearConjugateGradientOptimizer(ConjugateGradientFormula updateFormula, ConvergenceChecker<PointValuePair> checker, UnivariateSolver lineSearchSolver, Preconditioner preconditioner)
Deprecated.

Parameters:
  `updateFormula` - formula to use for updating the β parameter, must be one of `ConjugateGradientFormula.FLETCHER_REEVES` or `ConjugateGradientFormula.POLAK_RIBIERE`.
  `checker` - Convergence checker.
  `lineSearchSolver` - Solver to use during line search.
  `preconditioner` - Preconditioner.

## Method Details

### setInitialStep

public void setInitialStep(double initialStep)
Deprecated.
Set the initial step used to bracket the optimum in line search.

The initial step is a factor with respect to the search direction, which itself is roughly related to the gradient of the function

Parameters:
  `initialStep` - initial step used to bracket the optimum in line search, if a non-positive value is used, the initial step is reset to its default value of 1.0

### doOptimize

protected PointValuePair doOptimize()
Deprecated.
Perform the bulk of the optimization algorithm.

Specified by:
  `doOptimize` in class `BaseAbstractMultivariateOptimizer<DifferentiableMultivariateFunction>`
Returns:
  the point/value pair giving the optimal value of the objective function.