模拟退火算法的可视化
-
金属固体退火原理
-
金属固体在经过高温加热后,暴露于空气中使其自然冷却。在这个过程中,由于固体份子的运动剧烈程度逐步降低,从而使得固体本身的温度逐步降低。整个过程是一个连续的过程,从而不会产生温度骤减的情况。
-
-
局部最优陷阱
-
舍弃差解,接受当前较优解,是普通算法求解最优解的一般逻辑。然而这往往会使算法陷入局部最优陷阱,使得得出的结果并不是最优解。
-
-
Metropolis准则
-
若新解<当前解,则接受新解作为当前解
-
若新解>当前解,则启动概率算法:
-
若概率函数得出的值>rand(1),则接受新解作为当前解;
-
否则,保持当前解不变
-
-
-
新解产生策略
-
二变换:两个随机数调换位置
-
三变换:三个随机数调换位置
-
逆变换:对任意两个随机数之间的序列逆序变换
-
-
降温策略
-
指数降温
-
经典降温曲线
-
-
多普勒降温
-
指数型基础上的变形
-
-
振动型多普勒降温
-
多普勒型基础上的变形
-
-
锯齿形降温
-
指数型基础上的变形
-
-
山丘型降温
-
指数型基础上的变形
-
-
-
编程实现
-
MATLAB
-
模型初始化
-
确定各环节的初始系数
-
-
降温曲线
-
初始温度由目标函数极值决定
-
降温次数由终止温度决定
-
降温指数a由降温次数和终止温度决定
-
-
内外双层while循环实现
-
外循环
-
降温曲线
-
当前解的图形可视化
-
使用plot函数将静态曲线画出动态效果
-
-
内循环
-
产生新解
-
Metropolis准则判断
-
-
-
-
-
应用实例
-
最短路径问题
-
背包问题
-
数独魔方
-
图像校准
-
数据拟合
-
线性方程组求解
-