FUNC
- Type of the objective function to be optimized.@Deprecated public class BaseMultivariateVectorMultiStartOptimizer<FUNC extends MultivariateVectorFunction> extends java.lang.Object implements BaseMultivariateVectorOptimizer<FUNC>
DifferentiableMultivariateVectorMultiStartOptimizer
.Modifier and Type | Field and Description |
---|---|
private RandomVectorGenerator |
generator
Deprecated.
Random generator for multi-start.
|
private int |
maxEvaluations
Deprecated.
Maximal number of evaluations allowed.
|
private PointVectorValuePair[] |
optima
Deprecated.
Found optima.
|
private BaseMultivariateVectorOptimizer<FUNC> |
optimizer
Deprecated.
Underlying classical optimizer.
|
private int |
starts
Deprecated.
Number of starts to go.
|
private int |
totalEvaluations
Deprecated.
Number of evaluations already performed for all starts.
|
Modifier | Constructor and Description |
---|---|
protected |
BaseMultivariateVectorMultiStartOptimizer(BaseMultivariateVectorOptimizer<FUNC> optimizer,
int starts,
RandomVectorGenerator generator)
Deprecated.
Create a multi-start optimizer from a single-start optimizer.
|
Modifier and Type | Method and Description |
---|---|
ConvergenceChecker<PointVectorValuePair> |
getConvergenceChecker()
Deprecated.
Get the convergence checker.
|
int |
getEvaluations()
Deprecated.
Get the number of evaluations of the objective function.
|
int |
getMaxEvaluations()
Deprecated.
Get the maximal number of function evaluations.
|
PointVectorValuePair[] |
getOptima()
Deprecated.
Get all the optima found during the last call to
optimize . |
PointVectorValuePair |
optimize(int maxEval,
FUNC f,
double[] target,
double[] weights,
double[] startPoint)
Deprecated.
Optimize an objective function.
|
private void |
sortPairs(double[] target,
double[] weights)
Deprecated.
Sort the optima from best to worst, followed by
null elements. |
private final BaseMultivariateVectorOptimizer<FUNC extends MultivariateVectorFunction> optimizer
private int maxEvaluations
private int totalEvaluations
private int starts
private RandomVectorGenerator generator
private PointVectorValuePair[] optima
protected BaseMultivariateVectorMultiStartOptimizer(BaseMultivariateVectorOptimizer<FUNC> optimizer, int starts, RandomVectorGenerator generator)
optimizer
- Single-start optimizer to wrap.starts
- Number of starts to perform. If starts == 1
,
the optimize
will return the same solution as optimizer
would.generator
- Random vector generator to use for restarts.NullArgumentException
- if optimizer
or generator
is null
.NotStrictlyPositiveException
- if starts < 1
.public PointVectorValuePair[] getOptima()
optimize
.
The optimizer stores all the optima found during a set of
restarts. The optimize
method returns the best point only. This method
returns all the points found at the end of each starts, including
the best one already returned by the optimize
method.
optimize
method did
throw a ConvergenceException
). This also means that if
the first element is not null
, it is the best point found
across all starts.MathIllegalStateException
- if optimize
has not been
called.public int getMaxEvaluations()
getMaxEvaluations
in interface BaseOptimizer<PointVectorValuePair>
public int getEvaluations()
optimize
method. It is 0 if the method has not been
called yet.getEvaluations
in interface BaseOptimizer<PointVectorValuePair>
public ConvergenceChecker<PointVectorValuePair> getConvergenceChecker()
getConvergenceChecker
in interface BaseOptimizer<PointVectorValuePair>
public PointVectorValuePair optimize(int maxEval, FUNC f, double[] target, double[] weights, double[] startPoint)
∑weighti(objectivei - targeti)2
optimize
in interface BaseMultivariateVectorOptimizer<FUNC extends MultivariateVectorFunction>
maxEval
- Maximum number of function evaluations.f
- Objective function.target
- Target value for the objective functions at optimum.weights
- Weights for the least squares cost computation.startPoint
- Start point for optimization.private void sortPairs(double[] target, double[] weights)
null
elements.target
- Target value for the objective functions at optimum.weights
- Weights for the least-squares cost computation.Copyright (c) 2003-2014 Apache Software Foundation