数学建模模拟退火算法.pptVIP

  • 36
  • 0
  • 约8.68千字
  • 约 50页
  • 2019-08-24 发布于安徽
  • 举报
3.4 模拟退火算法的改进 智能优化计算 浙江大学 改进的思路 (1)记录“Best so far”状态,并即时更新; (2)设置双阈值,使得在尽量保持最优性的前提下减少计算量,即在各温度下当前状态连续 m1 步保持不变则认为Metropolis抽样稳定,若连续 m2 次退温过程中所得最优解不变则认为算法收敛。 3.4.3 一种改进的模拟退火算法 3.4 模拟退火算法的改进 智能优化计算 浙江大学 改进的退火过程 (1)给定初温t0,随机产生初始状态s,令初始最优解s*=s,当前状态为s(0)=s,i=p=0; (2)令t=ti,以t,s*和s(i)调用改进的抽样过程,返回其所得最优解s*’和当前状态s’(k),令当前状态s(i)=s’(k); (3)判断C(s*)C(s*’)? 若是,则令p=p+1;否则,令s*=s*’,p=0; (4)退温ti+1=update(ti),令i=i+1; (5)判断pm2? 若是,则转第(6)步;否则,返回第(2)步; (6)以最优解s*作为最终解输出,停止算法。 3.4.3 一种改进的模拟退火算法 3.4 模拟退火算法的改进 智能优化计算 浙江大学 改进的抽样过程 (1)令k=0时的初始当前状态为s’(0)=s(i),q=0; (2)由状态s通过状态产生函数产生新状态s’,计算增量?C’=C(s’)-C(s); (3)若?C’0,则接受s’作为当前解,并判断C(s*’)C(s’)? 若是,则令s*’=s’,q=0;否则,令q=q+1。若?C’0,则以概率exp(-?C’/t)接受s’作为下一当前状态; (4)令k=k+1,判断qm1? 若是,则转第(5)步;否则,返回第(2)步; (5)将当前最优解s*’和当前状态s’(k)返回改进退火过程。 3.4.3 一种改进的模拟退火算法 3.5 模拟退火算法的实现与应用 智能优化计算 浙江大学 3.5.1 30城市TSP问题(d*=423.741 by D B Fogel) TSP Benchmark 问题 41 94;37 84;54 67;25 62; 7 64;2 99;68 58;71 44;54 62;83 69;64 60;18 54;22 60;83 46;91 38;25 38;24 42;58 69;71 71;74 78;87 76;18 40;13 40;82 7;62 32; 58 35;45 21;41 26;44 35;4 50 3.5 模拟退火算法的实现与应用 智能优化计算 浙江大学 算法流程 3.5.1 30城市TSP问题(d*=423.741 by D B Fogel) 3.5 模拟退火算法的实现与应用 智能优化计算 浙江大学 初始温度的计算 for i=1:100 route=randperm(CityNum); fval0(i)=CalDist(dislist,route); end t0=-(max(fval0)-min(fval0))/log(0.9); 3.5.1 30城市TSP问题(d*=423.741 by D B Fogel) 3.5 模拟退火算法的实现与应用 智能优化计算 浙江大学 状态产生函数的设计 (1)互换操作,随机交换两个城市的顺序; (2)逆序操作,两个随机位置间的城市逆序; (3)插入操作,随机选择某点插入某随机位置。 3.5.1 30城市TSP问题(d*=423.741 by D B Fogel) 2 8 3 5 9 1 4 6 7 2 8 3 5 9 1 4 6 7 2 8 3 5 9 1 4 6 7 2 8 1 5 9 3 4 6 7 2 8 3 4 1 9 5 6 7 2 3 5 9 8 1 4 6 7 3.5 模拟退火算法的实现与应用 智能优化计算 浙江大学 参数设定 截止温度 tf=0.01; 退温系数 alpha=0.90; 内循环次数 L=200*CityNum; 3.5.1 30城市TSP问题(d*=423.741 by D B Fogel) 3.5 模拟退火算法的实现与应用 智能优化计算 浙江大学 运行过程

文档评论(0)

1亿VIP精品文档

相关文档