95蚁群算法求解TSP的基本思想

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

Ch9 蚁群算法

9.1生物学知识

1、蚁群算法(Ant Colony Algorithm ,ACA)是由意大利M. Dorigo等人于1990到2000发展起来的,模拟进化算法。模拟了自然界蚂蚁群体的觅食行为。

2、蚁群社会

在昆虫世界中,蚂蚁的组成是一种群居的蓼袭大家庭,称为蚁群。蚁群中除了亲缘上的互助关系外,成蚁划分为世袭制的蚁王和工蚁两个等级,蚁群的大小从几十个到几千万个,蚁群具有高度组织的社会性,彼此间的沟通不仅可以借助触觉的的联系,在大规模的协调行动上,借助外激素之类的生化信息介质。

其中每个工蚁具有如下的职能:

平时在巢穴附近作无规则行走;

一旦发现食物,如果独自能搬的就往回搬,否则就回巢穴搬兵;

一路上它会留下外激至少的嗅迹,其强度与食物的品质和数量成正比;

其他工蚁遇到嗅迹,就会循迹前进,也会有一定的走失率(选择其他路径),走失率与嗅迹的强度成反比。

蚁群的行为表现出一种信息正反馈的现象;

某一路径上走过的蚂蚁越多,则后来选择该路径的概率就大,蚂蚁个体间就是通过这种信息的交流达到搜索食物的目的。

3、蚁群觅食过程

意大利学者M. Dorigo是最早发现蚂蚁的觅食习性的,蚂蚁总能找到巢穴与食物源之间的最短路径。

蚂蚁在寻找食物源后,会在其经过的路径上释放一种信息素,并能够感知其他蚂蚁释放的信息素。当某些路径上走过的蚂蚁越来越多时,留下的信息素也会越来越多,以致后蚂蚁选择该路径的概率也越来越高,从而更增加了该路径的吸引强度,逐渐形成了一条它们自己事先并未意识到的最短路线。

蚂蚁会以较大的概率优先选择信息素浓度较高的路径,并释放一定量的信息素,以增强该条路径的信息素的浓度,形成一个正反馈。

路径上的信息浓度会随时间的推进,而不断挥发,从而不断降低,这似乎也是变异。

9.2ACA算法的基本思想

左图表示初始状态中,在结点A与C有30只蚂蚁,线上的数字(1,0)表示距离为1,

信息素为0。此时每条边上的信息素均为0,故蚂蚁按随机行走,A 、C 出发时,走两边的概率相等。

单位时间后,A 出发的蚂蚁,15只达到了B 、15只经D 到达C 。C 出发的蚂蚁,15只达到了B,15只经D 到达了A ,如右上图所示。各边的信息素如右图所示,A-B 有15只蚂蚁走过,留下的信息素是15个单位,C-B 也是15只蚂蚁,留下的信息素也是15,此时到B 的蚂蚁是15+15=30只。A-D-C 的蚂蚁是15只,C-D-A 的也是15只,故该条较短路线上的信息素为30个单位。

蚂蚁再往前走:

A 点:由于A-

B 的信息素是15个单位,A-D 是30单位,故A-D 的蚂蚁数是A-B 的2倍,因此A-B 的蚂蚁5只,A-D 是10只

C 点:C-B 是5只,C-

D 是10只 B 点:B-A 是15只,B-C 是15只 单位时间后: A 点:10+15=25 C 点:10+15=25 B 点:5+5=10 信息素:

A-B 为15+15+5=35,C-B 为15+15+5=35, A-D=30+10+10=50,C-D 为30+10+10=50

再出发

A 点:A-

B 方向=25*35/85=10 A-D 方向为15只。 两边各占0.41:0.59

C 点:C-B 是10只,C-

D 是15只 B 点:B-A 是5只,B-C 是5只 单位时间后: A 点:5+15=20 C 点:5+15=20 B 点:10+10=20 信息素:

A-B 为35+10+5=50,C-B 为35+5+10=50, A-D=50+15+15=80,C-D 为50+15+15=80

再出发50/130=0.46 80/130=0.54

A点:A-B方向=20*50/130=6 A-D方向为14只。

C点:C-B是6只,C-D是14只

B点:B-A是10只,B-C是10只

单位时间后:

A点:10+14=24

C点:10+14=24

B点:6+6=12

信息素:

A-B为50+6+10=66,C-B为50+6+10=66,

A-D=80+14+14=108,C-D为80+14+14=108

两边浓度比为66/174=0.38 108/174=0.62

9.3优缺点

优点:

(1)蚁群算法是一种分布式内在并行算法。单个蚂蚁的搜索过程是彼此独立的,易于局部最优,通过个体间不断的信息交流和传递有利于发现较好解。

(2)蚁群算法是一种正反馈算法。路径上的信息素浓度较高,将吸引更多的蚂蚁沿这条路径运动,又使得信息素浓度增加,加快了算法的进化过程。

(3)蚁群算法具有较强的自适应性,对其模型稍做修改,可应用于其他问题。

(4)易于其他方法组合,以改善算法的效率。

缺点:

(1)需要较长时间搜索。主要是因为各蚂蚁的运动是随机的,当群体规模稍大时,需要很长时间才能收敛。

(2)易出现停滞现象,早熟现象。

9.4蚁群算法的研究进展

1、20世纪90年代意大利Dorigo、Maniezzo等人提出该算法。

2、1999年,Dorigo提出了蚁群优化(Ant Colony Optimization)的通用框架。

3、2002年8月,出版蚁群优化算法的特刊。

4、从1998年起,每隔二年在比利时的布鲁塞尔举行一次蚁群算法的国际会议。

5、涉及到领域有生物学、物理学、工程学、计算机科学。

6、Bichev和parmee提出了求解连续空间的蚁群算法模型。

7、2004年李士勇等蚁群算法的专著

8、2005年段海滨《蚁群算法原理及应用》专著

9、2006年吴启迪《智能蚁群算法及应用》

9.5蚁群算法求解TSP的基本思想

1、基本参数、信息素浓度公式、择路概率

设蚂蚁的数量为m,

城市的数量为n,

城市i与城市j之间的距离为dij,

相关文档
最新文档