蚁群算法

合集下载

蚁群算法

蚁群算法

两阶段算法(Two Phase Algorithm)
算法举例
(3)以P0为起点,以P4为终点,求下图最短路径L
Dijkstra算法 动态规划 L为 P0→P6 → P3 → P4. 总长度为97km。
(4)根据最短路进行分组,最短路由三条分支组成,即
P0→P5 → P8 → P7 → P6 → P0. 33km,5.9t
0 0
4 10 17 0
节约法(Saving Method)
算法举例
点对之间连接的距离节约值
连接点 3-4 2-3 7-8 6-7 1-7 节约里程 19 18 17 16 13 连接点 1-2 1-6 6-8 2-4 1-3 节约里程 12 11 10 9 8 连接点 1-8 2-7 5-8 2-6 4-5 节约里程 5 5 4 3 3 连接点 5-7 3-7 5-6 节约里程 3 1 1
Cij P0 P5 P8 P0 0 P5 8 0 P8 22 18 0 P7 33 29 28 P6 33 29 28 P1 ∞ ∞ 37 P2 ∞ ∞ ∞ P3 ∞ ∞ ∞ P4 ∞ ∞ ∞
P7
P6 P1 P2 P3 P4
0
16
0
25
20 0
35
30 22 0

42 34 30 0

∞ ∞ ∞ 22 0
节约法(Saving Method)
算法举例
求初始解
令Ii={i},i=1,2,· · · ,8;最短路长li=2C0i;载重量ri=Ri;标记 (合并次数)B1=B2=· · · =B8=0.
按节约里程从大到小合并路径 8
P3 P29 10P15 NhomakorabeaP4
11

蚁群算法

蚁群算法

蚁群算法目录1 蚁群算法基本思想 (1)1.1蚁群算法简介 (1)1.2蚁群行为分析 (1)1.3蚁群算法解决优化问题的基本思想 (2)1.4蚁群算法的特点 (2)2 蚁群算法解决TSP问题 (3)2.1关于TSP (3)2.2蚁群算法解决TSP问题基本原理 (3)2.3蚁群算法解决TSP问题基本步骤 (5)3 案例 (6)3.1问题描述 (6)3.2解题思路及步骤 (6)3.3MATLB程序实现 (7)3.1.1 清空环境 (7)3.2.2 导入数据 (7)3.3.3 计算城市间相互距离 (7)3.3.4 初始化参数 (7)3.3.5 迭代寻找最佳路径 (7)3.3.6 结果显示 (7)3.3.7 绘图 (7)1 蚁群算法基本思想1.1 蚁群算法简介蚁群算法(ant colony algrothrim ,ACA )是由意大利学者多里戈(Dorigo M )、马聂佐( Maniezzo V )等人于20世纪90初从生物进化的机制中受到启发,通过模拟自然界蚂蚁搜索路径的行为,提出来的一种新型的模拟进化算法。

该算法用蚁群在搜索食物源的过程中所体现出来的寻优能力来解决一些系统优化中的困难问题,其算法的基本思想是模仿蚂蚁依赖信息素,通过蚂蚁间正反馈的方法来引导每个蚂蚁的行动。

蚁群算法能够被用于解决大多数优化问题或者能够转化为优化求解的问题,现在其应用领域已扩展到多目标优化、数据分类、数据聚类、模式识别、电信QoS 管理、生物系统建模、流程规划、信号处理、机器人控制、决策支持以及仿真和系统辩识等方面。

蚁群算法是群智能理论研究领域的一种主要算法。

1.2 蚁群行为分析EABCDF d=3d=2 m=20 t=0AB C Dd=3d=2 m=10 m=10t=11.3 蚁群算法解决优化问题的基本思想用蚂蚁的行走路径表示待优化问题的可行解,整个蚂蚁群体的所有路径构成待优化问题的解空间。

路径较短的蚂蚁释放的信息量较多,随着时间的推进,较短路径上积累的信息浓度逐渐增高,选择该路径的蚂蚁个数愈来愈多。

蚁群算法及案例分析精选全文

蚁群算法及案例分析精选全文
问过的节点;另外,人工蚁
群在选择下一条路径的时
候并不是完全盲目的,而是
按一定的算法规律有意识
地寻找最短路径
自然界蚁群不具有记忆的
能力,它们的选路凭借外
激素,或者道路的残留信
息来选择,更多地体现正
反馈的过程
人工蚁群和自然界蚁群的相似之处在于,两者优先选择的都
是含“外激素”浓度较大的路径; 两者的工作单元(蚂蚁)都
正反馈、较强的鲁棒性、全
局性、普遍性
局部搜索能力较弱,易出现
停滞和局部收敛、收敛速度
慢等问题
优良的分布式并行计算机制
长时间花费在解的构造上,
导致搜索时间过长
Hale Waihona Puke 易于与其他方法相结合算法最先基于离散问题,不
能直接解决连续优化问题
蚁群算法的
特点
蚁群算法的特点及应用领域
由于蚁群算法对图的对称性以
及目标函数无特殊要求,因此
L_ave=zeros(NC_max,1);
%各代路线的平均长度
while NC<=NC_max
%停止条件之一:达到最大迭代次数
% 第二步:将m只蚂蚁放到n个城市上
Randpos=[];
for i=1:(ceil(m/n))
Randpos=[Randpos,randperm(n)];
end
Tabu(:,1)=(Randpos(1,1:m))';
scatter(C(:,1),C(:,2));
L(i)=L(i)+D(R(1),R(n));
hold on
end
plot([C(R(1),1),C(R(N),1)],[C(R(1),2),C(R(N),2)])

蚁群算法原理及其应用

蚁群算法原理及其应用

蚁群算法原理及其应用1.介绍蚁群算法蚁群算法是基于群体智能的一种优化算法,它是由蚂蚁觅食行为得到的灵感而设计的。

它通过模拟蚂蚁觅食时的信息素传递、挥发和追随机制,以寻找最优解,在优化搜索问题方面表现出了很高的效率和准确率。

蚁群算法的核心思想是通过模拟蚂蚁觅食时的联合行为,来寻找最优解。

在蚂蚁觅食的过程中,蚂蚁们会释放信息素,并且在寻找食物的过程中会不断地追随信息素浓度最高的路径。

最终,所有蚂蚁都会找到最短路径,这是通过信息素的积累实现的。

同样的,蚁群算法也是通过信息素的积累来找到最优解。

2.蚁群算法工作原理蚁群算法是基于蚂蚁觅食行为的优化算法,其主要的工作原理是通过模拟蚂蚁的联合行为寻找最优解。

其过程可以分为蚂蚁编号、路径选择、信息素更新三个阶段。

蚂蚁编号:首先,将每只蚂蚁进行编号,这个编号的目的是为了标识蚂蚁,以便于后面对信息素的更新和路径选择进行控制。

路径选择:在路径选择过程中,每只蚂蚁都会根据自己当前的位置,以及路径上已有的信息素浓度等因素,选择一条路径进行行走。

在这个过程中,蚂蚁们会保留走过的路径,并且释放信息素。

信息素更新:在信息素更新过程中,所有路径上的信息素浓度都会发生变化,其中信息素的浓度会受到蚂蚁在路径上的行走距离、信息素挥发率、以及其他因素的影响。

所有蚂蚁行走结束后,信息素更新过程便开始了。

3.蚁群算法的应用领域蚁群算法在解决优化问题方面具有很大的应用潜力,其能够用于很多领域。

以下是蚁群算法在各个领域的应用举例:(1)路径规划领域蚁群算法可以应用在路径规划领域中,用于求解最短路径和最优路径问题。

在实际应用中,蚁群算法在公共交通网络、航空路线规划、车辆路径优化等方面都表现出了很好的效果。

(2)组合优化领域蚁群算法在组合优化领域中得到了广泛的应用,可以用于解决如旅行商问题、装载问题、集合划分问题等复杂的组合优化问题。

(3)机器学习领域蚁群算法在机器学习领域的应用,包括聚类、分类、特征选择等方面。

数据分析知识:数据挖掘中的蚁群算法

数据分析知识:数据挖掘中的蚁群算法

数据分析知识:数据挖掘中的蚁群算法蚁群算法是一种模拟蚂蚁觅食行为的启发式算法。

它是一种基于群体智能的方法,能够有效地用于数据挖掘和机器学习领域。

本文将介绍蚁群算法的基本原理和应用案例。

一、蚁群算法的基本原理蚁群算法受到了蚂蚁觅食行为的启发。

蚂蚁在觅食过程中会遵循一定的规则,例如在路径上释放信息素,吸引其他蚂蚁前往同一方向;在路径上的信息素浓度较高的路径更容易选择。

蚁群算法利用了这些规则,以一种群体智能的方式搜索解空间。

具体来说,蚁群算法由以下几个步骤组成:1.初始化:定义问题的解空间和初试信息素浓度。

解空间可以是任何基于排列、图形或其他对象的集合,例如TSP问题中的城市序列集合。

信息素浓度矩阵是一个与解空间大小相同的矩阵,用于反映每个解的吸引力。

2.移动规则:蚂蚁在解空间中移动的规则。

通常规则包括根据当前解和信息素浓度选择下一步解以及更新当前解的信息素浓度。

3.信息素更新:蚁群中的蚂蚁经过路径后,更新路径上的信息素浓度。

通常信息素浓度的更新涉及一个挥发系数和一个信息素增量。

4.终止条件:确定蚁群算法的运行时间,例如最大迭代次数或达到特定解的准确度。

蚁群算法是一种群体智能的方法,每只蚂蚁只能看到局部的解。

通过信息素的释放和更新,蚁群最终能够找到全局最优解。

二、蚁群算法的应用案例蚁群算法最常用于解决组合优化问题,例如TSP问题、车辆路径问题和任务分配问题。

下面将介绍蚁群算法在TSP问题和车辆路径问题中的应用。

1. TSP问题TSP问题是一个NP难问题,是指在旅行时,如何有效地走遍所有篮子,使得总的旅行距离最小。

蚁群算法是适用于TSP问题的一种有效的算法。

在每一代,蚂蚁会在城市之间移动,假设当前城市为i,则下一个选择的城市j是基于概率函数计算得到的。

概率函数考虑了当前城市的信息素浓度以及城市之间的距离。

每条路径释放的信息素浓度大小根据路径长度而定。

这样,蚂蚁可以在TSP问题上找到最优解。

2.车辆路径问题车辆路径问题是指在有限时间内如何合理地分配车辆到不同的客户,以最小化送货时间和车辆的旅行距离。

蚁群算法

蚁群算法

4.蚁群算法应用
信息素更新规则
1.蚁群算法简述 2.蚁群算法原理
最大最小蚂蚁系统
3.蚁群算法改进
4.蚁群算法应用
最大最小蚂蚁系统(MAX-MIN Ant System,MMAS)在基本AS算法的基础 上进行了四项改进: (1)只允许迭代最优蚂蚁(在本次迭代构建出最短路径的蚂蚁),或者至今 最优蚂蚁释放信息素。(迭代最优更新规则和至今最优更新规则在MMAS 中会被交替使用)
p( B) 0.033/(0.033 0.3 0.075) 0.081 p(C ) 0.3 /(0.033 0.3 0.075) 0.74 p( D) 0.075 /(0.033 0.3 0.075) 0.18
用轮盘赌法则选择下城市。假设产生的 随机数q=random(0,1)=0.05,则蚂蚁1将会 选择城市B。 用同样的方法为蚂蚁2和3选择下一访问 城市,假设蚂蚁2选择城市D,蚂蚁3选择城 市A。
蚁群算法
1.蚁群算法简述 2.蚁群算法原理 3.蚁群算法改进 4.蚁群算法应用
1.蚁群算法简述 2.蚁群算法原理
3.蚁群算法改进
4.蚁群算法应用


蚁群算法(ant colony optimization, ACO),又称蚂蚁 算法,是一种用来在图中寻找优 化路径的机率型算法。 由Marco Dorigo于1992年在他 的博士论文中提出,其灵感来源 于蚂蚁在寻找食物过程中发现路 径的行为
4.蚁群算法应用
例给出用蚁群算法求解一个四城市的TSP 3 1 2 3 5 4 W dij 1 5 2 2 4 2
假设蚂蚁种群的规模m=3,参数a=1,b=2,r=0.5。 解:
满足结束条件?

蚁群算法的基本原理与改进

蚁群算法的基本原理与改进
蚁群算法的基本原理与改进
A
1
蚁群算法
蚁群算法(ant colony alogrithm)是一种模拟进化算法。 蚁群算法(又称为人工蚁群算法)是由意大利学者M.Dorigo,
V.Mahiezzo,A.Colorni等人受到人们对自然界中真是蚁群集体 行为的研究成果的启发而首先提出来的。这个算法的主要目的是在 图中寻找优化路径的机率算法。 蚁群算法最早是为了解决TSP问题(即旅行商问题)。 TSP问题的要求:路径的限制是每个城市只能拜访一次;最后 要回到原来出发的城市。求得的路径路程为所有路径之中的最小 值。
并不要求所有的蚂蚁都找到最优模板,而只需要一只找到最优模板即可。如果 要求所有的蚂蚁都找到最优模板,反而影响了计算效率。 蚁群算法收敛速度慢、易陷入局部最优。蚁群算法中初始信息素匮乏。 蚁群算法一般需要较长的搜索时间,其复杂度可以反映这一点;而且该方法容 易出现停滞现象,即搜索进行到一定程度后,所有个体发现的解完全一致,不 能对解空间进一步进行搜索,不利于发现更好的解。
(4)它是一种全局优化的方法;不仅可用于求解单目标优化问题,而 且可用于求解多目标优化问题;
(5)它是一种启发式算法;计算复杂性为 O(NC*m*n2),其中NC 是 迭代次数,m 是蚂蚁数目,n 是目的节点数目。
A
13
下面是对蚁群算法的进行过程中采用的规则进行的一些说明。
范围
蚂蚁观察到的范围是一个方格世界,蚂蚁有一个参数为速度半 径(一般是3),那么它能观察到的范围就是3*3个方格世界,并且 能移动的距离也在这个范围之内。
最后,经过一段时间运行,就可能会出现一条最短的路径被大 多数蚂蚁重复着。
A
3
基本原理
蚁群算法是对自然界蚂蚁的寻径方式进行模似而得出的一种仿生算 法。

蚁群算法基本原理

蚁群算法基本原理

蚁群算法基本原理
蚁群算法(Ant Colony Algorithm)是一种基于模拟蚁群行为的优化算法,用于解决复杂的优化问题。

其原理是模拟蚂蚁寻找食物的行为,在寻找过程中通过信息素来引导蚂蚁探索最优解。

基本流程:
1. 初始化:将蚂蚁随机分散在问题空间中,每只蚂蚁都随机选择一个起点。

2. 蚂蚁搜索:每只蚂蚁根据一定的概率选择下一个节点,概率与当前节点的信息素有关,如果信息素较高则该节点被选中的概率较大。

3. 信息素更新:每只蚂蚁在搜索过程中会留下一定的信息素,当搜索完成后,信息素会根据一定的规则进行更新,具体规则可以为:信息素浓度与路径长度成反比例关系,或者信息素挥发速度固定。

4. 最优解记录:当所有蚂蚁完成搜索后,从它们所走过的路径中选择获得最优解,并将该路径上的信息素浓度进行更新。

5. 重复搜索:重复上述所有步骤,直到达到设定的迭代次数或者满足终止条件。

蚁群算法基本原理就是通过模拟蚁群行为,通过信息素的引导来搜索最优解。


实际应用中,蚁群算法可以用于解决诸如旅行商问题、作业调度问题、路径规划问题、图像分割问题等优化问题。

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

基本蚁群算法程序流程图
开始 初始化
循环次数Nc← Nc+1
蚂蚁k=1 蚂蚁k=k+1
按式(1)选择下一元素 修改禁忌表 N Y K≥ m
按式(2)和式(3)进行信息量更新 满足结束条件 Y
Байду номын сангаас输出程序计算结果 结束 N
复杂度分析
对于TSP,所有可行的路径共有(n-1)!/2条,以 此路径比较为基本操作,则需要(n-1)!/2-1次基 本操作才能保证得到绝对最优解。 若1M FLOPS,当n=10, 需要0.19秒 n=20, 需要1929年 n=30, 需要1.4X10e17年
{ ij (t ) | ci , c j C}是t时刻集合C中元素
蚂蚁k(k=1,2,…,m)在运动过程中,根据各条路径上的信息 量决定其转移方向。这里用禁忌表tabuk来记录蚂蚁k当前 所走过的城市,集合随着tabuk进化过程做动态调整。在 搜索过程中,蚂蚁根据各条路径上的信息量及路径的启发 信息来计算状态转移概率。在t时刻蚂蚁k由元素(城市)i 转移到元素(城市)j的状态转移概率:
1) 标有距离的路径图 2) 在0时刻,路径上没有信息素累积,蚂蚁选择路径为任意 3) 在1时刻,路径上信息素堆积,短边信息素多与长边,所以蚂蚁更 倾向于选择ABCDE


(1)其原理是一种正反馈机制或称增强型学习系统;它通过 信息素的不断更新达到最终收敛于最优路径上; (2)它是一种通用型随机优化方法;但人工蚂蚁决不是对实 际蚂蚁的一种简单模拟,它融进了人类的智能; (3)它是一种分布式的优化方法;不仅适合目前的串行计算 机,而且适合未来的并行计算机; (4)它是一种全局优化的方法;不仅可用于求解单目标优化 问题,而且可用于求解多目标优化问题; 2 (5)它是一种启发式算法;计算复杂性为 O( NC m n ),其 中NC 是迭代次数,m 是蚂蚁数目,n 是目的节点数目。
2.3 人工蚁群算法
基于以上蚁群寻找食物时的最优路径选择问题,可以构造 人工蚁群,来解决最优化问题,如TSP问题。 人工蚁群中把具有简单功能的工作单元看作蚂蚁。二者的 相似之处在于都是优先选择信息素浓度大的路径。较短路径的 信息素浓度高,所以能够最终被所有蚂蚁选择,也就是最终的 优化结果。 两者的区别在于人工蚁群有一定的记忆能力,能够记忆已 经访问过的节点。同时,人工蚁群再选择下一条路径的时候是 按一定算法规律有意识地寻找最短路径,而不是盲目的。例如 在TSP问题中,可以预先知道当前城市到下一个目的地的距离。
信息更新规则:
为了避免残留信息素过多引起残留信息淹没启发信息, 在每只蚂蚁走完一步或者完成对所有n个城市的遍历(也 即一个循环结束)后,要对残留信息进行更新处理。这 种更新策略模仿了人类大脑记忆的特点,在新信息不断 存人大脑的同时,存储在大脑中的旧信息随着时间的推 移逐渐淡化,甚至忘记。由此,t+n时刻在路径(i, j)上 的信息量可按如下规则进行调整
TSP是NP-C问题 n城市规模的TSP,存在(n-1)!/2条不同闭合路径。
基本蚁群算法数学模型
设bi(t)表示t时刻位于元素i的蚂蚁数目,τij (t)为t时 刻路径(i, j)上的信息量,n表示TSP规模,m为蚁 群中蚂蚁总数,则
m bi (t )
i 1
n
(城市)两两连接lij上残留信息量的集合,在初始 时刻各条路径上的信息量相等,并设τij(0)=const, 基本蚁群算法的寻优是通过有向图g=(C, L, Γ)实 现的。
3.4 信息素的更改
信息素的更新分为全局和局部两种 方式。全局方式(同步更新方式) 的主要思想是在若干只蚂蚁完成n个 城市的访问后,统一对残留信息进 行更新处理。 信息素的局部更新(异步更新方式) 即蚂蚁每行走一步,立即回溯并且 更新行走路径上的信息素。
蚁群算法可研究问题
蚁群算法的研究与发展历史毕竟较短,还存在诸多问题:
LOGO
蚁群算法
2 蚁群算法概念
2.1 蚁群算法原理 2.2 简化的蚂蚁寻食过程 2.3 人工蚁群算法
2.1 蚁群算法原理
蚁群算法是对自然界蚂蚁的寻径方式进行 模似而得出的一种仿生算法。 蚂蚁在运动过程中,能够在它所经过的路径 上留下一种称之为外激素(pheromone)的物质 进行信息传递,而且蚂蚁在运动过程中能够感 知这种物质,并以此指导自己的运动方向,因 此由大量蚂蚁组成的蚁群集体行为便表现出一 种信息正反馈现象:某一路径上走过的蚂蚁越 多,则后来者选择该路径的概率就越大。
时间复杂度 空间复杂度
3 技术问题
3.1 解的表达形式与算法的实现 3.2 节点的记忆信息和系数的确定 3.3 蚁群的规模和停止规则 3.4 信息素的更改
3.1 解的表达形式
解的表达形式 基于TSP问题的蚁群优化 算法,其解的形式是所有城市的一个排列(闭 环,这种情况下谁在第一并不重要),信息素 痕迹按每个弧记录。而对于一般以顺序作为解 的优化问题,谁在第一是很重要的。蚁群算法 在解决这类问题时,只需要建立一个虚拟的始 终点,就可以把TSP问题的解法推广,用于诸 多的优化问题。诸如车间作业及下料等问题, 他们的共同特点是解以一个顺序表示。
ij (t n) (1 ) ij (t ) ij (t )
ij (t ) ij (t )
k k 1 m
(2) (3)
注释:
式中,ρ表示信息素挥发系数,则1-ρ表示信息素 残留因子,为了防止信息的无限积累, ρ的取值 范围为[0,1), Δτij(t)表示本次循环中路径(i, j)上的 信息素增量,初始时刻Δτij(t) =0, Δτijk(t) 表示第k 只蚂蚁在本次循环中留在路径(i, j)上的信息量。 根据信息素更新策略的不同,Dorigo M提出了三 种不同的基本蚁群算法模型,分别称之为AntCycle模型、Ant-Quantity模型及Ant-Density模型, 其差别在于Δτijk(t)求法的不同。
3.2 系数的确定
残留信息的相对重要程度 和预见值的相对重 要程度 体现了相关信息痕迹和预见度对蚂蚁 决策的相对影响。Dorigo在求解TSP问题时, 推荐参数的最佳设置为:
1, 5, 0.5
3.3 蚁群的规模和停止规则
一、蚁群大小 一般情况下蚁群中蚂蚁的个数不超过TSP图中节点的个 数。 二、终止条件 1 给定一个外循环的最大数目,表明已经有足够的蚂蚁 工作; 2 当前最优解连续K次相同而停止,其中K是一个给定的 整数,表示算法已经收敛,不再需要继续; 3 目标值控制规则,给定优化问题(目标最小化)的一 个下界和一个误差值,当算法得到的目标值同下界之差小 于给定的误差值时,算法终止。
Ant-Cycle模型
Q , 若第k只蚂蚁在本次循环中经过(i, j ) k ij (t ) Lk (4) 0, 否则
式中,Q表示信息素强度,它在一定程度上影响 算法的收敛速度;Lk表示第k只蚂蚁在本次循环中 所走路径的总长度。
Ant-Quantity模型
Q d , 若第k只蚂蚁在t和t 1之间经过(i, j ) k ij (t ) ij (5) 0, 否则
基本蚁群算法的实现
(5)蚂蚁个体根据状态转移概率公式(1)计算的概 率选择元素(城市) j 并前进,j∈{C - tabuk}。 (6)修改禁忌表指针,即选择好之后将蚂蚁移动 到新的元素(城市),并把该元素(城市)移动到该 蚂蚁个体的禁忌表中。 (7)若集合C中元素(城市)未遍历完,即k<m,则 跳转到第(4)步,否则执行第(8)步。 (8)根据公式(2)和式(3)更新每条路径上的信息量。 (9)若满足结束条件,即如果循环次数Nc≥ Ncmax 则循环结束并输出程序计算结果,否则清空禁 忌表并跳转到第(2)步。
基本蚁群算法的实现
以TSP为例,基本蚁群算法的具体实现步 骤如下:
(1)参数初始化。令时间t=0和循环次数Nc=0,设 置最大循环次数Ncmax, 将m个蚂蚁置于n个元素 (城市)上,令有向图上每条边(i, j)的初始化信息 量τij(t)=const, 其中const表示常数,且初始时刻 Δτij(0)=0 (2)循环次数Nc← Nc+1。 (3)蚂蚁的禁忌表索引号k=1。 (4)蚂蚁数目 k←k+1 。
基本蚁群算法的数学模型
TSP (Traveling Salesman Problem)
TSP简单形象描述
给定n个城市,一个旅行商从某一城市出发,访问各 城市一次且仅有一次后再回到原出发城市,要求找出 一条最短的巡回路径 可分为对称TSP (Symmetric Traveling Salesman Problem) 和非对称TSP (Asymmetric Traveling Salesman Problem)
案例注释:
假设蚂蚁每经过一处所留下的信息素为一个单位,则 经过36个时间单位后,所有开始一起出发的蚂蚁都经过不 同路径从D点取得了食物,此时ABD的路线往返了2趟,每 一处的信息素为4个单位,而 ACD的路线往返了一趟,每 一处的信息素为2个单位,其比值为2:1。 寻找食物的过程继续进行,则按信息素的指导,蚁群 在ABD路线上增派一只蚂蚁(共2只),而ACD路线上仍 然为一只蚂蚁。再经过36个时间单位后,两条线路上的信 息素单位积累为12和4,比值为3:1。 若按以上规则继续,蚁群在ABD路线上再增派一只蚂 蚁(共3只),而ACD路线上仍然为一只蚂蚁。再经过36 个时间单位后,两条线路上的信息素单位积累为24和6, 比值为4:1。 若继续进行,则按信息素的指导,最终所有的蚂蚁会 放弃ACD路线,而都选择ABD路线。这也就是前面所提到 的正反馈效应。
2.2 简化的蚂蚁寻食过程
LC=2LB
蚂蚁从A点出发,速度相同,食物在D点,可能随机选择路线 ABD或ACD。假设初始时每条分配路线一只蚂蚁,每个时间单位 行走一步,本图为经过9个时间单位时的情形:走ABD的蚂蚁到 达终点,而走ACD的蚂蚁刚好走到C点,为一半路程。
相关文档
最新文档