蚁群算法
算法简介:
蚁群算法是一种用来寻找优化路径的概率型算法。它由Marco Dorigo于1992年在他的博士论文中提出,其灵感来源于蚂蚁在寻找食物过程中发现路径的行为。
这种算法具有分布计算、信息正反馈和启发式搜索的特征,本质上是进化算法中的一种启发式全局优化算法。
基本原理:
1、蚂蚁在路径上释放信息素。
2、碰到还没走过的路口,就随机挑选一条路走。同时,释放与路径长度有关的信息素。
3、信息素浓度与路径长度成反比。后来的蚂蚁再次碰到该路口时,就选择信息素浓度较高路径。
4、最优路径上的信息素浓度越来越大。
5、最终蚁群找到最优寻食路径。
算法实例:
旅行商问题(TSP)优化
对于每只蚂蚁k ,路径记忆向量 Rk按照访问顺序记录了所有k已经经过的城市序号。设蚂蚁k当前所在城市为i, 则其选择城市j作为下一个访问对象的概率为:
信息素更新
这里m是蚂蚁个数, ρ是信息素的蒸发率,规定0≤ ρ≤1, 在AS中通常设置为 ρ =0.5,Δτij是第k只蚂蚁在它经过的 边上释放的信息素量,它等于蚂蚁k本轮构建路径长度的 倒数。Ck表示路径长度,它是Rk中所有边的长度和。