智能算法之蚁群算法PPT课件
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
对每只蚂蚁按概率移到下一顶点 更新每个蚂蚁的个体禁忌表 信息量更新
表示能见度的相对重要性
达到最大循环次数
轨迹的持久性
ij 表示第K只蚂蚁在本次循环中留在路径ij上的输信出最息短路量径及其长度
结束
计算结果
10城市TSP问题
20城市TSP问题
计算结果
30城市TSP问题
48城市TSP问题
连续蚁群算法
从上面可以看出,蚁群算法比较显著的特点是: 整个算法过程更适用于离散对象问题。在算法求解 组合优化问题过程中,路径是离散和有限的路径, 蚂蚁的每一步选择都是在离散值中进行的。这一特 点使得将蚁群算法直接应用于一般常规的连续对象 优化问题存在一定的困难。
应用蚁群算法求解连续对象优化问题,目前的处理方 法大致为:
13
蚁群算法与TSP问题
蚂蚁向下一个目标的运动是通过一个随 机原则来实现的,也就是运用当前所在节点 存储的信息,计算出下一步可达节点的概率, 并按此概率实现一步移动,逐此往复,越来 越接近最优解。
蚂蚁在寻找过程中,或者找到一个解后, 会评估该解或解的一部分的优化程度,并把 评价信息保存在相关连接的信息素中。
7
简化的蚂蚁寻食过程
蚂蚁从A点出发,速度相同,食物在D点,可能随机选
择路线ABD或ACD。假设初始时每条分配路线一只蚂蚁,
每个时间单位行走一步,本图为经过9个时间单位时
的情形:走ABD的蚂蚁到达终点,而走ACD的蚂蚁刚好
走到C点,为一半路程。
8
简化的蚂蚁寻食过程
本图为从开始算起,经过18个时间单位时的情形: 走ABD的蚂蚁到达终点后得到食物又返回了起点A, 而走ACD的蚂蚁刚好走到D点。
基于以上蚁群寻找食物时的最优路径选择问题,可以构造 人工蚁群,来解决最优化问题,如TSP问题。
人工蚁群中把具有简单功能的工作单元看作蚂蚁。二者的 相似之处在于都是优先选择信息素浓度大的路径。较短路径的 信息素浓度高,所以能够最终被所有蚂蚁选择,也就是最终的 优化结果。
两者的区别在于人工蚁群有一定的记忆能力,能够记忆已 经访问过的节点。同时,人工蚁群再选择下一条路径的时候是 按一定算法规律有意识地寻找最短路径,而不是盲目的。例如 在TSP问题中,可以预先知道当前城市到下一个目的地的距离。
3
A C
4
C
A
5
蚁群算法原理
蚁群算法是对自然界蚂蚁的寻径方式进行模似而得出的 一种仿生算法。蚂蚁在运动过程中,能够在它所经过的路 径上留下一种称之为外激素(pheromone)的物质进行信息 传递,而且蚂蚁在运动过程中能够感知这种物质,并以此 指导自己的运动方向,因此由大量蚂蚁组成的蚁群集体行 为便表现出一种信息正反馈现象:某一路径上走过的蚂蚁 越多,则后来者选择该路径的概率就越大。
若按以上规则继续,蚁群在ABD路线上再增派一只蚂蚁(共 3只),而ACD路线上仍然为一只蚂蚁。再经过36个时间单位后, 两条线路上的信息素单位积累为24和6,比值为4:1。
若继续进行,则按信息素的指导,最终所有的蚂蚁会放弃 ACD路线,而都选择ABD路线。这也就是前面所提到的正反馈效 应。
10
自然蚁群与人工蚁群算法
11
蚁群算法与TSP问题
TSP问题表示为一个N个城市的有向图G=(N,A),
其中 N {1,2,..., n} A {(i , j) | i, j N}
城市之间距离 目标函数为
(d ij ) nn
n
f (w)
d, il 1il
l 1
其中 w (i1 , i2 ,, in 为) 城市1,2,…n的一个排列, in1 。i1
14
蚁群算法的计算流程
开始
[ ij (t )] [ij ]
k p (t) ij
[
jallowed
ij
(t
)]
[ij
]
0
if j allowed otherwise
初始化
Nc Nc +1
轨迹更新: ij (t n) ij (t) ij (t,t n) Visibility: ij = 1/dij 表示轨迹的相对重要性
6
蚁群算法原理
为了说明蚁群算法的原理,先简要介绍一下蚂蚁 搜寻食物的具体过程。在蚁群寻找食物时,它们总能 找到一条从食物到巢穴之间的最优路径。这是因为蚂 蚁在寻找路径时会在路径上释放出一种特殊的信息素。 当它们碰到一个还没有走过的路口时,就随机地挑选 一条路径前行,与此同时释放出与路径长度有关的信 息素。路径越长,释放的激索浓度越低,当后来的蚂 蚁再次碰到这个路口的时候,选择激素浓度较高路径 概率就会相对较大,这样形成一个正反馈。最优路径 上的激索浓度越来越大,而其它的路径上激素浓度却 会随着时间的流逝而消减,最终整个蚁群会找出最优 路径。
9
简化的蚂蚁寻食过程
假设蚂蚁每经过一处所留下的信息素为一个单位,则经过36 个时间单位后,所有开始一起出发的蚂蚁都经过不同路径从D点 取得了食物,此时ABD的路线往返了2趟,每一处的信息素为4个 单位,而 ACD的路线往返了一趟,每一处的信息素为2个单位, 其比值为2:1。
寻找食物的过程继续进行,则按信息素的指导,蚁群在ABD 路线上增派一只蚂蚁(共2只),而ACD路线上仍然为一只蚂蚁。 再经过36个时间单位后,两条线路上的信息素单位积累为12和4, 比值为3:1。
1.将解空间的每一个分量分成许多小区间,这样整个解 空间被分成许多小多面体,将每个多面体看为一个节点, 然后用人工蚂蚁在这些节点之间行走最后找到最优解。
蚁群算法
2010-9
算法背景
1992年,意大利学者M.Dorigo在他的博士论文中引 入蚁群算法,其灵感来源于蚂蚁在寻找食物过பைடு நூலகம்中发现路 径的行为。通过对这种行为的模拟,提出来一种新型的模 拟进化算法—— 蚁群算法。目前,蚁群算法已经是群智 能理论研究领域的一种主要算法。
Macro Dorigo
A C
12
蚁群算法与TSP问题
TSP问题的人工蚁群算法中,假设m只蚂蚁 在图的相邻节点间移动,从而协作异步地得到 问题的解。每只蚂蚁的一步转移概率由图中的 每条边上的两类参数决定:1.信息素值,也称 信息素痕迹。2.可见度,即先验值。
信息素的更新方式有2种,一是挥发,也 就是所有路径上的信息素以一定的比率进行减 少,模拟自然蚁群的信息素随时间挥发的过程; 二是增强,给评价值“好”(有蚂蚁走过)的边 增加信息素。