---
name: "mlpack_optimization_ExponentialSchedule"
section: "3"
platform: "linux"
package: "mlpack-doc"
version: "1.0.10-1"
release: "Debian 8 (Jessie)"
platforms: ["linux"]
url: "https://new.carta.tech/mlpack_optimization_ExponentialSchedule"
---

# mlpack\_optimization\_ExponentialSchedule(3)

The exponential cooling schedule cools the temperature T at every step according to the equation.

## NAME

mlpack::optimization::ExponentialSchedule -

The exponential cooling schedule cools the temperature T at every step according to the equation.

## SYNOPSIS

### Public Member Functions

**ExponentialSchedule** (const double **lambda**=0.001)\
 double **Lambda** () const \
 *Get the cooling speed, lambda.*  double & **Lambda** ()\
 *Modify the cooling speed, lambda.*  double **NextTemperature** (const double currentTemperature, const double)\
 *Returns the next temperature given current status.*

### Private Attributes

double **lambda**\
 *The cooling speed.*

## Detailed Description

The exponential cooling schedule cools the temperature T at every step according to the equation.

where $ 0\<\<1 $ is the cooling speed. The smaller $  $ is, the slower the cooling speed, and better the final result will be. Some literature uses $  lpha = (-1 ) $ instead. In practice, $  lpha $ is very close to 1 and will be awkward to input (e.g. alpha = 0.999999 vs lambda = 1e-6).

Definition at line 42 of file exponential\_schedule.hpp.

## Constructor & Destructor Documentation

### mlpack::optimization::ExponentialSchedule::ExponentialSchedule (const doublelambda = `0.001`)` [inline]`

Definition at line 50 of file exponential\_schedule.hpp.

## Member Function Documentation

### double mlpack::optimization::ExponentialSchedule::Lambda () const` [inline]`

Get the cooling speed, lambda.

Definition at line 67 of file exponential\_schedule.hpp.

References lambda.

### double& mlpack::optimization::ExponentialSchedule::Lambda ()` [inline]`

Modify the cooling speed, lambda.

Definition at line 69 of file exponential\_schedule.hpp.

References lambda.

### double mlpack::optimization::ExponentialSchedule::NextTemperature (const doublecurrentTemperature, const double)` [inline]`

Returns the next temperature given current status. The current system's energy is not used in this calculation.

**Parameters:**

*currentTemperature* Current temperature of system. \
 *currentEnergy* Current energy of system (not used).

Definition at line 59 of file exponential\_schedule.hpp.

References lambda.

## Member Data Documentation

### double mlpack::optimization::ExponentialSchedule::lambda` [private]`

The cooling speed.

Definition at line 73 of file exponential\_schedule.hpp.

Referenced by Lambda(), and NextTemperature().

## Author

Generated automatically by Doxygen for MLPACK from the source code.
