(1)解的构建
设有 只蚂蚁并行的构建解,它们被随机地放置在不同的城市中。在解的构建的每一步中,每一只蚂蚁都按照一个称为随机比例规则的行为选择规则,来决定下一步移向哪一个城市。若蚂蚁 当前位于城市 ,则选择城市 作为下一个访问城市的概率是:
(1-5)
其中 ,代表一个预先给定的启发式信息, 代表城市 和城市 之间的距离; 和 是两个参数,它们分别代表了信息素和启发式信息的相对重要程度; 代表了位于城市 的蚂蚁 可以直接到达的相邻城市的集合。在这个概率规则下,选择某一条边 的概率由该边所对应的信息素 以及启发式信息的值 决定。
每一只蚂蚁 都维护一个记忆存储体 ,按照先后访问的顺序记录所有已经访问过的城市序号。记忆存储体 还可以在蚂蚁构造完路径后,用来计算路径的长度,还可以重新遍历该路径并释放信息素。
(2)信息素的更新
当所有蚂蚁都构建好路径后,各边上的信息素将会被更新。首先,所有边上的信息素都会减少一个常数因子的大小,然后在蚂蚁经过的边上增加信息素,信息素的蒸发按照下式进行:
(1-6)
其中 是信息素的蒸发率,有 。参数 是为了避免信息素的无限累计,而且还可以使得算法不仅仅局限于某一搜索区域,扩大搜索范围。
蒸发步骤之后,所有蚂蚁将会在它们所经过的路径上释放信息素:
(1-7)
其中 是第 只蚂蚁向它经过的边释放的信息素量。
(1-8)
其中 代表第 只蚂蚁建立的路径 的长度,即在 中所有边的长度之和, 表示信息素强度,它在一定程度上影响算法的收敛速度。根据式(1-8)可以看到蚂蚁构建的路径越好( 长度越小),路径上的各边所释放的信息素越多。一般而言,如果一条边被更多的蚂蚁选择,而该边所在的路径总长度越短,那么这条边就会获得更多的信息素,在以后的迭代中,它将会被选中的可能性将越大。
根据信息素更新策略的不同,M。Dorigo 给出了三种不同的算法模型,它们的区别在于表达式(1-8)的不同。上式(1-8)所示的模型,称之为蚂蚁周期(Ant-Cycle)模型,还有两种分别为蚂蚁数量(Ant-Quantity)和蚂蚁密度(Ant-Density)模型。来*自~优|尔^论:文+网www.youerw.com +QQ752018766*
在蚂蚁数量(Ant-Quantity)模型中:(1-9)
在蚂蚁密度(Ant-Density)模型中:(1-10)
由于蚂蚁数量模型与蚂蚁密度模型在算法中的性能低于蚂蚁周期模型,所以这两种模型逐渐的被淘汰,以后的算法中,一般使用的是蚂蚁周期模型。
2。4蚁群算法的算法实现
蚁群算法与其改进算法的比较MATLAB程序(4):http://www.youerw.com/jisuanji/lunwen_86675.html