Class BOBYQAOptimizer
- java.lang.Object
-
- org.apache.commons.math3.optimization.direct.BaseAbstractMultivariateOptimizer<FUNC>
-
- org.apache.commons.math3.optimization.direct.BaseAbstractMultivariateSimpleBoundsOptimizer<MultivariateFunction>
-
- org.apache.commons.math3.optimization.direct.BOBYQAOptimizer
-
- All Implemented Interfaces:
BaseMultivariateOptimizer<MultivariateFunction>
,BaseMultivariateSimpleBoundsOptimizer<MultivariateFunction>
,BaseOptimizer<PointValuePair>
,MultivariateOptimizer
@Deprecated public class BOBYQAOptimizer extends BaseAbstractMultivariateSimpleBoundsOptimizer<MultivariateFunction> implements MultivariateOptimizer
Deprecated.As of 3.1 (to be removed in 4.0).Powell's BOBYQA algorithm. This implementation is translated and adapted from the Fortran version available here. See this paper for an introduction.
BOBYQA is particularly well suited for high dimensional problems where derivatives are not available. In most cases it outperforms thePowellOptimizer
significantly. Stochastic algorithms likeCMAESOptimizer
succeed more often than BOBYQA, but are more expensive. BOBYQA could also be considered as a replacement of any derivative-based optimizer when the derivatives are approximated by finite differences.- Since:
- 3.0
-
-
Field Summary
Fields Modifier and Type Field Description static double
DEFAULT_INITIAL_RADIUS
Deprecated.Default value forinitialTrustRegionRadius
: 10.0 .static double
DEFAULT_STOPPING_RADIUS
Deprecated.Default value forstoppingTrustRegionRadius
: 1.0E-8 .static int
MINIMUM_PROBLEM_DIMENSION
Deprecated.Minimum dimension of the problem: 2-
Fields inherited from class org.apache.commons.math3.optimization.direct.BaseAbstractMultivariateOptimizer
evaluations
-
-
Constructor Summary
Constructors Constructor Description BOBYQAOptimizer(int numberOfInterpolationPoints)
Deprecated.BOBYQAOptimizer(int numberOfInterpolationPoints, double initialTrustRegionRadius, double stoppingTrustRegionRadius)
Deprecated.
-
Method Summary
All Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description protected PointValuePair
doOptimize()
Deprecated.Perform the bulk of the optimization algorithm.-
Methods inherited from class org.apache.commons.math3.optimization.direct.BaseAbstractMultivariateSimpleBoundsOptimizer
optimize, optimize
-
Methods inherited from class org.apache.commons.math3.optimization.direct.BaseAbstractMultivariateOptimizer
computeObjectiveValue, getConvergenceChecker, getEvaluations, getGoalType, getLowerBound, getMaxEvaluations, getStartPoint, getUpperBound, optimize, optimizeInternal, 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
-
-
-
-
Field Detail
-
MINIMUM_PROBLEM_DIMENSION
public static final int MINIMUM_PROBLEM_DIMENSION
Deprecated.Minimum dimension of the problem: 2- See Also:
- Constant Field Values
-
DEFAULT_INITIAL_RADIUS
public static final double DEFAULT_INITIAL_RADIUS
Deprecated.Default value forinitialTrustRegionRadius
: 10.0 .- See Also:
- Constant Field Values
-
DEFAULT_STOPPING_RADIUS
public static final double DEFAULT_STOPPING_RADIUS
Deprecated.Default value forstoppingTrustRegionRadius
: 1.0E-8 .- See Also:
- Constant Field Values
-
-
Constructor Detail
-
BOBYQAOptimizer
public BOBYQAOptimizer(int numberOfInterpolationPoints)
Deprecated.- Parameters:
numberOfInterpolationPoints
- Number of interpolation conditions. For a problem of dimensionn
, its value must be in the interval[n+2, (n+1)(n+2)/2]
. Choices that exceed2n+1
are not recommended.
-
BOBYQAOptimizer
public BOBYQAOptimizer(int numberOfInterpolationPoints, double initialTrustRegionRadius, double stoppingTrustRegionRadius)
Deprecated.- Parameters:
numberOfInterpolationPoints
- Number of interpolation conditions. For a problem of dimensionn
, its value must be in the interval[n+2, (n+1)(n+2)/2]
. Choices that exceed2n+1
are not recommended.initialTrustRegionRadius
- Initial trust region radius.stoppingTrustRegionRadius
- Stopping trust region radius.
-
-
Method Detail
-
doOptimize
protected PointValuePair doOptimize()
Deprecated.Perform the bulk of the optimization algorithm.- Specified by:
doOptimize
in classBaseAbstractMultivariateOptimizer<MultivariateFunction>
- Returns:
- the point/value pair giving the optimal value of the objective function.
-
-