蚁群优化算法及其理论进展
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
蚁群优化算法及其理论进展
摘要:蚁群优化算法作为一种新的智能计算模式,近年来在理论研究上取得了丰硕成果。
本文主要阐述蚁群优化算法的研究成果,论述了算法在离散域、连续域问题上的理论进展,然后对收敛性研究做了介绍。
最后,阐述了蚁群优化算法的发展趋势。
关键词:蚁群算法离散域连续域收敛性
中图分类号:tp301.6 文献标识码:a 文章编
号:1674-098x(2012)04(a)-0032-02
1 引言
意大利学者dorigo[1]等人根据真实蚂蚁觅食行为,提出了蚁群优化算法的(aco)最早形式—蚂蚁系统(as),并应用在tsp旅行商问题中。
该算法采用分布式并行计算机制,易与其他方法结合,具有较强的鲁棒性。
as算法提出之后,其应用范围逐渐广泛,已经由单一的tsp领域渗透到了多个应用领域[2],算法本身也不断完善和改进,形成了一系列改进aco算法。
2 蚁群算法理论研究
2.1 基本蚂蚁算法
与真实蚂蚁觅食行为类似,基本蚁群算法主要包括路径选择和信息素更新两个步骤。
以蚁群算法求解tsp问题为例[1]:tsp问题可表述成,旅行商走完n个城市有多种走法,每周游完所有城市可得长度为i的路径,它们构成解的集合。
而每个解是依次走过n个城市的路径距离构成的集合,可表示
设是在第g次周游中城市i上的蚂蚁数。
在算法周游过程中,每只蚂蚁根据概率转换规则生成一个有n步过程的行动路线,整个算法的周游过程以g为刻度,。
其中是预先设定的算法最大周游次数,当所有蚂蚁移动一次后,周游次数计数器加1。
经过次周游,基本可找到一条最短路径。
设,np为算法中总蚂蚁数。
基本步骤为:算法开始时,每条路径上初始信息素设置为常数,并对每只蚂蚁设置随机起始城市。
蚂蚁移动过程中,从城市i选择移动到城市j主要是根据概率启发公式(1)来完成,每次选择的城市都是从可选城市列表中取出。
(1)
其中为启发优先系数且。
可以改变信息素与启发优先系数的相对重要性。
如果则最近的城市容易被选择,这类似经典的随机贪婪算法。
如果则只有信息素放大机制在独自工作,这将导致算法迅速收敛于一个可能是非最优的解。
为满足一只蚂蚁可以旅行n个不同城市,赋给每只蚂蚁一个数据结构,称禁忌表(tabu表)即tabu表与的集合为整个城市集合。
tabu 表存储本次周游中已经走过的城市,禁止本只蚂蚁在本次周游中再次访问已访问的城市。
本周游结束后,tabu表置空,释放蚂蚁再次循环。
假设是在g+1次周游时信息素值。
在基本蚂蚁算法中,通过应用信息素更新来提高蚂蚁构建解的质量,以全面提高算法性能。
而其中ρ是挥发系数,即信息素随着时间的推移是逐渐挥发的;
是第k只蚂蚁在g到g+1次周游过程中放置在路径上的信息素增量。
2.2 改进蚂蚁算法
不可避免蚁群算法也有其明显的缺陷,测试结果证明,基本as算法要次于其它已经存在的优化算法,如计算量较大,需要较长的搜
索时间,易陷入局部最优解等。
为此,许多学者开发了一系列改进aco算法。
对as较早的改进是eas[3]算法,其对信息素的更新规则进行了改进,信息素更新形式为:
(3)
在eas算法中,定义为用于更新的解的集合,由每代生成的解(称为)和目前找到的最好的解(称为)组成。
为解ψ的权值,当,解的权值定义为,只有解的权值比较大,为。
称为品质函数,。
为解的集合φ中的两个不同的解。
acs算法[4]与原始as有多方面不同:在时,acs与as的转化规则是一致的。
当时,其转换规则就来源于与问题相关的知识。
q是均匀分布在之间的随机变量,是一个可调参数;acs算法把信息素更新分为全局更新和局部更新。
全局更新仅应用中,acs只更新属于最好路径的各条边的信息素值;在局部搜索中,每次构造解后,对信息素应用如下方式进行信息素更新。
其中为常数,满足。
这种方法的优点是有利于发现更多的潜在最优解,从而提高算法的搜索质量。
mmas算法[5]是aco系列中最成功的改进之一,特征如下:算法开始时,通常多使用局部更新规则。
算法运行时,更多使用全局更新规则。
在mmas中只有每次迭代后一只蚂蚁的信息素更新,这只蚂蚁可以是当前迭代中最好的解或截止当前的最好解解;为避免搜索停滞,对信息素设置一定的范围,初始信息素设置为,可以在开始时较快
的搜索到较好解。
此外,一些学者针对基本蚁群算法在求解大规模旅行商问题进易陷入停滞的问题,提出一种基于信息熵调整的自适应蚁群算法。
该算法通过优化过程中种群的信息熵来衡量演化的程度,自适应地调整路径选择策略和信息素更新策略[6]。
随着人们对aco研究的不断深入,dorigo等人对各种版本的蚁群算法进行总结,提出了蚁群
优化元启发式(aco-mh)这一求解复杂问题的通用框架[7],aco-mh
为aco的理论研究和算法设计提供了技术上的保障。
2.3 连续域内算法改进
在离散优化问题中,蚁群算法的信息量留存,增减和最优解的选取,都通过离散的点状分布方式进行的。
因此,连续蚁群算法与离散蚁群算法至少应有信息量留存方式,蚁群在解空间中的寻优方式和行进策略等方面的不同。
bilchev等最早将蚁群算法运用于连续优化问题,把整个搜索空
间分成多个搜索域,使用遗传算法对解空间进行全局搜索,并利用
蚁群算法对所得结果进行局部搜索。
但是算法在运行过程中出现蚂蚁对同一个区域进行多次搜索的情况,算法效率较低。
倪世宏等[8]在实现了连续蚁群算法的基础上,针对容易陷入局部最优解的问题,对连续蚁群算法的全局转移概率进行改进,提出一种动态蚁群算法,根据动态全局转移概率分配蚂蚁个数,进行不同阶段的搜索。
但在如何将蚁群优化思想有效地应用到连续空间优化中还没有形成一
致的看法。
许多算法就结果的鲁棒性、算法的推广性来说,都有待进一步验证。
3 收敛性研究
蚁群算法理论发展的“瓶颈”问题之一是算法的收敛性,研究算法的收敛性不仅可以深入理解算法机理,还可以对改进算法、编写算法程序有重要意义。
在aco的收敛性方面,gutjahr作了开创性的上作,提出了基于图的蚂蚁系统元启发式模型,证明了改进算法可与模拟退火算法获得相似的结果,该模型在一定的条件下能以任意接近1的概率收敛到最优解。
stützle等对一类aco算法的收敛性进行了证明,其结论可直接用到实验证明最成功的两个aco算法—mmas和acs上。
4 结语
自蚁群算法创立以来,已有十多年的发展历程,其良好的寻优性
能越来越受到人们的关注。
目前对算法的研究己由解决一维离散优化问题发展到多维离散优化问题,由离散域拓展到连续域研究。
蚁群算法作为一类用于解决优化问题的随机搜索过程。
其收敛性研究
依然是今后一个非常重要的研究方向,这对深入理解算法机理,改进蚁群算法具有重要意义。
此外,蚁群算法同其它仿生学智能算法的融合目前也有了一定的研究成果,这也将是蚁群算法的发展方向之一。
参考文献
[1] colorni a,dorigo m,manlezzo v.distributed optimization by ant colonies [c]∥proceedings-european conference on artificial life,ecal1991. paris:elsevier publishing,1991:134~142.
[2] 张晋,曹耀钦.基于混合遗传蚁群算法的多agent动态任务分配研究[j].计算机科学,2011,38(10):268~270.
[3] dorigo m.optimization, learning and natural algorithms [d]. phd thesis, dipartimento di elettronica, politecnico di milano,italy,1992.
[4] dorigo m,gambardella lm.ant colony system:a cooperative learning approach to the traveling salesman problem [j].ieee transactions on evolutionary computation,1997,1(1):53~66.
[5] stützle t,hoos hh.max-min ant system[j].future generation computer systems journal.2000,16(8):889~914.[6] 肖菁,李亮平.基于信息熵调整的自适应蚁群算法[j].计算机工程与设计,2010,(22):4873~4876.
[7] dorigo m, caro gd, gambardella lm.ant algorithms for discrete optimization [j].artificial life,
1999,5(2):137~172.
[8] 倪世宏秦军立苏晨.一种求解连续空间优化问题的动态蚁群算法[j].电光与控制,2009,16(12):12~14.。