一种改进的蚁群算法
第27卷增刊哈尔滨工程大学学报
Vbl.27
Suppl.2006年7月
Joumal
of
Harbin
Engineering
UniVersity
Jul.2006
一种改进的蚁群算法
张昕1,一,彭
宏1,郑启伦1
(1.华南理工大学计算机科学与工程学院,广东广州
510640;2.华南农业大学理学院,广东广州
510642)
摘要:蚁群算法是一种新的进化算法,其基本思想是模拟蚂蚁的合作行为.蚁群算法已成功地应用于许多优化问题,成为求解组合优化问题的新的进化算法.最新研究表明蚁群算法是一种基于群体的强鲁棒性的进化算法.但是,蚁群算法也有收敛速度慢,容易陷入局部最优的缺点.为了克服这些缺点,吸取微粒群算法的优点,提出了一种改进的蚁群算法.实验结果表明改进算法是有效的,与标准的蚁群算法相比,算法性能得到了明显改善.关键词:蚁群算法;TsP问题:信息素:微粒群算法中图分类号:TP3叭.6
文献标识码:A
文章编号:1006.7043(2006)增一0518.05
Animpr0Vedantcolonyalgorithm
ZHANGXinl…,PENGHon91,ZHENG
Qi—lunl
(1.c011egeofComputerScienceaIldEngineering,SoumCmnauIliVers时ofTechnology,GuaIlgzhou510640,china;2.collegeofSciences,SoumCllina
A鲥cultumlUIliVers咄GuaIlgzhou510642,ClliIla)
Artificialantcolonyalgori廿lm(ACA)is
newintheevolution
computing.Thebasicideais
to
imitatethecooperatiVe
behaviorofantcolonies.ACAhasacllievedwidespreadsuccess
insolving
dif艳rentoptiIIlizationproblems,especiallyin
solving
combinatorialoptiIIlizationproblems.Theprimarystudyshowsitis
a
betterrobust
algoritllmbased
on
population,butit
hassomeshortcorningssuchas
itsslow
computingspeed,anditiseasy
to
fallinlocalpedkinla唱escaleproblem.TboVercome
thesedeficiencies,an
impmved锄t
colony
alg砸mm
is
designed
mmughabstractingmeadvantages研panicleswann
optiIIlization(PS0).The
resultsof
meexperimentsuggestmatmeimprovedalgoritllmise仃ectiVe.Results
are
VeryprolIlising
comparedtomecorrespondingresultsofmestaIldardantcolonyalgoritllm,indicatingthesuperiorityoftllenewscherne.Keywords:antcolonyalgoritIlm(ACA);TSP;phemmone;particle
swam
op血1lization(PSO)
蚂蚁在寻找食物时,总是能找到较短的路径.MaX—Min
AS(MMAS)‘71、D耐go,GaIIlbardella提出
受此启发,意大利学者MacroDorigo,VMaIliezoo,
的AJltColonySystem(ACS)删、结合Q—Leaming提
A.Colomi等于20世纪90年代提出了Ant
出的Ant.Q算法【9]等等.本文吸收微粒群算法的精华Svstem(AS)【lJ.蚁群算法通过由候选解组成的群体的
思想,提出了一种能够避免过早收敛的改进的蚁群进化过程来寻求最优解,特别适合于在离散优化问算法.实验结果表明,该算法具有较好的性能.
题的解空间进行多点非确定性搜索,已应用于旅行商问题、二次分配问题等多个经典离散组合优化问1基本的蚁群算法
题【2。6J,成为求解组合优化等NP-hard问题的一种蚁群算法是对真实蚁群协作过程的模拟.每只非常有潜力的演化算法.但该算法存在进化速度较蚂蚁在候选解的空间中独立地搜索解,在所寻得的慢,容易陷入局部最优的问题.因此,许多学者对蚁解上留下一定的信息量.解的性能越好,蚂蚁留在其群算法提出了改进方法.如Stntzle,Hoos提出的
上的信息量也越大,而信息量越大的解被再次选择的可能性也越大.在算法的初级阶段,所有解上的信收稿日期:2006.03—11。
息量都是相同的,随着算法的推进,较优解上的信基金项目:国家自然科学基金资助项目(30230350)息量逐渐增加,算法最终将收敛到最优解或近似最
作者简介:张昕(1968.),男,讲师,博士研究生;
彭宏(1958一),男,教授,博士;优解.
郑启伦(1938一),男,教授.
万
方数据Abstract:
增刊张昕,等:一种改进的蚁群算法
・519・
以求解平面上,z个城市的TSP问题为例说明蚁群系统的基本模型.旅行商问题就是给定,z个城市的位置和两两城市之间的距离,要求确定一条经过各城市当一次且只有一次的最短路线.其图论描述为:给定图(V,A),其中V为顶点集,A为各顶点相互连接组成的边集,已知各顶点问的连接距离,要求确定一条长度最短的回路,即遍历所有顶点一次且只有一次的最短回路.
为了更好地说明问题,首先引入如下记号:m:蚁群中地蚂蚁数量;
反(f):f时刻位于城市i的蚂蚁的个数,m=∑包(f);
扛1
吒:两城市f和J之间的距离;
吃j:边(f,J)的能见度,反映城市i转移到城市
J的启发程度,一般可初始化为彤d;
互,:边(f,J)上的信息素轨迹强度;
△互,:蚂蚁忌在边(f,J)上留下的单位长度轨迹信息素量;
硭:蚂蚁五:的转移概率,-『是尚未访问的城市.
每只蚂蚁都是具有如下特征的简单实体:
1)在从城市i到城市歹的运动过程中或是在完成一次循环后,蚂蚁在边(f,,)上释放一种物质,成为信息素轨迹;
2)蚂蚁按概率选择下一个将要访问地城市,这个概率是城市间的距离和连接两城市的路径上存有的轨迹量的函数;
3)为了满足问题的约束条件,在完成一次循环以前,不允许蚂蚁选择已经选择过的城市.
初始时刻,各条路径上的信息素量相等,设互,=C(C为常数).蚂蚁七(忌=1,2,3,…,m)在运动过程中根据各条路径上的信息素量决定转移方向.蚁群系统使用随机比例转移规则进行状态的转移.转移规则给出了位于城市f的蚂蚁尼选择移动到城
万
方数据市歹的概率.在f时刻,蚂蚁尼在城市i选择城市歹
的转移概率群为群(f)=
<
f管(f)劈(f)/∑《(f)磋(f),.,∈a110wed
,*甜fow耐
【
o.omers式中:a110wed={O,1,…,,z一1)称为禁忌表,表示蚂蚁尼下一步允许选择的城市.在蚁群系统中其状
态的转移规则采用伪随机比例规则,按如下所示:
』m:axt—揣,J∈a,bwed,g≤g。
“allo”ed
if
【s.
omersaccordingto(1)
式中:q是一个在【0,l】区间均匀分布的随机数,吼是一个参数(O≤吼≤1),s为根据式(1)给出的概率分布所选出的一个随机变量.参数吼的大小决定了利用先验知识与探索新路径之间的相对重要性:每当一只位于城市,.的蚂蚁选择下一个将要到达的城市s时,它选取一个随机数O≤口≤1.如果g≤吼,根据先验知识选择最好的边,否则按式(1)概率选择
一条边.
经过咒个时刻,蚂蚁完成一次搜索周期,在路径上的信息素量的改变可根据下面式子进行局部更新:%@+1)=
j,(1一∽‘乃(f)+△乃(f,f+1),(f,J∈ksttravel)
0,
omers
△乃(f,f+1)=Q/kstlen.
(i,歹∈kst删)
(3)
式中:fb。。。一。表示这只蚂蚁所经过的最好路径,
哈尔滨工程大学学报第27卷
乇删。表示这条路径的长度.f表示当前的代数,口
表示挥发系数,Q为一信息量增加常数.
当m只蚂蚁都经过~次搜索周期后,在路径上的信息素量的改变根据下面式子进行全局更新:勺O+1)=
,(1一p)‘乃(})+△乃(f,f+1),(i,J∈g—删)
(4)~
O.
otllers
△弓(六f+1)=Q/g一.(f,歹∈gbes。删)
式中:g№。。。。表示所有蚂蚁所经过最好路径,gk。如。表示这条路径的长度.f表示当前的代数,p表示挥发系数,Q为一信息量增加常数
2改进的蚁群算法
蚁群算法有很多优点:如鲁棒性好、智能搜索、全局优化、稳健性强、分布式计算、易与其它方法结合等.但是它也有过早陷入局部最优的缺点.为了解决这个问题,本小节吸收了微粒群算法的精华思想,提出了一种能够避免过早收敛的改进算法.
本小节主要对蚁群算法中的式(2)中的参数%的设置进行了改进,还对信息素的局部更新规则和
全局更新规则增加了参数c1,C,W的控制.改进后
的算法的吼不是一个恒定的值,而是一个随着求解代数的增加逐渐减少的变量.其变化式子如下:
q0=A+O×口)/瓦。.
(5)
式中:}为当前求解的代数,AB为固定参数,一般取A=0.2,B=0.7.此时‰的取值范围是:【A’A+B].通过这样的设置有利于消除参数g。对算法的影响・一般在开始阶段go越小,则有利于算法展开对新路径的探索,避免过早陷入局部最优.而在
万
方数据结束阶段qo越大,则有利于算法的全局收敛.因此,一般来说吼的变化范围越大,则算法的搜索范围越
大.
本小节还对算法中的信息素的局部更新规则
和全局更新规则增加了参数Cl,c2,w的控制.改
进后的信息素更新规则如下:
%O+1)2
P卅△∥+1xa小患咄嘲删’㈤
△乃(f,f+1)=C1・△毛(f,f+1)+c!・△弓(f,f+1),△毛o,f+1)=Q/gbesⅡ。,
(f,J∈g鲰。。1)
△吒(f,H1)=Q/kden,(f,歹∈k。一。)
式中:k。岫。。,gk。。哪。。表示蚂蚁局部最优路径和所有蚂蚁所经过最好路径,zbc。Ⅱen,gbe。。len表示这
条局部最优路径和全局最优路径的长度.f表示当
前代数,Q为一信息量增加常数.W,c】,C2为新增
控制参数,控制信息素的挥发和局部最优,全局最优路径对信息素增加的贡献.W为一随着代数增加
而逐渐递减的挥发变量.它表示随着代数的增加,信息素的保留越来越小,挥发逐渐变大.G,C为【0,2】之间随机变动的随机数,控制信息素增加,
能够使各路段的信息素分布更均匀,不会出现最优
路径的信息素远远大于其它路径的情况.这样可以有效避免陷入局部最优.W的变化表达式如下:
w=A—O×B),瓦。.
(7)
式中:f为当前求解的代数,A,曰为固定参数,一般取A=0.9,曰=O.5.此时W的取值范围是:
【A一曰,A].
3
仿真实验
本实验所使用的最优化测试问题是:将处于不
同位置的忍个设备分配给,2个城市,使得分配的代价最小,即要使设备到它所分配的城市的距离之和最短.其数学描述如下:
增刊
张听,等:一种改进的蚁群算法
・521・
,=IIlin(∑嘞)J=1,2,3…,,1.
(8)
f_l
表1城市的位置数据
T妯le
1
L眦ationdataofthe
ci6es
万
方数据表2设备的位置数据
7rabk2
Loca60ndataoftheequipments位置
维1
维2
维3
维4
维5
维6
五6.13282119.53382215.516566.3.74102812.4947“
3825129五9.9586758.29623711.36591127107957.4385565.109838j§10.015955.540492.5.338215
7.18335410.442253
lO.78373l』;19.982612.73369110.77“81
.6.614953.2“125
2.196041蔗4.84013618.59058915.552817-9.85572413.606902
2.928297五16.080621.6.777351—6.70557519.372145
17.364印5
8.055535石0.73443l13.67142813.514101.2.6237”
14.3261077’364605石14.0223318.742116_4.7995362.65787
.8.063516.68455蔗1.4152118.702248.700792.28“92
.7.666933
14.983687mo-1.50946l7.200754_4.14630616.445298—0.537954.9.382295五,8.809541一O,89610713.1341993.0877983.468426
8,01276丑2
18.7290656,4373235.6376429.8789242_300“2
,0.242877屁
4.594359.3.401726-2.22866717.498731.6.030595.1898789五・8.1236861.161459-2.359168-6.9883270.1428263.925904Z52.921047
11.55513719.92169917.09780307409569.216994丑6
2.4889“
14.141231.2.385993O7068819.333726.503299届
一9.43159616.21257217.746683
-56202420.66918—7.415356五8
—5.179439
O.442978
10.钾6329
1.09113311.492061.7.536432托
lO.571304—0.66265515960272.596244—8.19401
1
.2.751396石o-97636484.7038357.4523317.440731.9.0538684.136156石l3.71202816.076996一1.2100349.33009510.5270790.563329石z-9.1502947.0601032.8064968.5557896.9970277.34213蔗a
15-894294
—0,06235—955049718.83419l10.9606326026245五
一5.9015“
4.5979845.0264633.211774.8.726892.819546屁7.7546586.274922
一O.847531
一O.4806791.7893138.554339屁18.48618911.625462一1.15710910.5691291.73348818.789966局14.039005-O.9207578.2737620.568404
3.176249—7.337055’
屁2.35481814.82346l17.78800810.2378020.4951799.025593局13.3894.8.954542-9.05241815.0888133.255274.5.030088‰
10.2508521.8335396.80055l3.8860295.810919.7.145654点,一3.35895993692510.08482611.53918717.6198079.889074石z5.13448915.676793—5.5941421.31371.3.6736030.769956j;3
-7.632857
6.20749714.831436
4.9l1187
15.924019.O.727905晟17.9330∞
9.35692
16.076996-9.43522i
5.002538.0.063075民
1.99594
18,217212-9.703473
2.31059210.2501278.126586屁5.2555“5.56“171.674763
O.267527.5.553542
18.165736
局8.317987—7.2399043舶915l
6.546799—2.327992.5.673893凰18.“35363.691003
—3.901254
8.20996211.91981412.427318局O.7“2311.199159-4.72848516.64256.791126一l,671138‰
7.54803218.379613-3.593127
_4.039005
.O23417710.197926五-18.29043714.42978319.711448—3.2103248.3310376.387298五z
lO.715581.929239O.495901419.997l
3.667803
16.843326
%1.987965
—1.178134—7.91053418.950192.O.85加56
.4-3“533
氨
一8.“3413
—8.774016
6.395998
11.764663—7.031828I945915五s
8.56883911.216559-2.03871516.021895
0.045675
.0.302327凰
9.0901181.2680356.59102416.828101.7.6314078.02436丑,
13.4901766.02943512.467194-6.061771.207859一1.972015‰
9.938375lO.068151.7.0691036.14732I11.1636344313057凰1.563837.2.94642242528823.921554.8.977742O.421228届
3522802
0.81128l
1.605887
2.455593
—5.905894
10.116726
本实验所采用的数据是50个6维数据.表1表示50个城市的位置.表2表示50个设备的位置.
・522・
哈尔滨工程大学学报第27卷
实验参数设置为蚂蚁的数目为50个,cl=2,c2=2,Q=100,口=1,夕=2,蜴=100,%=0.2~0.9,Wr_0.9~0.5实验结果如表3.
实验参数设置为蚂蚁的数目为50个,C1=2,c:=2,Q=100,口=1,∥=2,Q0=100,qo=0.2~O.9,诳=0.9~O.5,实验结果如表3.
表3实验结果
1’able3
ExperimentresIllts
比较值原始的蚁群算法
改进的蚁群算法
100组解的平均值869.6717348820.0338046100组解的最优值844.365880
796.526976
问题的最优值
781.772806
从实验结果来看,改进后的蚁群算法无论是最优值的方面还是在平均值方面都比原始蚁群算法要好.改进后的蚁群算法能够扩大最优解的搜索范围,有效地避免算法过早陷入局部最优的情况的出现.4
结束语
针对蚁群算法容易过早陷入局部最优的缺点提
出了一种新的改进算法.实验证明了这种改进的有效性和正确性.
没有对蚁群算法的各参数的设置进行研究,只是根据以往的经验来确定这些参数的值.因此如何实现这些参数的合理的搭配,将成为下一步具有重要意义的研究方向.另外,对算法所作的改进进行深入的数学理论研究和证明,并尝试寻找更优的改进方案,也将成为下一步值得研究的内容.
万
方数据参考文献:
【11
DORIG0
M,Ⅳ【ANIEZZ0v’COLORNI
A.The
ant
system:optiIIlizationbya
c010nyofcoopefating
agents【J】.
ⅢEE
TraIlsactionson
Systems,MaIland
CVbemetics,
Part.B。1996,26(1):l—13.
陀1
DORIGo
M,CAR0
G
D,GAMBARDELLALM.Ant
algorimms
fordiscrete
optirIlization【J】.Artificial
Life,
1999,5(3):137.172
【3]
LEGIⅡZAMON
L
M,MICHALEWICZ
Z.Anewversionof
ant
systemfDrsubsetpmblems[J】.
Proceedingofthe
1999Congresson
EVolutionaryComputation,1999,2:
1459.1464.
『41GAMBARDELLA
L
M,TAILLARDED,DORIGo
M.
Antcolonies
forⅡlequadraticassignmentproblem【J】.
Joumalof出eoperationalResearchSociety'1999,50(2):
167.176.
f51
MAN狂ZZOV
DoRIG0
M,COLORNI
A.A120desk:an
experiⅡlentalcomparisonofeightev01utionaryheuristics
apphed
to
mequadraticassignmentJo啪a1problem【J】.European
of0perational
Research,1995,8l(1):188—204.
[6】李士勇.蚁群算法及其应用[M】.哈尔滨:哈尔滨工业
大学出版社,2004.[7】
STUTZLET,HOOSH.Max-rIlin
ant
system【J】.Future
GenerationComputerSystems,2000,16(8):889.914.
『81
DORIG0
M,GAMBARDEU。ALM.Ant
colony
svstem:
a
co叩erative
le锄ing
approachtothetraVelingsalesm锄
problem『J1.IEEE
Transactions
on
Evolutionarv
Computation,1997,1(1):53—66.
『91
DORIGo
M,GAMBARDELLAL
M,MmDENDoI己F
M,STUTZLET.Guesteditorial:specialsection
on
antcol伽v
optifllizat主onⅢ.
IEEE
Transac£ions
on
EvolutionaryComputation,2002,6(4):317—319.
一种改进的蚁群算法
作者:作者单位:
张昕, 彭宏, 郑启伦, ZHANG Xin, PENG Hong, ZHENG Qi-lun
张昕,ZHANG Xin(华南理工大学,计算机科学与工程学院,广东,广州,510640;华南农业大学,理学院,广东,广州,510642), 彭宏,郑启伦,PENG Hong,ZHENG Qi-lun(华南理工大学,计算机科学与工程学院,广东,广州,510640)哈尔滨工程大学学报
JOURNAL OF HARBIN ENGINEERING UNIVERSITY2006,27(z1)5次
刊名:英文刊名:年,卷(期):被引用次数:
参考文献(9条)
1. DORIGO M;MANIEZZO V;COLORNI A The ant system:optimization by a colony of cooperating agents1996(01)
2. DORIGO M;CARO G D;GAMBARDELLA L M Ant algorithms for discrete optimization 1999(03)3. LEGUIZAMON L M;MICHALEWICZ Z A new version of ant system for subset problems[外文会议] 19994. GAMBARDELLA L M;TAILLARD E D;DORIGO M Ant colonies for the quadratic assignment problem[外文期刊]1999(02)
5. MANIEZZO V;DORIGO M;COLORNI A Algodesk:an experimental comparison of eight evolutionary heuristicsapplied to the quadratic assignment problem[外文期刊] 1995(01)6. 李士勇 蚁群算法及其应用 2000
7. STUTZLE T;HOOS H Max-min ant system[外文期刊] 2000(08)
8. DORIGO M;GAMBARDELLA L M Ant colony system:a cooperative learning approach to the travelingsalesman problem[外文期刊] 1997(01)
9. DORIGO M;GAMBARDELLA L M;MIDDENDORF M;STUTZLE T Guest editorial:special section on ant colonyoptimization 2002(04)
本文读者也读过(1条)
1. 张军英. 敖磊. 贾江涛. 高琳. ZHANG Jun-ying. AO Lei. JIA Jiang-tao. GAO Lin 求解TSP问题的改进蚁群算法[期刊论文]-西安电子科技大学学报(自然科学版)2005,32(5)
引证文献(6条)
1. 张侠 基于最大最小蚁群算法的TSP问题求解[期刊论文]-计算机光盘软件与应用 2010(15)2. 张侠 基于最大最小蚁群算法的TSP问题求解[期刊论文]-计算机光盘软件与应用 2010(15)3. 杜波. 邵春福 基于蚂蚁算法的用户平衡分配方法研究[期刊论文]-物流技术 2009(12)4. 梅红. 李俊卿 蚁群优化算法研究综述[期刊论文]-机电一体化 2010(11)
5. 雷筱珍. 赖万钦 一种基于信息素的FCM蚁群聚类算法[期刊论文]-安阳工学院学报 2009(2)
6. 范展. 梁国龙. 林旺生. 刘凯 求解TSP问题的自适应邻域搜索法及其扩展构[期刊论文]-计算机工程与应用2008(12)
本文链接:http://d.g.wanfangdata.com.cn/Periodical_hebgcdxxb2006z1110.aspx