Simulated Annealing

Simulated Annealing is the simulation of physical annealing used as a search algorithm. The acceptance probability p of a given solution is given by:

p={1if Δc0eΔcTif Δc>0

where Δc is the change in the cost, and T is the current temperature.

Annealing Schedule

The annealing schedule is the mapping between temperature T and iteration t.

Linear Annealing Schedule:

Tt+1=Ttα

Geometric Annealing Schedule:

Tt+1=Tt×α

Asymptotic Annealing Schedule:

Tt+1=11+αTt

Cooperative Simulated Annealing

Cooperative Simulated Annealing consists of n solutions being searched simultaneously. Thus, the problem state population Popt at iteration t consists of n states Si:

Popt=[S1,S2,...,Sn]

At every iteration, the search algorithm generates a new population Popt+1:

Popt+1=[S1new,S2new,...,Snnew]

Sinew is selected randomly from the closer set of Si and another randomly selected state Sj:

CLOSER(Si,Sj)={sN(Si)|d(s,Sj)<d(s,Sj)}

where N(Si) is the neighborhood of state Si. If the closer set CLOSER(Si,Sj) is empty, Sinew is randomly selected from N(Si).

The temperature is updated based on the different of the mean fitness of the new and old populations:

ΔE=E(Popt+1)E(Popt)T={Tif ΔE<0αTif ΔE0