大连海事大学刘巍高等运筹第十六讲.ppt

上传人:sccc 文档编号:6280069 上传时间:2023-10-13 格式:PPT 页数:200 大小:9.07MB
返回 下载 相关 举报
大连海事大学刘巍高等运筹第十六讲.ppt_第1页
第1页 / 共200页
大连海事大学刘巍高等运筹第十六讲.ppt_第2页
第2页 / 共200页
大连海事大学刘巍高等运筹第十六讲.ppt_第3页
第3页 / 共200页
大连海事大学刘巍高等运筹第十六讲.ppt_第4页
第4页 / 共200页
大连海事大学刘巍高等运筹第十六讲.ppt_第5页
第5页 / 共200页
点击查看更多>>
资源描述

《大连海事大学刘巍高等运筹第十六讲.ppt》由会员分享,可在线阅读,更多相关《大连海事大学刘巍高等运筹第十六讲.ppt(200页珍藏版)》请在三一办公上搜索。

1、高等运筹学,大连海事大学刘巍,目录,第一篇 运筹学发展历史 第二篇 运筹学中的数学规划 第三篇 运筹学中的组合优化第四篇 运筹学中的随机优化 第五篇 运筹学中的博弈论 第六篇 运筹学中管理科学第七篇 运筹学中智能计算第八篇 运筹学发展势态,第六篇 运筹学中的智能计算,第二十三章 遗传算法第二十四章 模拟退火第二十五章 蚁群算法第二十六章 人工神经网络,4,第 章 群体智能与蚁群算法第1节 群体智能(Swarm Intelligence),5,研究意义群体智能概念,群体智能这个概念来自对蜜蜂和蚂蚁的观察。一组相互之间可以进行直接通信或者间接通信(通过改变局部环境)的主体,这组主体能够合作进行分布

2、问题求解。任何启发于群居性昆虫群体和其它动物群体的集体行为而设计的算法和分布式问题解决装置都称为群体智能。群体智能在没有集中控制并且不提供全局模型的前提下,为寻找复杂的分布式问题的解决方案提供了基础。,6,研究意义群体智能的特点,分布式:能够适应当前网络环境下的工作状态;鲁棒性:没有中心的控制与数据,个体的故障不影响整个问题的求解;扩充性:个体的增加,系统的通信开销增加小;简单性:个体简单,实现也比较简单。,7,研究意义,群体智能的研究不仅在多主体仿真、系统复杂性以及NP问题等方面为人工智能、认识科学、计算经济学等领域的基础理论问题的研究开辟了新的研究途径,同时也为诸如组合优化、机器人协作、电

3、信路由控制等实际工程问题提供了新的解决方法。因此,群体智能的研究具有重要意义和广阔的应用前景。,8,研究现状国外,美国的SDG 组织在系统复杂性方面开展了研究。他们主要通过多主体的仿真来研究系统复杂性。他们开发的SWARM软件包为多学科进行基于多主体的建模提供了一个基础平台;加州工学院专门开设了群体智能的课程;欧洲联盟资助的SWARM-BOTS项目的主要目标是研究设计和实现自组织和自装配的装置的新途径。它的理论基础是群体智能和蚁群算法的近期研究成果,即对群居性昆虫和其它动物群体的自组织和自装配能力的研究。,9,研究现状国内,国家自然科学基金在“十五”期间学科交叉类优先资助领域第一类属于把握科学

4、前沿,推动源头创新的项目。其中第7项认知科学及其信息处理的研究内容就明确列出了群体智能的进化、自适应与现场认知。相关项目还有第9项复杂系统与复杂性。,10,主要研究方向,蚁群寻食行为研究,相对应组合优化算法和通信网络路由控制算法;群体分工和任务分配行为研究,相对应多主体分工协作算法;巢穴组织和自组织行为及群体分类行为研究,相对应数据分析和图的分割算法;建巢和自装配行为研究,相对应模拟建巢算法;群体合作搬运行为研究,相对应机器人合作搬运算法。,11,所需解决的关键问题,蚁群算法 效率与理论;由于没有标准的测试集,除了寻食模型,蚁卵聚类、蚁群分工和蚁巢自装配等模型都只处于证实阶段 理论和实验;一个

5、多主体自组织模型实验和测试平台;对于追求效率的实际问题,如何既保持群体智能系统的灵活性和鲁棒性等自组织特征又能保证系统的高效率也是一个关键问题;群体智能与分布式智能的智能主体研究相结合,将产生新的智能主体协作、建模等算法和机制,提出网络和网格环境的自适应多智能主体系统。,12,蚁群算法原型,A)蚁群到达决策点。,B)一些蚂蚁选择上方路径,一些蚂蚁选择下方路径。选择是随机的。,C)下方短路径蚂蚁到达相反方向的决策点的时间早于选择上方长路径的蚂蚁。,D)短路径上外激素以较高的速度积累。,外激素多的短路径将吸收更多的蚂蚁,反过来,更多的蚂蚁在短路径上会留下更多的外激素,加上外激素挥发效应,最后,蚁群

6、都选择了最短路径。,13,蚁群优化算法研究现状 1/7,90年代Dorigo最早提出了蚁群优化算法-蚂蚁系统(Ant System,AS)并将其应用于解决计算机算法学中经典的旅行商问题(TSP)。从蚂蚁系统开始,基本的蚁群算法得到了不断的发展和完善,并在TSP以及许多实际优化问题求解中进一步得到了验证。这些AS改进版本的一个共同点就是增强了蚂蚁搜索过程中对最优解的探索能力,它们之间的差异仅在于搜索控制策略方面。而且,取得了最佳结果的ACO是通过引入局部搜索算法实现的,这实际上是一些结合了标准局域搜索算法的混合型概率搜索算法,有利于提高蚁群各级系统在优化问题中的求解质量。,14,蚁群优化算法研究

7、现状 2/7,最初提出的AS有三种版本:Ant-density、Ant-quantity和Ant-cycle。在Ant-density和Ant-quantity中蚂蚁在两个位置节点间每移动一次后即更新信息素,而在Ant-cycle中当所有的蚂蚁都完成了自己的行程后才对信息素进行更新,而且每个蚂蚁所释放的信息素被表达为反映相应行程质量的函数。通过与其它各种通用的启发式算法相比,在不大于75城市的TSP中,这三种基本算法的求解能力还是比较理想的,但是当问题规模扩展时,AS的解题能力大幅度下降。因此,其后的ACO研究工作主要都集中于AS性能的改进方面。较早的一种改进方法是精英策略(Elitist S

8、trategy),其思想是在算法开始后即对所有已发现的最好路径给予额外的增强,并将随后与之对应的行程记为Tgb(全局最优行程),当进行信息素更新时,对这些行程予以加权,同时将经过这些行程的蚂蚁记为“精英”,从而增大较好行程的选择机会。这种改进型算法能够以更快的速度获得更好的解。但是若选择的精英过多则算法会由于较早的收敛于局部次优解而导致搜索的过早停滞。,15,蚁群优化算法研究现状 3/7,为了进一步克服AS中暴露出的问题,提出了蚁群系统(Ant Colony System,ACS)。该系统的提出是以Ant-Q算法为基础的。Ant-Q将蚂蚁算法和一种增强型学习算法Q-learning有机的结合了

9、起来。ACS与AS之间存在三方面的主要差异:首先,ACS采用了更为大胆的行为选择规则;其次,只增强属于全局最优解的路径上的信息素。其中,01是信息素挥发参数,是从寻路开始到当前为止全局最优的路径长度。,16,蚁群优化算法研究现状 4/7,再次,还引入了负反馈机制,每当一只蚂蚁由一个节点移动到另一个节点时,该路径上的信息素都按照如下公式被相应的消除一部分,从而实现一种信息素的局部调整,以减小已选择过的路径再次被选择的概率。,17,蚁群优化算法研究现状 5/7,在对AS进行直接完善的方法中,MAX-MIN Ant System是一个典型代表。该算法修改了AS的信息素更新方式,每次迭代之后只有一只蚂

10、蚁能够进行信息素的更新以获取更好的解。为了避免搜索停滞,路径上的信息素浓度被限制在MAX,MIN 范围内,另外,信息素的初始值被设为其取值上限,这样有助于增加算法初始阶段的搜索能力。,18,蚁群优化算法研究现状 6/7,另一种对AS改进的算法是Rank-based Version AS。与“精英策略”相似,在此算法中总是更新更好进程上的信息素,选择的标准是其行程长度 决定的排序,且每个蚂蚁放置信息素的强度通过下式中的排序加权处理确定,其中,为每次迭代后放置信息素的蚂蚁总数。,19,蚁群优化算法研究现状 7/7,这种算法求解TSP的能力与AS、精英策略AS、遗传算法和模拟退火算法进行了比较。在大

11、型TSP问题中(最多包含132座城市),基于AS的算法都显示出了优于GA和SA的特性。而且在Rank-based AS和精英策略AS均优于基本AS的同时,前者还获得了比精英策略AS更好的解。,20,蚁群优化算法应用现状 1/5,随着群智能理论和应用算法研究的不断发展,研究者已尝试着将其用于各种工程优化问题,并取得了意想不到的收获。多种研究表明,群智能在离散求解空间和连续求解空间中均表现出良好的搜索效果,并在组合优化问题中表现突出。蚁群优化算法并不是旅行商问题的最佳解决方法,但是它却为解决组合优化问题提供了新思路,并很快被应用到其它组合优化问题中。比较典型的应用研究包括:网络路由优化、数据挖掘以

12、及一些经典的组合优化问题。,21,蚁群优化算法应用现状 2/5,蚁群算法在电信路由优化中已取得了一定的应用成果。HP公司和英国电信公司在90年代中后期都开展了这方面的研究,设计了蚁群路由算法(Ant Colony Routing,ACR)。每只蚂蚁就像蚁群优化算法中一样,根据它在网络上的经验与性能,动态更新路由表项。如果一只蚂蚁因为经过了网络中堵塞的路由而导致了比较大的延迟,那么就对该表项做较大的增强。同时根据信息素挥发机制实现系统的信息更新,从而抛弃过期的路由信息。这样,在当前最优路由出现拥堵现象时,ACR算法就能迅速的搜寻另一条可替代的最优路径,从而提高网络的均衡性、负荷量和利用率。目前这

13、方面的应用研究仍在升温,因为通信网络的分布式信息结构、非稳定随机动态特性以及网络状态的异步演化与ACO的算法本质和特性非常相似。,22,蚁群优化算法应用现状 3/5,基于群智能的聚类算法起源于对蚁群蚁卵的分类研究。Lumer和Faieta将Deneubourg提出将蚁巢分类模型应用于数据聚类分析。其基本思想是将待聚类数据随机地散布到一个二维平面内,然后将虚拟蚂蚁分布到这个空间内,并以随机方式移动,当一只蚂蚁遇到一个待聚类数据时即将之拾起并继续随机运动,若运动路径附近的数据与背负的数据相似性高于设置的标准则将其放置在该位置,然后继续移动,重复上述数据搬运过程。按照这样的方法可实现对相似数据的聚类

14、。,23,蚁群优化算法应用现状 4/5,ACO还在许多经典组合优化问题中获得了成功的应用,如二次规划问题(QAP)、机器人路径规划、作业流程规划、图着色(Graph Coloring)等问题。经过多年的发展,ACO已成为能够有效解决实际二次规划问题的几种重要算法之一。AS在作业流程计划(Job-shop Scheduling)问题中的应用实例已经出现,这说明了AS在此领域的应用潜力。利用MAX-MIN AS解决PAQ也取得了比较理想的效果,并通过实验中的计算数据证明采用该方法处理PAQ比较早的SA算法更好,且与禁忌搜索算法性能相当。利用ACO实现对生产流程和特料管理的综合优化,并通过与遗传、模

15、拟退火和禁忌搜索算法的比较证明了ACO的工程应用价值。,24,蚁群优化算法应用现状 5/5,许多研究者将ACO用于了武器攻击目标分配和优化问题、车辆运行路径规划、区域性无线电频率自动分配、Bayesian networks的训练和集合覆盖等应用优化问题。Costa和Herz还提出了一种AS在规划问题方面的扩展应用图着色问题,并取得了可与其他启发式算法相比的效果。,25,第2节 蚁群优化算法概念,2.1 蚁群算法原理2.2 简化的蚂蚁寻食过程2.3 自然蚁群与人工蚁群算法2.4 蚁群算法与TSP问题2.5 初始的蚁群优化算法基于图的蚁群系统(GBAS)2.6 一般蚁群算法的框架2.7 蚁群优化算

16、法技术问题,26,2.1 蚁群算法原理,蚁群算法是对自然界蚂蚁的寻径方式进行模似而得出的一种仿生算法。蚂蚁在运动过程中,能够在它所经过的路径上留下一种称之为外激素(pheromone)的物质进行信息传递,而且蚂蚁在运动过程中能够感知这种物质,并以此指导自己的运动方向,因此由大量蚂蚁组成的蚁群集体行为便表现出一种信息正反馈现象:某一路径上走过的蚂蚁越多,则后来者选择该路径的概率就越大。为了说明蚁群算法的原理,先简要介绍一下蚂蚁搜寻食物的具体过程。在蚁群寻找食物时,它们总能找到一条从食物到巢穴之间的最优路径。这是因为蚂蚁在寻找路径时会在路径上释放出一种特殊的信息素。当它们碰到一个还没有走过的路口时

17、就随机地挑选一条路径前行。与此同时释放出与路径长度有关的信息素。路径越长,释放的激索浓度越低.当后来的蚂蚁再次碰到这个路口的时候选择激素浓度较高路径概率就会相对较大。这样形成一个正反馈。最优路径上的激索浓度越来越大而其它的路径上激素浓度却会随着时间的流逝而消减。最终整个蚁群会找出最优路径。,27,2.2 简化的蚂蚁寻食过程 1/3,蚂蚁从A点出发,速度相同,食物在D点,可能随机选择路线ABD或ACD。假设初始时每条分配路线一只蚂蚁,每个时间单位行走一步,本图为经过9个时间单位时的情形:走ABD的蚂蚁到达终点,而走ACD的蚂蚁刚好走到C点,为一半路程。,28,简化的蚂蚁寻食过程 2/3,本图为从

18、开始算起,经过18个时间单位时的情形:走ABD的蚂蚁到达终点后得到食物又返回了起点A,而走ACD的蚂蚁刚好走到D点。,29,简化的蚂蚁寻食过程 3/3,假设蚂蚁每经过一处所留下的信息素为一个单位,则经过36个时间单位后,所有开始一起出发的蚂蚁都经过不同路径从D点取得了食物,此时ABD的路线往返了2趟,每一处的信息素为4个单位,而 ACD的路线往返了一趟,每一处的信息素为2个单位,其比值为2:1。寻找食物的过程继续进行,则按信息素的指导,蚁群在ABD路线上增派一只蚂蚁(共2只),而ACD路线上仍然为一只蚂蚁。再经过36个时间单位后,两条线路上的信息素单位积累为12和4,比值为3:1。若按以上规则

19、继续,蚁群在ABD路线上再增派一只蚂蚁(共3只),而ACD路线上仍然为一只蚂蚁。再经过36个时间单位后,两条线路上的信息素单位积累为24和6,比值为4:1。若继续进行,则按信息素的指导,最终所有的蚂蚁会放弃ACD路线,而都选择ABD路线。这也就是前面所提到的正反馈效应。,30,2.3 自然蚁群与人工蚁群算法,基于以上蚁群寻找食物时的最优路径选择问题,可以构造人工蚁群,来解决最优化问题,如TSP问题。人工蚁群中把具有简单功能的工作单元看作蚂蚁。二者的相似之处在于都是优先选择信息素浓度大的路径。较短路径的信息素浓度高,所以能够最终被所有蚂蚁选择,也就是最终的优化结果。两者的区别在于人工蚁群有一定的

20、记忆能力,能够记忆已经访问过的节点。同时,人工蚁群再选择下一条路径的时候是按一定算法规律有意识地寻找最短路径,而不是盲目的。例如在TSP问题中,可以预先知道当前城市到下一个目的地的距离。,31,2.4 蚁群算法与TSP问题 1/3,TSP问题表示为一个N个城市的有向图G=(N,A),其中城市之间距离目标函数为,其中 为城市1,2,n的一个排列,。,32,蚁群算法与TSP问题 2/3,TSP问题的人工蚁群算法中,假设m只蚂蚁在图的相邻节点间移动,从而协作异步地得到问题的解。每只蚂蚁的一步转移概率由图中的每条边上的两类参数决定:1 信息素值 也称信息素痕迹。2 可见度,即先验值。信息素的更新方式有

21、2种,一是挥发,也就是所有路径上的信息素以一定的比率进行减少,模拟自然蚁群的信息素随时间挥发的过程;二是增强,给评价值“好”(有蚂蚁走过)的边增加信息素。,33,蚁群算法与TSP问题 3/3,蚂蚁向下一个目标的运动是通过一个随机原则来实现的,也就是运用当前所在节点存储的信息,计算出下一步可达节点的概率,并按此概率实现一步移动,逐此往复,越来越接近最优解。蚂蚁在寻找过程中,或者找到一个解后,会评估该解或解的一部分的优化程度,并把评价信息保存在相关连接的信息素中。,34,2.5 初始的蚁群优化算法基于图的蚁群系统(GBAS)1/12,初始的蚁群算法是基于图的蚁群算法,graph-based ant

22、 system,简称为GBAS,是由Gutjahr W J在2000年的Future Generation Computing Systems提出的,课本的参考文献2。算法步骤如下:STEP 0 对n个城市的TSP问题,城市间的距离矩阵为,给TSP图中的每一条弧 赋信息素初值,假设m只蚂蚁在工作,所有蚂蚁都从同一城市 出发。当前最好解是。,35,初始的蚁群优化算法基于图的蚁群系统(GBAS)2/12,STEP 1(外循环)如果满足算法的停止规则,则停止计算并输出计算得到的最好解。否则使蚂蚁s从起点 出发,用 表示蚂蚁s行走的城市集合,初始 为空集,。STEP 2(内循环)按蚂蚁 的顺序分别计算

23、。当蚂蚁在城市i,若 完成第s只蚂蚁的计算。否则,若,则以概率,到达j,;若则到达重复STEP 2。,36,初始的蚁群优化算法基于图的蚁群系统(GBAS)3/12,STRP 3 对,若,按 中城市的顺序计算路径程度;若,路径长度置为一个无穷大值(即不可达)。比较m只蚂蚁中的路径长度,记走最短路径的蚂蚁为t。若,则。用如下公式对W路径上的信息素痕迹加强,对其他路径上的信息素进行挥发。得到新的,重复步骤STEP 1。,37,初始的蚁群优化算法基于图的蚁群系统(GBAS)4/12,在STEP 3 中,挥发因子 对于一个固定的,满足并且 经过k次挥发,非最优路径的信息素逐渐减少至消失。,38,初始的蚁

24、群优化算法基于图的蚁群系统(GBAS)5/12,以上算法中,在蚂蚁的搜寻过程中,以信息素的概率分布来决定从城市i到城市j的转移。算法中包括信息素更新的过程 1 信息素挥发(evaporation)信息素痕迹的挥发过程是每个连接上的信息素痕迹的浓度自动逐渐减弱的过程,由 表示,这个挥发过程主要用于避免算法过快地向局部最优区域集中,有助于搜索区域的扩展。2 信息素增强(reinforcement)增强过程是蚁群优化算法中可选的部分,称为离线更新方式(还有在线更新方式)。这种方式可以实现由单个蚂蚁无法实现的集中行动。也就是说,增强过程体现在观察蚁群(m只蚂蚁)中每只蚂蚁所找到的路径,并选择其中最优路

25、径上的弧进行信息素的增强,挥发过程是所有弧都进行的,不于蚂蚁数量相关。这种增强过程中进行的信息素更新称为离线的信息素更新。在STEP 3中,蚁群永远记忆到目前为止的最优解。,39,图的蚁群系统(GBAS)6/12,可以验证,下式满足:即 是一个随机矩阵。,四个城市的非对称TSP问题,距离矩阵和城市图示如下:,40,初始的蚁群优化算法基于图的蚁群系统(GBAS)7/12,假设共4只蚂蚁,所有蚂蚁都从城市A出发,挥发因子。此时,观察GBAS的计算过程。矩阵共有12条弧,初始信息素记忆矩阵为:,41,初始的蚁群优化算法基于图的蚁群系统(GBAS)8/12,执行GBAS算法的步骤2,假设蚂蚁的行走路线

26、分别为:当前最优解为,这个解是截止到当前的最优解,碰巧是实际最优解,42,初始的蚁群优化算法基于图的蚁群系统(GBAS)9/12,按算法步骤3的信息素更新规则,得到更新矩阵这是第一次外循环结束的状态。,43,初始的蚁群优化算法基于图的蚁群系统(GBAS)10/12,重复外循环,由于上一次得到的W2已经是全局最优解,因此按算法步骤3的信息素更新规则,无论蚂蚁如何行走,都只是对W2路线上的城市信息素进行增强,其他的城市信息素进行挥发。得到更新矩阵这是第一次外循环结束的状态。,44,初始的蚁群优化算法基于图的蚁群系统(GBAS)11/12,重复外循环,由于W2全局最优解,GBAS只记录第一个最优解,

27、因此一但得到了全局最优解,信息素的更新将不再依赖于以群的行走路线,而只是不断增强最优路线的信息素,同时进行挥发。第三次外循环后得到的信息素矩阵为:,45,初始的蚁群优化算法基于图的蚁群系统(GBAS)12/12,蚂蚁以一定的概率从城市i到城市j进行转移,信息素的更新在STEP 3 完成,并随K而变化。假设第K次外循环后得到信息素矩阵,得到当前最优解。第K次循环前的信息素和最优解为,经过第K次外循环后,得到。由于蚂蚁的一步转移概率是随机的,从 到 也是随机的,是一个马尔可夫过程。,46,2.6 一般蚁群算法的框架,一般蚁群算法的框架和GBAS基本相同,有三个组成部分:蚁群的活动;信息素的挥发;信

28、息素的增强;主要体现在前面的算法中步骤2和步骤3中的转移概率公式和信息素更新公式。,47,2.7 蚁群优化算法技术问题,(1)解的表达形式与算法的实现(2)每一节点的记忆信息和系数的确定(3)蚁群的规模和停止规则(4)信息素的更改,48,(1)解的表达形式与算法的实现 1/4-解的表达形式,解的表达形式 基于TSP问题的蚁群优化算法,其解的形式是所有城市的一个排列(闭圈,这种情况下谁在第一并不重要),信息素痕迹按每个弧记录。而对于一般以顺序作为解的优化问题,谁在第一是很重要的。蚁群算法在解决这类问题时,只需要建立一个虚拟的始终点,就可以把TSP问题的解法推广,用于诸多的优化问题。诸如车间作业及

29、下料等问题,他们的共同特点是解以一个顺序表示。TSP问题寻找的是最短回路,而一般优化问题中,STEP 3 中的判断条件 需要根据实际问题进行修改。,49,解的表达形式与算法的实现 2/4-算法的实现,例:0-1背包问题的解顺序表达形式与算法实现。设有一个容积为b的背包,n个尺寸分别为,价值分别为 的物品,0-1背包问题的数学模型为:假设其解的顺序表达形式为,其中为的一个排列。,50,解的表达形式与算法的实现 3/4-算法的实现,建立有向图,其中 A中共有 条弧。初始信息素痕迹定义为。设第s只蚂蚁第k步所走的路线为,表示蚂蚁从0点出发,顺序到达。第 步按TSP算法的转移概率公式行走选择。若 则,

30、否则,此蚂蚁不再继续行走,退回起点。,51,解的表达形式与算法的实现4/4-算法的实现,对蚁群重复以上过程,比较m只蚂蚁的装包值 并记忆具有最大装包值的蚂蚁为t。把GBAS算法中步骤3中的改为,若满足此条件则替换当前最好解为,对W上的弧进行信息素的加强,其他弧进行信息素的挥发。算法中记录了三个信息:信息素痕迹;行走路线;和问题的约束条件,以确定是否将 加入。,52,(2)每一节点的记忆信息和系数的确定-需要记忆的信息 1/3,算法中需要记忆的信息有三部分。第一部分信息是存在每个节点的路由表数据结构,由此决定的的转移概率为其中T可以看成节点i的邻域。,53,每一节点的记忆信息和系数的确定-需要记

31、忆的信息 2/3,第二部分需要记忆的信息是每个蚂蚁的记忆表中存储着的自身的历史信息,这一部分主要由算法的中的 记忆,表示蚂蚁已经行走过的节点。第三部分为问题的约束条件。在GBAS中,T集合表示满足约束条件的候选集,在背包问题的蚁群算法中由判别条件,来实现记 忆功能。,54,每一节点的记忆信息和系数的确定-系数的确定 3/3,残留信息的相对重要程度 和预见值的相对重要程度 体现了相关信息痕迹和预见度对蚂蚁决策的相对影响。Dorigo在求解TSP问题时,推荐参数的最佳设置为:。,55,(3)蚁群的规模和停止规则,一、蚁群大小 一般情况下蚁群中蚂蚁的个数不超过TSP图中节点的个数。二、终止条件 1

32、给定一个外循环的最大数目,表明已经有足够的蚂蚁工作;2 当前最优解连续K次相同而停止,其中K是一个给定的整数,表示算法已经收敛,不再需要继续;3 目标值控制规则,给定优化问题(目标最小化)的一个下界和一个误差值,当算法得到的目标值同下界之差小于给定的误差值时,算法终止。,56,(4)信息素的更改 1/6,信息素的更新分为离线和在线两种方式。离线方式(同步更新方式)的主要思想是在若干只蚂蚁完成n个城市的访问后,统一对残留信息进行更新处理。信息素的在线更新(异步更新方式)即蚂蚁每行走一步,立即回溯并且更新行走路径上的信息素。,57,信息素的更改 2/6,离线方式的信息素更新可以进一步分为单蚂蚁离线

33、更新和蚁群离线更新。蚁群离线更新方式是在蚁群中的m只蚂蚁全部完成n城市的访问(第k-1次蚁群循环)后,统一对残留信息进行更新处理。其中,为第k-1次循环后的的信息素的痕迹值。单蚂蚁离线更新是在第s只蚂蚁完成对所有n个城市的访问后,进行路径回溯,更新行走路径上的信息素,同时释放分配给它的资源。更新公式为 第s+1只蚂蚁根据 重新计算路由表。,58,信息素的更改 3/6,TSP问题中,蚁群优化算法根据信息素痕迹更新方式不同可以分为不同的算法,采用离线方式,并且时,其中W为t循环中m只蚂蚁所行走的最佳路线或第t只蚂蚁所行走的一条路径。Q为一个常数,该算法名为蚁环算法(ant-cycle algoti

34、thm),特点是行走的路径越短对应保存的信息素的值就越大。,59,信息素的更改 4/6,GBAS算法是典型的离线信息素更新方式。该算法中,蚁群中蚂蚁的先后出行顺序没有相关性,但是每次循环需要记忆m只蚂蚁的行走路径,以进行比较选择最优路径。相对而言,单蚂蚁离线更新方式记忆信息少,只需要记忆第s只蚂蚁的路径,并通过信息素更新后,释放该蚂蚁的所有记录信息。实际上这种方式等价于蚁群离线方式中只有一只蚂蚁。,60,信息素的更改 5/6,与单蚂蚁离线更新方式相比,信息量记忆更小的是信息素在线更新方式,即蚂蚁每走一步,马上回溯并且更新刚刚走过的路径上的信息素,其规则为 其中,k为蚂蚁行走的第k步。,61,信

35、息素的更改 6/6,蚁量算法(ant-quantity algorithm)的信息素更新为,Q为常量,表示i到j的距离,这样信息浓度会随城市距离的减小而加大。蚁密算法(ant-density algorithm)信息素更新为。以上三种算法中,蚁环算法效果最好,因为他用的是全局信息,而其余两种算法用的是局部信息。蚁环离线更新方法很好地保证了残留信息不至于无限积累,非最优路径会逐渐随时间推移被忘记。,62,蚁群优化算法参考书1,智能蚁群算法及应用 吴启迪 上海科技出版社从基本结构、算法特点、改进方法、突破途径、实现模式及应用模式等方面进行了论述。主要内容有蚁群算法的由来、研究成果、应用综述、算法的

36、具体描述及改进、算法的典型优化问题求解模式、算法的典型应用及拓展应用。,63,蚁群优化算法参考书2,蚁群算法及其应用 李士勇 哈工大出版社 国内首部蚁群算法的专著,系统地阐述蚁群算法的基本原理、基本蚁群算法及改进算法,蚁群算法与遗传、免疫算法的融合,自适应蚁群算法,并行蚁群算法,蚁群算法的收敛性与理论模型及其在优化问题中的应用。本书可供人工智能、计算机科学、信息科学、控制工程、管理工程、交通工程、网络工程、智能优化算法及智能自动化等领域的广大师生和科技人员学习及参考。,64,第4节 粒子群优化,粒子群优化(Particle Swarm Optimization,PSO),又称微粒群算法,是由J

37、.Kennedy和RC Eberhart等于1995年开发的一种演化 机制。粒子(particle)”是一个折衷的选择,因为既需要 将群体中的成员描述为没有质量、没有体积的,同时也需要描述它的速度和加速状态。Particle Swarm Optimization(PSO)applies to concept of social interaction to problem solving.It was developed in 1995 by James Kennedy and Russ Eberhart Kennedy,J.and Eberhart,R.(1995).“Particle Sw

38、arm Optimization”,Proceedings of the 1995 IEEE International Conference on Neural Networks,pp.1942-1948,IEEE Press.(http:/dsp.jpl.nasa.gov/members/payman/swarm/kennedy95-ijcnn.pdf),65,粒子群优化Swarm Topology,In PSO,there have been two basic topologies used in the literatureRing Topology(neighborhood of

39、3)Star Topology(global neighborhood),I4,I0,I1,I2,I3,I4,I0,I1,I2,I3,66,特点,分布式搜寻 具记忆性组件较少,容易实现 适合在连续性的范围内搜寻,67,演算法介绍,每个寻优的问题解都被想象成一只鸟,我们也称为“Particle”。所有的Particle 都有一个fitness function 以判断目前的位置之好坏,每一个Particle必须赋予记忆性,能记得所搜寻到最佳位置。每一个Particle 还有一个速度以决定飞行的距离与方向。,68,粒子群优化:The Anatomy of a Particle,A particle

40、(individual)is composed of:Three vectors:The x-vector records the current position(location)of the particle in the search space,The p-vector records the location of the best solution found so far by the particle,and The v-vector contains a gradient(direction)for which particle will travel in if undi

41、sturbed.,IkX=P=V=x_fitness=?p_fitness=?,69,粒子群优化:The Anatomy of a Particle,A particle(individual)is composed of:Two fitness values:The x-fitness records the fitness of the x-vector,andThe p-fitness records the fitness of the p-vector.,IkX=P=V=x_fitness=?p_fitness=?,70,速度更新,Vid:每一Particle在第d维之速度i:Par

42、ticle之编号d:维度w:Inertia Weightc1、c2:学习 Rand():一介于0至1的随机数Pid:每一Particle到目前为止,所出現的最佳位置Pgd:所有Particle到目前为止,所出現的最佳位置xid:每一Particle目前之所在,71,演算法流程,1.Initial 将群族做初始化,以随机的方式求出每一Particle 之初始位置与速度。2.Evaluation:依据fitness function 计算出其fitness value 以作为判断每一Particle之好坏。3.Fine the Pbest:找出每一Particle 到目前为止的搜寻过程中最佳解,这

43、个最佳解我们将之称为Pbest。4.Fine the Gbest:找出所有Particle 到目前为止所搜寻到的整体最佳解,此最佳解我们称之为Gbest。5.Update the Velocity:依据式(1)与式(2)更新每一Particle之速度与位置。6.回到步骤2.继续执行,直到获得一个令人满意的结果或符合终止条件为止。,72,粒子群优化:Swarm Search,Actually,we must adjust the v-vector before adding it to the x-vector as follows:vid=vid+1*rnd()*(pid-xid)+2*rnd

44、()*(pgd-xid);xid=xid+vid;Where i is the particle,1,2 are learning rates governing the cognition and social components Where g represents the index of the particle with the best p-fitness,and Where d is the dth dimension.,73,粒子群优化:Swarm Search,Intially the values of the velocity vectors are randomly

45、generated with the range-Vmax,Vmax where Vmax is the maximum value that can be assigned to any vid.,74,粒子群优化:Swarm Types,In paper,Kennedy,J.(1997),“The Particle Swarm:Social Adaptation of Knowledge”,Proceedings of the 1997 International Conference on Evolutionary Computation,pp.303-308,IEEE Press.Ke

46、nnedy identifies 4 types of PSO based on 1 and 2.Given:vid=vid+1*rnd()*(pid-xid)+2*rnd()*(pgd-xid);xid=xid+vid;Full Model(1,2 0)Cognition Only(1 0 and 2=0),Social Only(1=0 and 2 0)Selfless(1=0,2 0,and g i),75,粒子群优化:Related Issues,There are a number of related issues concerning PSO:Controlling veloci

47、ties(determining the best value for Vmax),Swarm Size,Neighborhood Size,Updating X and Velocity Vectors,Robust Settings for(1 and 2),An Off-The-Shelf PSOCarlisle,A.and Dozier,G.(2001).“An Off-The-Shelf PSO”,Proceedings of the 2001 Workshop on Particle Swarm Optimization,pp.1-6,Indianapolis,IN.(http:/

48、antho.huntingdon.edu/publications/Off-The-Shelf_PSO.pdf),76,粒子群优化:Controlling Velocities,When using PSO,it is possible for the magnitude of the velocities to become very large.Performance can suffer if Vmax is inappropriately set.Two methods were developed for controlling the growth of velocities:A

49、dynamically adjusted inertia factor,and A constriction coefficient.,77,粒子群优化The Inertia Factor,When the inertia factor is used,the equation for updating velocities is changed to:vid=*vid+1*rnd()*(pid-xid)+2*rnd()*(pgd-xid);Where is initialized to 1.0 and is gradually reduced over time(measured by cy

50、cles through the algorithm).,78,粒子群优化:The Constriction Coefficient,In 1999,Maurice Clerc developed a constriction Coefficient for PSO.vid=Kvid+1*rnd()*(pid-xid)+2*rnd()*(pgd-xid);Where K=2/|2-sqrt(2-4)|,=1+2,and 4.,79,粒子群优化:Swarm and Neighborhood Size,Concerning the swarm size for PSO,as with other

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 建筑/施工/环境 > 农业报告


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号