基于LabVIEW平台的SMT贴片机路径优化的说研究.pdf - 第41页

湖北工业大学硕士学位论文 图4.2蚁群算法的程序结构流程图 蚁群算法根据上述公式,当循环的次数达到实现定义好的NCmax时或者所有 的蚂蚁都选择了同一种路径方式时,整个程序终止。其程序的基本步骤如下: 1初始化 参数初始化令t=0和循环次数NC=0,设置最大循环次数NC眦x,将m只蚂蚁 随机地放到n个城市,将每条边(i,j)上的信息素设为一个常数,且△%;0,将 出发点城市设置到禁忌表中 2迭代过程 While not结束条件do 37

100%1 / 65
湖北工业大学硕士学位论文
通常设置0<JD<1;△%表示本次循环中路径(i,j)上的信息素增量,△t,‘表示
第K只蚂蚁在本次循环中留在路径(i,j)上的信息量。
根据信息素更新策略不同,M.Dorigo提出三种不同的基本蚁群算法模型啪1,
分别是Ant—Cycle模型,Ant—Quantity模型及Ant—Density模型,其差别在于△%‘
的求法不同口1l。
在Ant—Cycle模型中
若第k只蚂蚁在本次循环中经过(i,j)
△%‘一J
(4.4)
否则
式中,Q表示信息素强度,它在一定程度上影响算法的收敛速;k表示第只蚂
蚁在本次循环中所走路径的总长度。
在Ant—Quantity模型中
△%‘2{,三二k只蚂蚁在t和t+1经过(i,j)
(4.5)
△巧。:r
若第k只蚂蚁在t和”1经过(i’j)
。4q
1…。’
式(4.5)和式(4.6)利用的是局部信息,即蚂蚁完成一步后更新路径上的信息
素;而式(4.4)利用的是全局信息,即蚂蚁完成一个循环后更新所有路径上的信息
4.4基本蚁群算法的实现
湖北工业大学硕士学位论文
图4.2蚁群算法的程序结构流程图
蚁群算法根据上述公式,当循环的次数达到实现定义好的NCmax时或者所有
的蚂蚁都选择了同一种路径方式时,整个程序终止。其程序的基本步骤如下:
1初始化
参数初始化令t=0和循环次数NC=0,设置最大循环次数NC眦x,将m只蚂蚁
随机地放到n个城市,将每条边(i,j)上的信息素设为一个常数,且△%;0,将
出发点城市设置到禁忌表中
2迭代过程
While
not结束条件do
37
湖北工业大学硕士学位论文
for
i=l
to
n一1
Do(遍历所有城市)
for k=1
to
Do(对M只蚂蚁循环)
for
j=l
to
Do(对n个城市循环)
根据公式(4.2)和(4.3),蚂蚁k选择下一个城市j,将蚂蚁k移
动到城市j,把城市j置入禁忌列表纪6‰;
end
end
end
计算所有蚂蚁求得的回路距离,根据公式(4.2),(4.3)和(4.5),
更新路径(i,j)上的信息激素;
Nc=nc+1:
End
while
3输出结果,结束算法。
4.5基本蚁群算法的优缺点
基本蚁群算法具有很强的发现解的能力,这是因为该算法不仅利用了正反馈
原理b羽,在一定程度上可以加快进化过程,而且是一种本质上并行的算法,不同
个体之间不断进行信息交流和传递,从而能够相互协作,有利于发现较好解。具
有如下的优点:
(1)分布式本质并行算法,它是一种基于种群的进化算法,本质上具有并行
性,易于并行实现。
(2)具有较强的鲁棒性,对其模型稍加修改,便可以应用于其他问题。
(3)易于与其他方法结合,基本蚁群算法很容易与多种启发式算法结合,以
改善算法的性能。
(4)其优化过程不依赖于优化问题本身的严格数学性质,如连续性,可导性
及目标函数和约束函数的精确数学描述。
(5)是一类概率型的全局搜索方法,这种非确定性使算法能够有更多的机会
求得全局最优解∞1。
基本蚁群算法是一种有效的随机搜索算法,但也存在一些缺陷Ⅲ1
(1)与其他方法相比,该算法一般需要较长的时间。
(2)该算法易出现停滞现象,即搜索进行到一定程度后,所有个体所发现的
解完全一致,不能对解空间进一步搜索,不利于发现更好的解。