改进粒子群算法求解TSP问题.doc
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《改进粒子群算法求解TSP问题.doc》由会员分享,可在线阅读,更多相关《改进粒子群算法求解TSP问题.doc(31页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、【精品文档】如有侵权,请联系网站删除,仅供学习与交流改进粒子群算法求解TSP问题毕 业 论 文(设计)论文(设计)题目:改进粒子群算法求解TSP问题系 别:计算机与信息科学系 专 业:网络工程学 号:2008107407姓 名:李良良指导教师:易云飞讲师时 间:2012年6月河 池 学 院毕 业 论 文(设 计) 开 题 报 告系别:计算机与信息科学系 专业:网络工程学 号2008107407姓 名李良良论文(设计)题目改进粒子群算法求解TSP问题命题来源教师命题 学生自主命题 教师课题选题意义(不少于300字): 旅行商问题 (TSP)又名货郎担问题,是一个典型的NP难题。其数学描述非常简单
2、,但却无法找到一个确定的算法在多项式时间内求解TSP 问题,另一方面很多研究领域出现的复杂优化问题可以被抽象概括为TSP问题加以求解,因此找到能够有效解决TSP 问题的方法,在理论上和实际应用中都很有价值。本文对基本PSO算法中粒子的位置、速度以及操作进行了重新定义,使粒子群算法适合于求解TSP问题,并采用贪心算法的思想每一步都取局部最优。这样产生的初始种群全局最优值已经比较接近问题的解,因此可以节省搜索时间,提高算法收敛速度。针对粒子群算法易陷入局部最优的缺陷,引入了适合于求解TSP问题的基于球隙迁移的改进措施,克服了PSO算法易陷入局部最优的缺陷。作为一类组合优化问题的代表,TSP问题在实
3、际工程中有许多应用,如计算机联网、物流等行业中的车辆调度优化、电力系统配电网络重构、城市管道铺设优化、交通导航、电气布线、电子地图、VLSI单元布局、X射线结晶学问题等。研究综述(前人的研究现状及进展情况,不少于600字):在我国,在粒子群优化算法的研究则是刚刚起步,深入的研究和应用还很少, PSO算法的研究还有大量的研究工作要做。主要的研究方向有下面几个方面:(l)粒子群算法的改进标准粒子群算法主要适用于连续空间函数的优化问题,如何将粒子群算法应用于离散空间优化问题,特别是一类非数值优化问题,将是粒子群算法的主要研究方向。另外,充分吸引其他进化类算法的优势,以改进PSO算法存在的不足也是值得
4、研究的问题。(2)粒子群算法的理论分析到目前为止,PSO算法的分析方法还很不成熟,存在许多不完善之处。如何利用有效的数学工具对PSO算法的运行行为、收敛性以及计算复杂性进行分析也是目前的研究热点之一。(3)粒子群算法与其他进化算法的比较研究目前,进化算法的研究在理论和应用两方面都得到迅速发展,效果显著。其中研究的比较成熟的有遗传算法、蚁群算法等,而粒子群算法是一个新兴的群体智能算法,目前己成为进化算法的一个重要分支,如何从多方面比较各种算法从而得到各自的特长和不足,如何吸引其他进化类算法的优势来弥补PSO算法的不足也是当前研究的热点之一。(4)粒子群算法的应用算法研究的目的是应用,如何将PSO
5、算法应用于更多领域,同时研究应用中存在的问题也是值得关注的热点。研究的目标和主要内容(不少于400字)基本粒子群算法的速度进化方程由认识和社会两部分组成,如何实现全局搜索能力与局部搜索能力的平衡是一个重要的研究方向。PSO算法极易陷入局部极值,如何保证其在陷入局部最优时,能够及时“跳出”,继续进行全局搜索,对于提高其寻优性能有着至关重要的影响。球隙迁移算法中,发现局部极小(开采)和克服局部极小(勘探)这两个过程互不影响,并能防止其陷入已经发现的局部极小,这样就避免了不必要的重复探索,提高了性能。在解决TSP问题时,基于球隙迁移的策略克服了易陷入局部最优的缺陷,它不但能保证及时的“跳出”,同时,
6、还能有效地回避历史上已经发现的多个局部极小。初始种群的产生借鉴贪心算法(Greedy Algorithm)的思想,每一步都取局部最优。由于旅行商问题为一个循环回路,所以可以选择任意一个城市作为起始城市。采用贪心算法的思想,随机选择一个城市作为出发城市,并始终选择距离当前城市最近的城市作为下一个遍历城市,直到所有城市均被遍历后直接连接到出发城市即可。可以利用这个贪心算法得到近似最优循环序列,产生一定规模的初始种群。PSO算法在连续空间优化问题上已经取得了很好的效果,但是将其应用在TSP等离散优化问题中还是一种尝试。因此用改进的PSO算法有效的求解TSP问题,在整个组合优化领域和实际工程中都有着重
7、要影响和实际意义。拟采用的研究方法a)查找并阅读相关资料,了解基本的内容,利用需求分析文档,对整个系统有个初步的架构。b)搜寻实验用的文件文档集和研究过程中用到的各种工具软件。c)根据已有的资料形成基本的思想。d)采用MyEclipse 8.5开发工具完成整个程序的编写并在Windows上进行测试。研究工作的进度安排2011年11月29日12月15日 与指导老师沟通交流,完成毕业论文选题;2011年12月16日12月30日 搜集资料,查阅文献,完成开题报告;2012年01月01日01月08日 通过阅读大量文献了解粒子群算法的基本思想;2012年01月09日02月25日 定出参考以及详细研究的文
8、档;2012年02月26日04月25日 整理相关资料并完成概要,形成基本思想;2012年04月26日05月01日 进行编码工作;2012年05月02日05月16日 完善算法思想并对结果进行分析;2012年05月17日05月31日 总结毕业设计的整个过程,完成毕业设计论文。参考文献目录(作者、书名或论文题目、出版社或刊号、出版年月日或出版期号)1 曾建潮.微粒群算法M.北京:科学出版社,2004.2 胡劲松,郑启伦.球隙迁移算法实现全局优化J.计算机学报,2012,35(2):193-201.3 沈庆涛,张振宇.高效的求解TSP问题的近似算法J.计算机工程与应用,2008,44(35):46-4
9、9.4 牛永洁.一种新型的混合粒子群算法J.信息技术,2010,10:94-97.5 李敏,吴浪,张开碧.求解旅行商问题的几种算法的比较研究J.重庆邮电大学学报,2008,20(5):624-626.6 吴骏, 吴俊. 改进型免疫量子粒子群算法求解TSP问题J.微电子学与计算机,2011,28(8):222-224.7 熊伟清,郭举良,魏平.一种快速求解TSP问题的遗传算法J.微电子学与计算机,2004:19-22.8 张煜东,吴乐南,韦耿.智能算法求解TSP问题的比较J.计算机工程与应用,2009,45(11):11-15.9 熊伟,张江维,张火林.求解TSP问题的增强型自探索粒子群算法J.
10、华北电力大学学报,2009,36(6):69-85.10 Siqueira P H, Steiner MTA,Scheer S.A new approach to solve the traveling salesman problemJ.Neurocomputing,2007,70 (4/6):1013-1021.指导教师意见该生对于所开课题进行了较为详尽的研究,参考了许多文献,最后确定的课题具有一定的实用价值。论文是通过粒子群算法的研究,以提出一种粒子群算法的改进措施,具有较大的研究价值和应用价值。同意该课题开题。 签名: 年 月 日教研室主任意见同意指导老师意见,同意该课题开题。 签名:
11、 年 月 日目 录摘 要1关键词1引言11 粒子群优化算法的研究现状21.1粒子群算法的起源21.2粒子群算法在国内的发展22 基本粒子群算法32.1粒子群优化算法的关键术语32.2粒子群优化算法的原理32.3基本粒子群算法的流程如下:42.4粒子群优化算法的参数设置52.5 粒子群算法与其它进化算法的比较研究62.5.1进化算法62.5.2 粒子群优化算法(PSO)与遗传算法(GA)的比较72.5.2 各进化算法的优劣82.5.3 粒子群算法的缺陷82.6 小结83粒子群优化算法的改进措施83.1调整惯性权重93.2 添加收缩因子93.3引入领域算子93.4离散化处理9小结104 TSP问题
12、概述105 球隙迁移算法105.1球隙迁移算法的定义105.2球隙迁移算法的原理115.3基于球隙转移的改进措施125.4算法主要流程126改进的粒子群算法求解TSP问题136.2概念更新136.3公式更新147 实验结果与分析147.1实验结果147.2结论168 结束语16参考文献16Abstract17Keyword17致 谢17.精品文档.粒子群算法的改进及其在TSP问题中的应用网络工程专业 李良良 指导教师 易云飞摘 要 粒子群优化算法是源于对鸟群捕食行为的研究而发展的一种智能寻优算法,它通过迭代搜寻最优值,不仅能获得较高的效率而且具有简单、易于操作和通用的特性。而针对粒子群算法易陷
13、入局部最优的缺陷,本文提出了粒子群算法基于球隙迁移的改进措施。基于球隙迁移的思想,发现局部最小(开采)和克服局部最小(勘探)的过程不会相互干扰,优化效果更好。旅行商(TSP)问题是一个著名的NP完全问题,在解决TSP问题时,基于球隙迁移的改进策略不但能保证及时的“跳出”。同时,还能有效地回避历史上已经发现的多个局部极小。关键词粒子群算法;球隙迁移;全局极小;局部极小引言粒子群优化(Particle Swarm Optimization,PSO)算法最早是在1995年由美国社会心理学家James Kennedy和电气工程师Russell Eberhart共同提出的,其基本思想是受他们早期对许多鸟
14、类的群体行为进行建模与仿真研究结果的启发。粒子群优化算法(PSO)是基于群体的优化工具,粒子在解的共建过程中始终追随最优的粒子进行搜索。它采用种群的方式组织搜索,这使得它可以同时搜索空间内的多个区域,而且这种方式特别适合大规模的并行计算。旅行商问题 (Traveling Salesman Problem,简称TSP)又名货郎担问题,是一个典型的NP-hard完全问题。问题描述:给定N个城市以及两两城市之见的距离,求一条访问各个城市且仅访问一次的最短路线。虽然其数学描述非常简单,但却很难找到一个确定的算法在多项式时间内求解TSP问题,另一方面很多研究领域出现的复杂优化问题可以被抽象概括为TSP问
15、题加以求解,因此找到能够有效解决TSP问题的方法,在理论上和实际应用中都很有价值。对于TSP问题求解的算法主要有模拟退火算法( Simulated Annealing,简称SA)、蚁群算法(Ant Colony Optimization,简称ACO)、遗传算法(Genetic Algorithm,简称GA)、人工鱼群算法(Artificial Fish School Algorithm, 简称AFSA)等。本文研究了标准粒子群优化算法的算法流程、参数设置以及其存在的缺陷,并对球隙迁移算法的原理进行了分析。通过对目前几种不同类型的改进PSO算法的比较,将球隙迁移算法与粒子优化算法(PSO)相结合
16、,提出了一种新的基于球隙迁移的粒子群优化算法。最后将该算法应用于求解TSP一类离散的组合优化问题。1 粒子群优化算法的研究现状1.1 粒子群算法的起源自然界中各种生物体均具有一定的群体行为,鸟类的群集行为,如大雁飞行时可以自动排成人字形、鸽子在飞行中几乎可以同时转弯、蝙蝠在洞穴中快速飞行却可以保证互不相碰等,这些复杂的行为引起了广大研究者的普遍关注。受上述鸟群运动模型的影响,社会心理学博士 James Kennedy和电子工程学博士 Russell Eberhart在1995年提出了粒子群算法。粒子群算法是一种演化计算技术,该算法中将鸟群运动模型中的栖息地类比于所求问题解空间中可能解的位置,通
17、过个体的信息传递,导引整个群体向可能解的方向移动,在求解过程中逐步增加发现较好的解的可能性。群体中的鸟被抽象为没有质量和体积的“粒子”,通过这些“粒子”间的相互协作和信息共享,使其运动速度受到自身和群体的历史运动状态信息的影响,以自身和群体的历史最优位置来对微粒当前的运动方向和运动速度加以影响,较好的协调微粒本身群体运动之间的关系,以利于群体在复杂的解空间中进行寻优操作。1.2 粒子群算法在国内的发展在我国,粒子群优化算法的研究刚刚起步,深入的研究和应用还很少。主要的研究方向有下面几个方面:(l)粒子群算法的改进标准粒子群算法主要适用于连续空间函数的优化问题,如何将粒子群算法应用于离散空间优化
18、问题,特别是一类非数值优化问题,将是粒子群算法的主要研究方向。另外,充分吸引其他进化类算法的优势,以改进PSO算法存在的不足也是值得研究的问题。(2)粒子群算法的理论分析到目前为止,PSO算法的分析方法还不成熟,存在许多不完善之处。如何利用有效的数学工具对PSO算法的运行行为、收敛性以及计算复杂性进行分析也是研究热点之一。(3)粒子群算法与其他进化算法的比较研究目前,进化算法的研究在理论和应用两方面都得到迅速发展,效果显著。其中研究的比较成熟的有遗传算法、蚁群算法等,而粒子群算法是一个新兴的群体智能算法,目前己成为进化算法的一个重要分支,如何从多方面比较各种算法从而得到各自的特长和不足,如何吸
19、引其他进化类算法的优势来弥补PSO算法的不足也是当前研究的热点之一。(4)粒子群算法的应用算法研究的目的是应用,如何将PSO算法应用于更多领域,同时研究应用中存在的问题也是值得关注的热点。目前的发展状况表明,通过对粒子群优化算法进行深入研究,与其它进化算法进行比较,发现其缺陷所在并针对其缺陷提出有效的改进方法是研究的重要方向之一。本文针对粒子群优化算法易陷入局部最优的缺陷,提出了基于球隙迁移的改进措施。基于球隙迁移的思想,“开采”和“勘探”的过程不会相互干扰,这种对粒子群优化算法的改进,目的在于提高算法搜索全局最优解的能力,避免其陷入局部最优解,以获得更高性能的PSO算法。2 基本粒子群算法2
20、.1 粒子群优化算法的关键术语表2-1 描述 PSO 的关键术语术 语关键术语含义粒 子群内的单独个体位 置用来表示问题解的一个组的 n 维坐标群所有粒子的集合适应值用来表示给定解的优劣的数目(由解空间中的位置表示)局部最佳位置为具体组织返回的最优适应值参数空间中的位置全局最佳位置为整个群体返回的最优适应值参数空间中的位置最大速度给定方向上的最大允许速度2.2 粒子群优化算法的原理粒子群算法通过种群中个体间的协作与竞争,实现在搜索空间内寻找最优解。算法首先在搜索空间内随机初始化一群粒子,每个粒子就代表该空间内的一个可行解,对应于目标函数它就有了相应的适应度值。寻优的过程中由速度决定粒子移动的方
21、向和距离,速度除了要借鉴粒子自身曾经到达过的最好位置外,还需借鉴种群曾经到达过的最好位置;这里就用个体极值和全局极值来分别代表它们曾经到达过的最好位置。我们可以用数学形式描述整个过程,设在一个搜索空间内有 m 个粒子,搜索空间的维数为d,即表示粒子的维数也为 d。粒子的位置向量表示为:(,),i=1,2,m;粒子的速度向量表示为:(,),i=1,2,m;粒子搜索到的最优位置:(或 )(,),称为个体极值;整个粒子群搜索到的最优位置:(或 )(,),称为全局极值,因为是整个粒子群的最优位置,因此上述 PSO 算法也称为全局版 PSO。在找到这两个最优值时,粒子根据如下的公式来更新自己的速度和位置
22、: = wrand()()rand()() (2.1) = (2.2)其中 w 是非负数,称为惯性权值;, 是非负常数,称为加速因子,根据经验通常2;是粒子的速度,i=1,2,m ,-,,是常数,由用户设定用来限制粒子的速度;和 如前定义,分别是个体极值和全局极值;rand()是介于(0,1)之间的随机数。 :目前搜索到的点 :改进后的搜索点 :当前速度 :改进后的速度 :基于个体极值的速度 :基于全局极值的速度图 2-1 位置向量、速度向量示意图2.3 基本粒子群算法的流程如下:Step1:依照初始化过程,对微粒群的随机位置和速度进行初始设定; Step2:计算每个微粒的适应值;Step3:
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 改进 粒子 算法 求解 TSP 问题
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内