SANN
Keywords: spotSannIntro

#
SANN

Wikipedia introduces simulated annealing as follows (`http://en.wikipedia.org/wiki/Simulated_annealing`):

> Simulated annealing (SANN) is a generic probabilistic metaheuristic for the global optimization problem of applied mathematics, namely locating a good approximation to the global optimum of a given function in a large search space. It is often used when the search space is discrete (e.g., all tours that visit a given set of cities). For certain problems, simulated annealing may be more effective than exhaustive enumeration--provided that the goal is merely to find an acceptably good solution in a fixed amount of time, rather than the best possible solution.

> The name and inspiration come from annealing in metallurgy, a technique involving heating and controlled cooling of a material to increase the size of its crystals and reduce their defects. The heat causes the atoms to become unstuck from their initial positions (a local minimum of the internal energy) and wander randomly through states of higher energy; the slow cooling gives them more chances of finding configurations with lower internal energy than the initial one. By analogy with this physical process, each step of the SANN algorithm replaces the current solution by a random nearby solution, chosen with a probability that depends on the difference between the corresponding function values and on a global parameter (called the temperature), that is gradually decreased during the process. The dependency is such that the current solution changes almost randomly when is large, but increasingly downhill as goes to zero. The allowance for uphill moves saves the method from becoming stuck at local optima--which are the bane of greedier methods.

> The method was independently described by Scott Kirkpatrick, C. Daniel Gelatt and Mario P. Vecchi in 1983, and by Vlado Cerny in 1985. The method is an adaptation of the Metropolis-Hastings algorithm, a Monte Carlo method to generate sample states of a thermodynamic system, invented by N. Metropolis et al. in 1953.

SANN parameters and related problem parameters are shown in Tab. 1.

Table 1: SANN parameters. The first two parameters belong to the algorithm design, whereas the remaining parameters are from the problem design.