基本蚁群算法及其改进
- 格式:pdf
- 大小:247.46 KB
- 文档页数:5
蚁群算法的应用与改进作者:宗泽宏来源:《电子技术与软件工程》2017年第01期蚁群算法(ACA)作为一种仿生进化算法,现多应用于优化领域。
它是通过对自然界蚂蚁的寻径方式进行仿真分析之后而获得一种随机搜索方法,该方法可用于处理组合优化问题。
在本文,在对该算法的基本原理进行介绍之后,对数学模型的构建以及算法的进一步优化进行阐释,最后对其应用前景予以预测。
【关键词】蚁群算法仿生进化随机搜索1 引言在信息量不断扩大的今天,数据挖掘技术所具有的优良性能开始凸现。
数据挖掘技术的改进与优化有利于帮助我们从大规模数据中筛选出有用的信息与应用模式。
对于数据挖掘技术而言,探寻一种更高效的算法是改进与优化此技术的核心。
1991年,意大利著名研究学者M.Dorigo率先提出了一种新型仿生算法ACA,也就是本文所研究的蚁群算法。
在对蚂蚁的一系列行为进行深入研究之后提出了其基本原理并构建了相应的数学模型——蚁群算法,之后将其用于获得旅行商问题(TSP)的解释。
2 蚁群算法的原理ACA是通过深入研究蚂蚁行为而形成的一种自然算法。
该算法最突出的特征是蚂蚁会通过“信息素” (pheromone)和其他蚂蚁保持间接异步联系。
蚂蚁在行动的过程中,会在其走过的路上残留下一些信息素,这些信息素能够被同群的蚂蚁伙伴所感知,并且会对蚂蚁行为产生影响。
即在相同时间内,离食物愈近的路径会被更多的蚂蚁选择,所留下的信息素也会愈来愈浓,后期蚂蚁选择此路径的概率便会更大。
该过程会持续迭代,一直持续到所有蚂蚁都选择了较短路线。
阿根廷蚂蚁在开始觅食时就会自动分泌并残留费洛蒙(pheromone)痕迹。
实验者准备了两个大槽,其中一个放入阿根廷蚁群,另外一个放入食物。
之后,在两个槽之间搭建了一个小桥。
实验者们在这座桥上进行了特别设计,即在桥的跨距1/4的地方,划分为两条路,尽管两条路都能够达到食物槽,不过其路径距离不同,其中一条路大约是另一条路的2倍。
对此,蚂蚁们会做出什么样的选择呢?就像预期的那样,蚂蚁在非常短的时间内就明确了最佳路径。
蚁群算法的改进的开题报告
一、选题背景
神经网络、遗传算法等优化算法已经得到广泛应用,但在解决一些复杂问题的时候,应用这些算法会遇到很多问题,如数据量太大、模型复杂度较高等因素,导致计算时间过长,甚至于无法运行。
为了解决这些难题,人们开始考虑其他不同的优化算法,其中蚁群算法就是其中之一。
二、选题意义
蚁群算法源于观察蚂蚁寻食行为而来,其能够在复杂的问题中,寻找最优解。
对于一些无法使用其他优化算法处理的问题,蚁群算法是一种很好的选择,因为它具有较好的稳定性和鲁棒性。
此外,蚁群算法还可以模拟社会规范和行为,为社会计算和社会仿真提供参考。
三、研究内容
本文主要从以下两个方面入手,探究改进蚁群算法。
3.1 参数调整
蚁群算法中,有很多参数需要设置。
针对这些参数的选择并没有一个统一的标准,不同问题需采取不同的参数选取方式。
因此,通过对不同问题的测试和实验,本文将寻找到一种较为科学和稳定和蚁群算法参数选择的方法,以达到更佳的优化效果。
3.2 算法优化
蚁群算法虽然可以用于优化问题,但其运行速度并不是特别理想,在大规模问题求解中容易产生局部最优或收敛缓慢等问题。
因此,本文将对蚁群算法进行优化,减少其不足之处,并根据求解问题的不同,对蚁群算法进行特定的优化。
四、研究目标
本文旨在通过对蚁群算法参数调整和算法优化,提高蚁群算法的求解精度和速度,为更多科学家和工程师提供更佳的优化方法和算法,提高复杂问题求解的速度效率和精准度,为实际应用领域提供一种新的思路和参考。
c law enforcement. Therefore, c congestion was ciency of the improved algorithm with the Dijkstra algorithm. Thus, it could simulate the optimal driving path with better performance, which was targeted and innovative.关键词:蚁群算法;实际路况;最优路径Key words :ant colony optimization; actual road conditions; optimal path文/张俊豪蚁群算法在最优路径选择中的改进及应用0 引言在国务院发布的《国家中长期科学和技术发展规划纲要(2006-2020年)》中,将交通拥堵问题列为发展现代综合交通体系亟待解决的“三大热点问题”之一。
智能交通系统作为“互联网+交通”的产物,利用先进的科学技术对车、路、人、物进行统一的管控、调配,成为了当下各国缓解交通拥堵的一个重要途径。
路径寻优是智能交通系统的一个核心研究内容,可以有效的提升交通运输效率,减少事故发生频率,降低对城市空气的污染以及提升交通警察的执法效率等。
最著名的路径规划算法是Dijkstra算法和Floyd算法,Dijkstra算法能够在有向加权网络中计算得到某一节点到其他任何节点的最短路径;Floyd算法也称查点法,该算法和Dijkstra算法相似,主要利用的是动态规划思想,寻找加权图中多源节点的最短路径。
近些年,最优路径的研究主要集中以下几个方面:(1)基于A*算法的路径寻优。
A*算法作为一种重要的路径寻优算法,其在诸多领域内都得到了应用。
随着科技的发展,A*算法主要运用于人工智能领域,特别是游戏行业,在游戏中,A*算法旨在找到一条代价(燃料、时间、距离、装备、金钱等)最小化的路径,A*算法通过启发式函数引导自己,具体的搜索过程由函数值来决定。
蚁群算法及其连续优化算法初析蚁群算法是近二十年来提出的一种新的进化计算方法。
它来源于蚂蚁群体的自然行为,是基于分布式的智能体行为的模拟。
蚁群算法是一种有效的优化算法,有较强的针对难度和复杂性相对较高的优化问题的能力。
它模拟了自然界的蚂蚁群体在通过一个自然环境的过程,探索不同的路径到达最终的目标,并在多次探索中改进最优路径。
本文旨在介绍蚁群算法及其连续优化算法,首先介绍蚁群算法的基本原理,其次介绍蚁群算法的典型应用,然后介绍蚁群算法的连续优化算法,最后对蚁群算法的连续优化算法进行分析和总结。
一、蚁群算法基本原理蚁群算法是一种基于自然行为的多智能体优化算法,它以蚂蚁群体在自然环境中迁徙的路径搜索行作为分布式解决方案优化问题的模型。
蚁群算法中,多只虚拟蚂蚁在函数空间中根据启发式搜索规则移动,并通过沿着有利于优化结果的路径累积经验值来搜索最优解。
当蚂蚁到达目标位置时,以其获得的经验值作为最终的结果来衡量其成功率,这个经验值反映了蚂蚁在搜索过程中的工作能力。
由于蚂蚁只能在实际的解决问题的过程中即时调整路径的方式,没有可以将问题的确定性解决方案视为一个整体,因此蚁群算法实现较强的问题适应力,尤其是在解决复杂性和难度较高的优化问题时,其有效性更为突出。
二、蚁群算法的典型应用蚁群算法通常被用于解决各类优化问题,例如旅行商问题(TSP)、最大团和克罗内克问题(KCLP)、粒子群算法(PSO)、元胞自动机(CA)、模拟退火(SA)、优化网络法(AN)和遗传算法(GA)等。
例如,解决TSP问题时,蚁群算法可以结合最近邻搜索和模拟退火算法,以及反向搜索等技术,对问题中计算最优路径产生良好的优化结果。
克罗内克问题(KCLP)是一类无约束优化问题,常用于企业中的机器定位、排序等任务的优化设计,其优化的重要性显而易见。
因此,蚁群算法也可用于解决KCLP问题,对复杂的KCLP问题产生有效的优化结果。
三、蚁群算法的连续优化算法蚁群算法的连续优化算法通常使用多智能体进化技术,将解决问题的启发式搜索转化为一种连续优化算法。
蚁群算法的改进与实现作者:何巧亮指导老师:吴超云摘要近年来蚁群算法的研究有了很大的进展,本文介绍了一种基于信息素更新的蚁群算法—最优-最差蚂蚁系统.该算法通过对局部信息素、全局信息素更新的改进,以及对最优解进行更大限度的增强和对最差解的削弱,使得属于最优路径的边与属于最差路径的边之间的信息素量差异进一步增大,从而使得蚁群的搜索行为更集中于最优解的附近.最后通过仿真实验,证明了改进算法可以得到最优解,且收敛速度比一般的蚁群算法更快.关键词蚁群算法TSP信息素1 引言蚁群算法(Ant Colony Algorithm)是通过对自然界中真实的蚁群集体行为的研究而提出的一种基于种群的模拟进化算法.该算法属于随机搜索算法,由意大利学者M.Dorigo等[1]首先提出.该算法充分利用了蚁群搜索食物的过程来求解TSP,为了区别于真实蚂蚁群体系统,称该算法为“人工蚁群算法”.用蚁群方法求解NP-complete问题如TSP问题[2]、分配问题以及job-shop调度问题等,取得了较好的试验结果.蚁群算法的近10年来的研究表明:蚁群算法用于解决组合优化问题时具有很强的发现解的能力,且具有分布式计算、易于与其它方法结合、鲁棒性强等优点,在动态环境下表现出高度的灵活性和健壮性.除了业已得到公认的遗传算法、模拟退火算法、禁忌搜索算法、神经网络算法等热门进化类方法,新加入的蚁群算法也开始崭露头角,为复杂困难的系统优化问题提供了新的求解方法.尽管一些思想尚处于萌芽时期,但人们已隐隐约约认识到,人类诞生于大自然,解决问题的灵感似乎也应该来自于大自然.这种由欧洲学者提出并加以改进的新颖系统优化思想,正在吸引着越来越多的学者的关注和研究,应用范围也开始遍及到许多科学技术和工程领域.蚁群算法在运算过程中,蚁群的转移是由各条路径上留下的信息量强度和城市之间的距离来引导的.蚁群运动的路径总是趋近于信息量最大的路径.通过对蚁群以及蚁群算法的研究表明,不论是真实蚁群还是人工蚁群系统,通常情况下,信息量最强的路径与所需要的最优路径比较接近.然而,信息量最强的路径不是所需要最优路径的情况仍然存在,而且在人工蚁群系统中,这种现象经常出现.这是由于在人工蚁群系统中,路径上的初始信息量是相同的,蚁群创建的第一条路径所获得的信息主要是城市之间的距离信息,这时蚁群算法等价于贪婪算法.第一次循环中蚁群在所经过的路径上留下的信息不一定能反映出最优路径的方向,特别是蚁群中个体数目较少或者所计算的路径组合较多时,就更不能保证蚁群创建的第一条路径能引导蚁群走向全局最优路径.第一次循环后,蚁群留下的信息会因为正反馈作用使得这条路径不是最优的路径,而且可能使离最优路径相差很远的路径上的信息得到不应有的增强,从而阻碍以后的蚂蚁发现更好的全局最优路径.不仅是第一次循环所建立的路径可能对蚁群产生误导,任何一次循环,只要这次循环所利用的信息较平均地分布在各个方向上,这次循环所释放的信息素就可能会对以后蚁群的决策产生误导.因此蚁群所找出的解需要通过一定的方法来增强,使蚁群所释放的信息素尽可能地不对以后的蚁群产生误导.同时,蚁群算法存在搜索时间长、易于停滞的缺点.近年来的研究表明,在解的质量和最优解的距离之间存在着一定的关系.因此将搜索集中于搜索过程中所找出的最优解的周围,是这些改进算法提高算法性能的基本着重点.2 基本蚁群算法系统模型基本蚁群算法系统是我们研究改进的蚁群算法的基础,在近年的研究中起着极其重要的作用,下面我们将引入其模型以及相关改进算法的说明.2.1 TSP 问题下的基本蚁群算法]3[Ant System 最先用于求解旅行商问题(TSP),下面就以TSP 问题为例来说明Ant System.设m 为蚁群数量;ij d 为城市i ,j 之间的距离;)(t τ为t 时刻连接城市i 和j 的路径(i,j)上的残留信息量,初始时刻各路径上信息量相等,设C =)0(τ(C 为常数);η表示城市i 转移到城市j 的期望程度,可根据某种启发式算法具体确定,在TSP 问题中一般取ij ij d l /=η.蚂蚁k(k=1,2,…,m)根据各条路径上的信息量决定转移方向,t 时刻蚂蚁k 从城市i 向城市j转移的概率)(t P kij 计算式为()()()0ij ij k ijis is t t P t otherwiseαβαβτητη⎧⨯⎪=⨯⎨⎪⎩∑ (2.1) 式中,j ∈allowed k ,s ∈allowed k ,allowed k ={0,1,…,n-1}-tabu k 表示蚂蚁k 下一步允许选择的城市.与自然蚁群系统不同之处在于人工蚁群系统具有一定的记忆力, tabu k(k=1,2,…,m )用于记录蚂蚁k 所走过的城市,集合tabu k 随着进化过程进行动态调整.人工蚁群保留了自然蚁群信息素挥发特点,随着时间的推移,以前留下的信息逐渐消逝,参数ρ (10<≤ρ)表示信息素的持久性,1-ρ则表示信息素的衰减度.在每只蚂蚁完成对所有城市(n 个)的访问后(即一次循环结束) ,各路径的信息素量根据式(2.2) ,式(2.3) 进行调整.ij ij ij t n t τρτρτ∆-+=+)1()(.)( (2.2)∑=∆=∆mk kijij 1ττ (2.3) 在(2.3)式中,kij τ∆表示第k 只蚂蚁在本次循环中留在路径(i ,j)上的信息素量,ij τ∆表示本次循环中路径(i ,j)上的信息素增量. 否则 )时刻经过路径(只蚂蚁在若第⎪⎩⎪⎨⎧+=∆ 0,1 j i t k L Qk kij τ (2.4) 在(2.4)式中, Q 是1 个常数, 表示蚂蚁所留的信息素量,k L 表示第k 只蚂蚁在本次循环中所走路径的长度.在初始时刻,。
第!卷第"期北华大学学报(自然科学版)#$%&!’$&"())*年+(月,-./’01-23456.0.’5#4/7589(’:;<=:%7>?@A >@)!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!B @>&())*文章编号:+))C D *E (((())*))"D )!F (D )G 基本蚁群算法及其改进孔令军+,张兴华(,陈建国G(!"北华大学教育技术中心,吉林吉林!#$%$!;$"北华大学电气信息工程学院,吉林吉林!#$%$!;#"北华大学后勤服务总公司,吉林吉林!#$%$!)摘要:给出了群体智能的一个分支———蚁群算法的一个改进算法,充分利用了算法的并行特点,提高了算法的效率&关键词:蚁群算法;信息矩阵;组合优化中图分类号:8H G )+&"文献标识码:0收稿日期:())*D )*D +F 作者简介:孔令军(+C "F I ),男,工程师,主要从事计算机应用研究&近年来,计算机网络得到了飞速的发展,网络已成为社会生活不可缺少的部分&同时,人们对网络信息传输的质量和效率的要求也越来越高&为了进一步提高网络的效率,更多新算法被引入这个领域,蚁群算法就是其中之一&!初期的蚁群算法基本的蚁群算法07可以简单表述如下:在)时刻进行初始化过程,蚂蚁放置在不同的城市,每一条边都有一个初始外激素强度值!&’())"每一只蚂蚁禁忌表的第一个元素置为它的开始城市"然后,每一只蚂蚁从城市&移动到城市’,依据两个变量的概率函数选择移动城市(包括参数"和#,见公式(+"*))"在(次循环后,所有蚂蚁都完成了一次周游,同时他们的禁忌表将满,这时,计算每一只蚂蚁)的路径长度*),!!)&’依据公式(+"G )更新"而且,保存由蚂蚁找到的最短路径(即J ?A *),)++,…,,),置空所有禁忌表"重复这一过程直到周游计数器达到最大(用户定义)周游数J :K -.,或者所有蚂蚁都走同一路线"后一种情况被称为停滞状态"如果算法在-.次循环后结束,蚂蚁算法的复杂度为/(-.·((·,)"信息素更新公式:!&’(01()+$·!&’(0)1!!&’,(+"+)其中,$是一个参数,+2$表示在时刻0和01(之间外激素的蒸发,!!&’+",)++!!)&’,(+"()!!)&’是单位长度上在时刻0和01(之间第)只蚂蚁在边3(&,’)留下的外激素的数量,其中!!)&’+4,*)如果在时刻0和01(之间第)只蚂蚁使用边3(&,’),),其他#$%"(+"G)4是一个常数,*)是第)只蚂蚁周游的路程长度&第)只蚂蚁从城市&到城市’的跃迁概率为5)&’(0)+[!&’(0)]"[%&’]#")&&)[!&)(0)]"[%&)]#,’&&);),’’&)#$%"(+"G)其中&)+{-2;:L <)},-为一组城市,;:L <)表示第)只蚂蚁的禁忌表,"和#都是控制外激素与可见度的相对重要性的参数!跃迁概率是可见度和"时刻外激素强度的权衡!综合以上所述,图"给出用基本蚁群算法原理解决路由选择优化问题的流程图!图!基本蚁群算法解决问题流程"#$%!"&’(’)*+,#-+./-’&’.01基本蚁群算法的不足之处从上面针对路由选择优化问题的分析可以看出,虽然蚁群算法已经被证明是一种有效的解决组合优化问题的方法,但是由于问世的时间比较短,还存在如下不足:(")限于局部最优解!从算法解的性质而言,蚁群算法也是在寻找一个比较好的局部最优解,而不是强求是全局最优解!(#)工作过程的中间停滞问题!和算法开始时收敛速度快一样,在算法工作过程当中,迭代到一定次数后,蚂蚁也可能在某个或某些局部最优解的邻域附近发生停滞!($)较长的搜索时间!尽管和其他算法相比,蚁群算法在迭代次数和解的质量上都有一定的优势,但对于目前计算机网络的实际情况,还是需要较长的搜索时间!虽然计算机计算速度的提高和蚁群算法的并行性在一定程度上可以缓解这一问题,但是对于大规模复杂的计算机网络,这还是一个很大的障碍!2加强信息利用率的蚁群算法下面从实际应用的角度提出一个改进的算法———加强信息利用率的蚁群算法,其主要改进思想是蚂蚁在网络图中转移的同时在信息矩阵中转移,让寻找不同路径的蚂蚁可以协同工作!根据这个思想建立了新的信息矩阵(略),使蚂蚁遗留下的信息可以对多次工作产生影响!这充分利用了算法的并行特点,减少了算法的循环次数和计算时间,提高了算法在解决这一问题时的效率!下面通过仿真结果进行分析!图1建立信息矩阵流程图2路径优化情况"#$%1"&’(’)3’45&#.$’)#.)’63+/#’.3+/6#7"#$%289+6/’)’:/#3#;#.$6’</5$%&第’期孔令军,等:基本蚁群算法及其改进图!网络模型拓扑连接图"基本蚁群算法仿真结果#$%&!’()(*(%$+,**$-.(/-012(3.4(50*#$%&"6$47*,1$(-3087*1(/9,8$+,-1+(*(-:图!是系统的仿真结果即路径优化结果,横坐标代表循环次数,纵坐标代表蚂蚁经过节点的数目"仿真过程中,初始信息量定为#"$%,衰减系数定为#"&%,循环次数为’#次"和图%基本蚁群算法基于图’的仿真结果相比,可以看出,引入了改进思想后,算法的性能有了比较明显的改善,一般在(%!!#次循环后就可以稳定在最优路径上"在用基本算法进行仿真时,干扰路径较多的路径很容易停滞在不是最优的结果上,在改进算法中,一样很快达到了最优"!结论蚁群算法是近年新出现的一种从群体智能思想演变而来的新算法,在解决大规模组合优化问题上显示了强大的实力"本文将蚁群算法引入路由选择优化问题,并做了如下的研究探索:蚁群算法作为一种新兴的群体智能算法,在应用方面有比较突出的成绩,但研究者仅局限于仿真试验和思想的引入;从理论的角度详细的论证了蚁群算法解决此问题的可行性,并结合算法工作的过程,分析了基本蚁群算法的特点,提出了改进的方向;为了改善基本蚁群算法的不足,提出了一种针对解决路由选择优化问题的改进蚁群算法———加强信息利用率的蚁群算法"参考文献:[(]谭跃进,陈英武,易进先"系统工程原理[)]"长沙:国防科技大学出版社,(&&&"*+,-./01,,23/,-1,45.,-161,71+,"*3/*3/89:8;<:=>/?@,41,//91,4[)]"23+,4=3+:A +>18,+B C /;/,D /*/D 3,8B 84:E .F B 1D +>18,,(&&&"[!]*38?+=G ")+.;/9"H E 技术基础———编址和路由[)]"北京:机械工业出版社,!###"*38?+=G ")+.;/9"I +=1D*3/89:8;H E*/D 3,8B 84:———G J J 9/==+,JG D D /==[)]"I /101,4:)/D 3+,1D +B H ,J .=>9:E.F B 1D +>18,,!###"[K ]胡适耕,施保昌"最优化原理[)]"武汉:华中理工大学出版社,!###"L .<314/,4,<31I +8D 3+,4"*3/*3/89:8;M N >1?1O +>18,[)]"P .3+,:E .F B 1D +>18,8;)1J J B /231,+Q ,1R /9=1>:8;*/D 3,8B 84:,!###";,8$+<-1=3(7)(/<*%(3$1>4,-5?18?4)3(@040-1!"#$%&’()*+’(,,-.#$/&’()0+1!,2-3#4&1’)(+5K ((!"#$%&’()*+,(--./*’/0)12/(3$&4*(5/06(’7,8(-(*(K !#!(,.3(*&;!!"-/%’0(%9*1)0:&’()*"*;(*//0(*;.)--/;/)12/(3$&4*(5/06(’7,8(-(*(K !#!(,.3(*&;K !+/05(%/.):<&*7)12/(3$&4*(5/06(’7,8(-(*(K !#!(,.3(*&).67891:8:GF 9+,D 38;D 8B 8,:1,>/B B 14/,D /———1?N 98R /?/,>?/>38J 8;+,>498.N 8;+B 4891>3?,F +=1D +,>498.N8;+B 4891>3?1=1,>98J .D /J +,J +B 4891>3?=/;;/D >1=1?N 98R /J 8F R 18.=B :"!;<=59>7:G ,>D 8B 8,:+B 4891>3?;H ,;89?+>18,?+>917;28?F 1,+>891+B 8N >1?1O +>18,【责任编辑:吕洪斌】’$%北华大学学报(自然科学版)第%卷基本蚁群算法及其改进作者:孔令军, 张兴华, 陈建国作者单位:孔令军(北华大学,教育技术中心,吉林,吉林,132021), 张兴华(北华大学,电气信息工程学院,吉林,吉林,132021), 陈建国(北华大学,后勤服务总公司,吉林,吉林,132021)刊名:北华大学学报(自然科学版)英文刊名:JOURNAL OF BEIHUA UNIVERSITY(NATURAL SCIENCE)年,卷(期):2004,5(6)被引用次数:6次1.谭跃进.陈英武.易进先系统工程原理 19992.Thomas A Maufer IP技术基础--编址和路由 20003.胡适耕.施保昌最优化原理 20001.学位论文李德华配电网络重构的改进模糊遗传算法研究2009在配电网优化的各项措施中,通过网络重构可以在不增加投资的基础上,充分发挥现有配电系统的作用,提高供电的经济性、可靠性和优质性,具有巨大的经济效益和社会效益。