- 1、本文档共210页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第三章求解优化问题的智能算法讲解
人工智能 华中科技大学水电与数字化工程学院 局部优化 在确定某分量所在区间后,用遗传算法相关操作对该子区间内候选组内的值进行选择,以实现对问题的局部优化。 设gij表示第i分量候选组j中候选值的个数,根据不同的gij值,对候选组进行选择、交叉、变异等遗传操作。 1)若gij=0,则在[Lij Uij ]内产生一个随机数作为解的分量,跳过选择、交叉、变异等操作; 2)若gij=1 ,则跳过选择、交叉操作,直接对这个候选值进行变异操作,以变异后的值作为该分量的值; 3)若gij=2,即候选组里有两个候选值,则跳过选择操作,直接对这两个候选值进行交叉、变异等操作; 4)否则,选择两个分量后进行交叉、变异操作。 3.3 蚁群算法——在连续优化问题中的应用——算法三 在选择操作中,根据候选组里各候选值的适应度的大小,用“赌轮”的方法选取两个值。 1)选择 2)交叉 在交叉操作中,设进行交叉的两个值为xi(1)和xi(2),对它们的交叉过程按下式进行(交叉后只产生一个新的个体,而且可以保证遗传操作的结果仍然在子区间中): 3.3 蚁群算法——在连续优化问题中的应用——算法三 3)变异 变异按如下公式进行,设对候选值xi进行变异: 可以保证遗传操作的结果仍然在子区间中。 3.3 蚁群算法——在连续优化问题中的应用——算法三 候选组更新 为避免子区间内候选值的个数gij无限制增大,在所有蚂蚁构造完各自的解后,需对各子区间的候选组进行更新。即选取蚁群中适应度最好的num个解,将其分量插入相应的子区间的候选组中,并淘汰较差者。一般取num=[m/3]。 3.3 蚁群算法——在连续优化问题中的应用——算法三 可以设定两种终止条件: 与离散蚁群算法相同,可以限定最大迭代次数作为迭代终止条件。 注意到适应度计算式中以fmax-fmin作为分母,因此,同时限定fmax-fmin ??,即蚁群中各蚂蚁的目标函数趋同的时候,终止迭代过程。 迭代终止条件 3.3 蚁群算法——在连续优化问题中的应用——算法三 算法框架 (1)初始化 随机产生M个初始解,计算这M个初始解的适应度,由这M个初始解的各个分量计算出其所属的子区间,产生各个子区间上的相应分量的候选组,并将候选组中的值按它们所在解的适应度排序,根据适应度计算各分量各个子区间上(即各条边上)的信息量。 3.3 蚁群算法——在连续优化问题中的应用——算法三 while not结束条件do { for k=1 to m do(对m个蚂蚁循环){ for i=1 to n do(对n个分量循环){ 根据q0和概率 确定第i个分量的值在第j个子区间; 修改第j个子区间的信息量?ij(t);(局部更新) 在第j个子区间候选组里生成第i个分量的的值;(局部优化) }( for i=1 to n循环) 计算蚂蚁k的适应度函数值Fk,从而计算 ; }( for k=1 to m 循环) 修改各条边上的信息量;(全局更新) 候选组更新; }(while循环) (2)迭代过程 3.3 蚁群算法——在连续优化问题中的应用——算法三 3.4 粒子群算法 粒子群算法(Particle Swarm Optimization,简称PSO),是一种基于群体智能的进化计算方法。PSO由Kennedy和Eberhart博士于1995年提出。 PSO一经提出,由于算法简单,容易实现,立刻引起了进化计算领域学者们的广泛关注,形成一个研究热点,目前已广泛应用于函数优化、神经网络训练、模式分类、模糊控制等领域,取得了较好的效果。 目前PSO算法已被“国际进化计算会议”(IEEE International Conferences on Evolutionary Computation, CEC)列为一个讨论的专题。 3.4 粒子群算法——研究背景 PSO的基本概念源于对鸟群捕食行为的研究: 一群鸟在随机搜寻食物,在这个区域里只有一块食物,所有鸟都不知道食物在哪里。但是他们知道当前的位置离食物还有多远。 那么找到食物的最优策略是什么呢?最简单有效的就是搜寻目前离食物最近的鸟的周围区域。 3.4 粒子群算法——基本原理 PSO算法就从这种生物种群行为特性中得到启发并用于求解优化问题。 在PSO中,把一个优化问题看作是在空中觅食的鸟群,那么“食物”就是优化问题的最优解,而在空中飞行的每一只觅食的“鸟”就是PSO算法中在解空间中进行搜索的一个“粒子”(Particle)。 “群”(Swarm)的概念来自于人工生命,满足人工生命的五个基本原则。因此PSO算法也可看作是对简化了的社会模型的模拟,这其中最重要
文档评论(0)