模拟退火算法课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《模拟退火算法课件.ppt》由用户(三亚风情)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 模拟 退火 算法 课件
- 资源描述:
-
1、模拟退火算法模拟退火算法Simulated Annealing AlgorithmSAA模拟退火算法是什么?是怎样提出来的?模拟退火算法是什么?是怎样提出来的?模拟退火算法(模拟退火算法(Simulated Annealing,SA)是一种模拟物理退火的过程而设计的优化算法。是一种模拟物理退火的过程而设计的优化算法。它的基本思想最早在它的基本思想最早在1953年就被年就被Metropolis提出,提出,但直到但直到1983年年Kirkpatrick等人才设计出真正等人才设计出真正意义上的模拟退火算法并进行应用。意义上的模拟退火算法并进行应用。模拟退火算法的基本思想是怎样的?模拟退火算法的基本思
2、想是怎样的?模拟退火算法采用类似于物理退火的过程,模拟退火算法采用类似于物理退火的过程,先在一个高温状态下(相当于算法随机搜索),然后逐渐退火,先在一个高温状态下(相当于算法随机搜索),然后逐渐退火,在每个温度下(相当于算法的每一次状态转移)徐徐冷却在每个温度下(相当于算法的每一次状态转移)徐徐冷却(相当于算法局部搜索),最终达到物理基态(相当于算法局部搜索),最终达到物理基态(相当于算法找到最优解)。(相当于算法找到最优解)。简介简介l模拟退火算法的来源是根据复杂组合优化问题模拟退火算法的来源是根据复杂组合优化问题与固体的退火过程之间的相似之处。与固体的退火过程之间的相似之处。l该算法在系统
3、向着能量减小的趋势变化过程中,该算法在系统向着能量减小的趋势变化过程中,偶尔允许系统跳到能量较高的状态,以避开局偶尔允许系统跳到能量较高的状态,以避开局部最小,最终稳定在全局最小。部最小,最终稳定在全局最小。简介简介lSAA属于随机模拟算法属于随机模拟算法l模拟统计物理学中物体加热后冷却这一退火模拟统计物理学中物体加热后冷却这一退火过程而建立的过程而建立的随机优化算法随机优化算法,意图是避免陷,意图是避免陷入局部极小解,早期用于组合优化,后来发入局部极小解,早期用于组合优化,后来发展成一种通用的优化算法。展成一种通用的优化算法。基本思想基本思想lSAA是是基于基于Mente Carlo迭代求解
4、策略的一种迭代求解策略的一种随机寻优算法,其随机寻优算法,其出发点出发点是基于物理中固体物是基于物理中固体物质的退火过程与一般组合优化问题之间的相似质的退火过程与一般组合优化问题之间的相似性。另一方面,性。另一方面,结合爬山法和随机行走。结合爬山法和随机行走。lSAA在某一初温下,伴随温度参数的不断下降,在某一初温下,伴随温度参数的不断下降,结合概率突跳特性在解空间中随机寻找目标函结合概率突跳特性在解空间中随机寻找目标函数的全局最优解,即在局部优解能概率性地跳数的全局最优解,即在局部优解能概率性地跳出并最终趋于全局最优。出并最终趋于全局最优。模拟退火算法是一种通用的优化算法,目模拟退火算法是一
5、种通用的优化算法,目前已在工程中得到了广泛应用。前已在工程中得到了广泛应用。基本思路基本思路l首先在高温下进行搜索,此时各状态出现概率首先在高温下进行搜索,此时各状态出现概率相差不大,可以很快进入相差不大,可以很快进入“热平衡状态热平衡状态”,这,这时进行的是一种时进行的是一种“粗搜索粗搜索”,也就是大致找到,也就是大致找到系统的低能区域;系统的低能区域;l随着温度的逐渐降低,各状态出现概率的差距随着温度的逐渐降低,各状态出现概率的差距逐渐被扩大,搜索精度不断提高。这就可以越逐渐被扩大,搜索精度不断提高。这就可以越来越准确的找到网络能量函数的全局最小点。来越准确的找到网络能量函数的全局最小点。
6、一、模拟退火算法概述一、模拟退火算法概述二、模拟退火算法的马氏链描述及收敛性二、模拟退火算法的马氏链描述及收敛性三、模拟退火算法关键参数和操作设计三、模拟退火算法关键参数和操作设计四、模拟退火算法的改进及其并行性四、模拟退火算法的改进及其并行性五、模拟退火算法的实现及应用五、模拟退火算法的实现及应用固体退火过程固体退火过程Metropolis准则准则组合优化与物理退火的相似性组合优化与物理退火的相似性模拟退火算法的步骤模拟退火算法的步骤第一节第一节 模拟退火算法概述模拟退火算法概述 l算法的提出算法的提出 模拟退火算法最早的思想由模拟退火算法最早的思想由Metropolis等(等(1953)提
7、出,提出,1983年年Kirkpatrick等将其应用于组合优化。等将其应用于组合优化。Optimization by simulated annealing,IBM Research Reportl算法的目的算法的目的 解决解决NP复杂性复杂性问题问题提供有效近似算法提供有效近似算法;克服优化过程陷入局部极小;克服优化过程陷入局部极小;克服初值依赖性。克服初值依赖性。1、源于对固体退火过程的模拟;、源于对固体退火过程的模拟;2、采用、采用Metropolis接受准则;接受准则;3、用冷却进度表控制算法进程,使算法在多、用冷却进度表控制算法进程,使算法在多项式时间里给出一个近似解。项式时间里给
8、出一个近似解。固体退火过程的物理图像和统计性质是固体退火过程的物理图像和统计性质是SAA的的物理背景物理背景;Metropolis接受准则使算法接受准则使算法跳离局部跳离局部最最优优“险井险井”;而冷却进度表的合理选择是算法应用;而冷却进度表的合理选择是算法应用的的前提前提。l算法的基础算法的基础 l固体固体退火过程退火过程 什么是退火:什么是退火:退火退火是指将固体加热到足够高的温度,使分子是指将固体加热到足够高的温度,使分子呈随机排列状态,然后逐步降温使之冷却,最呈随机排列状态,然后逐步降温使之冷却,最后分子以低能状态排列,固体达到某种稳定状后分子以低能状态排列,固体达到某种稳定状态。态。
9、固体退火是将固体加热至融化,再徐固体退火是将固体加热至融化,再徐徐冷却使之凝固成规整晶体的热力学过程,徐冷却使之凝固成规整晶体的热力学过程,属于热力学与统计物理研究的范畴。属于热力学与统计物理研究的范畴。由以下三部分组成:由以下三部分组成:加温过程加温过程等温过程等温过程冷却过程冷却过程固体在恒定温度下达固体在恒定温度下达到热平衡的过程!到热平衡的过程!l固体固体退火过程退火过程 加温过程加温过程增强粒子的热运动,增强粒子的热运动,使其偏离平衡位置,使其偏离平衡位置,目的是目的是消除系统原先可能存在的非均匀态;消除系统原先可能存在的非均匀态;等温过程等温过程退火过程中要让温度慢慢降低,在每一个
10、退火过程中要让温度慢慢降低,在每一个温度下要达到热平衡状态,温度下要达到热平衡状态,对于与环境换热而温度不变对于与环境换热而温度不变的封闭系统的封闭系统满足自由能较少定律满足自由能较少定律,系统状态的自发变化,系统状态的自发变化总是朝自由能减少的方向进行,当自由能达到最小时,总是朝自由能减少的方向进行,当自由能达到最小时,系统达到平衡态;系统达到平衡态;冷却过程冷却过程使粒子热运动减弱并渐趋有序,系统能量使粒子热运动减弱并渐趋有序,系统能量逐渐下降,从而得到低能的晶体结构逐渐下降,从而得到低能的晶体结构。当液体凝固为固当液体凝固为固体的晶态时退火过程完成。体的晶态时退火过程完成。l数学表述数学
11、表述 在温度在温度T,分子停留在状态,分子停留在状态r满足满足Boltzmann概率分布概率分布 温度低时能量低的微观状态概率大,温度趋于零时,温度低时能量低的微观状态概率大,温度趋于零时,固体几乎处于概率最大能量最小的基态。固体几乎处于概率最大能量最小的基态。DsBBBTksETZTZkrrEETkrETZrEEP)(exp)()(Boltzmann0)()(exp)(1)(子:为概率分布的标准化因常数。为的能量,表示状态机变量,表示分子能量的一个随 l数学表述数学表述 在在同一个温度同一个温度T,选定两个能量,选定两个能量E1E2,有,有 在同一个温度,分子停留在能量小的状态的概在同一个温
12、度,分子停留在能量小的状态的概率比停留在能量大的状态的概率要大。率比停留在能量大的状态的概率要大。TkEETkETZEEPEEPBB12121exp1exp)(10l数学表述数学表述 若若|D|为状态空间为状态空间D中状态的个数,中状态的个数,D0是具有最低能量的状态集合:是具有最低能量的状态集合:(1)当当温度很高时,每个状态概率基温度很高时,每个状态概率基本相同,本相同,接近平均值接近平均值1/|D|;(2)状态空间状态空间存在超过两个不同能量存在超过两个不同能量时,具有最低能量状态的概率超出平时,具有最低能量状态的概率超出平均值均值1/|D|;(3)当当温度趋于温度趋于0时,分子停留在最
13、低时,分子停留在最低能量状态的概率趋于能量状态的概率趋于1。能量能量最低状态最低状态非非能量最低状态能量最低状态 lMetropolis准则(准则(1953)以概率接受新状态以概率接受新状态 固体在恒定温度下达到热平衡的过程可以用固体在恒定温度下达到热平衡的过程可以用Monte Carlo方法方法(计算机随机模拟方法)加以(计算机随机模拟方法)加以模拟,虽然该方法简单,但必须大量采样才能模拟,虽然该方法简单,但必须大量采样才能得到比较精确的结果,计算量很大。得到比较精确的结果,计算量很大。lMonte Carlo模拟退火过程模拟退火过程l蒙特卡罗蒙特卡罗(Monte Carlo)方法,或称计算
14、机随机方法,或称计算机随机模拟方法,是一种基于模拟方法,是一种基于“随机数随机数”的计算方法。的计算方法。这一方法源于美国在第一次世界大战中研制原这一方法源于美国在第一次世界大战中研制原子弹的子弹的“曼哈顿计划曼哈顿计划”。该计划的主持人之一、。该计划的主持人之一、数学家冯数学家冯诺伊曼用驰名世界的赌城诺伊曼用驰名世界的赌城摩纳哥摩纳哥的的Monte Carlo来命名这种方法,为它蒙上来命名这种方法,为它蒙上了一层神秘色彩。了一层神秘色彩。lMonte Carlo方法方法lMonte Carlo方法的基本思想很早以前就被人方法的基本思想很早以前就被人们所发现和利用。们所发现和利用。l早在早在1
15、7世纪,人们就知道用事件发生的世纪,人们就知道用事件发生的“频率频率”来决定事件的来决定事件的“概率概率”。lBuffon试验:试验:19世纪人们用投针试验的方法来世纪人们用投针试验的方法来求解圆周率求解圆周率。l本世纪本世纪40年代电子计算机的出现,特别是近年年代电子计算机的出现,特别是近年来高速电子计算机的出现,使得用数学方法在来高速电子计算机的出现,使得用数学方法在计算机上大量、快速地模拟这样的试验成为可计算机上大量、快速地模拟这样的试验成为可能。能。lMonte Carlo方法方法l用民意测验来作一个不严格的比喻。民意测验用民意测验来作一个不严格的比喻。民意测验的人不是征询每一个登记选
16、民的意见,而是通的人不是征询每一个登记选民的意见,而是通过对选民进行小规模的抽样调查来确定可能的过对选民进行小规模的抽样调查来确定可能的优胜者。其基本思想是一样的。优胜者。其基本思想是一样的。l它需要一个良好的随机数源。这种方法往往包它需要一个良好的随机数源。这种方法往往包含一些误差,但是随着随机抽取样本数量的增含一些误差,但是随着随机抽取样本数量的增加,结果也会越来越精确。加,结果也会越来越精确。lMetropolis准则(准则(1953)以概率接受新状态以概率接受新状态 若在温度若在温度T,当前状态,当前状态i 新状态新状态j 若若Ej=randrom0,1 s=sj;Until 抽样稳定
17、准则满足;抽样稳定准则满足;退温退温tk+1=update(tk)并令并令k=k+1;Until 算法终止准则满足;算法终止准则满足;输出算法搜索结果。输出算法搜索结果。l影响优化结果的主要因素影响优化结果的主要因素 给定初温给定初温t=t0,随机产生初始状态,随机产生初始状态s=s0,令,令k=0;Repeat Repeat 产生新状态产生新状态sj=Genete(s);if min1,exp-(C(sj)-C(s)/tk=randrom0,1 s=sj;Until 抽样稳定准则满足;抽样稳定准则满足;退温退温tk+1=update(tk)并令并令k=k+1;Until 算法终止准则满足;算
18、法终止准则满足;输出算法搜索结果。输出算法搜索结果。三函数两准则三函数两准则初始温度初始温度三函数两准则三函数两准则状态产生函数状态产生函数状态接受函数状态接受函数退温函数退温函数抽样稳定准则抽样稳定准则退火结束准则退火结束准则SAA流程流程确定确定初温初温随机给定随机给定初始解初始解收敛准收敛准则则满足满足否?否?输出结果输出结果Y抽样稳定准则抽样稳定准则满足否?满足否?由当前由当前状态产生状态产生新状态新状态接受函数接受函数成立否?成立否?替换当前状态替换当前状态YYNNN退温退温保持当前状态不变保持当前状态不变 关键环节关键环节1 1 初温、初始解初温、初始解2 2 状态产生函数状态产生
19、函数3 3 状态接受函数状态接受函数4 4 退温函数退温函数5 5 抽样稳定准则抽样稳定准则6 6 收敛准则收敛准则SAA特点特点l可以保证全局最优可以保证全局最优l特别适合组合优化问题特别适合组合优化问题l可以随机选择初始解可以随机选择初始解l对问题本身没有特别要求,不会因为问题对问题本身没有特别要求,不会因为问题实例的改变影响性能实例的改变影响性能l简单易行,通用性好简单易行,通用性好马氏链描述马氏链描述收敛性收敛性时齐算法收敛性时齐算法收敛性非时齐算法收敛性非时齐算法收敛性渐近性态渐近性态第二节第二节 SAA的的马氏链描述及收敛性马氏链描述及收敛性 模拟退火算法模拟退火算法(SAA)是将
20、物理退火过程与是将物理退火过程与组合优化相结合的一种随机迭代寻优算法。组合优化相结合的一种随机迭代寻优算法。数学模型描述为数学模型描述为 由某一较高初始温度开始,在给定的由某一较高初始温度开始,在给定的邻域结构中,模拟退火过程,利用概率特邻域结构中,模拟退火过程,利用概率特性与抽样策略在解空间中随机搜索,随着性与抽样策略在解空间中随机搜索,随着温度不断下降重复抽样,用来优化问题的温度不断下降重复抽样,用来优化问题的解。解。引言引言设设 为所有状态构成的解空间,为所有状态构成的解空间,,21ss)(kX为为k时刻状态变量的取值。时刻状态变量的取值。随机序列随机序列 称为称为马氏链马氏链,若若,)
21、(21kkXZn满足满足)(|)()(inXjnXPnpij11简简记记(记忆遗忘功能)(记忆遗忘功能))1(|)()1(,)1(,)0(|)(10inXjnXPinXiXiXjnXP 一步转移概率一步转移概率)(|)()(inXjnXPnpij11n步转移概率步转移概率)(|)()(iXjnXPpnij0有限状态马氏链有限状态马氏链若解空间有限。若解空间有限。时齐马氏链时齐马氏链)()(,1npnpZnijij模拟退火算法模拟退火算法(SAA)的搜索进程:的搜索进程:算法从某一个初始状态开始后,每一步算法从某一个初始状态开始后,每一步状态转移均是在当前状态的邻域中随机产生状态转移均是在当前状
22、态的邻域中随机产生新状态,然后以一定概率进行接受的。新状态,然后以一定概率进行接受的。接受概率仅依赖于新状态和当前状态,接受概率仅依赖于新状态和当前状态,并由温度加以控制。因此,并由温度加以控制。因此,SAA对应一个马对应一个马氏链。氏链。若固定每一温度,算法均计若固定每一温度,算法均计算马氏链的变化直至平稳分算马氏链的变化直至平稳分布,然后下降温度。布,然后下降温度。时齐算法时齐算法非时齐算法非时齐算法若无需各温度下算法均达到若无需各温度下算法均达到平稳分布,但温度需按照一平稳分布,但温度需按照一定的速率下降。或称非平稳定的速率下降。或称非平稳马氏链算法。马氏链算法。SAA基础理论基础理论
23、iNkkiiijijijiijtpijandNjijandNjtagtpji)(10)()(,/)(exp,1min,tCCaijji 通通常常令令马氏链模型马氏链模型 iNjiijijigigNjNjigjigg),()(,0),(/),(,SAA要实现全局收敛必须满足下列条件:要实现全局收敛必须满足下列条件:状态可达性状态可达性初值鲁棒性初值鲁棒性极限分布存在性极限分布存在性收敛到最优解收敛到最优解温度不变,温度不变,M链极限分布存链极限分布存在在温度渐近温度渐近0,M链极限分布存在链极限分布存在对应马氏链的状态图是强连通的对应马氏链的状态图是强连通的对算法的最终结果不依赖于初值对算法的最
24、终结果不依赖于初值定义定义1状态状态i可达状态可达状态j:00)(|)()(iXjnXPpnijji 定义定义2平稳分布平稳分布:称称 为马氏链的为马氏链的平稳分布平稳分布,若一步转移概率满足等式若一步转移概率满足等式,Zjvj01iijijpvv2.2.1 时齐算法的收敛性时齐算法的收敛性 时齐模拟退火算法的收敛性时齐模拟退火算法的收敛性结论结论:结论结论1 时齐模拟退火算法对应的有限状态马时齐模拟退火算法对应的有限状态马氏链存在平稳分布。氏链存在平稳分布。结论结论2 当温度趋于当温度趋于0时,马氏链以概率时,马氏链以概率1收敛收敛到最优状态集,而收敛到非最优状态的概率到最优状态集,而收敛到
25、非最优状态的概率为为0。实现途径:实现途径:通过各温度下各状态序列无限长通过各温度下各状态序列无限长得以实现!得以实现!2.2.2 非时齐算法的收敛性非时齐算法的收敛性收敛定理收敛定理 对退温函数加以严格控制,可使得对退温函数加以严格控制,可使得SA算法以概率算法以概率1收敛到全局最优收敛到全局最优解。解。可设计退温函数为可设计退温函数为,1,0,)ln(kmktk m2其中其中 ,则当,则当 时,时,SA算法算法以概率以概率1收敛到全局最优解。收敛到全局最优解。rL 2.2.3 SA算法渐近性能的逼近算法渐近性能的逼近 收敛可以保证,但是时间性能不好收敛可以保证,但是时间性能不好 收敛速度有
展开阅读全文