Top Description Fields Constructors Methods
org.apache.commons.math3.optimization.direct

public Class MultiDirectionalSimplex

extends AbstractSimplex
Class Inheritance
Annotations
@Deprecated
Imports
java.util.Comparator, org.apache.commons.math3.analysis.MultivariateFunction, org.apache.commons.math3.optimization.PointValuePair

Deprecated

As of 3.1 (to be removed in 4.0).

This class implements the multi-directional direct search method.
Since
3.0

Field Summary

Modifier and TypeField and Description
private static final double
DEFAULT_GAMMA

Default value for gamma: .

private static final double
DEFAULT_KHI

Default value for khi: .

private final double
gamma

Contraction coefficient.

private final double
khi

Expansion coefficient.

Constructor Summary

AccessConstructor and Description
public
MultiDirectionalSimplex(final int
Dimension of the simplex.
n
)

Build a multi-directional simplex with default coefficients.

public
MultiDirectionalSimplex(final int
Dimension of the simplex.
n
,
double
Length of the sides of the default (hypercube) simplex. See AbstractSimplex#AbstractSimplex(int, double).
sideLength
)

Build a multi-directional simplex with default coefficients.

public
MultiDirectionalSimplex(final int
Dimension of the simplex. See AbstractSimplex#AbstractSimplex(int, double).
n
,
final double
Expansion coefficient.
khi
,
final double
Contraction coefficient.
gamma
)

Build a multi-directional simplex with specified coefficients.

public
MultiDirectionalSimplex(final int
Dimension of the simplex. See AbstractSimplex#AbstractSimplex(int, double).
n
,
double
Length of the sides of the default (hypercube) simplex. See AbstractSimplex#AbstractSimplex(int, double).
sideLength
,
final double
Expansion coefficient.
khi
,
final double
Contraction coefficient.
gamma
)

Build a multi-directional simplex with specified coefficients.

public
MultiDirectionalSimplex(final double[]
Steps along the canonical axes representing box edges. They may be negative but not zero. See
steps
)

Build a multi-directional simplex with default coefficients.

public
MultiDirectionalSimplex(final double[]
Steps along the canonical axes representing box edges. They may be negative but not zero. See AbstractSimplex#AbstractSimplex(double[]).
steps
,
final double
Expansion coefficient.
khi
,
final double
Contraction coefficient.
gamma
)

Build a multi-directional simplex with specified coefficients.

public
MultiDirectionalSimplex(final double[][] referenceSimplex)

Build a multi-directional simplex with default coefficients.

public
MultiDirectionalSimplex(final double[][] referenceSimplex, final double
Expansion coefficient.
khi
,
final double
Contraction coefficient.
gamma
)

Build a multi-directional simplex with specified coefficients.

Method Summary

Modifier and TypeMethod and Description
private PointValuePair

Returns:

the best point in the transformed simplex.
evaluateNewSimplex
(final MultivariateFunction
Evaluation function.
evaluationFunction
,
final PointValuePair[]
Original simplex (to be preserved).
original
,
final double
Linear coefficient.
coeff
,
final Comparator<PointValuePair>
Comparator to use to sort simplex vertices from best to poorest.
comparator
)
Deprecated as a consequence of PointValuePair being deprecated.

Compute and evaluate a new simplex.

public void
iterate(final MultivariateFunction
Evaluation function.
evaluationFunction
,
final Comparator<PointValuePair>
Comparator to use to sort simplex vertices from best to worst.
comparator
)

Implements abstract org.apache.commons.math3.optimization.direct.AbstractSimplex.iterate.

Compute the next simplex of the algorithm.

Inherited from org.apache.commons.math3.optimization.direct.AbstractSimplex:
buildevaluategetDimensiongetPointgetPointsgetSizereplaceWorstPointsetPointsetPoints

Field Detail

DEFAULT_GAMMAback to summary
private static final double DEFAULT_GAMMA

Default value for gamma: .

DEFAULT_KHIback to summary
private static final double DEFAULT_KHI

Default value for khi: .

gammaback to summary
private final double gamma

Contraction coefficient.

khiback to summary
private final double khi

Expansion coefficient.

Constructor Detail

MultiDirectionalSimplexback to summary
public MultiDirectionalSimplex(final int n)

Build a multi-directional simplex with default coefficients. The default values are 2.0 for khi and 0.5 for gamma.

Parameters
n:int

Dimension of the simplex.

MultiDirectionalSimplexback to summary
public MultiDirectionalSimplex(final int n, double sideLength)

Build a multi-directional simplex with default coefficients. The default values are 2.0 for khi and 0.5 for gamma.

Parameters
n:int

Dimension of the simplex.

sideLength:double

Length of the sides of the default (hypercube) simplex. See AbstractSimplex#AbstractSimplex(int, double).

MultiDirectionalSimplexback to summary
public MultiDirectionalSimplex(final int n, final double khi, final double gamma)

Build a multi-directional simplex with specified coefficients.

Parameters
n:int

Dimension of the simplex. See AbstractSimplex#AbstractSimplex(int, double).

khi:double

Expansion coefficient.

gamma:double

Contraction coefficient.

MultiDirectionalSimplexback to summary
public MultiDirectionalSimplex(final int n, double sideLength, final double khi, final double gamma)

Build a multi-directional simplex with specified coefficients.

Parameters
n:int

Dimension of the simplex. See AbstractSimplex#AbstractSimplex(int, double).

sideLength:double

Length of the sides of the default (hypercube) simplex. See AbstractSimplex#AbstractSimplex(int, double).

khi:double

Expansion coefficient.

gamma:double

Contraction coefficient.

MultiDirectionalSimplexback to summary
public MultiDirectionalSimplex(final double[] steps)

Build a multi-directional simplex with default coefficients. The default values are 2.0 for khi and 0.5 for gamma.

Parameters
steps:double[]

Steps along the canonical axes representing box edges. They may be negative but not zero. See

MultiDirectionalSimplexback to summary
public MultiDirectionalSimplex(final double[] steps, final double khi, final double gamma)

Build a multi-directional simplex with specified coefficients.

Parameters
steps:double[]

Steps along the canonical axes representing box edges. They may be negative but not zero. See AbstractSimplex#AbstractSimplex(double[]).

khi:double

Expansion coefficient.

gamma:double

Contraction coefficient.

MultiDirectionalSimplexback to summary
public MultiDirectionalSimplex(final double[][] referenceSimplex)

Build a multi-directional simplex with default coefficients. The default values are 2.0 for khi and 0.5 for gamma.

Parameters
referenceSimplex:double[][]

Reference simplex. See AbstractSimplex#AbstractSimplex(double[][]).

MultiDirectionalSimplexback to summary
public MultiDirectionalSimplex(final double[][] referenceSimplex, final double khi, final double gamma)

Build a multi-directional simplex with specified coefficients.

Parameters
referenceSimplex:double[][]

Reference simplex. See AbstractSimplex#AbstractSimplex(double[][]).

khi:double

Expansion coefficient.

gamma:double

Contraction coefficient.

Exceptions
NotStrictlyPositiveException:
if the reference simplex does not contain at least one point.
DimensionMismatchException:
if there is a dimension mismatch in the reference simplex.

Method Detail

evaluateNewSimplexback to summary
private PointValuePair evaluateNewSimplex(final MultivariateFunction evaluationFunction, final PointValuePair[] original, final double coeff, final Comparator<PointValuePair> comparator)

Deprecated

as a consequence of PointValuePair being deprecated. See corresponding docs for further information.

Compute and evaluate a new simplex.

Parameters
evaluationFunction:MultivariateFunction

Evaluation function.

original:PointValuePair[]

Original simplex (to be preserved).

coeff:double

Linear coefficient.

comparator:Comparator<PointValuePair>

Comparator to use to sort simplex vertices from best to poorest.

Returns:PointValuePair

the best point in the transformed simplex.

Exceptions
TooManyEvaluationsException:
if the maximal number of evaluations is exceeded.
iterateback to summary
public void iterate(final MultivariateFunction evaluationFunction, final Comparator<PointValuePair> comparator)

Implements abstract org.apache.commons.math3.optimization.direct.AbstractSimplex.iterate.

Doc from org.apache.commons.math3.optimization.direct.AbstractSimplex.iterate.

Compute the next simplex of the algorithm.

Parameters
evaluationFunction:MultivariateFunction

Evaluation function.

comparator:Comparator<PointValuePair>

Comparator to use to sort simplex vertices from best to worst.

Annotations
@Override