Ant System:Optimization by a colony of cooperation agents(蚁群优化算法)

蚁群优化算法

M. Dorigo, V. Maniezzo and A. Colorni, “Ant system: optimization by a colony of cooperating agents,” in IEEE Transactions on Systems, Man, and Cybernetics, Part B (Cybernetics), vol. 26, no. 1, pp. 29-41, Feb. 1996, doi: 10.1109/3477.484436.



一、Introduce

蚁群优化算法的特点:

1、通用性,因为它可以应用于相同问题的类似版本; 例如,从旅行商问题(TSP)到非对称旅行商问题(ATSP)有一个直接的扩展。
2、稳健性。 它可以应用于其他组合优化问题,如二次分配问题(QAP)和作业车间调度问题(JSP)。
3、基于群体。 这很有趣,因为它允许利用正反馈作为一种搜索机制。

蚁群优化算法的基本思想:
用来在个体之间传递关于路径的信息,并用来决定去哪里的媒介由信息素踪迹组成。 一只移动的
蚂蚁在地面上放置一些信息素(数量不等),从而用这种物质的踪迹来标记路径。 虽然一只孤立的蚂蚁基本上是随机移动的,但遇到先前铺设的踪迹的蚂蚁可以检测到它,并以很高的概率决定跟随它,从而用自己的信息素加强踪迹。 在这种行为中,跟随一条踪迹的蚂蚁越多,该踪迹就越有吸引力。


二、The ant system

TSP问题:寻找一个最小长度的封闭旅游,每个城镇只可以访问一次的问题。

公式一:痕迹强度更新
在这里插入图片描述

τij:时间为t时边(i,j)上的痕迹强度
ρ:一个系数,代表痕迹遗留,使(1-ρ)代表时间t和t+n之间的痕迹蒸发。ρ必须 < 1,不然会造成痕迹无限积累

公式二:
在这里插入图片描述

在这里插入图片描述
第k只蚂蚁在时间t 和t+n之间铺设在边缘(i,j)上的每单位长度的痕迹物质。

公式三:
在这里插入图片描述

Q:常量
Lk:第k只蚂蚁的旅行长度。

tabu:保存了到时间t为止已经访问的城镇,并禁止蚂蚁在完成n次迭代前再次访问他们。、

公式四:过度概率
在这里插入图片描述

ŋij :能见度,= 1/dij这个量在运行过程中不变。
ɑ、β:控制痕迹强度和可见度的相对重要性的参数。
过渡概率是 能见度和时间t时的痕迹强度之间的权衡。


三、The Algorithm

1、ant-cycle algorithm

  • 算法流程:

    • 1.初始化:
      • 在零点时候,蚂蚁被安置在不同的城镇上,并在边缘上设置痕迹强度的初始值τij(0)。
      • 每只蚂蚁的tabu列表的第一个元素被设置为其起始的城镇。

    • 2.移动
      • 每只蚂蚁从城镇 i → j,选择城镇时的概率由过渡概率决定。
      • τij(t)给出了关于过去有多少只蚂蚁选择了相同的边缘的信息。
      • ŋij表示越靠近一个城镇,它越受欢迎。
      • 当ɑ =0 时,就不再考虑痕迹,会得到一个具有多起点的随机贪婪算法。

    • 3.重复
      经过n次迭代后,(n为城镇数量)所有蚂蚁完成一次旅行,tabu列表被填满。
      • 对于每只蚂蚁,Lk已知,则可以根据公式三更新新的值。
      • 保存蚂蚁的最短路径(Min Lk)。
      • 清空所有的tabu列表。
      • 重复,直到达到最大的NCmax

    • 具体流程
      在这里插入图片描述

  • 时间复杂度

在这里插入图片描述

2、ant-density algorithm

与ant-cycle 的区别:痕迹的更新方式,蚂蚁在每一步都会铺设它的足迹,不需要等待旅行的结束。
在这里插入图片描述
在蚂蚁密度模型中,当一只蚂蚁从 i 到 j 时,边(i,j)上的痕迹增加与dij 无关。

3、ant-quantity algorithm

与ant-cycle 的区别:同上
在这里插入图片描述
在蚂蚁数量模型中,边(i,j)上的痕迹与dij 成反比。也就是说,较短的边被蚂蚁认为是理想的边。

在蚁密模型和蚁量模型中,蚂蚁在建立方案的同时释放信息素,利用的是局部信息,而蚁周模型是在蚂蚁已经建立了完整的轨迹后再释放信息素,利用的是整体信息。

还没写完ww

总结

提示:这里对文章进行总结:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值