(完整版)蚁群算法的数学模型
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
蚁群算法的数学模型
蚂蚁),2,1(k m k ⋅⋅⋅=在运动过程中,运动转移的方向由各条路径上的信息量浓度决定。为方便记录可用),,2,1(t m k abu k ⋅⋅⋅=来记录第 k 只蚂蚁当前已走过的所有节点,这里可以称存放节点的表为禁忌表;这个存放节点的集合会随着蚂蚁的运动动态的调整。在算法的搜索过程中,蚂蚁会智能地选择下一步所要走的路径。
设 m 表示蚂蚁总数量,用)1,,1,0,(d -⋅⋅⋅=n j i ij 表示节点 i 和节点 j 之间的距离,)(ij t τ表示在 t 时刻ij 连线上的信息素浓度。
在初始时刻,m 只蚂蚁会被随机地放置,各路径上的初始信息素浓度是相同的。在 t 时刻,蚂蚁 k 从节点i 转移到节点 j 的状态转移概率为
⎪⎪⎩
⎪⎪⎨⎧=∈=∑∈other p allowed t t t t k ij k allowed k ij ij ij ij k ij ,0j ,)
()()()(p k βαβαητητ ()1-2 其中,{}k k tabu c allowed -=表示蚂蚁 k 下一步可以选择的所有节
点,C 为全部节点集合;α为信息启发式因子,在算法中代表轨迹相对重要程度,反映路径上的信息量对蚂蚁选择路径所起的影响程度,该值越大,蚂蚁间的协作性就越强;β可称为期望启发式因子,在算法中代表能见度的相对重要性。ij η是启发函数,在算法中表示由节点i 转移到节点 j 的期望程度,通常可取ij ij d /1=η。在算法运行时每只蚂蚁将根据(2-1)式进行搜索前进。
在蚂蚁运动过程中,为了避免在路上残留过多的信息素而使启发
信息被淹没,在每只蚂蚁遍历完成后,要对残留信息进行更新处理。由此,在t+n 时刻,路径(i,j)上信息调整如下
()())()(1t t n t ij ij ij ττρτ∆+⨯-=+ (2-2)
)()(1t t m
k k ij ij ∑=∆=∆ττ (2-3)
在式中,常数 ()1,0
∈ρ表示信息素挥发因子,表示路径上信息量的损耗程度,ρ的大小关系到算法的全局搜索能力和收敛速度,则可用
ρ-1代表信息素残留因子,)(t k ij τ∆表示一次寻找结束后路径(i,j)的信
息素增量。在初始时刻()00=∆ij τ,)(t k ij τ∆表示第 k 只蚂蚁在本次遍历结束后路径(i,j)的信息素。
由于信息素更新策略有所不同,学者Dorigo M 研究发现了三种不同的基本蚁群算法模型,分别记为“蚁周系统”(Ant-Cycle)模型、“蚁量系统”(Ant-Quantity)模型及“蚁密系统”(Ant-Density)模型,三种模型求解 )(t k ij τ∆方式存在不同。
“蚁周系统”(Ant-Cycle)模型
⎪⎩⎪⎨⎧=∆other L Q k k ij ,0,τ第k 只蚂蚁走过ij (2-4)
“蚁量系统”(Ant-Quantity)模型
⎪⎩⎪⎨⎧=∆other d Q ij k ij ,0,τ第k 只蚂蚁在t 和t+1之间走过ij (2-5)
“蚁密系统”(Ant-Density)模型
⎩⎨⎧=∆other Q k
ij
,0,τ第k 只蚂蚁在t 和t+1之间走过ij (2-6) 从上边各公式可以看出三种模型的主要区别是:“蚁量系统”和“蚁密系统”中,信息素是在蚂蚁完成一步后更新的,即采用的是局部信息;而在“蚁周系统”中路径中信息素是在蚂蚁完成一个循环后更新的,即应用的是整体信息。在一系列标准测试问题上运行的实验表明,“蚁周系统”算法的性能优于其他两种算法。因此,对蚂蚁系统的研究正朝着更好地了解“蚁周系统”特征的方向发展。