public class CoolingScheduleLinear extends java.lang.Object implements CoolingSchedule
The CoolingScheduleLinear
is a CoolingSchedule
for the
SimulatedAnnealing
.
tn - final temperature
t0 - initial temperature
i - current iteration
n - maximal number of iterations
a - alpha value
The current temperature is calculated by t0 - (t0 - tn)*(i/n)
.
Modifier and Type | Field and Description |
---|---|
protected double |
t0 |
protected double |
tn |
Constructor and Description |
---|
CoolingScheduleLinear(double t0,
double tn)
Constructs a new
CoolingScheduleLinear . |
Modifier and Type | Method and Description |
---|---|
double |
getTemperature(int i,
int n)
Returns the temperature for the iteration
i of the maximal number
of iterations n . |
@Inject public CoolingScheduleLinear(double t0, double tn)
CoolingScheduleLinear
.t0
- the initial temperature (using namespace
CoolingSchedule
)tn
- the final temperature (using namespace CoolingSchedule
)public double getTemperature(int i, int n)
CoolingSchedule
i
of the maximal number
of iterations n
.getTemperature
in interface CoolingSchedule
i
- the current iterationn
- the maximal number of iterations