您好,欢迎来到爱站旅游。
搜索
您的当前位置:首页求解旅行商路径规划问题的改进模拟退火算法

求解旅行商路径规划问题的改进模拟退火算法

来源:爱站旅游
a叶技2017年第30卷第7期 Electronic Sci.&Tech./Ju1.15.2017 协议・算法及仿真 doi:10.16180/j.cnki.issnl007—7820.2017.07.017 求解旅行商路径规划问题的改进模拟退火算法 周 君 ,贾昆霖 (1.惠州工程技术学校教务工作部,广东惠州516001; 2.广东省惠州商贸旅游高级职业技术学校培训中心,广东惠州516000) 摘要旅行商路径规划问题(GTSP)是一个典型的NP完全问题。文中针对这一困难问题,改进了能够求解GTSP 问题的传统模拟退火算法,这样的做法回避了传统算法的一些缺点。具体而言,GTSP问题可以转化为多段映射问题,而 动态规划算法可解决这一问题,同时还大幅缩短了整个算法的运行时间。大量实验结果证明,改进的模拟退火算法能够 在更短的时间内收敛,并可得到比传统模拟退火算法质量更好的最优解。 关键词模拟退火算法;动态规划算法;旅行商路径规划问题;目标函数 TP301.6 文献标识码A 文章编号1007—7820(2017)07—062—04 中图分类号Improved Simulated Annealing Algorithm for Traveling Salesman Path Planning Problem ZHOU Jun ,JIA Kunlin (1.Academic Affairs Department,Huizhou Engineering Technology School,Huizhou 5 16001,China; 2.Training Center,Business and Tourism Advanced Vocational Technology School,Huizhou 516000,China) Abstract The traveling salesman path planning problem(GTSP)is a typical NP complete problem.In this pa— per,an improved simulated annealing algorithm is proposed to so]ve the GTSP problem.The improved algorithm over— comes some disadvantages of the traditional simulated annealing algorithm.Specifically,the GTSP problem can be transformed into a multi—segment map problem,which can be solved by the dynamic programming algorithm at a greatly shortened running time of the whole algorithm.A large number of experimental results show that the improved simulated annealing algorithm can converge in a shorter time and get better solution than the traditional simulated an— nealing algorithm. Keywords simulated annealing algorithm;dynamic programming algorithm;traveling salesman path planning problem;objective function 旅行商路径规划问题(GTSP)通常被称为旅行商 问题、旅行推销商问题或者货郎担问题,其是最基本的 路径规划问题。求解GTSP问题等价于在完全图中找 到具有最短路径的哈密顿回路,这是一个典型的组合 优化NP困难问题。研究人员已提出了诸多算法来解 决这一问题¨ J,尽管这些方法可得到近似的最优解, 但算法只能用于点较少的图,且计算时间较长。所以, 本文改进了传统模拟退火算法,该种改进的算法可以 在有限的时间内得到全局最优解。 不足,并提出了一种改进的模拟退火算法。文中GTSP 问题被转化为能够使用动态规划算法来解决的多段映 射问题。此外,为了防止在跳出局部最优解时丢掉全 局最优解,本文在该算法运行过程中增加了记忆功能, 将当前最优解记录下来。实验结果表明,与传统模拟 退火算法相比,改进后的算法具有更快的收敛速度,其 框架和全局最优解的性质也大幅提高。 1 问题描述 用图论的表示方法,GTSP问题可以被定义为: 模拟退火算法是上世纪8O年代初学界提出的求 解NP完全问题的智能算法 J,该算法可以从局部最 优解中概率性地跳出,最终得到全局最优解 J。本文 在这一传统模拟退火算法的基础上,分析了其原理与 G=(V,A)是一个加权有向图,其中V={V , ,…, } 是顶点的集合,A={( , ),i≠ , , 间有方向的线的集合 。 TSP问题是在一个加权图中找到经过所有点的哈 密顿回路的最短路径,这一最短路径的起点与终点必 须相连接。TSP问题可以被认为是GTSP问题的特例。 V}是顶点之 收稿日期:2016—12—20 作者简介:周君(1979一),男,讲师。研究方向:计算机编程。 ——www.d ̄nziiteji.oro 周 君,等:求解旅行商路径规划问题的改进模拟退火算法 协议・算法及仿真 在GTSP问题中,顶点集合 被分为m个子集合 , 且 u…Vm=V,求解也同样需要找到经过所 有的点的哈密顿回路的最短路径。若将问题求解的区 域简化为一个城市,则GTSP问题就简化成为一个TSP 问题,所以GTSP问题显然是一个NP完全问题 。 …2.2基于动态规划算法的目标函数 根据研究问题的性质,本文提出了一个两步混 合智能算法来优化被任意选择的解决方案。其基本 思想是:在第一步,使用模拟退火算法求出待处理的 , 序列。在建立最优轮廓序列时,将问题转化为动态 规划算法求解的多段图问题。最终通过多次迭代得 到最优解。 因此,图2中在计算起点s到终点t的目标函数 时,算法可分为两步。第一步是确定从第k一1级所有 的点到终点t的目标函数值。第二步是确定从第k一2 级所有的点到终点t的目标函数值。第二步需要使用 (a) (b) 图1 GTSP问题举例 GTSP问题有两种类型:第一种要求每个集合中仅 有一个点可以被访问,如图1(a)所示;第二种要求每 个集合内至少有一个点可被访问,如图1(b)所示。本 文研究的就是第一种情况。 第一步中获得的信息。算法重复迭代多次,直到得到 从起点s到终点t的最小目标函数值。 在执行过程中,该算法使用结构体PInfo来储存多 级图中某个节点的数据。其数据结构在程序中的定 义是: struct PInfo { double X,Y; double m—2改进的模拟退火算法 2.1 具体解决方案的编码设计 —cost; int mindex; 对于NP困难优化路径问题,求解时间将以指数 级的速度增长,最终时间过长而不能被解决。所以,人 } vector<PInfo>mvp; —们开始通过启发式搜索算法来寻求令人满意的结果。 为了将GTSP问题转化成为多段映射问题,每个点均 用整数来编码。 个点分别使用整数1,2,…,rt来表 示,且分别加上起点和终点。这两个点分别用整数0 每一次迭代过程中,节点的数据就会变化。而在 每轮开始迭代时,结构体Plnfo的数据中,m_cost和 n_ index这两个变量会初始化为最大和0。因此,文中的 动态规划函数被定义为 m—和n+1表示,其到相邻的点的距离定为1。一个完整 的方案可表示为(0, 1, 2,…, ,m+1),1≤ ≤n, vp[i].m—cost=min{cz +m_vp[j].m—cost}(1) m—vp[i].m—index= , < ≤n (2) ≠ ,其中, 是第 个点的号码 J。 其中, 是点群中的节点数字;c 表示节点i√的距离。 这个函数的目的就是令C +m—vp[ ].m—COS变得 最小。 将方案编码后,求解GTSP问题可被转化为多级 图的最短路径问题。图2展示了一个完整的解决方案 (0, 1, 2, 3,4),该方案有3个点群, 1=[ 10, ]、 :[ 20, 21, 22]、 3=[ 3o, 31]。在图中,数字0 表示起点,数字4表示终点t,多级图最短路径问题就 12从图2中可看出,排列顺序不同的点就表示了不 同的方案,而这些方案从起点 到终点t的最小距离 又均是不同的。所以,衡量这些方案的目标函数的定 义为 )=1/(m_vp[0].m—cost+1) (3) 是找到终点t到起点s的最短路径。在图2中,使用粗 实线画出了最短路径,在这一多级图中的每个阶段中 有且仅有一个点。 其中,m_vp[0]是被评估的方案的起点。 2.3 改进算法具体步骤 模拟退火算法中包含3个函数和两个指标:生成 新的解决方案的函数、衡量每个解决方案的函数、每轮 温度变化的函数,以及终止算法内部循环和算法外部 循环的两个指标。算法的精心设计使得模拟退火算法 表现良好。模拟退火算法可以脱离局部极大值或者极 图2 多级图举例 小值,最终找到全局最优解,主要是因该算法根据不同 WWW.dianzikej org—— 63 协议・算法及仿真 周 君,等:求解旅行商路径规划问题的改进模拟退火算法 表1 改进算法和其他算法的运行时间比较 的概率来接受新方案。然而,算法一开始运行就达到 全局收敛条件是极少的。依照某一概率来接收新产生 的解决方案 ,这种做法令原来的方案可以比在搜 索时的中间方案差。实际中,由此运行的算法通常可 接近最优解,但搜索效率比较差。因此,为了提高搜索 效率,保留最佳方案,本文改进了传统的模拟退火算 法,其具体步骤如下: 步骤1给定初始温度 ,随机生成初始方案 ,令 best= ,确定没有更好方案产生之后的最大循环次数 DIMINISHTNUM,早期终止条件AIM,马尔可夫链长 , aim=0,Bum:0,i=0; 动态规划算法是一种没有局部优化的确定性算 法,该算法所获得的路径就是最优路径,切无需要考虑 参数这一因素。其中,该算法的时间复杂度为 (n+ m),其空间复杂度为O(n),而n是算法处理的封闭轮 廓的数目。该算法的时间与空间复杂度均能完全满足 总体的性能要求。 步骤2 i=i+1,若i≥ ,转到步骤10; 步骤3调用邻域搜索算法来生成一个新的方 案 ; 步骤4计算目标函数差AE,若△E<0,则 = , nun=0,aim=0,转到步骤7; 步骤5若exp(一AE/ )>RandFloat(),则 = , 4 结束语 1j 本文提出了一种改进的模拟退火算法来求解 GTSP问题。首先,根据GTSP问题的性质,其可转化 Bum=Bum+1,转到步骤7; 步骤6 Bum=nun+1,转到步骤7; 为多段映射问题,而多段映射问题可以通过动态规划 算法来解决。通过测试标准的GTSP问题的数据,测 试结果表明:与传统的模拟退火算法相比,改进后的算 法可大幅缩短运行时间,并更容易得到最优解。尤其 是在处理规模较小的问题时,算法的效率得到了显著 改善。此外,算法的参数也会影响算法的执行效率,合 适的参数使得算法能够发挥出更好的性能。但对于大 规模问题,改进算法的效率仍有待进一步提高。 参考文献 [1] 鲜敏,郑翔.模拟退火算法优化聚类头节点的MANET服 务质量改进[J].计算机应用与软件,2015(4):326—329. 步骤7若aim=AIM,则结束算法运行,转到步 骤10; 步骤8若Bum>DIMINISHTNUM,则aim=aim+ 1,Bum=0; 步骤9若 best)≤ ),则best= ,转到步骤2 是目标函数; 步骤lO输出最终方案,结束整个算法。 其中, 是第k轮的温度,其满足这一温度下降公式 【In( “)] 止算法。 (4) 当迭代的次数为k,等于温度下降的总次数时,终 宋燕子.基于模拟退火算法的启发式算法在VRP中的应 用[D].武汉:华中师范大学,2013. 熊慧,胡小伟,刘近贞.基于混合粒子群和模拟退火算法 的聚焦性优化[J].航天医学与医学工程,2016,29(1): 34—38. 3实验仿真和分析 为进一步对提出算法进行性能分析和比较研究, 文中用C++语言来编程求解GTSP。为比较改进模 裴小兵,贾定芳.基于模拟退火算法的城市物流多目标配 送车辆路径优化研究[J].数学的实践与认知,2016(2): 105—113. 拟退火算法与其他3种算法求解GTSP问题的有效 性,本文做了大量改进算法和其他算法的实验。这里 所有的实验测试数据选取于标准GTSP问题库 ,共 屈国强.改进模拟退火算法求解煤场配煤优化问题[J]. 物流技术,2016(6):90—93. 选取了7组测试的数据,针对这7个问题,算法运行了 20次(ISA表示本文改进后的算法)。表1详细地列 出了上面所说的实验的结果,从结果中可以看出,对于 每个图来说,图中点的个数较小时,各种算法之间的运 行时间差别很小,但当图中点的个数增加,改进模拟退 火算法的表现就优于其他算法,且该算法具有更好的 全局性能。 ——任乃飞,于璐.基于混合遗传算法的协同制造系统调度研 究[J].电子科技,2016,29(6):29—33. 潘绍林,张显云,范旭亮,等.模拟退火算法的灰色模型钟 差预报[J].测绘科学,2016,41(3):23—27. 吴再新,高尚策,齐洁.求解动态车间调度问题的改进微 粒群算法[J].电子设计工程,2016,22(1):26—30. (下转第68页) WWW.dianzikeji.0rq 协议・算法及仿真 表2无功优化后的结果 张 华,等:DEPSO算法在计及UPFC设备无功优化中的应用 [3] 周玲.计及UPFC的电力系统无功优化[J].中国电机工 程学报,2008,28(4):37—41. [4] 王佳.计及UPFC电力系统无功优化研究[J].电子科技, 2015,28(9):50—53. [5]贺安坤,苗良差分进化微粒群优化算法--DEPSO[J].微 计算机信息,2006,22(3):284—286. [6] 付康.装设统一潮流控制器(UPFC)的电力系统电压稳定 性研究[D].南宁:广西大学,2009. 窘 [7] Fuerte Esquivel C R,Acha E.Unified power lfow controller: a critical comparison of Newton—Raphson UPFC algorithms 匿 in power lfow studies[J].IEE Proc—Gener Transm Distrib, 1997,144(5):437—444. [8]郭康.基于差分进化混合粒子群算法的电力系统无功优 化[J].陕西电力,2011(10):37—40. 迭代次数 [9] 丁晓群.结合模态分析的遗传算法在配电网无功规划中 的应用[J],电网技术,2006,30(17):47—50. 图4算法无功优化结果 通过对IEEE一30节点算例的仿真分析,应用在 计及UPFC的无功优化中,DEPSO算法较PSO算法能 更有效降低系统的有功网损,验证了本文模型和算法 的有效性和可行性,为计及UPFC无功优化提供了一 种方法。 参考文献 许苑.电力系统无功优化综述[J].电力系统与自动化, 2010(18):153—154. [10]蔡祯祺,黄民翔.用于风电场并网中无功电压调节的UP- FC仿真分析[J].能源工程,2010(5):29—46. [11]王继银.三目标自适应变异微粒群算法的无功优化[J]. 电子科技,2016,29(4):41—44. [12]邱晓燕,刘天琪.电力系统分析的计算机算法[M].北京: 中国电力出版社,2009. [13]邱晓燕,刘天琪.电力系统分析理论[M].2版.北京:科学 出版社,2011. [14]邱关源.电路[M].4版.北京:高等教育出版社,1999. [15]王兆安.谐波抑制和无功功率补偿[M].2版.北京:机械 工业出版社,2015. [2] 陈淮金.UPFC电力系统的潮流计算研究[J].电力系统 自动化,1996,20(3):23—27. (上接第64页) [9] 张思建,方彦军,贺瑶,等.基于模拟退火算法的AVS/RS 多批货箱入库货位优化[J].武汉大学学报:工学版, 2016,49(2):315—320. [13]孟凡超,初佃辉,李克秋,等.基于混合遗传模拟退火算法 的SaaS构件优化放置[J].软件学报,2016,27(4): 916—932. [10]刘宝友,王涛,马延龙.基于模拟退火算法的中超赛程编 排优化研究[J].河北科技大学学报,2016,37(5): 497—502. [14]杨卫波,王万良,张景玲,等.基于遗传模拟退火算法的矩 形件优化排样[J].计算机工程与应用,2016,52(7): 259—263. [11]周兰伟,陈国平,孙东阳,等.基于模拟退火算法的旋转梁 [15]李仲欣,韦灼彬,沈锦林.高效的自适应小生境遗传一模 压电分流电路优化[J].振动、测试与诊断,2016,36(2): 315—320. 拟退火混合算法[J].计算机工程与设计,2016,37(4): 10O4—1010. [12]杨放青,黄胜,王超,等.应用多目标模拟退火算法的舰船 方案优化研究[J].中国造船,2014(4):122—131. [16]Reineh G,Tspli B.A traveling slaesman problem library[J]. ORSA Journal on Computing,1991,3(4):376—384. WWIN.dii ̄nziReji Ol—q 

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- azee.cn 版权所有

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务