A blacksmith who plunges red-hot steel into cold water gets a brittle blade. One who lets it cool slowly gets a tough, well-ordered crystal. Simulated annealing steals this metallurgical trick and applies it to optimization: explore wildly when "hot," settle down as you "cool."
The algorithm dates to Kirkpatrick, Gelatt, and Vecchi (1983), who showed that adding controlled randomness to a hill-climber lets it escape local minima — the dead ends that trap greedy search. The key idea is the acceptance rule: a worse solution is accepted with probability , where is how much worse it is and is the current temperature. When is large, almost anything is accepted. As , only improvements get through.
But the question that decides everything is not whether to cool — it is how fast. The cooling schedule (also called the annealing schedule) specifies how drops from its initial value to a final value near zero. Choose it poorly and the algorithm either freezes prematurely into a bad solution or wastes exponential time slowly converging. Choose it well and you consistently find near-optimal answers to problems that defeat exact methods.
Two families of schedules dominate practice: geometric cooling, where for some close to 1, and logarithmic cooling, where for a constant . They trade off speed against solution quality in a precise, mathematically provable way — and the gap between them can be the difference between a practical tool and a theoretical curiosity.
Comments
Loading comments...