蚁群算法

来源:互联网 发布:梦龙网络计划编制系统 编辑:程序博客网 时间:2024/04/30 01:03

一、蚁群算法概述

每只蚂蚁独立寻找路径,在寻找的过程中留下信息素,并且引入负反馈机制,即信息素会随着时间的流逝而挥发。其他蚂蚁根据信息素的多少进行选择直到到达目的地。在到达目的地时散发的信息素最多。

二、需要使用到的参数

1.蚂蚁数量N

2.蚂蚁能观察到的范围半径

4.蚂蚁自身:存储自己走过路径的信息素

3.启发因子:信息素的重要程度

4.期待因子:反应了期待因子的重要性,它的值越大,越接近贪心规则

5.消散因子:反应了路径上信息素消散程度的快慢。

三、用蚁群算法解TSP问题

1.      初始化

每只蚂蚁随机选择一个点作为起始点。

2.      为每一只蚂蚁选择下一个节点

首先根据公式(1)计算蚂蚁k从城市i转移到城市j的概率。然后利用轮盘赌给蚂蚁选择的下一个要走的城市。

                (公式1)

其中表示城市在t时刻的信息浓度,是城市之间的距离的倒数。α和β分别是启发因子和期待引起,启发因子反映的是信息素的重要程度,期待因子反应的是自身选路的重要性。

3.      更新信息素表

根据公式(2)对信息素表进行更新。

                                    (公式2)

其中为时刻城市i与j之间的信息素浓度,ρ 为信息素消散因子, 表示经过一次迭代之后的信息素增量,如果ij之间有蚂蚁走过,那么每只蚂蚁给这条路径的增量是该路径长度的倒数。

4.      迭代直到满足终止条件

迭代500次。

5.      输出最优值

0 0
原创粉丝点击