- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第三章 模拟退火算法new
智能算法及应用 改进的可行方案 (1)设计合适的状态产生函数; (2)设计高效的退火历程; (3)避免状态的迂回搜索; (4)采用并行搜索结构; (5)避免陷入局部极小,改进对温度的控制方式; (6)选择合适的初始状态; (7)设计合适的算法终止准则。 3.4.2 改进内容 智能算法及应用 改进的方式 (1)增加升温或重升温过程,避免陷入局部极小; (2)增加记忆功能(记忆“Best so far”状态); (3)增加补充搜索过程(以最优结果为初始解); (4)对每一当前状态,采用多次搜索策略,以概率接受区域内的最优状态; (5)结合其它搜索机制的算法; (6)上述各方法的综合。 3.4.2 改进内容 智能算法及应用 改进的思路 (1)记录“Best so far”状态,并即时更新; (2)设置双阈值,使得在尽量保持最优性的前提下减少计算量,即在各温度下当前状态连续 m1 步保持不变则认为Metropolis抽样稳定,若连续 m2 次退温过程中所得最优解不变则认为算法收敛。 3.4.3 一种改进的模拟退火算法 智能算法及应用 改进的退火过程 (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 一种改进的模拟退火算法 智能算法及应用 改进的抽样过程 (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.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.1 30城市TSP问题(d*=423.741 by D B Fogel) 智能算法及应用 初始温度的计算 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) 智能算法及应用 状态产生函数的设计 (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
文档评论(0)