数学模型——模拟退火算法及其在TSP问题中的应用

模拟退火算法

简介

在了解模拟退火算法之前,首先介绍爬山算法。

爬山算法(Hill Climbing)

该算法每次从当前解的临近解空间中选择一个最优解作为当前解,直到达到一个局部最优解。这也是其主要缺点:陷入局部最优解

举例如下:

数学模型——模拟退火算法及其在TSP问题中的应用_第1张图片

我们需要寻找这个函数图像的最小值,假设以A为起点,爬山算法搜索到B点这一局部最优解时就会停止搜索,因为在B点无论向那个方向小幅度移动都不能得到更优的解。

模拟退火算法(SA)

模拟退火算法思想来源于固体退火原理,是一种基于概率的算法,将固体加温至充分高,再让其缓慢冷却,加温时,固体内部粒子随温度升高变为无序状,内能增大,而冷却时粒子渐趋有序,在每个温度都达到平衡态,最后在常温时达到基态,内能减为最小。

模拟退火算法从某一较高初温出发,伴随温度参数的不断下降,结合概率突跳特性在解空间中随机寻找目标函数的全局最优解,即在局部最优解能概率性地跳出并最终趋于全局最优。也就是说,模拟退火算法以一定的概率来接受一个比当前解要差的解,因此有可能会跳出这个局部的最优解,达到全局的最优解。

原理

模拟退火算法包含两个部分,即Metropolis算法和退火过程。Metropolis算法保证了其能不被局限于局部最优解。1953年Metropolis提出重要性采样方法,即以概率来接受新状态,而不是使用完

你可能感兴趣的:(数学建模)