模拟退火
模拟退火是一种玄学的随机算法。当问题的方案数量极大(甚至趋近于无穷)而且并不是一个单峰函数的时候,用模拟退火求解。
模拟转移的过程
退火指的是一种金属热处理工艺,将金属缓慢加热到一定的温度,保持足够的时间然后以十一速度冷却,降低硬度。由于退火的规律引入了很多随机的因素,得到最优解的概率会大大增加。
如果新状态的解更优则修改答案,否则以一定概率接受新状态。
设当前温度为 T T T,新状态和已知状态(由已知状态通过随机的方式得到)之间的能量差为 Δ E \Delta E ΔE 。(能量差总大于0)则修改最优解的概率为
P ( Δ E ) = { 1 新 状 态 更 优 e − Δ E T 新 状 态 更 劣 {\large P(\Delta E)=\left\{\begin{matrix} 1~~~~~~~~~~~~~~~~~新状态更优 \\ e^{- \frac{\Delta E}{T} ~~~~~~~~~~~~~~~~~{\large 新状态更劣} } \end{matrix}\right. } P(ΔE)={ 1 新状态更优e−TΔE 新状态更劣
模拟降温的过程
设:初始温度 T 0 T_0