基于MATLAB的退火算法的模拟

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
模拟退火算法基本思想 :在一定温度下,搜索从一个状态
随机地变化到另一个状态;随着温度的不断下降直到最低 温度,搜索过程以概率1停留在最优解
Boltzman概率分布告诉我们:
(1)在同一个温度,分子停留在能量小状态的概率大于停 留在能量大状态的概率 (2)温度越高,不同能量状态对应的概率相差越小;温度 足够高时,各状态对应概率基本相同。 (3)随着温度的下降,能量最低状态对应概率越来越大; 温度趋于0时,其状态趋于1

Metropolis准则(1953)——以概率接受新状态 若在温度T,当前状态i → 新状态j 若Ej<Ei,则接受 j 为当前状态; 否则,若概率 p=exp[-(Ej-Ei)/kBT] 大于[0,1)区间的随机数, 则仍接受状态 j 为当前状态;若不成立则保留状态 i 为当 前状态。
相似性比较
பைடு நூலகம்
(2)逆序操作,两个随机位置间的城市逆序; (3)插入操作,随机选择某点插入某随机位置。

参数设定 截止温度 tf=0.01; 退温系数 lam=0.95;
内循环次数 iLk=20

模拟退火算法的优点 质量高; 初值鲁棒性强; 简单、通用、易实现。

模拟退火算法的缺点 由于要求较高的初始温度、较慢的降温速率、较低的终 止温度,以及各温度下足够多次的抽样,因此优化过程较 长。


模拟退火算法及模型
1.2
数学表述
在温度T,分子停留在状态r满足Boltzmann概率分布
在同一个温度T,选定两个能量E1<E2,有
E1 E2 E1 1 P{E E1} P{E E2 } exp 1 exp Z (T ) k T k T B B
3 模拟退火算法的优缺点 4 模拟退火算法实现与应用
1.1
物理退火过程
退火是指将固体加热到足够高的温度,使分子呈随机排 列状态,然后逐步降温使之冷却,最后分子以低能状态排 列,固体达到某种稳定状态。 模仿自然界退火現象而得,利用了物理中固体物质的退 火过程与一般优化问题的相似性 从某一初始温度开始,伴随温度的不断下降,结合概率突 跳特性在解空间中随机寻找全局最优解
组合优化问题
金属物体

最优解
粒子状态
能量最低的状态
设定初温
Metropolis抽样过程 控制参数的下降 目标函数
熔解过程
等温过程 冷却 能量
用模拟退火算法解决如下10个城市的TSP问题
状态产生函数的设计 (1)互换操作,随机交换两个城市的顺序;
2 8 3 5 9 1 4 6 7 2 8 1 5 9 3 4 6 7
``````
xx
1 模拟退火算法及模型 1.1 物理退火过程
1.2 组合优化与物理退火的相似性
1.3 模拟退火算法的基本思想和步骤 2 模拟退火算法的关键参数和操作的设计
2.1 状态产生函数
2.2 状态接受函数 2.3 初温
2.4 温度更新函数
2.5 内循环终止准则 2.6 外循环终止准则

相关文档
最新文档