模拟退火算法.doc
- 文档编号:131058
- 上传时间:2022-10-04
- 格式:DOC
- 页数:26
- 大小:928.50KB
模拟退火算法.doc
《模拟退火算法.doc》由会员分享,可在线阅读,更多相关《模拟退火算法.doc(26页珍藏版)》请在冰豆网上搜索。
第十章第十章模拟退火算法模拟退火算法在管理科学、计算机科学、分子物理学、生物学、超大规模集成电路设计、代码设计、图像处理和电子工程等领域中,存在着大量的组合优化问题。
例如,货郎担问题、最大截问题、01背包问题、图着色问题、设备布局问题以及布线问题等,这些问题至今仍未找到多项式时间算法。
这些问题已被证明是NP完全问题。
根据NP完全性理论,除非P=NP,否则所有的NP难问题都不存在多项式时间算法。
但是,这并不意味着问题的终结。
相反,由于这类问题广泛应用性,反而刺激人们以更大的热情对NP完全问题进行研究。
为解决这类问题,人们提出了许多近似算法,但这些算法或过于注意个别问题的特征而缺乏通用性,或因所得解强烈地依赖初始解的选择而缺乏实用性。
模拟退火算法是近年提出的一种适合解大规模组合优化问题,特别是解NP完全问题的通用有效的近似算法,它与以往的近似算法相比,具有描述简单、使用灵活、运用广泛、运行效率高和较少受初始条件限制的优点,而且特别适合并行计算,因此具有很大的使用价值。
同时由于其讨论涉及随机分析、马尔可夫链理论、渐进收敛性等学科,所以其研究还具有重要的理论意义。
10.1模拟退火算法的基本思想模拟退火算法的基本思想10.1.1模拟退火算法的物模拟退火算法的物理背景理背景固体退火过程的物理图像和统计性质是模拟退火算法的物理背景。
在热力学与统计物理学的研究领域中,固体退火是其重要的研究对象。
固体退火是指先将固体加热至熔化,再徐徐冷却使之凝固成规整晶体的热力学过程。
在高温状态下,液体的分子彼此之间可以自由的移动。
如果液体徐徐冷却,它的分子就会丧失由于温度而引起的流动性。
这时原子就会自己排列起来而形成一种纯晶体,它们依次地朝各个方向几十亿倍于单个原子大小的距离,这个纯晶体状态就是该系统的最小能量状态。
有趣的是,对于一个徐徐冷却的系统,当这些原子在逐渐失去活力的同时,它们自己就同时地排列而形成一个纯晶体,使这个系统的能量达到其最小值。
这里我们特别强调在这个物理系统的冷却过程中,这些原子就“同时的”把它们自己排列成一个纯晶体的。
如果一种金属熔液是被快速的冷却,则它不能达到纯晶体状态,而是变成一种多晶体或非晶体状态,系统处在这种状态时具有较高的能量。
模拟退火算法就是模仿上述物理系统徐徐退火过程的一种通用随机搜索技术,人们可用马尔可夫链的遍历理论来给它以数学上的描述。
在搜索最优解的过程中,模拟退火除了可以接受优化解外,还用一个随机接受准则(Metropolis准则)有限地接受恶化解,并使接受恶化解的概率慢慢地趋于零,这使得算法有可能从局部最优解中跳出,尽可能找到全局最优解,并保证了算法的收敛性。
1982年Kirkpatrick等人首次把固体退火与组合极小化联系在一起,他们分别用目标函数和组合极小化问题的解替代物理系统的能量和状态,从而物理系统内粒子的摄动等价于组合极小化问题中解的试探。
极小化过程就是:
首先在一个高温(温度现在就成为一个参数控制)状态下有效的“溶化”解空间,然后慢慢地降低温度直到系统“晶体”到一个稳定解。
通过以下示例,我们可以将组合优化问题与固体退火进行类比:
组合优化问题固体退火解状态最优解能量最低状态费用函数能量10.1.2模拟退火算法结构模拟退火算法结构模拟退火算法的求解过程如下:
(1)随机产生初始解0X,给定初始温度0T,令0=k;
(2)随机产生新解XXk+,并计算函数增量)()(kkXEXXEE+=;(3)若0E,则接受新解,XXk+=kX,转
(2),否则以概率)(EP)exp(kTE=决定是否接受新解。
具体方法是:
产生0和1之间的一个随机数r,若rEP)(,接受新解,否则拒绝新解;(4)重复第
(2)、(3)步若干次,使解接近当前温度下的最优解,这相当于用足够慢的速度降温,以保证在每个温度时系统都能处于当前温度下的能量最低状态;(5)按一定的方式降低温度,例如kT=kT,其中(0,1);(6)若满足收敛条件,退火过程结束,否则1+=kk,转
(2)。
通常95.085.0,收敛条件为)(很小的正数kT。
理论已证明:
只要初始温度足够高,退火过程足够慢,模拟退火算法以概率1收敛到全局最优解。
10.2模拟退火算法的渐近收敛性模拟退火算法的渐近收敛性10.2.1马尔可夫链理论马尔可夫链理论定义定义10.1设()(),2,1=kkX为随机变量序列,ikX=)(称在时刻k处于状态i,Si,S称为状态空间。
当S中的状态数有限时,称为有限状态空间。
若对任意的正整数n,()(),2,1=kkX满足SjiiiiinxjnxPinXinXiXiXjnXPnn=,),)1(|)()1(,)2(,)2(,)1(|)(221221则称X(k)(k=1,2,)为马尔可夫链,简称马氏链。
马氏链具有一种记忆功能,它只记忆前一时刻的状态。
上式可以简单地记成),)1(|)()1(inXjnXPnpij=称为一步转移概率。
当状态空间有限时,称为有限马氏链,一步转移概率矩阵记为|)1()1(SSijnpnP=当nnpnpijij=),()1(成立时,即从状态i移到状态j的概率与时刻n无关,称马氏链为齐次马氏链。
反之,若转移矩阵与时刻有关,则称此马氏链为非齐次马氏链。
切普曼柯尔莫哥洛夫方程式:
),()()()()()()(SjimnpnpnpSkrkjmikrmij+=+其中)(|)()()(inXjmnXPnpmij=+=表示m步转移概率,即在时刻n状态为i的条件下,经过m步转移到达状态j的概率。
特别当马尔可夫过程为齐次时切普曼柯尔莫哥洛夫方程变成+=krkjmikrmijppp)()()(定义定义10.2如果对状态i和j存在某个)1(nn,使得0)(nijP,既由状态i出发,经过n次转移以正的概率到达状态j,则称自状态i可达到状态j,并记为ji。
反之若状态i不能达到j,即对于一切)1(nn,0)(=nijP。
定义定义10.3若ji且ij,则称状态i和j相通,记为ji定义定义10.4设C为状态空间的一个子集,如果从C内任一状态i不能到达C外的任何状态j,即对,0,)(成立对任意,有npCjCinij=则称C是闭集。
定义定义10.5称转移矩阵为P的马尔可夫链为不可约的,若,Sji:
1n0)(ijnp,即除了整个状态空间构成一个闭集外没有别的闭集,这时马氏链中的所有状态都是相通的。
定义定义10.6称转移矩阵为p的马尔可夫链为非周期的,若对Si,集合iD的最大公约数为1)gcd(=iD,其中iD由所有满足0)(iinp式的整数n0组成,且整数)gcd(iD称为解i的周期。
故非周期即指出所有解的周期为1。
定理定理10.1转移矩阵为P的不可约马氏链是非周期的一个充分条件是:
0:
jjpSj证明证明:
由不可约性可知,对满足上式的j和Si有0)(:
1,ijkPlk且0)(jilP故,0)()()(jilijkiinPPP其中n=k+l,又由于0)()()(1+jiljjijkiinPPPP因而n,n+1均属于iD,故1)1,gcd()gcd(=+nnDi由于1)gcd(iD,故结论正确。
在讨论模拟退火算法收敛性的过程中用到的一个重要的分布是平稳分布。
定义定义10.7称转移矩阵为P的有限齐次马尔可夫链的平稳分布为向量q,其第i个分量iq为)0(|)(lim:
jXikXPqjki=,其中0iq=iiq1且=jjijipqq。
若这样的平稳分布q存在,则该平稳分布就是k时解的概率分布。
作者不加证明的给出以下重要定理:
定理定理10.2:
设P为有限齐次马尔可夫链的相伴转移矩阵,若该马氏链是不可约的和非周期的,则其平稳分布q存在且由下式唯一确定:
=jjijipqq
(1)其中0iq=iiq1。
根据模拟退火算法的特点,模拟退火算法的数学模型可以描述为:
在给定邻域结构后,模拟退火过程是从一个状态到另一个状态不断的随机游动。
我们可以用马尔可夫链描述这一过程。
当温度t为一确定值时,两个状态的转移概率定义为=ijtAtGijtAtGtpSillililijijij,1)()
(1)()()
(2)其中,S表示状态集合(解集合)中状态的个数。
)(tGij称为从i到j的产生概率。
)(tGij表示在状态i时,j状态被选取的概率。
比较容易理解的是j是i的邻域,如果在邻域中等概率选取,则j被选取的概率是=)(0)()(/1)(iNjiNjxNtGiij(3)(tAij称为接受概率,表示在状态i时产生状态j后,接受j的概率,如在模拟退火算法中接受概率是:
=)()()/exp()()
(1)(jfiftfjfiftAijij(4)SSijtGtG=)()(,SSijtAtA=)()(和SSijtptP=)()(分别称为产生矩阵、接受矩阵和一步转移概率矩阵。
上述为模拟退火算法的主要模型。
模拟退火算法主要分为两类。
第一类为齐次算法,在
(1)中对每一个固定的t,计算对应的马尔可夫链变化,直到一个稳定状态,然后在使温度下降。
第二类是非齐次算法,由一个马尔可夫链组成,要求在两个相邻的转移中,温度t是下降的。
无论从实际和直观,描述模拟退火过程的马尔可夫链应满足下列条件:
(1)可达性。
无论起点如何,任何一个状态都可以到达,这样使我们有达到最优解的可能。
(2)渐进不依赖起点。
由于起点的选择有非常大的随机性,我们的目标是达到全局最优解,因此,应渐进地不依赖起点。
(3)分布稳定性。
包含两个内容:
一是当温度不大时,其马尔可夫链的极限分布存在;二是当温度渐进0时,其马尔可夫链也存在极限分布。
(4)收敛到最优解。
当温度渐进0时,最优状态的极限分布和为1。
下面将从理论上讨论这些要求能否达到。
模拟退火算法可以分为齐次和非齐次的,由以上马氏链性质的讨论,收敛证明沿用下面的过程。
10.2.2齐次算法的收敛性齐次算法的收敛性
(1)在每一个温度t给出
(2)的一步转移概率)(tpij的一些限定条件,使得转移概率所对应的马氏链满足不可约和非周期。
根据定理4.2,此马氏链在每一温度t存在平稳分布。
(2)给出平稳分布应该满足的条件,使得当温度渐进达到零度时,平稳分布的极限存在,即)(lim0tqt存在。
(3)进一步要求平稳分布的极限具有全局最优解的=OPTOPTOPTktSkSkStq01)(lim0其中OPTS表示最优状态集合。
综上所述,得到全局性收敛的表达式1)(limlim0=opttktSkXP对非齐次算法,也需要下面的条件保证其全局收敛性。
(1)因为非齐次算法的每一步温度在变化,因此需要给出一步转移概率)(tpij的一些限定条件,即需要给出)(ktA和)(ktG的限定条件,使得非齐次马氏链能收敛到一个分布。
(2)温度是渐进到零度的,即0lim=kkt,给出保证达到全局最优解的温度变化关系。
最终要求1),(lim=OPTkkStkXP。
由于组合优化问题的状态空间是有限的,齐次性是由算法保证的。
要达到定理4.2的条件,需要讨论模拟退火算法对应的马氏链的不可约性与非周期性,即可先证明模拟退火算法对应的马氏链是不可约和非周期判定定理。
定理定理10.3若对于)(,1,010jlilSlllPSjiPP=且使得1,1,0,01=+PkGkkll(5)则与模拟退火算法相伴的马尔可夫链是不可约的。
证:
证:
由(5)式可得,1,PSji使=SkSkSkjkkkikijPPPtPtPtPtP1211211)()()()()()()()(1211tPtPtPjlllilP)()()(11212111tAGtAGtAGjljlllllililPP=0由不可约定义,知定理正确。
定理定理10.4若.1)(:
0tASjitttjitt则与模拟退火算法相伴的马尔可夫链
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 模拟 退火 算法