Revisiting simulated annealing: A component-based analysis. (April 2019)