public class SimulatedAnnealingMinimizer extends Object implements IterativeMinimizer<OptimProblem>
Constructor and Description |
---|
SimulatedAnnealingMinimizer(int dim,
double initialTemperature,
StopCondition stopCondition,
RandomLongGenerator uniform)
Constructs a new instance to use
BoltzTemperatureFunction , BoltzAnnealingFunction
and MetropolisAcceptanceProbabilityFunction. |
SimulatedAnnealingMinimizer(TemperatureFunction temperatureFunction,
AnnealingFunction annealingFunction,
TemperedAcceptanceProbabilityFunction probabilityFunction,
int markovLength,
StopCondition stopCondition,
RandomLongGenerator uniform)
Constructs a new instance.
|
Modifier and Type | Method and Description |
---|---|
IterativeSolution<Vector> |
solve(OptimProblem problem)
Solve an optimization problem, e.g.,
OptimProblem . |
public SimulatedAnnealingMinimizer(TemperatureFunction temperatureFunction, AnnealingFunction annealingFunction, TemperedAcceptanceProbabilityFunction probabilityFunction, int markovLength, StopCondition stopCondition, RandomLongGenerator uniform)
temperatureFunction
- a function that for a given iteration i gives T_i,
where 0 < i < temperature_levels. The function must be monotonically increasing with
iprobabilityFunction
- gives the acceptance probability for a state transition at a given
temperatureannealingFunction
- proposes next statesmarkovLength
- the number of times we attempt a state change per iteration (per
temperature)stopCondition
- the StopConditionuniform
- the rlg to be used to control the stochastic element of the
algorithmpublic SimulatedAnnealingMinimizer(int dim, double initialTemperature, StopCondition stopCondition, RandomLongGenerator uniform)
BoltzTemperatureFunction
, BoltzAnnealingFunction
and MetropolisAcceptanceProbabilityFunction.dim
- the dimension of the problem or solutioninitialTemperature
- the initial temperaturestopCondition
- the StopConditionuniform
- the random number generator that is to be usedpublic IterativeSolution<Vector> solve(OptimProblem problem) throws Exception
Optimizer
OptimProblem
.solve
in interface Optimizer<OptimProblem,IterativeSolution<Vector>>
problem
- an optimization problemException
- when there is an error solving the problemCopyright © 2010-2020 NM FinTech Ltd.. All Rights Reserved.