Package org.apache.commons.math3.optimization
All classes and sub-packages of this package are deprecated.
Please use their replacements, to be found under
This package provides common interfaces for the optimization algorithms
provided in sub-packages. The main interfaces defines optimizers and convergence
checkers. The functions that are optimized by the algorithms provided by this
package and its sub-packages are a subset of the one defined in the analysis
package, namely the real and vector valued functions. These functions are called
objective function here. When the goal is to minimize, the functions are often called
cost function, this name is not used in this package.
Optimizers are the algorithms that will either minimize or maximize, the objective function by changing its input variables set until an optimal set is found. There are only four interfaces defining the common behavior of optimizers, one for each supported type of objective function:
UnivariateOptimizer
forunivariate real functions
MultivariateOptimizer
formultivariate real functions
MultivariateDifferentiableOptimizer
formultivariate differentiable real functions
MultivariateDifferentiableVectorOptimizer
formultivariate differentiable vectorial functions
Despite there are only four types of supported optimizers, it is possible to optimize a
transform a non-differentiable multivariate vectorial function
by converting it to a non-differentiable multivariate
real function
thanks to the LeastSquaresConverter
helper class.
The transformed function can be optimized using any implementation of the MultivariateOptimizer
interface.
For each of the four types of supported optimizers, there is a special implementation which wraps a classical optimizer in order to add it a multi-start feature. This feature call the underlying optimizer several times in sequence with different starting points and returns the best optimum found or all optima if desired. This is a classical way to prevent being trapped into a local extremum when looking for a global one.
-
Interface Summary Interface Description BaseMultivariateOptimizer<FUNC extends MultivariateFunction> Deprecated. As of 3.1 (to be removed in 4.0).BaseMultivariateSimpleBoundsOptimizer<FUNC extends MultivariateFunction> Deprecated. As of 3.1 (to be removed in 4.0).BaseMultivariateVectorOptimizer<FUNC extends MultivariateVectorFunction> Deprecated. As of 3.1 (to be removed in 4.0).BaseOptimizer<PAIR> Deprecated. As of 3.1 (to be removed in 4.0).ConvergenceChecker<PAIR> Deprecated. As of 3.1 (to be removed in 4.0).DifferentiableMultivariateOptimizer Deprecated. As of 3.1 (to be removed in 4.0).DifferentiableMultivariateVectorOptimizer Deprecated. As of 3.1 (to be removed in 4.0).MultivariateDifferentiableOptimizer Deprecated. As of 3.1 (to be removed in 4.0).MultivariateDifferentiableVectorOptimizer Deprecated. As of 3.1 (to be removed in 4.0).MultivariateOptimizer Deprecated. As of 3.1 (to be removed in 4.0).OptimizationData Deprecated. As of 3.1 (to be removed in 4.0). -
Class Summary Class Description AbstractConvergenceChecker<PAIR> Deprecated. As of 3.1 (to be removed in 4.0).BaseMultivariateMultiStartOptimizer<FUNC extends MultivariateFunction> Deprecated. As of 3.1 (to be removed in 4.0).BaseMultivariateVectorMultiStartOptimizer<FUNC extends MultivariateVectorFunction> Deprecated. As of 3.1 (to be removed in 4.0).DifferentiableMultivariateMultiStartOptimizer Deprecated. As of 3.1 (to be removed in 4.0).DifferentiableMultivariateVectorMultiStartOptimizer Deprecated. As of 3.1 (to be removed in 4.0).InitialGuess Deprecated. As of 3.1 (to be removed in 4.0).LeastSquaresConverter Deprecated. As of 3.1 (to be removed in 4.0).MultivariateDifferentiableMultiStartOptimizer Deprecated. As of 3.1 (to be removed in 4.0).MultivariateDifferentiableVectorMultiStartOptimizer Deprecated. As of 3.1 (to be removed in 4.0).MultivariateMultiStartOptimizer Deprecated. As of 3.1 (to be removed in 4.0).PointValuePair Deprecated. As of 3.1 (to be removed in 4.0).PointValuePair.DataTransferObject Internal class used only for serialization.PointVectorValuePair Deprecated. As of 3.1 (to be removed in 4.0).PointVectorValuePair.DataTransferObject Internal class used only for serialization.SimpleBounds Deprecated. As of 3.1 (to be removed in 4.0).SimplePointChecker<PAIR extends Pair<double[],? extends java.lang.Object>> Deprecated. As of 3.1 (to be removed in 4.0).SimpleValueChecker Deprecated. As of 3.1 (to be removed in 4.0).SimpleVectorValueChecker Deprecated. As of 3.1 (to be removed in 4.0).Target Deprecated. As of 3.1 (to be removed in 4.0).Weight Deprecated. As of 3.1 (to be removed in 4.0). -
Enum Summary Enum Description GoalType Deprecated. As of 3.1 (to be removed in 4.0).