public class PowellOptimizer extends AbstractScalarDifferentiableOptimizer
optimize.py v0.5 of
SciPy).| Modifier and Type | Class and Description |
|---|---|
private class |
PowellOptimizer.LineSearch
Class for finding the minimum of the objective function along a given
direction.
|
| Modifier and Type | Field and Description |
|---|---|
static double |
DEFAULT_LS_ABSOLUTE_TOLERANCE
Default absolute tolerance for line search (1.0E-11).
|
static double |
DEFAULT_LS_RELATIVE_TOLERANCE
Default relative tolerance for line search (1.0E-7).
|
private PowellOptimizer.LineSearch |
line
Line search.
|
checker, DEFAULT_MAX_ITERATIONS, goal, point| Constructor and Description |
|---|
PowellOptimizer()
Constructor with default line search tolerances (see the
other constructor). |
PowellOptimizer(double lsRelativeTolerance)
Constructor with default absolute line search tolerances (see
the
other constructor). |
PowellOptimizer(double lsRelativeTolerance,
double lsAbsoluteTolerance) |
| Modifier and Type | Method and Description |
|---|---|
private double[] |
copyOf(double[] source,
int newLen)
Java 1.5 does not support Arrays.copyOf()
|
protected RealPointValuePair |
doOptimize()
Perform the bulk of optimization algorithm.
|
private double[][] |
newPointAndDirection(double[] p,
double[] d,
double optimum)
Compute a new point (in the original space) and a new direction
vector, resulting from the line search.
|
computeObjectiveGradient, computeObjectiveValue, getConvergenceChecker, getEvaluations, getGradientEvaluations, getIterations, getMaxEvaluations, getMaxIterations, incrementIterationsCounter, optimize, setConvergenceChecker, setMaxEvaluations, setMaxIterationspublic static final double DEFAULT_LS_RELATIVE_TOLERANCE
public static final double DEFAULT_LS_ABSOLUTE_TOLERANCE
private final PowellOptimizer.LineSearch line
public PowellOptimizer()
other constructor).public PowellOptimizer(double lsRelativeTolerance)
other constructor).lsRelativeTolerance - Relative error tolerance for
the line search algorithm (BrentOptimizer).public PowellOptimizer(double lsRelativeTolerance,
double lsAbsoluteTolerance)
lsRelativeTolerance - Relative error tolerance for
the line search algorithm (BrentOptimizer).lsAbsoluteTolerance - Relative error tolerance for
the line search algorithm (BrentOptimizer).protected RealPointValuePair doOptimize() throws FunctionEvaluationException, OptimizationException
doOptimize in class AbstractScalarDifferentiableOptimizerFunctionEvaluationException - if the objective function throws one during
the searchOptimizationException - if the algorithm failed to convergeprivate double[][] newPointAndDirection(double[] p,
double[] d,
double optimum)
p and d will be changed in-place.p - Point used in the line search.d - Direction used in the line search.optimum - Optimum found by the line search.private double[] copyOf(double[] source,
int newLen)
source - the array to be copiednewLen - the length of the copy to be returnedCopyright (c) 2003-2013 Apache Software Foundation