用MATLAB实现模拟退火算法.pptxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第6章 模拟退火算法及其MATLAB实现6.1 算法基本理论6.2 算法的MATLAB实现6.3 应用实例第1页/共30页第一页,共31页。 简单了解退火算法特点 介绍模拟退火前,先介绍爬山算法。 爬山算法是一种简单的贪心搜索算法,该算法每次从当前解的临近解空间中选择一个最优解作为当前解,直到达到一个局部最优解。第2页/共30页第二页,共31页。 简单了解退火算法特点爬山算法 如图所示:假设C点为当前解,爬山算法搜索到A点这个局部最优解就会停止搜索,因为在A点无论向那个方向小幅度移动都不能得到更优的解。 模拟退火算法 在搜索到局部最优解A后,会以一定的概率接受到E的移动。也许经过几次这样的不是局部最优的移动后会到达D点,于是就跳出了局部最大值A。第3页/共30页第三页,共31页。 6.1 算法基本理论 一、算法概述 工程中许多实际优化问题的目标函数都是非凸的,存在许多局部最优解。 求解全局优化问题的方法可分为两类: 确定性方法和随机性方法。 确定性算法适用于求解具有一些特殊特征的问题,而梯度法和一般的随机搜索方法则沿着目标函数下降方向搜索,因此常常陷入局部而非全局最优解。 第4页/共30页第四页,共31页。 6.1 算法基本理论 一、算法概述 模拟退火算法(SA)是一种通用概率算法。用来在一个大的搜索空间内寻找问题的最优解。 1953年,Metropolis等提出了模拟退火的思想。 1983年,Kirkpatrick等将SA引入组合优化领域。 第5页/共30页第五页,共31页。 6.1 算法基本理论 二、基本思想 退火,俗称固体降温 先把固体加热至足够高温,使固体中所有粒子处于无序的状态,然后将温度缓慢下降,粒子渐渐有序,这样只要温度上升得足够高,冷却过程足够慢,则所有粒子最终会处于最低能态。第6页/共30页第六页,共31页。 算法试图随着控制参数T的降低,使目标函数值f(内能E)也逐渐降低,直至趋于全局最小值(退火中低温时的最低能量状态),算法工作过程就像固体退火过程一样。6.1 算法基本理论 模拟退火算法的由来模拟退火退火解粒子状态最优解能量最低的状态目标函数f内能控制参数温度T第7页/共30页第七页,共31页。 6.1 算法基本理论  Metropolis准则——–以概率接受新状态?第8页/共30页第八页,共31页。 新状态的内能当前状态的内能温度EjEi(更差的解)时,0P1,P随着T的减小而减小;6.1 算法基本理论 ?第9页/共30页第九页,共31页。 6.1 算法基本理论  当初始温度足够高时,概率P接近于1,所以当前解经过扰动产生的新解,无论好坏,基本都可以被接受为当前解。即不受制于当前解,不会困在局部最优解中,可以遍及解空间的各个区域,当然也不会保持在最优解处。 随着温度降低,概率降低,较差解被接受的次数减少,当前解逐渐停留到最优解周围。 温度达到终止温度前,概率足够低,使得只有最优解被接受,较差解都不接受。最优解即为最后接受的当前解。算法总结在高温下,可接受与当前状态能量差较大的新状态;在低温下,只接受与当前状态能量差较小的新状态。第10页/共30页第十页,共31页。 6.1 算法基本理论 三、算法其他参数的说明?第11页/共30页第十一页,共31页。 6.1 算法基本理论 四、算法基本步骤?第12页/共30页第十二页,共31页。 初始温度,随机产生初始解。??接受新解作为当前解计算概率与[0,1)随机数之间的差值差值大于0????结束,输出当前解?YNYNNYYN第13页/共30页第十三页,共31页。 6.1 算法基本理论 四、算法基本步骤 算法实质分为两层循环,在任一温度下随机扰动产生 新解,计算目标函数值的变化,决定是否接受。由于算法初始温度比较高,这样使E增大的新解在初始时也可能被接受,因此能跳出局部极小值,然后通过缓慢地降低温度,算法可能收敛到全局最优解。 虽然在低温时接受函数已经非常小了,但仍不排除有接受更差解得可能,因此一般都会把退火过程中碰到的最好的可行解(历史最优解)也记录下来,与终止算法前最后被接受解一并输出。第14页/共30页第十四页,共31页。 6.1 算法基本理论 五、几点说明1、新解的产生 要求尽可能地遍及解空间的各个区域,这样,在某一恒定温度下,不断产生新解时,就可能跳出局部最优解。2、收敛的一般条件:初始温度足够高;热平衡时间足够长;终止温度足够低;降温过程足够缓慢; 第15

您可能关注的文档

文档评论(0)

kuailelaifenxian + 关注
官方认证
文档贡献者

该用户很懒,什么也没介绍

认证主体太仓市沙溪镇牛文库商务信息咨询服务部
IP属地上海
统一社会信用代码/组织机构代码
92320585MA1WRHUU8N

1亿VIP精品文档

相关文档