Revisiting simulated annealing: A component-based analysis. (April 2019) - Franzin, Alberto; Stützle, Thomas
Highlights: We show how to collect and classify variants of Simulated Annealing (SA) algorithms. We use automatic configuration to improve existing Simulated Annealing algorithms. We show how to automatically design new state-of-the-art SA algorithms. We study the components needed to design good SA algorithms on different scenarios. Abstract: Simulated Annealing (SA) is one of the oldest metaheuristics and has been adapted to solve many combinatorial optimization problems. Over the years, many authors have proposed both general and problem-specific improvements and variants of SA. We propose to accumulate this knowledge into automatically configurable, algorithmic frameworks so that for new applications that wealth of alternative algorithmic components is directly available for the algorithm designer without further manual intervention. Here, we describe SA as an ensemble of algorithmic components, and describe SA variants from the literature within these components. We show the advantages of our proposal by (i) implementing existing algorithmic components of variants of SA, (ii) studying SA algorithms proposed in the literature, (iii) improving SA performance by automatically designing new state-of-the-art SA implementations and (iv) studying the role and impact of the algorithmic components based on experimental data. Our experiments consider three common combinatorial optimization problems, the quadratic assignment problem and two variants of the permutation flow shop problem.