Exponential Cooling Schedule
class ExponentialCoolingSchedule(initialTemperature: Double, val coolingRate: Double = defaultCoolingRate) : CoolingSchedule(source)
Represents a cooling schedule where the temperature decreases exponentially at each iteration according to a specified cooling rate.
Parameters
initial Temperature
The starting temperature for the cooling schedule. Must be positive.
cooling Rate
The rate at which the temperature decreases in each iteration. Defaults to 0.95. Must be a value between 0.0 (exclusive) and 1.0 (exclusive).
Throws
if the cooling rate is not between 0.0 and 1.0, or if the initial temperature is not positive.
Constructors
Link copied to clipboard
Creates an exponential cooling schedule with the provided initial temperature and cooling rate.
constructor(initialTemperature: Double, stoppingTemperature: Double = defaultStoppingTemperature, maxIterations: Int = defaultMaxNumberIterations)
Secondary constructor that dynamically calculates the optimal cooling rate based on the desired initial temperature, stopping temperature, and max iterations.