蚁群算法学习

本文介绍了作者在研究生期间使用蚁群算法进行复杂网络社团识别的研究。蚁群算法基于正反馈机制,通过信息素的挥发和增强来寻找最优路径。文章详细阐述了算法原理,包括蚂蚁的运动过程、计算复杂度、存在的问题,以及相关程序的实验。蚁群算法在解决旅行商问题等优化问题中表现出色,但也存在参数设定、搜索时间长等问题,未来可能结合其他优化算法以提高效率。
摘要由CSDN通过智能技术生成

     研究生期间,跟随导师进行复杂网络相关研究,我的方向是复杂网络的社团识别,在阅读相关文献中,决定从蚁群算法入手,利用蚁群算法进行社团划分。以下是近期学习的整理:


 蚁群算法原理

   其原理是一种正反馈机制或称增强型学习系统; 它通过【最优路径上蚂蚁数量的增加→信息素强度增加→后来蚂蚁选择概率增大→最优路径上蚂蚁数量更大增加】达到最终收敛于最优路径上L

        根据仿生学家的研究结果,蚂蚁凭借路径寻优的能力能够找到蚁巢与食物之间的最短路径,其原理在于:蚂蚁在所经过的路径上留下一种挥发性分泌物(pheromone,以下称为信息素),信息素随着时间的推移会逐渐挥发消失.蚂蚁在觅食过程中能够感知这种物质的存在及其强度,并以此来指导自己的运动方向,倾向于朝着这种物质强度高的方向移动,即选择该路径的概率与当时这条路径上该物质的强度成正比.信息素强度越高的路径,选择它的蚂蚁就越多,则在该路径上留下的信息素的强度就更大,而强度大的信息素又吸引更多的蚂蚁,从而形成一种正反馈.通过这种正反馈,蚂蚁最终可以发现最佳路径,导致大部分的蚂蚁都会走此路径.


 蚂蚁运动

       蚂蚁的运动过程可以简单归纳如下:

  1. 当周围没有信息素指引时,蚂蚁的运动具有一定的惯性,并有一定的概率选择其他方向
  2. 当周围有信息素的指引时,按照信息素的浓度强度概率性的选择运动方向
  3. 找食物时,蚂蚁留下家相关的A信息素,找家时,蚂蚁留下食物相关的B信息素,并随着移动距离的增加,洒播的信息素越来越少
  4. 随着时间推移,信息素会自行挥发

 复杂度

它是一种启发式算法, 计算复杂性为o (Nc*n2*m) , 其中Nc 是迭代次数, m 是蚂蚁数目, n 是目的节点数目L



 存在问题

       影响蚂蚁是否能够找到好的最优解,依赖这几个关键因素:

  1. 信息素怎么洒播(比如维持在一个特地范围的值等)
  2. 信息素怎么挥发(除了全局挥发,可以让蚂蚁自身进行局部挥发等手段)
  3. 通过怎样的方式让蚂蚁选择运动方向,减少盲目性和不必要性(给蚂蚁一点点智能和经验)
  4. 给蚂蚁和环境一定的记忆能力能够帮助减少搜索空间
  5. 如何建立正反馈机制,定义启发函数,递增地进行问题求解,并且使得到的解与问题定义中现实世界的情况相对应。
  6. 基于蚁群的算法要初
  • 6
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值