C语言模拟退火算法(C language simulated annealing algorithm)
C语言模拟退火算法(C language simulated annealing algorithm)
Simulated annealing algorithm
Simulated annealing algorithm
The simulated annealing algorithm is derived from the principle of solid annealing. The solid heating to a full height, and then let it slowly cooled, heating, the solid internal particles with temperature rise into disorder, the internal energy increased, and slowly cooled particles gradually orderly, at each temperature to reach the equilibrium state, finally at room temperature to reach the ground, the smallest internal energy. According to the Metropolis Criterion, the probability that the particle tends to balance at the temperature T is E (KT), where e is the internal energy of the temperature T, the Shine is the change amount, and the k is the Boltzmann constant. In this paper, the simulated annealing algorithm for solving combinatorial optimization problem is obtained by simulating combinatorial optimization problem with solid annealing, which is modeled as objective function value F and temperature T evolves into control parameter T. For the iterative method of "generating new solutions to calculate the target function difference, accepting or discarding", and gradually attenuation t value, the current solution at the end of the algorithm is the approximate optimal solution, which is a heuristic stochastic search process based on the Monte Carlo iterative solution. Annealing process by cooling schedule (cooling
Schedule) control, including the control parameters of the initial value T and its attenuation factor Shante, each T value when the iteration number L and stop condition S.
3.5.1 Simulated annealing algorithm model
The simulated annealing algorithm can be decomposed into solution space, target function and initial solution of three parts.
The basic idea of simulated annealing:
(1) Initialization: initial temperature T (sufficiently large), initial solution state S (is the starting point of algorithm iteration), iteration number of each T va