simulated annealing algorithm example