模拟退火算法简介

原理:起源于固体的物理退火过程。固体中的原子会停留在是内能有局部最小值的位置,当温度升高,原子会离开当前的位置;温度下降,原子会随机在其他位置移动,有可能寻找到比当前局部最小值更小的局部最小值。

重点:概率性的跳出局部最小从而趋向全局最小值,所以"概率如何计算?"十分重要。

概率如何计算:P(dE)=exp(dE/(kT))   (范围为0至1的开区间,因为dE是负值);

公式表示:在温度T时,出现能量差为dE的降温的概率为P(dE)。公式来源于Metropolis准则,kBoltzmann常数。

那么我们如何应用模拟退火算法,在此举一个例子:最小化问题F(x)

共有100W输入,也就有100W个解,我们需要一个最小的解。

设置参数初始温度T0=1000,每次降温为1,新温度为T;每个温度T的链长为L,设置为100。(温度链长即为迭代次数)

首先,求得两个解F(i)和F(j)。F(i)定为旧解,F(j)为新解

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值