Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How safe/mature is the simulated annealing algorithm given in Numerical Recipes?

The authors of "Numerical Recipes" give in Ch. 10 an implementation of the simulated annealing algorithm that combines the "classical" simulated annealing with the Nelder-Mead downhill simplex method.

What I really like about this algorithm is the way it converges to a classic downhill search as the annealing temperatures reaches 0. However, I have never found any other reference to this algorithm; is it a safe, mature variant of the simulated annealing algorithm (i.e. production-ready) or should it be considered as an experimental idea thrown into the book?

like image 744
lindelof Avatar asked Feb 07 '13 21:02

lindelof


People also ask

How good is simulated annealing?

Simulated Annealing (SA) is an effective and general form of optimization. It is useful in finding global optima in the presence of large numbers of local optima. “Annealing” refers to an analogy with thermodynamics, specifically with the way that metals cool and anneal.

Is simulated annealing guaranteed?

In practice, therefore, simulated annealing cannot be guaranteed to find the globally optimal solution, but it does usually produce a good solution. As with the genetic algorithm, repeated runs should provide further good solutions.

Is simulated annealing better than genetic algorithm?

When compared with simulated annealing, the genetic algorithm was found to produce similar results for one circuit, and better results for the other two circuits. Based on these results, genetic algorithms may also yield better results than simulated annealing when applied to the placement problem.

Which types of problems are suitable to solve using simulated annealing method?

Simulated Annealing (SA) mimics the Physical Annealing process but is used for optimizing parameters in a model. This process is very useful for situations where there are a lot of local minima such that algorithms like Gradient Descent would be stuck at.


1 Answers

Nope, not safe, guaranteed to give you herpes.

As someone who works professionally with AI and intelligent systems I can tell you that very few such algorithms are considered mature. By their nature advanced algorithms all tend to have an experimental aspect to them. For example, in simulated annealing you need to formulate a cooling schedule. How you do this is very problem-specific and will require you to experiment with and tune the algorithm. The NR code is a reasonable starting point for doing this.

like image 143
Tyler Durden Avatar answered Nov 26 '22 13:11

Tyler Durden