Matlab蚁群算法共41页
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
蚁群系统局部更新规则
类似于蚁密和蚁量模型中的更新规则
蚂蚁应用下列局部更新规则对它们所经过的边进行 激素更新
(r,s) (1)(r,s) (r,s)
其 中 ,为 一 个 参 数 , 01
实验发现, 0 市的数量,L n
n
1
是n L由nn 最可近以的产邻生域好启的发结产果生,的其一中个n路是径城
边作为移动方向
蚁群系统全局更新规则
只有全局最优的蚂蚁才被允许释放信息素
目的:使蚂蚁的搜索主要集中在当前循环为止所找 出的最好路径的领域内
全局更新在所有蚂蚁都完成它们的路径之后执行, 使用下式对所建立的路径进行更新
( r ,s ) ( 1 ) ( r ,s ) ( r ,s )
(r,s) L1gb,
则主要使用迭代最优解
信息素轨迹的限制
不管是选择迭代最优还是全局最优蚂蚁来进 行信息素更新,都可能导致搜索的停滞。
停滞现象发生的原因:在每个选择点上一个 选择的信息素轨迹量明显高于其他的选择。
避免停滞状态发生的方法:影响用来选择下 一解元素的概率,它直接依赖于信息素轨迹 和启发信息。通过限制信息素轨迹的影响, 可以很容易地避免各信息素轨迹之间的差异 过大。
k ij
k 1
ikj L Q k,如 果 蚂 蚁 k在 本 次 循 环 中 经 过 路 径 (i,j)
0,否 则
i* j Q L *,如 果 边 (i,j)是 所 找 出 的 最 优 解 的 一 部 分
0,否 则
带精英策略的蚂蚁系统
上式中 * 表示精英蚂蚁引起的路径(i, j)上的信息素量
状态转移规则为更好更合理地利用新路径和利用关于问 题的先验知识提供了方法
全局更新规则只应用于最优的蚂蚁路径上
在建立问题解决方案的过程中,应用局部信息素更新规 则
蚁群系统状态转移规则
一只位于节点r的蚂蚁通过应用下式给出的规则选 择下一个将要移动到的城市s
s a r g u m a llo a w x e d k { [( r ,u ) ] [( r ,u ) ] } ,如 果 q q 0 按 先 验 知 识 选 择 路 径 S ,否 则
其中,S根据下列公式得到
Pijk(t)
ij (t)is(ti)j (t)is (t),
sallowedk
jallowedk
0,
otherwise
蚁群系统状态转移规则
q是在[0,1]区间均匀分布的随机数 q0的大小决定了利用先验知识与探索新路径
之间的相对重要性。 上述状态转移规则被称为伪随机比例规则 特点:倾向于选择短的且有着大量信息素的
0,
如 果 (r,s)全 局 最 优 路 径 否 则
蚁群系统全局更新规则
为信息素挥发参数,0< <1
L g b 为到目前为止找出的全局最优路径
全局更新规则的另一个类型称为迭代最优
区别:使用 L i b 代替L g b ,L i b 为当前迭代(循环)中的最优路径 长度
这两种类型对蚁群系统性能的影响差别很小,全局最优 的性能要稍微好一些
的增加
是精英蚂蚁的个数
L * 是所找出的最优解的路径长度 特点:
可以使蚂蚁系统找出更优的解 找到这些解的时间更短 精英蚂蚁过多会导致搜索早熟收敛
蚁群系统
蚁群系统(Ant Colony System, ACS)是由 Dorigo和Gambardella在2019年提出的
蚁群系统做了三个方面的改进:
长度
局部更新规则可以有效地避免蚂蚁收敛到同一路径
最大-最小蚂蚁系统
蚁群算法将蚂蚁的搜索行为集中到最优解的 附近可以提高解的质量和收敛速度,从而改 进算法的性能。但这种搜索方式会使早熟收 敛行为更容易发生
最大-最小蚂蚁系统(Max-Min Ant System, MMAS)能将这种搜索方式和一种能够有效避 免早熟收敛的机制结合在一起,从而使算法 获得最优的性能
信息素轨迹的限制
MMAS对信息素轨迹的最小值和最大值分别施加
了 m i n 和 m a x 的限制,从而使得对所有信息素轨
迹 i j ( t ) ,有
m inij(t) m ax
MMAS收敛:在每个选择点上,其中一个解元素
上的轨迹量为 m a x ,而所有其他可选择的解元素上
的轨迹量为 m i n 。
最大-最小蚂蚁系统
MMAS和AS主要有三个方面不同:
为了充分利用循环最优解和到目前为止找出的最优 解,在每次循环之后,只有一只蚂蚁进行信息素更 新。这只蚂蚁可能是找出当前循环中最优解的蚂蚁, 也可能是找出从实验开始以来最优解的蚂蚁
为避免搜索的停滞,在每个解的元素上的的信息素 轨迹量的值域范围被限制在 [min,max] 区间内
将信息素轨迹初始化为 m a x
信息素轨迹更新
在MMAS中,只有一只蚂蚁用于在每次循环后更新 信息轨迹
经修改的轨迹更新规则如下:
ij(t1) ij(t)bestij
bestij 1f(sbest)
f ( s best ) 表示迭代最优解或全局最优解的值 在蚁群算法中主要使用全局最优解,而在MMAS中
若MMAS收敛,通过始终选择信息素量最大的解 元素所构造的解将与算法找出的最优解相一致
信息素轨迹的限制
m a x 的选取
t
maxij (t)
i1
tiபைடு நூலகம்
1
f (sopt)
其 中 , f ( s o p t ) 为 对 于 一 个 具 体 问 题 的 最 优 解
蚂蚁系统中的精英策略
每次循环之后给予最优解以额外的信息素量 这样的解被称为全局最优解(global-best solution) 找出这个解的蚂蚁被称为精英蚂蚁(elitist ants)
带精英策略的蚂蚁系统
信息素根据下式进行更新
ij(t 1 ) ij(t)iji* j
m
其中 ij
改进的蚁群算法
Macro Dorigo
Gambardella
带精英策略的蚂蚁系统
带精英策略的蚂蚁系统(Ant System with elitist strategy, ASelite)是最早的改进蚂蚁系统
遗传算法中的精英策略
传统的遗传算法可能会导致最适应个体的遗传信息丢失 精英策略的思想是保留住一代中的最适应个体