9.5 模拟退火.pptVIP

  • 5
  • 0
  • 约3.38千字
  • 约 23页
  • 2017-09-01 发布于浙江
  • 举报
跳转到第一页 跳转到第一页 §9.5 模拟退火 模拟退火(Simulated Annealing Algorithm)是近几年提出的一种适合解大规模组合优化问题,特别是解NP完全问题的通用有效近似算法。 与以往的近似算法相比,具有描述简单、使用灵活、运用广泛、运行效率高和较少受初始条件限制等优点,而且特别适合并行计算。 §9.5.1 固体退火与模拟退火算法 固体退火过程 Metropolis准则 模拟退火算法的原理 1.固体退火过程 固体退火是指将固体加热至熔化,再徐徐冷却使之凝固成规整晶体的热力学过程,属于热力学与统计物理研究的范畴。 热力学定律 ─ 系统状态的自发变化总是朝着自由能减小的方向进行,当自由能达到最小时,系统达到平衡。 系统自由能变化: 系统平衡时,宏观状态已经确定,但系统的微观状态不断变化。对于一确定的宏观状态系统处于某一微观状态(或其附近)的几率分布为Gibbs正则分布,即: 其中, 称为Boltzmann因子,T 是绝对温度,k, Z 是常数。 2. Metropolis接受准则 重要性采样法(Metropolis等, 1953年): 初始状态—当前状态—重要状态 3. 模拟退火算法的提出 1982年,Kirkpatrick等提出。 初始解—当前解—新解—最终解 §9.5.2 模拟退火算法的基本过程 程序: procedure SIMULATED_ANNEALING; begin INITIALIZE(i0,t0,L0); k:=0; i:=i0; repeat for l:=1 to Lk do begin GENERATE(j from Si); if random [0,1) then i:=j end; k:=k+1; CALCULATE_LENGTH(Lk); CALCULATE_CONTROL(tk); until stop_criterion end; 程序框图 初始化 产生新解 评 价 STOP Metropolis准则 Y N 降温 START 马尔克夫链结束? N Y 满足结束条件? 设置起始温度T0; 产生随机解 {xi} 冷却进度表 (Annealing Schedule) §9.5.3 模拟退火算法的冷却进度表 模拟退火算法中参数tk和Lk(k=0,1,2…)的选择是算法的关键,直接决定收敛速度。 冷却进度表(Cooling Schedule) 1.控制参数t的初始值t0; 2.控制参数t的衰减函数; 3.控制参数t的终值tf (停止准则); 4.马尔柯夫链的长度Lk与?x的产生。 T(k)与G(?x) BA VFA FA 概率密度函数 Generation Distribution 退火进度表 Annealing Schedule BA FA VFA §9.5.4 模拟退火算法的特点与改进 特点: 高效、健壮、通用、灵活 改进措施 1. 加温过程 2. 记忆功能 3. 返回搜索过程(局部搜索最优解) 4. 回火功能 5. 演化策略(GA-SAA的结合) 退火演化算法 initialization while (!stop) for i=1, popsize SA: 马尔柯夫链(产生新解、Metropolis准则) end GA: selection crossover mutation SA: annealing end of while 快速退火演化(FAEA)算法 START SA, GA:初始化 SA:马尔柯夫链 tktf? VFA:产生新解 SA:接受新解? STOP SA:新解转移 VFA:调整 Y Y N N GA:个体i ? pop GA:选择 基因交换 变异 §9.5.5 模拟退火算法的应用 优化问题 ——与遗传算法相同 几种算法用于函数极值问题的 结果比较(1 — F8) GA(100) VFA AEA(30) FAEA(30) 20 / 100 20 / 100 20 / 100 20 / 100 115474 / 829130 / 400009 527 / 1113 / 3000 9510 / 12417 / 17370 10684 / 13587 / 10172 方法 成功次数 / 成功率 评价次数(min/av

文档评论(0)

1亿VIP精品文档

相关文档