05 智能算法.ppt

  1. 1、本文档共59页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
* 模拟退火优化法 计算机模拟某一温度T下物质体系热平衡状态的方法 : Step 1:随机选择一个初始微观状态i作为当前状态,其相应的能量为Ei。 Step 2:从状态i作随机扰动,产生一新的状态j,其相应的能量为Ej,计算能量增量△E=Ei –Ej。 Step 3:如果△E≤0,则接受状态j作为当前状态,即j→i;若△E>0 ,计算基于Boltzmann分布函数的比值: 其中:Boltzmann分布函数 k为Boltzmann常数 取(0,1)之间的一个随机数p,若r>p,则接受状态j作为当前状态,即j→i ;否则,保持原来的状态i。 * 模拟退火优化法 从Boltzmann分布函数的比值(即8.3.15式)可看出,温度高时大,相应kT也较大,接受与当前状态能差较大的新状态的概率大;降低温度,r较小,只能接受能差较小的新状态。因此不断降低温度,体系最终能达到能量最低热平衡状态。 Step 4:重复第二、三步,在大量的能量状态变化后,系统处于能量较低的平衡态。降低温度T再重复上述过程,体系又处在能量更低的平衡态。 * SA基本算法的步骤与框图 首先进行初始化,任意给定初始态X0 ,取参数初值T0 ,计算优化目标函数E0 ,然后按下进行: (1)随机产生扰动态Xi,计算△E=Ei –E0 ; (2)若△E<0 ,转到(4)。否则在(0,1)之间的一个随机数p; (3)若exp(△E/T) < p ,转(5) ; (4)用Xi代替X0 ,E0 +△E代替E0 ; (5)以某种方式取Ti < T0,如 Ti =αT0; (6) SA计算过程是否结束,是就停止,否则就转到(1)。 * SA算法的控制 SA算法能否达到目标函数的最小值,主要取决于控制参数的初值是否足够高和其下降得是否慢,因此注意有关控制参数的选取问题。对于参数初值T0 ,常用的处理方法之一是在均匀地随机抽样X0后,取的E0方差作为T0 。对于降温策略Ti =αT0 ,0<α<1,常取α∈[0.85,0.96]。 SA算法的使用可以参考教材P257(FORTRAN程序) 用SA拟合丙烷-丝光沸石体系在303 K时的吸附平衡数据和模型。 Genetic Algorithm and Direct Search Toolbox in MATLAB v2007a (Using the Simulated Annealing and Threshold Acceptance Algorithms) * 三、遗传算法(Genetic Algorithm) 遗传算法是一种模拟自然选择和遗传的随机搜索算法。它最初由Holland在1975年提出的,研究自然系统的适应过程和设计具有自适应性能的软件。 遗传算法的基本形式是用染色体来表示参数空间的编码,用适应度函数来评价染色体群体的优劣,通过遗传操作产生新的染色体,并用概率来控制遗传操作。 遗传算法是一种非线性方法,它具有简洁、灵活、高效和全局优化的特性,在过程控制、系统诊断、非线性拟合与优化、人工智能等工程和研究领域都得到了广泛的应用。 * 遗传算法基础 遗传算法是一种迭代算法,它在每一次迭代时都拥有一组解(父代染色体群体),这组解答最初是随机生成的。 在每次迭代时, 首先保持解, 然后染色体群体经过遗传操作(选择、杂交、变异等),生成新的组解(子代染色体群体)。 每个解都由一个目标函数来评价,而且这一过程不断重复,直至达到某种形式上的收敛。 新的一组解不但可以有选择地保留一些先前迭代中目标函数值高的解,而且可以包括一些经由其它解结合而得的新的解,其子代的数值可以与其父代的情况有相当大的差别。 * 基本的遗传算法框图 初始染色体群体随机产生; 用适应度函数来评价染色体个体; 根据适应度产生繁殖的染色体个体,适应度好的染色体个体其被选择来繁殖的可能性大; 通过染色体对的交叉和变异操作,产生各自的子代繁殖染色体。 * 符号串表示和遗传操作的设计 遗传算法的术语借鉴于自然遗传学, 遗传物质的主要载体是染色体。在遗传算法中,染色体(个体)由一串数据或数组构成,用来作为问题解的代码。 染色体由决定其特性的基因构成,而基因又可以有称为等位基因的不同取值。 目标函数称为适应度函数,而一组染色体称为群体。 遗传算法的一次迭代称为一代。 遗传算法成功的关键在于符号串表示和遗传操作的设计。 * 染色体 解空间中的每一点都对应一个用由基因表示的染色体。 例如:要确定适应度函数f(x,y)的最大值,搜寻空间变量x和y为整数,其变化范围是0-15。这样对应于搜寻空间任何点可由两基因的染色体来表示: 点(2,6)用二进制数有如下的染色体: x y 2 6 → 0 0 1 0 0 1 1 0 * 交叉

文档评论(0)

fpiaovxingl + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档