Package org.opt4j.optimizer.sa
Class CoolingScheduleHyperbolic
- java.lang.Object
-
- org.opt4j.optimizer.sa.CoolingScheduleHyperbolic
-
- All Implemented Interfaces:
CoolingSchedule
public class CoolingScheduleHyperbolic extends Object implements CoolingSchedule
The
CoolingScheduleHyperbolicis aCoolingSchedulefor theSimulatedAnnealing.tn - final temperature
t0 - initial temperature
i - current iteration
n - maximal number of iterations
a - alpha value
The current temperature is calculated by
t0 * (tn / t0)^(i/n).
-
-
Constructor Summary
Constructors Constructor Description CoolingScheduleHyperbolic(double t0, double tn)Constructs a newCoolingScheduleHyperbolic.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description doublegetTemperature(int i, int n)Returns the temperature for the iterationiof the maximal number of iterationsn.
-
-
-
Constructor Detail
-
CoolingScheduleHyperbolic
@Inject public CoolingScheduleHyperbolic(double t0, double tn)Constructs a newCoolingScheduleHyperbolic.- Parameters:
t0- the initial temperature (using namespaceCoolingSchedule)tn- the final temperature (using namespaceCoolingSchedule)
-
-
Method Detail
-
getTemperature
public double getTemperature(int i, int n)Description copied from interface:CoolingScheduleReturns the temperature for the iterationiof the maximal number of iterationsn.- Specified by:
getTemperaturein interfaceCoolingSchedule- Parameters:
i- the current iterationn- the maximal number of iterations- Returns:
- the temperature for the current iteration
-
-