(word完整版)蚁群算法内容简介

合集下载
相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

蚁群算法内容简介
蚁群算法(ant colony optimization, ACO),又称蚂蚁算法,是一种用来在图中寻找优化路径的机率型算法群算法是由意大利学者Dorigo等人于20世纪90年代初期通过模拟自然界中蚂蚁集体寻经的行为而提出的一种基于种群的启发式随机搜索算法,蚁群算法具有并行性、鲁棒性、正反馈性等特点.蚁群算法最早成功应用于解决著名的旅行商问题以及二次分配问题、车间任务调度问题、图的着色问题、网络路由等许多复杂的组合问题。

蚁群算法是一种模拟进化算法,初步的研究表明该算法具有许多优良的性质.针对PID控制器参数优化设计问题,将蚁群算法设计的结果与遗传算法设计的结果进行了比较,数值仿真结果表明,蚁群算法具有一种新的模拟进化优化方法的有效性和应用价值。

随着人们对效益的要求越来越高,人们发现组合优化的各种方法,但在一些复杂度比较高的问题上,一些传统的方法显示了他的限制,列如计算量上升太快,时间复杂度很高,这就需要一些新的方法来解决这些问题,从而有效地克服传统蚁群算法中容易陷入局部最优解和收敛速度慢的现象。

蚁群系统(Ant Colony System),这种算法是目前国内外启发式算法中的研究热点和前沿课题,被成功地运用于旅行商问题的求解,蚁群算法在求解复杂优化问题方面具有很大的优越性和广阔的前景。

但是,根据观察实验发现,蚁群中的多个蚂蚁的运动是随机的,在扩散范围较大时,在较短时间内很难找出一条较好的路径,在算法实现的过程中容易出现停滞现象和收敛速度慢现象。

在这种弊端的情况下,学者们提出了一种自适应蚁群算法,通过自适应地调整运行过程中的挥发因子来改变路径中信息素浓度,从而有效地克服传统蚁群算法中容易陷入局部最优解和收敛速度慢的现象。

下面是一些最常用的变异蚁群算法
精英蚂蚁系统
全局最优解决方案在每个迭代以及其他所有的蚂蚁的沉积信息素.
最大最小蚂蚁系统( MMAS)
添加的最大和最小的信息素量[ τmax ,τmin ],只有全局最佳或迭代最好的巡逻沉积的信息素。

所有的边缘都被初始化为τmax并且当接近停滞时重新初始化为τmax。

蚁群系统
蚁群系统已被提出基于排序的蚂蚁系统(ASrank)所有解决方案都根据其长度排名。

然后为每个解决方案衡量信息素的沉积量,最短路径相比较长路径的解沉积了更多的信息素。

连续正交蚁群(COAC)
COAC的信息素沉积机制能使蚂蚁协作而有效地寻解。

利用正交设计方法,在可行域的蚂蚁可以使用增大的全局搜索能力和精度,快速、高效地探索他们选择的区域。

正交设计方法和自适应半径调整方法也可推广到其他优化算法中,在解决实际问题施展更大的威力。

蚁群算法的由来:蚂蚁是地球上最常见、数量最多的昆虫种类之一,常常成群结队地出现在人类的日常生活环境中。

这些昆虫的群体生物智能特征,引起了一些学者的注意.意大利学者M。

Dorigo,V。

Maniezzo等人在观察蚂蚁的觅食习性时发现,蚂蚁总能找到巢穴与食物源之间的最短路径。

经研究发现,蚂蚁的这种群体协作功能是通过一种遗留在其来往路径上的叫做信息素(Pheromone)的挥发性化学物质来进行通信和协调的。

化学通信是蚂蚁采取的基本信息交流方式之一,在蚂蚁的生活习性中起着重要的作用.通过对蚂蚁觅食行为的研究,他们发现,整个蚁群就是通过这种信息素进行相互协作,形成正反馈,从而使多个路径上的蚂蚁都逐渐聚集到最短的那条路径上.
这样,M.Dorigo等人于1991年首先提出了蚁群算法.其主要特点就是:通过正反馈、分布式协作来寻找最优路径.这是一种基于种群寻优的启发式搜索算法。

它充分利用了生物蚁群能通过
个体间简单的信息传递,搜索从蚁巢至食物间最短路径的集体寻优特征,以及该过程与旅行商问题求解之间的相似性。

得到了具有NP难度的旅行商问题的最优解答。

同时,该算法还被用于求解Job-Shop调度问题、二次指派问题以及多维背包问题等,显示了其适用于组合优化类问题求解的优越特征。

多年来世界各地研究工作者对蚁群算法进行了精心研究和应用开发,该算法现己被大量应用于数据分析、机器人协作问题求解、电力、通信、水利、采矿、化工、建筑、交通等领域.
蚁群算法的特点:
1)蚁群算法是一种自组织的算法。

在系统论中,自组织和它组织是组织的两个基本分类,其区别在于组织力或组织指令是来自于系统的内部还是来自于系统的外部,来自于系统内部的是自组织,来自于系统外部的是他组织。

如果系统在获得空间的、时间的或者功能结构的过程中,没有外界的特定干预,我们便说系统是自组织的。

在抽象意义上讲,自组织就是在没有外界作用下使得系统墒增加的过程(即是系统从无序到有序的变化过程).蚁群算法充分休现了这个过程,以蚂蚁群体优化为例子说明。

当算法开始的初期,单个的人工蚂蚁无序的寻找解,算法经过一段时间的演化,人工蚂蚁间通过信息激素的作用,自发的越来越趋向于寻找到接近最优解的一些解,这就是一个无序到有序的过程。

2)蚁群算法是一种本质上并行的算法。

每只蚂蚁搜索的过程彼此独立,仅通过信息激素进行通信。

所以蚁群算法则可以看作是一个分布式的多agent系统,它在问题空间的多点同时开始进行独立的解搜索,不仅增加了算法的可靠性,也使得算法具有较强的全局搜索能力.
3)蚁群算法是一种正反馈的算法。

从真实蚂蚁的觅食过程中我们不难看出,蚂蚁能够最终找到最短路径,直接依赖于最短路径上信息激素的堆积,而信息激素的堆积却是一个正反馈的过程。

对蚁群算法来说,初始时刻在环境中存在完全相同的信息激素,给予系统一个微小扰动,使得各个边上的轨迹浓度不相同,蚂蚁构造的解就存在了优劣,算法采用的反馈方式是在较优的解
经过的路径留下更多的信息激素,而更多的信息激素又吸引了更多的蚂蚁,这个正反馈的过程使得初始的不同得到不断的扩大,同时又引导整个系统向最优解的方向进化。

因此,正反馈是蚂蚁算法的重要特征,它使得算法演化过程得以进行.
4)蚁群算法具有较强的鲁棒性。

相对于其它算法,蚁群算法对初始路线要求不高,即蚁群算法的求解结果不依赖子初始路线的选择,而且在搜索过程中不需要进行人工的调整。

其次,蚁群算法的参数数目少,设置简单,易于蚁群算法应用到其它组合优化问题的求解
蚁群算法可以表述如下:在算法的初始时刻,将m 只蚂蚁随机地放到 n 座城市,同时,将每只蚂蚁的禁忌表的第一个元素设置为它当前所在的城市。

此时各路径上的信息素量相等,设τij (0) = C (C 为一较小的常数),接下来,每只蚂蚁根据路径上残留的信息素量和启发式信息
(两城市间的距离)独立地选择下一座城市,在时刻 t ,蚂蚁 k 从城市i 转移到城市j 的概率k ij
p (t )为: [][]k ()
()(), if j J ()()() 0, otherwise
k ij
ij k is is ij s J i t t i t p t αβ
αβτητη∈⎧⎡⎤⎡⎤⋅⎣⎦⎣⎦⎪∈⎪⋅=⎨⎪⎪⎩∑ (2. 1)
其中,J k (i )= {1,2,……,n }— tabu k 表示蚂蚁 k 下一步允许选择的城市集合。

列表tabu k 记录了蚂蚁 k 当前走过的城市。

当所有 n 座城市都加入到tabu k 中时,蚂蚁 k 便完成了一次
周游,此时蚂蚁 k 所走过的路径便是 TSP 问题的一个可行解。

(2。

1)式中的ηij 是一个启
发式因子,表示蚂蚁从城市 i 转移到城市 j 的期望程度.在 AS 算法中,ηij 通常取城市 i 与
城市 j 之间距离的倒数。

α和β分别表示信息素和启发式因子的相对重要程度。

当所有蚂蚁完成一次周游后,各路径上的信息素根据(2. 2)式更新。

()ij ij ij t n t ττρτ∆+*-=+)()1( (2. 2)
∑=∆=∆m k k ij ij 1τ
τ (2. 3)
其中ρ(0 〈 ρ <1)表示路径上信息素的蒸发系数,1-ρ 表示信息素的持久性系数;△τij 表示本次迭代边 ij 上信息素的增量。

△τk
ij 表示第 k 只蚂蚁在本次迭代中留在边ij 上的信
息素量。

如果蚂蚁 k 没有经过边 ij ,则△τk
ij 的值为零。

△τk ij 表示为:
, k ij 0, k K ij Q L τ⎧⎪∆=⎨⎪⎩
若蚂蚁在本次周游中经过边 否则 (2. 4) 其中,Q 为正常数,L k 表示第 k 只蚂蚁在本次周游中所走过路径的长度。

M 。

Dorigo 提出了 3 种 AS 算法的模型 [7], 式 (2。

4) 称为 ant-cycle ,另外两个模型分别称为 ant —quantity 和 ant —density,其差别主要在 (2。

4) 式,即:在 ant —quantity 模型中为: , k ij 0, ij k ij Q d τ⎧⎪∆=⎨⎪⎩
蚂蚁在时刻t 和t+1经过边否则 (2. 5) 在 ant-density 模型中为:
, k ij 0, k ij Q τ⎧∆=⎨⎩
蚂蚁在时刻t 和t+1经过边 否则 (2. 6) AS 算法实际上是正反馈原理和启发式算法相结合的一种算法。

在选择路径时,蚂蚁不仅利用了路径上的信息素,而且用到了城市间距离的倒数作为启发式因子。

实验结果表明,ant-cycle 模型比 ant-quantity 和 ant —density 模型有更好的性能。

这是因为 ant-cycle 模型利用全局信息更新路径上的信息素量,而 ant-quantity 和ant-density 模型使用局部信息。

AS 算法的时间复杂度为Ο(N C *n 2*m) ,算法的空间复杂度为S(n )=O(n 2)+O (n*m) ,其中 N C 表示迭代的次数,n 为城市数,m 为蚂蚁的数目。

虽然蚁群算法的研究时间不长,但初步研究已显示它在求解复杂优化问题方面具有很大优势,特别是1998年在比利时布鲁塞尔专门召开了第一届蚂蚁优化国际研讨会后,现在每两年召开一次这样的蚂蚁优化国际研讨会。

这标志着蚁群算法的研究已经得到国际上的广泛支持,使得这种新兴的智能进化仿生算法展现出了勃勃生机。

相关文档
最新文档