计算机研究与发展
JournalofComputerResearchandDevelopment
ISSN
1000—1239/CN11—1777/TP
47(3):434—444.2010
基于多粒度的旅行商问题描述及其蚁群优化算法
冀俊忠
黄振刘椿年代启国
100124)
(北京工业大学计算机学院多媒体与智能软件技术北京市重点实验室北京
(jjz01@biut.edu.cn)
An
Ant
ColonyAlgorithmBased
on
Multiple-GrainRepresentationfortheTraveling
SalesmanProblems
JiJunzhong,HuangZhen,LiuChunnian。andDaiQiguo
(BeijingMunicipalKeyLaboratoryofMultimediaandIntelligentSoftwareTechnology,CollegeofComputerScienceandTechnology,BeijingUniversityofTechnology,Beijing100124)
Abstract
Antcolonyoptimization(ACO)is
a
population—basedmetaheuristictechnique
an
tO
effectively
tO
solvecombinationoptimizationproblems.However,itisstilltheperformanceofACOalgorithms.Thoughtheresalesmanproblems(TSPs),thereistimeinordertoget
an
an
are
activeresearchtopichow
improve
manyalgorithmstoeffectivelysolvetraveling
too
applicationbottleneckthattheACOalgorithmcosts
much
optimalsolution.ToimprovethetimeperformanceofACOinsolvinglarge
scaleTSPs,afastalgorithmispresentedinthispaper.Firstly,anovelmultiple-grainrepresentationmodelofTSPsisproposed.Basedcontainssix
on
themodel,flnewalgorithmforTSPsispresented,whichmainly
partition
algorithm
based
on
phases,i.e.agranularity
on
density
clustering,anACO
ACO
algorithmbasedalgorithm
in
the
the
coarse
grain,a
connectionfusion
algorithm
betweentWOgranularities,an
granularities,and
a
same
granularity,aalgorithmamong
subsection
the
optimizationalgorithmregardlessofgranularities.Theanalysisofcomputationcomplexityand
can
experimentalresultsforlargenumberofTSPsdemonstratethattheproposedalgorithmimprovethespeedofconvergencein
contrast
to
greatly
theclassicalACOalgorithm,andishighlycompetitive
intimeperformancecomparedwithsomelatestelitistAC0algorithms.Keywordsoptimization
TSP;multiple-grain
citymodel;ACO
algorithm;clustering
algorithm;subsection
摘要针对蚁群算法在求解大规模旅行商问题(Traveling
SalesmanProblems,TSP)中时间性能方面
的不足,提出了一种快速的求解算法.首先,从TSP问题描述入手,给出了一种新的多粒度的问题描述模型;然后,基于该模型,设计了包括基于密度聚类的粒度划分、粗粒度的蚁群寻优、粒度间的连接、细粒度的蚁群寻优、粒度问可行解的合成以及循环分段优化6个阶段在内的求解算法.算法的复杂度分析及在中、大规模TSP问题上的实验表明:本算法的时间性能不仅比经典的蚁群算法有显著的提高,而且与近年来的一些同类算法相比也具有一定的优势,显示了快速求解大规模TSP问题的能力.关键词旅行商问题;多粒度城市模型;蚁群算法;聚类算法;分段优化
中图法分类号TPl8
收祷日期:2009—03一】】;修回日期:2009—09一01
基金项目:国家自然科学基金重大基金项目(60496322);北京市自然科学基金项目(4083034,4102010)
冀俊忠等:基于多粒度的旅行商问题描述及其蚁群优化算法
旅行商问题TSP是一个经典的组合优化问题.挖个城市的TSP问题求解可描述为:给定一个城市集合V_--{∥,,耽,…,%},求遍历y中所有城市各一次且最后回到出发城市(求解约束)的一个最短旅行的连通图g∈G(V,A),其中G(V,A)为所有满足上述求解约束的连通图集合,A一{ad一(vi,口f)IO<i,歹≤7z,睁!-『)是城市间两两相连的一组边.如果把任意一条边的距离记为d;,=IaiI,则一个解图的数学形式可表示为g=arg
min≥:d口.
譬t‘’(P’^,a
∈譬7
TSP问题的求解是一个典型的NP难问题,由于该问题的求解模型可广泛应用于多种复杂优化问题,故该问题的求解算法一直以来是国内外学者们关注的一个研究热点.然而,在求解TSP问题的过程中,当城市规模n大到一定程度后就会面临“组合爆炸”问题,这时传统的一些启发式搜索就会陷入困境.于是人们结合物理学、生物遗传学、仿生学等领域的研究成果,相继提出了多种元启发式的TSP问题的求解方法,如模拟退火(simulated
annealing)、
禁忌搜索(tabusearch)、遗传演化(geneticevolutionary)、蚁群优化(ant
colonyoptimization)
等算法.其中,蚁群优化算法是20世纪90年代初才被提出的一种新的元启发搜索算法n。2j,其实现机理是通过模拟人工蚂蚁群体在觅食过程中所体现出的智能行为来完成对TSP问题的求解.由于蚁群算法具有良好的鲁棒性、正反馈、分布式及并行计算等特点,所以受到学者们的广泛关注,蚁群算法的理论框架也日渐成熟[3.5].尽管如此,当城市规模竹达到数百后,蚁群算法仍暴露出运行时间过长、难以满足实际应用需求的不足.为此,本文提出了一种新的基于多粒度的TSP问题描述模型的蚁群求解算法.该算法的基本思想是通过对TSP问题进行多粒度的描述。将难解的大规模TSP问题分解为易于求解的小规模TSP问题来求解.首先在粗粒度上完成蚁群寻优以确定粗粒度间的连接,然后在每个粗粒度内进行细粒度的蚁群寻优,实现城市间的连接。最后利用循环分段优化策略来弥补粒度划分对求解精度的影响.由于多粒度的划分大大缩小了原来单粒度问题的规模,所以算法的计算复杂度能大大降低,有效地提高了蚁群算法求解大规模TSP问题的能力.在一些中、大规模的TSP问题上的实验表明:新算法在求解速度上不仅比经典的ACO算法有显著的提
435
高,而且与近年来的一些算法相比也有优势,体现出良好的求解大规模TSP问题的能力.
1
相关工作
迄今为止,针对基本蚁群算法[1](ant
system,
AS)迭代次数多、运行时间长的缺点,国内外的学者们已经提出了许多种新的快速、高效的蚁群算法[6。14。.概括起来,这些算法主要包括3类:1)基于信息素更新机制的改进.通过对信息素生成和更新策略的优化来提高蚁群算法的寻优能力,改善解的全局收敛性.由于信息素是蚁群进行相互交流、完成信息融合并实现群集智能(swarmintelligence)的重要媒介,因此,许多学者对蚁群算法的研究都是围绕信息素的产生和更新策略进行的¨书].2)基于随机搜索机制的改进.由于蚁群算法有易于与其他方法相结合的优点[1],所以不少工作都是对随机搜索过程的控制策略进行调整,提高局部的寻优能力,以减少迭代次数,加速收敛.如文献[9]提出了相遇和分段优化的策略加速了构造解的过程;文献[10]通过变异策略以加快局部搜索;文献[11]将遗传算法与蚁群算法相融合也加快了求解速度.而文献[12]将这2种改进机制相结合,提出了一种基于变异和动态信息素更新的新算法,在时间性能上取得了较大的提高.3)基于启发信息函数的改进.文献[13]利用最小生成树的结构信息来对通用的启发函数进行加权高;文献[14]则采用基于插入准则的GENI思想来代替常用的概率最近邻的启发思想,给出了能够改16]通过对局部最优解进行简单的相交操作得到模寻优算法、粒度间融合算法、滑动循环的分段优化算修正,在求解质量和时间性能上都获得了较大的提善蚁群算法求解质量的GACS算法.此外,文献[15-式或部分解,来减少后期迭代中的城市规模,有效地缩小了原问题的搜索空间。这是蚁群算法求解大规模TSP问题的一种新尝试.基于类似的问题归约思想,本文从问题的描述出发,提出了一种新的基于多粒度TSP问题描述的蚁群优化算法.算法包括基于密度聚类的粒度划分算法、基于粗粒度蚁群寻优的顺序学习算法、粒度间的连接算法、同粒度内的蚁群法6个阶段.新算法的主要特点是:突破了经典的TSP问题的描述模型,给出了一种多粒度的TSP问题描述模型,力求从本质上解决蚁群算法在求解大规模TSP问题时运行时间过长的问题.
计算机研究与发展2010,47(3)
定义1.超城市.在TSP问题二维坐标的平面
2
多粒度TSP问题描述模型
面对复杂的、难以准确把握的问题,人们通常不
上,如果城市的地理位置分布呈现较明显的分簇现象,那么那些具有足够高密度的区域称为超城市
(super
city)或地区(district).一个超城市中包含若
是盲目地追求精确的最佳解,而是通过逐步尝试的办法达到满足一定精度的合理目标[17|.这是一种概略地、由粗到细、不断求精的多粒度分析法,利用它可以避免求解原问题计算复杂度高的困难.换句话说,问题的多粒度描述是降低复杂问题求解计算复杂度的一种有效手段.
蚁群算法的实现机理是利用蚂蚁在觅食途中所释放的信息素来完成个体之间相互的交流和合作,其过程主要包括信息素的更新及以其为基础的状态迁移(蚂蚁选路)2部分.目前,大多数蚁群算法都将信息素的更新视为提高算法性能的关键,却忽视了食物源的分布对蚂蚁选择路径的影响.而生物学家的观察发现,在自然界的真实蚁群的觅食行为中,大部分蚂蚁会优先选择离自己目前位置较近的食物源去觅食,所以如果存在较密集(彼此间距离较近)的几个食物源,那么蚂蚁会优先遍历这几个食物源,等它们枯竭后才去寻找其他食物源.结合蚂蚁觅食的这种现象,我们给出如下假设:
假设1.商人最近城市选择假设.在一个较复杂的、有若干城市的TSP问题中的一条遍历所有城市的最短路径中,城市i连接到城市.f,_『不可能是离城市i最远的那些城市[12.17].于是,行个城市的TSP问题可以按地理位置分布划分为不同的地区(根据相互间的距离),商人下一城市的选择范围局限于离当前城市i较近的某一邻域(地区)的部分城市,商人在访问完该地区的所有城市后才会访问其他地区的城市.
本文使用连接图作为TSP问题可行解的基本数据结构.基于上述假设,下面给出TSP问题可行解的多粒度描述模型的定义:
干彼此距离相近的城市.
定义2.孤立城市.在一个给定的距离(半径)内,与任意城市都不相邻的城市称为孤立城市
(island
city).孤立城市是指在平面上远离其他城市
的城市,它也可看作是仅含1个城市的超城市.
定义3.边缘城市.在一个超城市(地区)中,与其他地区或孤立城市发生连接的城市,称为边缘城市(margincity).根据地区间的连接顺序,一个地区内的2个边缘城市分别称为入区城市(in-districtcity)和出区城市(out-district
city).
定义4.TSP问题的多粒度描述模型.基于上述定义,一个TSP问题的可行解可以表示为一个连
接图gD=g(D,B),其中:D={d。,d:,…,dI}为地区节点的集合,历为地区间两两相连的弧集合,如弧e(di,d,)∈匕表示地区d。和d,之间的一条连
接.任意一个地区di∈D表示TSP问题的可行解内的一个超城市,它可进一步表示为一个从入区城市出发遍历该地区内所有城市后到达出区城市的连接图,即d;=gi(y,E。),其中V为超城市内的城市集合,E。为超城市内城市间连接弧的集合.因此,TSP问题的可行解可进一步表示为一个多粒度的连接图gM—g({gi(V,E。)),E),E为粒度间的连接弧集合,用来刻画超城市与城市间的连接关系.
图1为这种多粒度连接图的TSP解结构描述模型.所求问题的解描述由TSP问题可行解、超城市连接以及城市连接3种描述粒度构成,超城市之间以及超城市内城市间分别以地区级的连接图和城市间连接图描述其连接结构,并且通过入区城市和出区城市完成不同粒度间的连接,最后构成一个多粒度的连接图.
Fig.1
Representationofthe
structure
ofTSPsolutionsbased
ona
multi—grainconnectiongraph.
图1基于多粒度连接图的TSP解的结构描述
冀俊忠等:基于多粒度的旅行商问题描述及其蚁群优化算法
437
通过引人多粒度的TSP描述模型,在TSP问题的求解中,便可达到降低问题规模、减少算法的计算复杂度、进而增进蚁群算法求解能力的目的.
3
粒度TSP问题求解的蚁群算法(ant
based
on
colonyoptimization
multiplegrainrepresentation,ACOMGR),图
2为多粒度TSP问题求解算法的过程图解.从图2可见,ACoMGR算法求得一个满意解需要经过粒度划分算法、粗粒度的寻优、粒度间的连接、粗粒度内的蚁群寻优算法、粒度间可行解的合成、循环分段优化算法等6个关键步骤,下面分别对其进行讨论.
多粒度TSP问题求解的蚁群算法
基于多粒度的TSP问题描述模型,本文给出多
Fig.2
Theoptimization
an
procedurebased
on
multiple
grainrepresentationforTSPs.(a)Grain
partitiont(b)
a
Coarsegrainsearchfor
order;(c)Inter-grainconnection;(d)Finegrainconnection;(e,Constructing
feasible
solution;and(f)Circularsubsectionoptimization.
图2多粒度TSP问题求解算法过程图解.(a)粒度划分;(b)粗粒度的寻优;(c)粒度间的连接;(d)细粒度内的
连接;(e)可行解的合成;(f)循环分段优化
3.1
基于密度聚类的粒度划分算法
粒度的划分是将给定的TSP问题描述转化为
算法1.GPDC(SPfo厂Poi珂fS,Eps,MinPts)./*SetofPointS为TSP中未分区的城市集,Eps和MinPts分别为地区半径和地区内最小城市数*/
{初始化城市的地区标记为UNCLASSFIED;
FORi=1T0SetD,Points.size
多粒度TSP问题描述模型的基础.如图2(a)所示,该算法运行的目的是将原TSP问题描述的粒度变粗以降低原问题的规模.结合城市地理分布的特征,本文根据DBSCAN聚类算法的思想【l引,设计了基于密度聚类的粒度划分算法.采用DBSCAN算法的原因是:1)能将具有足够高密度的区域划分为簇;2)能将相对稀疏的点视为“噪声”,故能够在带有“噪声”的空间点数据中利用类的密度连通性发现任意形状的聚类.换句话讲,该算法能对不同分布的数据进行聚类,符合多粒度的TSP问题描述模型中对超城市和孤立城市的定义.基于密度聚类的粒度划分算法(grain
partitionbased
on
Point=Set砖Points.get(i);
/*返回城市集合的第i个元素*/
IFPoint.D耐=UNCLASSIFIEDTHEN
IFE:cpandDistrict(SetofPoints,Point,
Did。Eps,MinPts)THEN
/*ExpandDistrict函数为一个核心城市构造一个密度相连的城市集合(地区)*/
DistrictId=Districtld+1;/*地区标记更新*/
ENDIFENDIF
densityclustering,
GPDC)的基本思想是:对于一个地区中的每一个核心城市,在其给定距离(半径)的邻域内所包含的城市数不得小于某~个给定的最小数量,具体算法的描述如下:
438
ENDFOR
返回粒度划分结果(孤立城市和地区内城市的地区标记).
)
GPDC算法为了发现一个地区,先从TSP问题的城市集V中任取一个城市口i,利用密度参数判断其是否为核心城市.如果职是核心城市,则在以vi为中心以Eps为半径的区域内所包含的城市数量不少于MinPts,于是算法可以找到一个关于参数Eps和MinPts的地区.如果职是边界点,则在以让为中心以Eps为半径的区域内包含的城市数量少于MinPts,于是可以把让暂时标注为噪声点,然后,继续处理y中的下一个未标记的城市.被标记为噪声点的城市随着划分过程的进行,可能改变标记成为某一地区的元素.在划分完成后,不被任一核心城市密度可达的那些噪声点城市被确定为孤立城市.城市的地区归属与地区的发现和扩展连通都由函数ExpandDistrict()完成【l
81.
3.2粗粒度的寻优及粒度间的连接
经过粒度划分过程,原问题就被归约为规模数大大降低的地区级(粗粒度)和各地区内城市(细粒度)的寻优问题.为了合成问题的解,首先进行粗粒度的寻优以确定地区间的前后连接关系.具体方法是:以孤立城市和各地区的重心(该地区内所有城市坐标的平均)为代表点,通过基本的ACS算法【23求解代表点所构成的新TSP问题的最优路径,从而确定粗粒度的旅行路线,得到各地区与孤立城市间的连接顺序,如图2(b)所示.连接顺序确定后,我们就可以两两进行相邻地区间出区城市和人区城市的连接.具体可分为3种情况.
1)孤立城市与孤立城市相邻时,直接连接.2)孤立城市(q)与某地区(D,)相邻时,利用最近邻原则确定该地区的入(或出)区城市:
。;=argmind*or口{)=argmin巩,
(1)
%6q
1∈D,、≠。;
其中,口{为D,的入区城市(当连接顺序为vi—q),。{)为D』的出区城市(当连接顺序为q一让).
3)两地区D。,Di相邻且Di—D,时,利用式(2)确定地区Di的出区城市以及地区D,的入区城市:
(喃,口{)一arg
min矗。.
(2)
‰∈D。t‰≠吒
%∈DJ
至此,完成了粒度间的连接,如图2(c)所示.
计算机研究与发展2010,47(3)
3.3粗粒度内的蚁群寻优算法
粗粒度内的蚁群寻优算法以入区城市为始点,出区城市为终点,确定地区内城市间的连接顺序,并依此得到该地区中入区城市到出区城市最短的旅行.不同地区内的蚁群寻优过程可并行地进行.在该算法中,我们使用蚁恒模型¨副作为信息素的增量模型,算法描述如下:
算法2.ACACO(k)/*是为区的标识号*/
{
1)初始化阶段:
初始化参数,赋给各条路径相同的信息素浓度,并将m。只蚂蚁放到入区域市上;为每只蚂蚁设置允许访问的城市列表;2)蚁群的一次周游过程(一次迭代):
FORp=1
TO咒。/*遍历该区所有城市,最后
到达出区城市*/
FORq=1TO
m。/*蚁群的一步转移*/
{IFp<巩THEN/*没有遍历完该区所有
城市*/
{按ACS中的转移概率公式Ⅲ选择下一个城市;
完成一步行走,并变更允许访问的城市
列表;}
}
3)本次迭代的信息素的更新:
FoRq=1TOmk
{计算Lq;)/*计算每只蚂蚁的旅行长度*/FOR每条边ad∈glU92U…Ug槭{计算路径巧上新产生的信息素浓度;q(£+1)=(1--p)q(f)+lD・"to;/*ID为挥发系数*/
)/*局部信息素的更新*/
Lbe。畸=Minimum(L裱);/*计算本次迭代的最优值*/
FOR每个ad∈gbe。仲。
{彬”=(1一y)碍u+7・Ar口;/*y为挥发系数*/
f1/(Lbest-iter),当全局最优解包含
△句=<路径口d时;
【0,否则;
)/*全局信息素的更新*/4)判断算法是否结束:IF(结束条件满足)THEN
输出多次迭代后的最优解Lk。n。,;
冀俊忠等:基于多粒度的旅行商问题描述及其蚁群优化算法
ELSE
{迭代次数增l初始化入区城市可访问的城市列表
GOTo
2).)/*继续进行下次迭代*/
}
粗粒度内的蚁群寻优算法完成后,便得到了各地区内城市的连接,如图2(d)所示.3.4可行解的合成
按上述步骤依次完成粗粒度(地区)的寻优、粒度间的连接、粗粒度内细粒度(城市)的蚁群寻优后,就可以通过路径合成得到初始TSP问题的一个可行解.如图2(e)所示.该可行解表示本次周游所有城市后回到出发城市所经过的旅行长度,其计算公式如下:
N
LI=∑Lq+L地区何,
(3)
i皇l
其中N为粒度划分后得到的地区数(含孤立城市),LD为从某地区的入区城市出发遍历完所有该区的其他城市后到达出区城市的最短路径.对于孤立城市Ln=O,L地区问为按照地区连接顺序,所有孤立城市、地区间边缘城市(入区、出区城市)连接的距
离和.
3.5循环分段优化算法
为了提高求解的时间性能,本文通过多粒度的描述模型,人为地将TSP问题分解为较小规模的TSP问题来进行求解.由于原始问题的最优解并不一定是所有小规模TSP问题最优解的简单叠加。所以我们在获得原始问题的一个可行解后,摈弃粒度的划分,采用分段优化算法[9]对TSP问题的可行解进行随机分段、分段始点移动和循环寻优的方法来优化所得到的解,提高可行解的质量.如图2(f)所示,其具体的算法描述如下:
算法3.Subsection-optimization().
{
1)参数初始化:
C。l。=c;/*循环因子*/
Subsection—length=z(n/t;)/*分段长度,t取大于2的整数*/
counter=O;
2)循环分段开始:
WHIL,E(counter≤,l/C。le)
{s£口r£=∞鲫据r・C。心;/*分段始点*/
ACS(start,Subsection
IF(分段寻优结果优于原结果)更换该段的
439
解路径;}
输出分段优化后的结果.
}
算法中函数ACS(start,Subsection—length)是由ACS算法稍加修改后得到,其返回值是蚁群从分段始点出发,遍历该段所有其他城市后到达分段终点所得到的最短路径长度.3.6计算复杂度分析
假设n为原始TSP问题中城市的实际数量,m为用ACS蚁群算法求解时所需的蚂蚁数,ACS算法经过C次迭代后得到最优的解,则ACS算法求解TSP问题的计算复杂度可近似为o(C・n2・优)L6].
下面分析本文算法的计算复杂度:假设经过粒度划分将n个城市分为D个地区,w个孤立城市,
D
即咒=铷+>:咒i(啦为地区i中的城市数量).
葛
1)算法l(粒度划分算法)的计算复杂度是
O(nlog竹)[1引.
2)利用ACS算法进行粗粒度寻优的计算复杂度为0(G・N2・m。),G为粗粒度寻优的迭代次数,N=w+D《,2,且所需的蚂蚁数为m。≤N.由于TSP规模大大降低,故G《C,m。《m,所以有0(Cd・N2・mJ)《o(C・竹2・优).
’
假设第i个地区为粒度划分后最大的地区(含有城市最多),且n;一max{n。)(O<最≤D).由于地区内的寻优可并行进行,故算法2(细粒度寻优)的计算复杂度为o(G・n;・mi),Ci为迭代次数,m,为所需的蚂蚁数,同样由于TSP规模的大大降低,其值远小于o(C・n52・仇).
3)算法3(循环分段优化)的计算复杂度为O(C。。・(nit)2・仇。・惫),其中k为分段循环次数,由于分段使问题规模下降,故C。<C,优。<m,且合理选取参数后可使志/f2<1,故容易使o(C。・(咒/£)2・m。。・志)<0(C・n2・m).
此外,粒度间连接的最大复杂度为0(N・n;),而可行解合成的计算复杂度为0(以).
综上所述,算法总的计算复杂度为:O(nlogn)+0(G・N2・md)+o(N・n;)+o(Ci・n;・mf)+o(以)+0(C。・(nit)2・,,l。・矗)≈惫・O(C。・(n/
f)2・m。。),令c/C。=P,m伽。=q,则算法计算复
杂度可表示为:(k/p・q・t2)・o(C・n2・,,1).显然,与ACS算法具有同级的计算复杂度.但是由于分段优化时至少分2段,故t)-2,而分段后城市规模
440
计算机研究与发展2010,.47(3)
的下降会使迭代次数、蚂蚁数都会减少,有P,q>l,所以通常情况下惫伽・q・t2<1总成立.可见,在TSP问题城市规模较大、分段较多的情况下,合理选取参数后可使O(C・靠2・,,z)成倍地减小.
4.1分段优化策略的作用
为测试分段优化策略对求解质量的作用,我们分别对不含分段优化过程的ACOMGR-1算法和含分段优化过程的本文算法ACOMGR的求解结果进行比较.表1给出了在各种事例最佳的参数配置下的实验结果.其中,最佳的解长度为2种算法各运行10次所得到的最佳值,优化率为2种算法所得的最佳值的差与该问题标准最优解的比率.在相同的运行时间下,ACOMGR算法得到的最优解都明显好于ACOMGR-1算法,这说明分段优化策略能够提高本文所提出的算法的解质量,尤其是在大于400的事例上效果明显.
图3给出了在Prl52问题上2种算法的解图.比较图3中2个解图,正是由于一些局部连接的差异(虚线圆框内的连接部分),导致了2种算法所得到的最优解的不同.
4
实验结果
本部分对新算法的性能进行测试,并给出分段
优化策略对新算法求解质量的影响,本文算法在一些中大规模TSP问题上的实验结果以及与一些最新蚁群算法在求解性能方面的实验比较.实验采用TSPLIB的标准库(来源于http://elib.zib.de/pub/mp—testdata/tsp/tsplib/tsplib.html).实验的运行环境为:操作系统WindowsXP,CPU为P41.8GHz,内存为512MB,算法用VisualC++语言编程实现,实验的最佳参数组合均通过实验确定.
Tablel
ParameterSetsoftheProposedAlgorithmforDifferentInstancesandSubsectionOptimizationResults
表1本文算法在求解不同问题时的参数设置及分段优化的结果
Parameter
Sets
OptimalResults
Q
1
c
EPSMinPts
口
8
p
ACOMGR’1
ACOMGR
Optimal
Rate]%
(a)
of
twosolution
prl52
for
(b)
graphs
on
Fig.3Comparison
tWOdifferentalgorithms.(a)Solutiongraph
withoutsubsectionoptimizationand(b)Solutiongraphwithsubsectionoptimization.
图3在prl52问题上的解图.(a)没有分段优化策略的解图;(b)有分段优化策略的解图
4.2算法总体性能及分析
我们在许多较大规模的TSP问题上进行了大量
的实验,并将本文算法与经典的ACS算法、ACS+20pt、GACS…。和MST—Ants[133等算法进行比较.实
冀俊忠等:基于多粒度的旅行商问题描述及其蚁群优化算法441
验所采用的参数如下:"to=l/nL。,ACS算法的参数设置为口=1,p=2,』D=0.1,y=0.1,而本文算法运行时的参数设置见表1.
在上述参数配置下,我们经过多次实验得到本文算法与ACS算法在各个TSP问题上的求解结果,表2列出了实验的结果.其中,最佳的解长度为2种算法各运行10次所得到的最佳值,运行时间为
Table2
ComparisonofSolvingPerformancefor
得到各自最佳值所需时间的平均值,误差为所得到的最佳值与数据库中该问题的标准最优解之间的相对偏差.从这些事例上的结果可见,本文算法在较短的时间内就能得到误差更小的解,这说明通过粒度划分思想降低TSP问题的规模,大大缩短了寻优时间,提高了搜索效率,并在一些问题上获得更令人满意的解.
ACoMGRandACSAlgorithms
On
表2ACOMGR和经典的ACS算法在不同TSP问题上求解性能的比较
ACSAlgorithm
InstancesofTSP
OptLmum
Solution————
DifferentInstancesACOMGR
Bestlength
Error/
Runtime/s
Best
lengthError/NRuntime/s
如前所述,针对经典的ACS算法在时间性能方面的不足,国内外的许多研究都对它进行了改进,并在一些中小规模的TSP问题上作了测试.其中,在求解Oliver30问题时,文献E8]给出的算法收敛速度可提高约6倍,文献[11]提出的算法收敛速度可提高约11倍;文献[12]给出了一些更好的实验结果,该文所提出的算法在一些TSP问题上的收敛速度可提高数十到数百倍,例如,在求解ell51时提高
Table3
Comparisonof
率为250017≈357倍,在求解St70时提高率约为6000/20=300倍,在求解Prl07时提高率为6700/330≈20倍,在求解D1198时提高率为100001800=12.5,但不难发现,该算法收敛速度的提高随TSP事例中城市数的增加逐渐降低;而国外新近的几篇文献则更系统、详细地给出了一些改进算法的结果,表3列出了本文算法与其中几个改进算法的实验比较:
on
Solving
Performancefor
ACOMGRandSomeImprovedAlgorithms
DifferentInstances
表3ACOMGR和一些改进算法在不同TSP问题上求解性能的比较
ACS+2-optCl4]
GACs[14】
MST—Ants[13]
ACOMGR
Instancesof
TSP——
ACS
RPD/%
1O7136124152226州¨“7刍4HKK
OOOOO2Z9
●
RPD/%TIR
0O0O012
●
RPD/%TIR
0O0OO1ZO158O5
~
RPD/%TIR
OOOO0O1O7O788O5一
●
RPD/%TIR
OOOOO0l2
●
58213l86658767
45lO5O63l9926
一
162O1Z1
●
67115493242
1
28
O11O31
●
32O6l6
184
●
95747244ZO715
O9751491O4727O913
4811l222294862
●
6363874184443
●
●●●●
5l533l812582
一
●●●●
●
●●●●●●
●
●●●
●
l3
1l88
●●●
●●
●●●●●
●●
●●
●●●●●
●
3
1579
●●
●●●●
●●
●
一
.
一
●●
.
●
●
●
婚一博一吒_
O一
●
9一6-
—
■
一--
一
■
一一
_
一
■
一_.
—
●
一_-—
■
一一.-
.-一_—
■3—
3一一—-
7—9—
■
6一1—
442
表3中RPD(relative
percentage
deviation
on
theoptimal
solution)为算法各自求得的最优解与
标准最优解的相对偏差,TIR(time
improvedrate)
为ACS算法运行时间与各种算法获得各自最优解时所需的运行时间的比率,ACS+2-opt和GACS的实验结果源于文献[13],MST—Ants的实验结果源于文献[14],“一”为没提供.从表3可见:1)本文算法在收敛时间性能的改进上具有较大优势。在大部分事例上都具有最高的改进率(TIR的值最高);2)本文算法在时间性能上改进率随TSP事例中城市数的增加而增大,体现了算法求解大规模TSP事例的能力,而其他算法没有这样的趋势.
对比ACS算法,图4给出了本文算法在收敛时间上的改进率.尽管本文算法在时间性能方面的改进率只有数倍到数十倍,但却显现出~种非常有潜力的趋势:算法收敛时间的改进随城市规模的增大而增大.究其原因,主要是因为本文算法将多粒度思想引入到TSP问题的描述中,从根本上将大规模TSP问题归约为容易求解的小规模问题来求解,故有可能有效地克服或避免“组合爆炸”问题,快速地求解原问题.而且,本文给出的TSP问题的多粒度描述模型能被方便地扩展,得到更多层粒度的描述模型,从而为解决更大更复杂的TSP问题提供・个可行的思路.
Fig.4
Improvement
ratesofthe
ACOMGRalgorithm
on
runtimefordifferentTSPinstances.
图4本文算法在不同TSP事例上时间性能的改进率
然而,尽管本文算法在提高蚁群算法时间性能方面效果显著,但正如表3所示:算法在一些事例上所得到的最优解不如一些改进算法好.主要原因是本文算法的设计较依赖于所求解的问题中城市分布的特征,即对于具有明显聚类特征的大规模TSP问题求解时,往往能快速得到较好的结果,而在处理分布特征不明显的TSP问题时,解的精度欠佳.
计算机研究与发展20lO,47(3)
5结论及进一步的工作
蚁群算法是一种元启发式的随机搜索技术,由于具有鲁棒性、正反馈以及可并行计算等特点,所以成为目前解决组合优化问题最成功的算法之一.然而,蚁群算法在求解大规模组合优化问题时,收敛时间过长仍是制约其广泛应用的瓶颈.为此,本文给出了一种TSP问题的多粒度描述模型,并基于该模型提出了一种新的TSP问题的蚁群求解算法.该算法利用TSP问题的多粒度描述将难解的大规模TSP问题分解为易于求解的小规模TSP问题来求解.由于粒度的划分大大缩小了原问题的规模,所以算法的计算复杂度能成倍地降低.在一些中、大规模的TSP问题上的实验表明:新算法在求解速度上不仅比经典的ACS算法有显著的提高,而且比一些新近的算法具有更强的求解大规模TSP问题的能力.
本文提出的蚁群算法,为快速求解大规模TSP问题提供了一种新方法,也为解决其他大规模组合优化问题提供了一种新思路,是蚁群算法快速收敛问题研究的一个新成果.但如前所述,本文算法在提高解质量方面具有一定的局限性,如何克服这个局限,在快速求解的前提下提高求解精度将是我们下一步研究的重点.
参考文献
[13Dorigo
M。Maniezzo
V,Colorni
A.The
ant
system:
Optimization
by
a
colonyof
cooperating
agents口].IEEE
Trans
on
Systems。Man,andCybernetics。PartB.1996,26
(1):29—41
[2]Gambardella
L
M,Dorigo ̄LSolvingsymmetric
and
asymmetric
TSPs
by
ant
colonies[cJ//Procofthe
Int
Conf
on
Evolutionary
Computation.Piscataway,NJ:IEEE,
1996z
622—627
[33
BlumC。DorigoM.Searchbiasin
ant
colonyoptimization
l
On
the
roleof
competition-balancedsystems[/J.IEEE
Trans
on
Evolutionary
Computation,2005,9(2):159-174
[4]Blum
C,DorigoM.Thehyper-cube
framework
for
ant
colony
optimization口].IEEE
Trans
on
Systems,Man,and
Cybernetics,2004,34(2)l1161-1172
[5]DorigoM,BirattariM,StutzleT.Antcolonyoptimization:
Artificial
ants
as
a
computationalintelligencetechnique[J].
IEEEComputationalIntelligenceMagazine,2006,1(11)l
28—39
冀俊忠等:基于多粒度的旅行商问题描述及其蚁群优化算法443
E6-]Dorigo
M,Gambardella
L
M.Ant
colony
system:A
cooperativelearning
approach
to
the
traveling
salesman
problem【J].IEEE
Trans
0n
EvolutionarjrComputation,
1997,l(I):53-66
E73StutzleT,HoosHH.MAX-MIN
ant
systemi-J1.Future
GenerationComputerSystem,2000.16(8):889-914
F8JHuang
Guorui,Cao
Xianbin,Wang
Xufa.Anant
colony
optimizationalgorithmbasedon
pheromonediffusion[J].
Aeta
Electronics
Sinica,2004.32(5):865-868(inChinese)
(黄国锐,曹先彬,王煦法.基于信息素扩散的蚁群算法[J3.电子学报,2004,32(5):865—868)E9-1
WuBin,ShiZhongzhi.An
ant
colonyoptimizationalgorithm
based
partition
algorithmforTSP[J].ChineseJournalof
Computers。2001,24(13):1328—1333(inChinese)
(吴斌,史忠植.一种基于蚁群算法的TSP问题分段求解算法[J].计算机学报,2001,24(13):1328—1333)
[10]WuQinghong,ZhangJihui,XuXinhe.An
ant
colony
algorithmwithmutation
features[J3.JournalofComputer
ResearchandDevelopment.1999,36(10)l1240—1245(in
Chinese)
(吴庆洪,张纪会,徐心和.具有变异特征的蚁群算法[J3.计算机研究与发展,1999,36(10):1240-1245)
[11]Ding
Jianli,Chen
Zengqiang,Yuan
Zhuzhi.On
the
combinationof
geneticalgorithmand
ant
algorithmEJ3.
JournalofComputerResearchandDevelopment・2003・40
(9):1351—1356(inChinese)
(丁建立,陈增强,褒著祉.遗传算法与蚂蚁算法的融合EJ3.计算机研究与发展,2003,40(9):1351—1356)
[1z]Zhu
Qingbao,Yang
Zhijun.Anant
colonyoptimizationalgorithm
based
onmutation
and
dynamic
pheromone
updating口].Journal
of
Software,2004。15(2):185—192
(in
Chinese)
(朱庆保,杨志军.基于变异和动态信息素更新的蚁群优化算法[J].软件学报,2004,15(2);185—192)
[13]ReimannM.Guiding
ACObyproblemrelaxation:A
case
study
on
thesymmetricTSP[G]/ILNCS4771.Berlin
l
Springer。2007:45-56[14]LeLouamFX,GendreauM,PotvinJY.GENIantsforthe
travelling
salesman
problem[刀.Annalsof
Operations
Research。2004。131(10):187—201
[153
Li
Bingyu,Xiao
Yunshi.Antcolonyalgorithmbased
on
modelalgorithmfortravelingsalesmanproblem口].Journal
ofTongjiUniversity,2003,31(11):1348—1352(inChinese)
(李炳宇,萧蕴诗.基于模式求解旅行商问题的蚁群算法[J-I.同济大学学报,2003,31(11):1348—1352)
[163
ZouPeng。Zhou
Zhi,ChenGuoliang,etaL
A
multilevel
reduction
algorithm
to
TsP[刀.Journalof
Software,2003,
14(1):35-42(inChinese)
(邹鹏,周智。陈国良,等.求解TSP问题的多级归约算法[J].软件学报,2003,14(1):35-42)
[17]ZhangYanping,ZhangLing,WuTao.The
representation
of
differentgranular
worlds:A
quotient
space口].Chinese
JournalofComputers,2004,27(3):328—333(inChinese)
(张燕平,张铃.吴涛.不同粒度世界的描述法——商空间法
[J].计算机学报,2004,27(3):328-333)
[18]EasterM,Kriegel
H
P,SanderJ,eta1.Adensity-based
algorithmfordiscoveringclusters
inlarge
spatial
databaseswith
noise[c]//Procof
the
Int
Conf
on
Knowledge
Discovery
and
Data
Mining(KDD-96).MenloPark,CA:
AAAI,1996:226-231
[193jiJunzhong.HuangZhen,Liu
Chunnian.Afast
ant
colony
optimizationalgorithmfortravelingsalesmanproblems[J].
Journalof
Computer
Researchand
Development,2009,46
(6):968—978(inChinese)
(冀俊忠,黄振,刘椿年.一种快速求解旅行商问题的蚁群算法[J].计算机研究与发展。2009,46(6):968—978)
JiJunzhong。bornin1969.PhDof
Beijing
Universityof
Technology.Professor.
Senior
member
ofChinaComputerFederation.Hismain
research
interests
includemachine
learning,Web
intelligence,
andcomputationintelligence.
冀俊忠,1969年生,博士,教授,中国计算机学会高级会员,主要研究方向为机器学习、Web智能、计算智能.
HuangZhen,born
in
1981.Master.His
mainresearchinterestsincludedatamining
and
Webintelligence.
黄振。1981年生,硕士,主要研究方向为数据挖掘、web智能.
LiuChunnian.bornin1944.ProfessorandPhDsupervisor.ReceivedhisBScdegree
in
mathematicsfromPekingUniversity,
his
MSC
degree
in
computer
science
from
BeijingUniversityofTechnology,andhis
PhD
degree
in
software
engineer
from
NorwegianUniversityofScienceandTechnology.Hismainresearch
interests
include
data
mining,inductive
logic
programming,constraintprogramming,machinelearning
andsoftcomputing.
刘椿年,1944年生,教授。博士生导师,主要研究方向为数据挖掘、人工智能、约束逻辑程序设计.
Dai
Qiguo,bornin1985.Mastercandidate
of
BeijingUniversityofTechnology.His
mainresearchinterestsincludedataminingandcomputationintelligence.
代启国.1985年生,硕士研究生,主要研究
方向为数据挖掘、计算智能.
444
计算机研究与发展2010.47(3)
ResearchBackground
Antcolony
optimization(ACO)algorithmis
a
metaheuristicandstochasticsearchtechnology,whichhasbeen
a
one
ofthe
effectivetoolsforsolvingdiscreteoptimizationproblems.However,thereismuchtime
tO
bottleneckthat
proposes
a
theACOalgorithmnovelandhigh
COSTStOO
solvetheiarge-scaledoptimizationproblems.Therefore,this
paper
efficientACO
algorithmforthetravelingsalesmanproblems(TSPs).First,anovelmultiple-grainrepresentationmodelofTSPsisproposed.Based
on
themodel,thispaper
on
presents
a
new
algorithmforTSPs,whichmainlycontainssixphases,i.e.agranularity
on
partitionalgorithmbaseddensityclustering,anACOalgorithmbased
the
same
the
coarse
grain,a
connectionalgorithmbetween
a
twogranularities,anACOalgorithmingranularity,afusionalgorithm
amonggranularities,and
of
TSPs
subsection
the
optimizationalgorithmregardlessofgranularities.Theexperimentalresultsforlargenumberproposedalgorithmcompetitiveinresearch
time
can
demonstratethat
is
greatlyimprovethespeedof
convergence
incontrastto
theclassicalACSalgorithm.and
highly
performancecomparedwithsomelatestelitistACOalgorithms.Ourworkissupportedbythemajor
programoftheNationslNaturalScienceFoundationofChina(No.60496322)。theBasicTheoryandCoreTechniques
ofNon-CanonicalKnowledge(Nos.60496322,60496327),andthe
BeijingNaturalScienceFoundation(No.4083034).
第17届全国网络与数据通信学术会议(NDCC2010)征文通知
2010年9月16El一17日
北戴河
由中国计算机学会网络与数据通信专业委员会主办,由东北大学秦皇岛分校和东北大学信息科学与工程学院联合承办的“第17届全国网络与数据通信学术会议”将于2010年9月16日到17日在美丽的海滨城市北戴河举行.
本次大会将围绕“网络与通信新技术及应用”这一主题展开,为来自国内外高等院校、科研院所、企事单位的学者、教授、专家、工程师提供一个代表国内网络与数据通信产学研界高水平的高层信息交流平台,探讨本领域发展所面临的关键挑战问题和热点研究方向.
会议论文集将由《东北大学学报(自然科学版)》增刊出版(EI检索源).论文参照《东北大学学报》格式,字数一般不超过6000字,稿件通过投稿系统提交,具体参见会议网站http://ndcc2010.neuq.edu.cn.部分优秀论文将被推荐到《计算机学报》,《电子学报》、《计算机研究与发展》、《电子与信息学报》的正刊发表(均为EI检索源).会议期间将评选会议优秀论文和优秀学
生论文.
本次会议的主要征文范围包括以下领域(但不限于):
新一代网络技术:网络体系结构、路由/交换技术、协议丁程、网络虚拟化、认知网络、IPv4/IPv6过渡技术、NGNINGI平台应用;新一代计算技术:云计算/网格计算、并行/分布式计算、普适/效用计算、服务计算;无线通信技术:下一代移动通信技术、自适应信号处理、传感器网络、移动自组织网络、智能天线、卫星通信;其他;光通信技术、网络安全、网络管理、网络应用.
投稿须知
1)投稿内容突出作者的创新与成果,具有较重要的学术价值与应用推广价值,未在国内外公开发行的刊物或会议上发表
或宣读过.
2)论文语言要求中文,字数一般不超过6000字,论文格式参照《东北大学学报》,投稿稿件用Word文件形式.东北大学学报的网站地址如下:http:/lxuebao.ned.edu.en/natural/index.asp.
3)请在稿件最后附上第一作者姓名、性别、职务/职称,所属单位、通信地址、邮政编码、联系电话和E—mail地址.并注明论文所属领域.
4)被录用的论文,至少要有一位作者参加会议并发盲,才有资格参与优秀论文的评选.
投稿方式
论文投稿通过投稿系统进行提交,详见会议网站:http://ndcc2010.neuq.edu.cn或者通过邮件地址ndec2010@mail.neuq.edu.cn联系.电子邮件请在邮件标题注明“NDCC2010投稿”.
重要日期
论文提交截止日期:2010年5月15日;论文录用通知日期:2010年7月1日;会议注册截止日期:2010年8月15日.联系方式
联系电话:0335—8052155
邮件地址:ndee2010@mail.neuq.edu.cn
联系人l王翠荣韩来权
会议网站:http://ndec2010.neuq.edu.eft
计算机研究与发展
JournalofComputerResearchandDevelopment
ISSN
1000—1239/CN11—1777/TP
47(3):434—444.2010
基于多粒度的旅行商问题描述及其蚁群优化算法
冀俊忠
黄振刘椿年代启国
100124)
(北京工业大学计算机学院多媒体与智能软件技术北京市重点实验室北京
(jjz01@biut.edu.cn)
An
Ant
ColonyAlgorithmBased
on
Multiple-GrainRepresentationfortheTraveling
SalesmanProblems
JiJunzhong,HuangZhen,LiuChunnian。andDaiQiguo
(BeijingMunicipalKeyLaboratoryofMultimediaandIntelligentSoftwareTechnology,CollegeofComputerScienceandTechnology,BeijingUniversityofTechnology,Beijing100124)
Abstract
Antcolonyoptimization(ACO)is
a
population—basedmetaheuristictechnique
an
tO
effectively
tO
solvecombinationoptimizationproblems.However,itisstilltheperformanceofACOalgorithms.Thoughtheresalesmanproblems(TSPs),thereistimeinordertoget
an
an
are
activeresearchtopichow
improve
manyalgorithmstoeffectivelysolvetraveling
too
applicationbottleneckthattheACOalgorithmcosts
much
optimalsolution.ToimprovethetimeperformanceofACOinsolvinglarge
scaleTSPs,afastalgorithmispresentedinthispaper.Firstly,anovelmultiple-grainrepresentationmodelofTSPsisproposed.Basedcontainssix
on
themodel,flnewalgorithmforTSPsispresented,whichmainly
partition
algorithm
based
on
phases,i.e.agranularity
on
density
clustering,anACO
ACO
algorithmbasedalgorithm
in
the
the
coarse
grain,a
connectionfusion
algorithm
betweentWOgranularities,an
granularities,and
a
same
granularity,aalgorithmamong
subsection
the
optimizationalgorithmregardlessofgranularities.Theanalysisofcomputationcomplexityand
can
experimentalresultsforlargenumberofTSPsdemonstratethattheproposedalgorithmimprovethespeedofconvergencein
contrast
to
greatly
theclassicalACOalgorithm,andishighlycompetitive
intimeperformancecomparedwithsomelatestelitistAC0algorithms.Keywordsoptimization
TSP;multiple-grain
citymodel;ACO
algorithm;clustering
algorithm;subsection
摘要针对蚁群算法在求解大规模旅行商问题(Traveling
SalesmanProblems,TSP)中时间性能方面
的不足,提出了一种快速的求解算法.首先,从TSP问题描述入手,给出了一种新的多粒度的问题描述模型;然后,基于该模型,设计了包括基于密度聚类的粒度划分、粗粒度的蚁群寻优、粒度间的连接、细粒度的蚁群寻优、粒度问可行解的合成以及循环分段优化6个阶段在内的求解算法.算法的复杂度分析及在中、大规模TSP问题上的实验表明:本算法的时间性能不仅比经典的蚁群算法有显著的提高,而且与近年来的一些同类算法相比也具有一定的优势,显示了快速求解大规模TSP问题的能力.关键词旅行商问题;多粒度城市模型;蚁群算法;聚类算法;分段优化
中图法分类号TPl8
收祷日期:2009—03一】】;修回日期:2009—09一01
基金项目:国家自然科学基金重大基金项目(60496322);北京市自然科学基金项目(4083034,4102010)
冀俊忠等:基于多粒度的旅行商问题描述及其蚁群优化算法
旅行商问题TSP是一个经典的组合优化问题.挖个城市的TSP问题求解可描述为:给定一个城市集合V_--{∥,,耽,…,%},求遍历y中所有城市各一次且最后回到出发城市(求解约束)的一个最短旅行的连通图g∈G(V,A),其中G(V,A)为所有满足上述求解约束的连通图集合,A一{ad一(vi,口f)IO<i,歹≤7z,睁!-『)是城市间两两相连的一组边.如果把任意一条边的距离记为d;,=IaiI,则一个解图的数学形式可表示为g=arg
min≥:d口.
譬t‘’(P’^,a
∈譬7
TSP问题的求解是一个典型的NP难问题,由于该问题的求解模型可广泛应用于多种复杂优化问题,故该问题的求解算法一直以来是国内外学者们关注的一个研究热点.然而,在求解TSP问题的过程中,当城市规模n大到一定程度后就会面临“组合爆炸”问题,这时传统的一些启发式搜索就会陷入困境.于是人们结合物理学、生物遗传学、仿生学等领域的研究成果,相继提出了多种元启发式的TSP问题的求解方法,如模拟退火(simulated
annealing)、
禁忌搜索(tabusearch)、遗传演化(geneticevolutionary)、蚁群优化(ant
colonyoptimization)
等算法.其中,蚁群优化算法是20世纪90年代初才被提出的一种新的元启发搜索算法n。2j,其实现机理是通过模拟人工蚂蚁群体在觅食过程中所体现出的智能行为来完成对TSP问题的求解.由于蚁群算法具有良好的鲁棒性、正反馈、分布式及并行计算等特点,所以受到学者们的广泛关注,蚁群算法的理论框架也日渐成熟[3.5].尽管如此,当城市规模竹达到数百后,蚁群算法仍暴露出运行时间过长、难以满足实际应用需求的不足.为此,本文提出了一种新的基于多粒度的TSP问题描述模型的蚁群求解算法.该算法的基本思想是通过对TSP问题进行多粒度的描述。将难解的大规模TSP问题分解为易于求解的小规模TSP问题来求解.首先在粗粒度上完成蚁群寻优以确定粗粒度间的连接,然后在每个粗粒度内进行细粒度的蚁群寻优,实现城市间的连接。最后利用循环分段优化策略来弥补粒度划分对求解精度的影响.由于多粒度的划分大大缩小了原来单粒度问题的规模,所以算法的计算复杂度能大大降低,有效地提高了蚁群算法求解大规模TSP问题的能力.在一些中、大规模的TSP问题上的实验表明:新算法在求解速度上不仅比经典的ACO算法有显著的提
435
高,而且与近年来的一些算法相比也有优势,体现出良好的求解大规模TSP问题的能力.
1
相关工作
迄今为止,针对基本蚁群算法[1](ant
system,
AS)迭代次数多、运行时间长的缺点,国内外的学者们已经提出了许多种新的快速、高效的蚁群算法[6。14。.概括起来,这些算法主要包括3类:1)基于信息素更新机制的改进.通过对信息素生成和更新策略的优化来提高蚁群算法的寻优能力,改善解的全局收敛性.由于信息素是蚁群进行相互交流、完成信息融合并实现群集智能(swarmintelligence)的重要媒介,因此,许多学者对蚁群算法的研究都是围绕信息素的产生和更新策略进行的¨书].2)基于随机搜索机制的改进.由于蚁群算法有易于与其他方法相结合的优点[1],所以不少工作都是对随机搜索过程的控制策略进行调整,提高局部的寻优能力,以减少迭代次数,加速收敛.如文献[9]提出了相遇和分段优化的策略加速了构造解的过程;文献[10]通过变异策略以加快局部搜索;文献[11]将遗传算法与蚁群算法相融合也加快了求解速度.而文献[12]将这2种改进机制相结合,提出了一种基于变异和动态信息素更新的新算法,在时间性能上取得了较大的提高.3)基于启发信息函数的改进.文献[13]利用最小生成树的结构信息来对通用的启发函数进行加权高;文献[14]则采用基于插入准则的GENI思想来代替常用的概率最近邻的启发思想,给出了能够改16]通过对局部最优解进行简单的相交操作得到模寻优算法、粒度间融合算法、滑动循环的分段优化算修正,在求解质量和时间性能上都获得了较大的提善蚁群算法求解质量的GACS算法.此外,文献[15-式或部分解,来减少后期迭代中的城市规模,有效地缩小了原问题的搜索空间。这是蚁群算法求解大规模TSP问题的一种新尝试.基于类似的问题归约思想,本文从问题的描述出发,提出了一种新的基于多粒度TSP问题描述的蚁群优化算法.算法包括基于密度聚类的粒度划分算法、基于粗粒度蚁群寻优的顺序学习算法、粒度间的连接算法、同粒度内的蚁群法6个阶段.新算法的主要特点是:突破了经典的TSP问题的描述模型,给出了一种多粒度的TSP问题描述模型,力求从本质上解决蚁群算法在求解大规模TSP问题时运行时间过长的问题.
计算机研究与发展2010,47(3)
定义1.超城市.在TSP问题二维坐标的平面
2
多粒度TSP问题描述模型
面对复杂的、难以准确把握的问题,人们通常不
上,如果城市的地理位置分布呈现较明显的分簇现象,那么那些具有足够高密度的区域称为超城市
(super
city)或地区(district).一个超城市中包含若
是盲目地追求精确的最佳解,而是通过逐步尝试的办法达到满足一定精度的合理目标[17|.这是一种概略地、由粗到细、不断求精的多粒度分析法,利用它可以避免求解原问题计算复杂度高的困难.换句话说,问题的多粒度描述是降低复杂问题求解计算复杂度的一种有效手段.
蚁群算法的实现机理是利用蚂蚁在觅食途中所释放的信息素来完成个体之间相互的交流和合作,其过程主要包括信息素的更新及以其为基础的状态迁移(蚂蚁选路)2部分.目前,大多数蚁群算法都将信息素的更新视为提高算法性能的关键,却忽视了食物源的分布对蚂蚁选择路径的影响.而生物学家的观察发现,在自然界的真实蚁群的觅食行为中,大部分蚂蚁会优先选择离自己目前位置较近的食物源去觅食,所以如果存在较密集(彼此间距离较近)的几个食物源,那么蚂蚁会优先遍历这几个食物源,等它们枯竭后才去寻找其他食物源.结合蚂蚁觅食的这种现象,我们给出如下假设:
假设1.商人最近城市选择假设.在一个较复杂的、有若干城市的TSP问题中的一条遍历所有城市的最短路径中,城市i连接到城市.f,_『不可能是离城市i最远的那些城市[12.17].于是,行个城市的TSP问题可以按地理位置分布划分为不同的地区(根据相互间的距离),商人下一城市的选择范围局限于离当前城市i较近的某一邻域(地区)的部分城市,商人在访问完该地区的所有城市后才会访问其他地区的城市.
本文使用连接图作为TSP问题可行解的基本数据结构.基于上述假设,下面给出TSP问题可行解的多粒度描述模型的定义:
干彼此距离相近的城市.
定义2.孤立城市.在一个给定的距离(半径)内,与任意城市都不相邻的城市称为孤立城市
(island
city).孤立城市是指在平面上远离其他城市
的城市,它也可看作是仅含1个城市的超城市.
定义3.边缘城市.在一个超城市(地区)中,与其他地区或孤立城市发生连接的城市,称为边缘城市(margincity).根据地区间的连接顺序,一个地区内的2个边缘城市分别称为入区城市(in-districtcity)和出区城市(out-district
city).
定义4.TSP问题的多粒度描述模型.基于上述定义,一个TSP问题的可行解可以表示为一个连
接图gD=g(D,B),其中:D={d。,d:,…,dI}为地区节点的集合,历为地区间两两相连的弧集合,如弧e(di,d,)∈匕表示地区d。和d,之间的一条连
接.任意一个地区di∈D表示TSP问题的可行解内的一个超城市,它可进一步表示为一个从入区城市出发遍历该地区内所有城市后到达出区城市的连接图,即d;=gi(y,E。),其中V为超城市内的城市集合,E。为超城市内城市间连接弧的集合.因此,TSP问题的可行解可进一步表示为一个多粒度的连接图gM—g({gi(V,E。)),E),E为粒度间的连接弧集合,用来刻画超城市与城市间的连接关系.
图1为这种多粒度连接图的TSP解结构描述模型.所求问题的解描述由TSP问题可行解、超城市连接以及城市连接3种描述粒度构成,超城市之间以及超城市内城市间分别以地区级的连接图和城市间连接图描述其连接结构,并且通过入区城市和出区城市完成不同粒度间的连接,最后构成一个多粒度的连接图.
Fig.1
Representationofthe
structure
ofTSPsolutionsbased
ona
multi—grainconnectiongraph.
图1基于多粒度连接图的TSP解的结构描述
冀俊忠等:基于多粒度的旅行商问题描述及其蚁群优化算法
437
通过引人多粒度的TSP描述模型,在TSP问题的求解中,便可达到降低问题规模、减少算法的计算复杂度、进而增进蚁群算法求解能力的目的.
3
粒度TSP问题求解的蚁群算法(ant
based
on
colonyoptimization
multiplegrainrepresentation,ACOMGR),图
2为多粒度TSP问题求解算法的过程图解.从图2可见,ACoMGR算法求得一个满意解需要经过粒度划分算法、粗粒度的寻优、粒度间的连接、粗粒度内的蚁群寻优算法、粒度间可行解的合成、循环分段优化算法等6个关键步骤,下面分别对其进行讨论.
多粒度TSP问题求解的蚁群算法
基于多粒度的TSP问题描述模型,本文给出多
Fig.2
Theoptimization
an
procedurebased
on
multiple
grainrepresentationforTSPs.(a)Grain
partitiont(b)
a
Coarsegrainsearchfor
order;(c)Inter-grainconnection;(d)Finegrainconnection;(e,Constructing
feasible
solution;and(f)Circularsubsectionoptimization.
图2多粒度TSP问题求解算法过程图解.(a)粒度划分;(b)粗粒度的寻优;(c)粒度间的连接;(d)细粒度内的
连接;(e)可行解的合成;(f)循环分段优化
3.1
基于密度聚类的粒度划分算法
粒度的划分是将给定的TSP问题描述转化为
算法1.GPDC(SPfo厂Poi珂fS,Eps,MinPts)./*SetofPointS为TSP中未分区的城市集,Eps和MinPts分别为地区半径和地区内最小城市数*/
{初始化城市的地区标记为UNCLASSFIED;
FORi=1T0SetD,Points.size
多粒度TSP问题描述模型的基础.如图2(a)所示,该算法运行的目的是将原TSP问题描述的粒度变粗以降低原问题的规模.结合城市地理分布的特征,本文根据DBSCAN聚类算法的思想【l引,设计了基于密度聚类的粒度划分算法.采用DBSCAN算法的原因是:1)能将具有足够高密度的区域划分为簇;2)能将相对稀疏的点视为“噪声”,故能够在带有“噪声”的空间点数据中利用类的密度连通性发现任意形状的聚类.换句话讲,该算法能对不同分布的数据进行聚类,符合多粒度的TSP问题描述模型中对超城市和孤立城市的定义.基于密度聚类的粒度划分算法(grain
partitionbased
on
Point=Set砖Points.get(i);
/*返回城市集合的第i个元素*/
IFPoint.D耐=UNCLASSIFIEDTHEN
IFE:cpandDistrict(SetofPoints,Point,
Did。Eps,MinPts)THEN
/*ExpandDistrict函数为一个核心城市构造一个密度相连的城市集合(地区)*/
DistrictId=Districtld+1;/*地区标记更新*/
ENDIFENDIF
densityclustering,
GPDC)的基本思想是:对于一个地区中的每一个核心城市,在其给定距离(半径)的邻域内所包含的城市数不得小于某~个给定的最小数量,具体算法的描述如下:
438
ENDFOR
返回粒度划分结果(孤立城市和地区内城市的地区标记).
)
GPDC算法为了发现一个地区,先从TSP问题的城市集V中任取一个城市口i,利用密度参数判断其是否为核心城市.如果职是核心城市,则在以vi为中心以Eps为半径的区域内所包含的城市数量不少于MinPts,于是算法可以找到一个关于参数Eps和MinPts的地区.如果职是边界点,则在以让为中心以Eps为半径的区域内包含的城市数量少于MinPts,于是可以把让暂时标注为噪声点,然后,继续处理y中的下一个未标记的城市.被标记为噪声点的城市随着划分过程的进行,可能改变标记成为某一地区的元素.在划分完成后,不被任一核心城市密度可达的那些噪声点城市被确定为孤立城市.城市的地区归属与地区的发现和扩展连通都由函数ExpandDistrict()完成【l
81.
3.2粗粒度的寻优及粒度间的连接
经过粒度划分过程,原问题就被归约为规模数大大降低的地区级(粗粒度)和各地区内城市(细粒度)的寻优问题.为了合成问题的解,首先进行粗粒度的寻优以确定地区间的前后连接关系.具体方法是:以孤立城市和各地区的重心(该地区内所有城市坐标的平均)为代表点,通过基本的ACS算法【23求解代表点所构成的新TSP问题的最优路径,从而确定粗粒度的旅行路线,得到各地区与孤立城市间的连接顺序,如图2(b)所示.连接顺序确定后,我们就可以两两进行相邻地区间出区城市和人区城市的连接.具体可分为3种情况.
1)孤立城市与孤立城市相邻时,直接连接.2)孤立城市(q)与某地区(D,)相邻时,利用最近邻原则确定该地区的入(或出)区城市:
。;=argmind*or口{)=argmin巩,
(1)
%6q
1∈D,、≠。;
其中,口{为D,的入区城市(当连接顺序为vi—q),。{)为D』的出区城市(当连接顺序为q一让).
3)两地区D。,Di相邻且Di—D,时,利用式(2)确定地区Di的出区城市以及地区D,的入区城市:
(喃,口{)一arg
min矗。.
(2)
‰∈D。t‰≠吒
%∈DJ
至此,完成了粒度间的连接,如图2(c)所示.
计算机研究与发展2010,47(3)
3.3粗粒度内的蚁群寻优算法
粗粒度内的蚁群寻优算法以入区城市为始点,出区城市为终点,确定地区内城市间的连接顺序,并依此得到该地区中入区城市到出区城市最短的旅行.不同地区内的蚁群寻优过程可并行地进行.在该算法中,我们使用蚁恒模型¨副作为信息素的增量模型,算法描述如下:
算法2.ACACO(k)/*是为区的标识号*/
{
1)初始化阶段:
初始化参数,赋给各条路径相同的信息素浓度,并将m。只蚂蚁放到入区域市上;为每只蚂蚁设置允许访问的城市列表;2)蚁群的一次周游过程(一次迭代):
FORp=1
TO咒。/*遍历该区所有城市,最后
到达出区城市*/
FORq=1TO
m。/*蚁群的一步转移*/
{IFp<巩THEN/*没有遍历完该区所有
城市*/
{按ACS中的转移概率公式Ⅲ选择下一个城市;
完成一步行走,并变更允许访问的城市
列表;}
}
3)本次迭代的信息素的更新:
FoRq=1TOmk
{计算Lq;)/*计算每只蚂蚁的旅行长度*/FOR每条边ad∈glU92U…Ug槭{计算路径巧上新产生的信息素浓度;q(£+1)=(1--p)q(f)+lD・"to;/*ID为挥发系数*/
)/*局部信息素的更新*/
Lbe。畸=Minimum(L裱);/*计算本次迭代的最优值*/
FOR每个ad∈gbe。仲。
{彬”=(1一y)碍u+7・Ar口;/*y为挥发系数*/
f1/(Lbest-iter),当全局最优解包含
△句=<路径口d时;
【0,否则;
)/*全局信息素的更新*/4)判断算法是否结束:IF(结束条件满足)THEN
输出多次迭代后的最优解Lk。n。,;
冀俊忠等:基于多粒度的旅行商问题描述及其蚁群优化算法
ELSE
{迭代次数增l初始化入区城市可访问的城市列表
GOTo
2).)/*继续进行下次迭代*/
}
粗粒度内的蚁群寻优算法完成后,便得到了各地区内城市的连接,如图2(d)所示.3.4可行解的合成
按上述步骤依次完成粗粒度(地区)的寻优、粒度间的连接、粗粒度内细粒度(城市)的蚁群寻优后,就可以通过路径合成得到初始TSP问题的一个可行解.如图2(e)所示.该可行解表示本次周游所有城市后回到出发城市所经过的旅行长度,其计算公式如下:
N
LI=∑Lq+L地区何,
(3)
i皇l
其中N为粒度划分后得到的地区数(含孤立城市),LD为从某地区的入区城市出发遍历完所有该区的其他城市后到达出区城市的最短路径.对于孤立城市Ln=O,L地区问为按照地区连接顺序,所有孤立城市、地区间边缘城市(入区、出区城市)连接的距
离和.
3.5循环分段优化算法
为了提高求解的时间性能,本文通过多粒度的描述模型,人为地将TSP问题分解为较小规模的TSP问题来进行求解.由于原始问题的最优解并不一定是所有小规模TSP问题最优解的简单叠加。所以我们在获得原始问题的一个可行解后,摈弃粒度的划分,采用分段优化算法[9]对TSP问题的可行解进行随机分段、分段始点移动和循环寻优的方法来优化所得到的解,提高可行解的质量.如图2(f)所示,其具体的算法描述如下:
算法3.Subsection-optimization().
{
1)参数初始化:
C。l。=c;/*循环因子*/
Subsection—length=z(n/t;)/*分段长度,t取大于2的整数*/
counter=O;
2)循环分段开始:
WHIL,E(counter≤,l/C。le)
{s£口r£=∞鲫据r・C。心;/*分段始点*/
ACS(start,Subsection
IF(分段寻优结果优于原结果)更换该段的
439
解路径;}
输出分段优化后的结果.
}
算法中函数ACS(start,Subsection—length)是由ACS算法稍加修改后得到,其返回值是蚁群从分段始点出发,遍历该段所有其他城市后到达分段终点所得到的最短路径长度.3.6计算复杂度分析
假设n为原始TSP问题中城市的实际数量,m为用ACS蚁群算法求解时所需的蚂蚁数,ACS算法经过C次迭代后得到最优的解,则ACS算法求解TSP问题的计算复杂度可近似为o(C・n2・优)L6].
下面分析本文算法的计算复杂度:假设经过粒度划分将n个城市分为D个地区,w个孤立城市,
D
即咒=铷+>:咒i(啦为地区i中的城市数量).
葛
1)算法l(粒度划分算法)的计算复杂度是
O(nlog竹)[1引.
2)利用ACS算法进行粗粒度寻优的计算复杂度为0(G・N2・m。),G为粗粒度寻优的迭代次数,N=w+D《,2,且所需的蚂蚁数为m。≤N.由于TSP规模大大降低,故G《C,m。《m,所以有0(Cd・N2・mJ)《o(C・竹2・优).
’
假设第i个地区为粒度划分后最大的地区(含有城市最多),且n;一max{n。)(O<最≤D).由于地区内的寻优可并行进行,故算法2(细粒度寻优)的计算复杂度为o(G・n;・mi),Ci为迭代次数,m,为所需的蚂蚁数,同样由于TSP规模的大大降低,其值远小于o(C・n52・仇).
3)算法3(循环分段优化)的计算复杂度为O(C。。・(nit)2・仇。・惫),其中k为分段循环次数,由于分段使问题规模下降,故C。<C,优。<m,且合理选取参数后可使志/f2<1,故容易使o(C。・(咒/£)2・m。。・志)<0(C・n2・m).
此外,粒度间连接的最大复杂度为0(N・n;),而可行解合成的计算复杂度为0(以).
综上所述,算法总的计算复杂度为:O(nlogn)+0(G・N2・md)+o(N・n;)+o(Ci・n;・mf)+o(以)+0(C。・(nit)2・,,l。・矗)≈惫・O(C。・(n/
f)2・m。。),令c/C。=P,m伽。=q,则算法计算复
杂度可表示为:(k/p・q・t2)・o(C・n2・,,1).显然,与ACS算法具有同级的计算复杂度.但是由于分段优化时至少分2段,故t)-2,而分段后城市规模
440
计算机研究与发展2010,.47(3)
的下降会使迭代次数、蚂蚁数都会减少,有P,q>l,所以通常情况下惫伽・q・t2<1总成立.可见,在TSP问题城市规模较大、分段较多的情况下,合理选取参数后可使O(C・靠2・,,z)成倍地减小.
4.1分段优化策略的作用
为测试分段优化策略对求解质量的作用,我们分别对不含分段优化过程的ACOMGR-1算法和含分段优化过程的本文算法ACOMGR的求解结果进行比较.表1给出了在各种事例最佳的参数配置下的实验结果.其中,最佳的解长度为2种算法各运行10次所得到的最佳值,优化率为2种算法所得的最佳值的差与该问题标准最优解的比率.在相同的运行时间下,ACOMGR算法得到的最优解都明显好于ACOMGR-1算法,这说明分段优化策略能够提高本文所提出的算法的解质量,尤其是在大于400的事例上效果明显.
图3给出了在Prl52问题上2种算法的解图.比较图3中2个解图,正是由于一些局部连接的差异(虚线圆框内的连接部分),导致了2种算法所得到的最优解的不同.
4
实验结果
本部分对新算法的性能进行测试,并给出分段
优化策略对新算法求解质量的影响,本文算法在一些中大规模TSP问题上的实验结果以及与一些最新蚁群算法在求解性能方面的实验比较.实验采用TSPLIB的标准库(来源于http://elib.zib.de/pub/mp—testdata/tsp/tsplib/tsplib.html).实验的运行环境为:操作系统WindowsXP,CPU为P41.8GHz,内存为512MB,算法用VisualC++语言编程实现,实验的最佳参数组合均通过实验确定.
Tablel
ParameterSetsoftheProposedAlgorithmforDifferentInstancesandSubsectionOptimizationResults
表1本文算法在求解不同问题时的参数设置及分段优化的结果
Parameter
Sets
OptimalResults
Q
1
c
EPSMinPts
口
8
p
ACOMGR’1
ACOMGR
Optimal
Rate]%
(a)
of
twosolution
prl52
for
(b)
graphs
on
Fig.3Comparison
tWOdifferentalgorithms.(a)Solutiongraph
withoutsubsectionoptimizationand(b)Solutiongraphwithsubsectionoptimization.
图3在prl52问题上的解图.(a)没有分段优化策略的解图;(b)有分段优化策略的解图
4.2算法总体性能及分析
我们在许多较大规模的TSP问题上进行了大量
的实验,并将本文算法与经典的ACS算法、ACS+20pt、GACS…。和MST—Ants[133等算法进行比较.实
冀俊忠等:基于多粒度的旅行商问题描述及其蚁群优化算法441
验所采用的参数如下:"to=l/nL。,ACS算法的参数设置为口=1,p=2,』D=0.1,y=0.1,而本文算法运行时的参数设置见表1.
在上述参数配置下,我们经过多次实验得到本文算法与ACS算法在各个TSP问题上的求解结果,表2列出了实验的结果.其中,最佳的解长度为2种算法各运行10次所得到的最佳值,运行时间为
Table2
ComparisonofSolvingPerformancefor
得到各自最佳值所需时间的平均值,误差为所得到的最佳值与数据库中该问题的标准最优解之间的相对偏差.从这些事例上的结果可见,本文算法在较短的时间内就能得到误差更小的解,这说明通过粒度划分思想降低TSP问题的规模,大大缩短了寻优时间,提高了搜索效率,并在一些问题上获得更令人满意的解.
ACoMGRandACSAlgorithms
On
表2ACOMGR和经典的ACS算法在不同TSP问题上求解性能的比较
ACSAlgorithm
InstancesofTSP
OptLmum
Solution————
DifferentInstancesACOMGR
Bestlength
Error/
Runtime/s
Best
lengthError/NRuntime/s
如前所述,针对经典的ACS算法在时间性能方面的不足,国内外的许多研究都对它进行了改进,并在一些中小规模的TSP问题上作了测试.其中,在求解Oliver30问题时,文献E8]给出的算法收敛速度可提高约6倍,文献[11]提出的算法收敛速度可提高约11倍;文献[12]给出了一些更好的实验结果,该文所提出的算法在一些TSP问题上的收敛速度可提高数十到数百倍,例如,在求解ell51时提高
Table3
Comparisonof
率为250017≈357倍,在求解St70时提高率约为6000/20=300倍,在求解Prl07时提高率为6700/330≈20倍,在求解D1198时提高率为100001800=12.5,但不难发现,该算法收敛速度的提高随TSP事例中城市数的增加逐渐降低;而国外新近的几篇文献则更系统、详细地给出了一些改进算法的结果,表3列出了本文算法与其中几个改进算法的实验比较:
on
Solving
Performancefor
ACOMGRandSomeImprovedAlgorithms
DifferentInstances
表3ACOMGR和一些改进算法在不同TSP问题上求解性能的比较
ACS+2-optCl4]
GACs[14】
MST—Ants[13]
ACOMGR
Instancesof
TSP——
ACS
RPD/%
1O7136124152226州¨“7刍4HKK
OOOOO2Z9
●
RPD/%TIR
0O0O012
●
RPD/%TIR
0O0OO1ZO158O5
~
RPD/%TIR
OOOO0O1O7O788O5一
●
RPD/%TIR
OOOOO0l2
●
58213l86658767
45lO5O63l9926
一
162O1Z1
●
67115493242
1
28
O11O31
●
32O6l6
184
●
95747244ZO715
O9751491O4727O913
4811l222294862
●
6363874184443
●
●●●●
5l533l812582
一
●●●●
●
●●●●●●
●
●●●
●
l3
1l88
●●●
●●
●●●●●
●●
●●
●●●●●
●
3
1579
●●
●●●●
●●
●
一
.
一
●●
.
●
●
●
婚一博一吒_
O一
●
9一6-
—
■
一--
一
■
一一
_
一
■
一_.
—
●
一_-—
■
一一.-
.-一_—
■3—
3一一—-
7—9—
■
6一1—
442
表3中RPD(relative
percentage
deviation
on
theoptimal
solution)为算法各自求得的最优解与
标准最优解的相对偏差,TIR(time
improvedrate)
为ACS算法运行时间与各种算法获得各自最优解时所需的运行时间的比率,ACS+2-opt和GACS的实验结果源于文献[13],MST—Ants的实验结果源于文献[14],“一”为没提供.从表3可见:1)本文算法在收敛时间性能的改进上具有较大优势。在大部分事例上都具有最高的改进率(TIR的值最高);2)本文算法在时间性能上改进率随TSP事例中城市数的增加而增大,体现了算法求解大规模TSP事例的能力,而其他算法没有这样的趋势.
对比ACS算法,图4给出了本文算法在收敛时间上的改进率.尽管本文算法在时间性能方面的改进率只有数倍到数十倍,但却显现出~种非常有潜力的趋势:算法收敛时间的改进随城市规模的增大而增大.究其原因,主要是因为本文算法将多粒度思想引入到TSP问题的描述中,从根本上将大规模TSP问题归约为容易求解的小规模问题来求解,故有可能有效地克服或避免“组合爆炸”问题,快速地求解原问题.而且,本文给出的TSP问题的多粒度描述模型能被方便地扩展,得到更多层粒度的描述模型,从而为解决更大更复杂的TSP问题提供・个可行的思路.
Fig.4
Improvement
ratesofthe
ACOMGRalgorithm
on
runtimefordifferentTSPinstances.
图4本文算法在不同TSP事例上时间性能的改进率
然而,尽管本文算法在提高蚁群算法时间性能方面效果显著,但正如表3所示:算法在一些事例上所得到的最优解不如一些改进算法好.主要原因是本文算法的设计较依赖于所求解的问题中城市分布的特征,即对于具有明显聚类特征的大规模TSP问题求解时,往往能快速得到较好的结果,而在处理分布特征不明显的TSP问题时,解的精度欠佳.
计算机研究与发展20lO,47(3)
5结论及进一步的工作
蚁群算法是一种元启发式的随机搜索技术,由于具有鲁棒性、正反馈以及可并行计算等特点,所以成为目前解决组合优化问题最成功的算法之一.然而,蚁群算法在求解大规模组合优化问题时,收敛时间过长仍是制约其广泛应用的瓶颈.为此,本文给出了一种TSP问题的多粒度描述模型,并基于该模型提出了一种新的TSP问题的蚁群求解算法.该算法利用TSP问题的多粒度描述将难解的大规模TSP问题分解为易于求解的小规模TSP问题来求解.由于粒度的划分大大缩小了原问题的规模,所以算法的计算复杂度能成倍地降低.在一些中、大规模的TSP问题上的实验表明:新算法在求解速度上不仅比经典的ACS算法有显著的提高,而且比一些新近的算法具有更强的求解大规模TSP问题的能力.
本文提出的蚁群算法,为快速求解大规模TSP问题提供了一种新方法,也为解决其他大规模组合优化问题提供了一种新思路,是蚁群算法快速收敛问题研究的一个新成果.但如前所述,本文算法在提高解质量方面具有一定的局限性,如何克服这个局限,在快速求解的前提下提高求解精度将是我们下一步研究的重点.
参考文献
[13Dorigo
M。Maniezzo
V,Colorni
A.The
ant
system:
Optimization
by
a
colonyof
cooperating
agents口].IEEE
Trans
on
Systems。Man,andCybernetics。PartB.1996,26
(1):29—41
[2]Gambardella
L
M,Dorigo ̄LSolvingsymmetric
and
asymmetric
TSPs
by
ant
colonies[cJ//Procofthe
Int
Conf
on
Evolutionary
Computation.Piscataway,NJ:IEEE,
1996z
622—627
[33
BlumC。DorigoM.Searchbiasin
ant
colonyoptimization
l
On
the
roleof
competition-balancedsystems[/J.IEEE
Trans
on
Evolutionary
Computation,2005,9(2):159-174
[4]Blum
C,DorigoM.Thehyper-cube
framework
for
ant
colony
optimization口].IEEE
Trans
on
Systems,Man,and
Cybernetics,2004,34(2)l1161-1172
[5]DorigoM,BirattariM,StutzleT.Antcolonyoptimization:
Artificial
ants
as
a
computationalintelligencetechnique[J].
IEEEComputationalIntelligenceMagazine,2006,1(11)l
28—39
冀俊忠等:基于多粒度的旅行商问题描述及其蚁群优化算法443
E6-]Dorigo
M,Gambardella
L
M.Ant
colony
system:A
cooperativelearning
approach
to
the
traveling
salesman
problem【J].IEEE
Trans
0n
EvolutionarjrComputation,
1997,l(I):53-66
E73StutzleT,HoosHH.MAX-MIN
ant
systemi-J1.Future
GenerationComputerSystem,2000.16(8):889-914
F8JHuang
Guorui,Cao
Xianbin,Wang
Xufa.Anant
colony
optimizationalgorithmbasedon
pheromonediffusion[J].
Aeta
Electronics
Sinica,2004.32(5):865-868(inChinese)
(黄国锐,曹先彬,王煦法.基于信息素扩散的蚁群算法[J3.电子学报,2004,32(5):865—868)E9-1
WuBin,ShiZhongzhi.An
ant
colonyoptimizationalgorithm
based
partition
algorithmforTSP[J].ChineseJournalof
Computers。2001,24(13):1328—1333(inChinese)
(吴斌,史忠植.一种基于蚁群算法的TSP问题分段求解算法[J].计算机学报,2001,24(13):1328—1333)
[10]WuQinghong,ZhangJihui,XuXinhe.An
ant
colony
algorithmwithmutation
features[J3.JournalofComputer
ResearchandDevelopment.1999,36(10)l1240—1245(in
Chinese)
(吴庆洪,张纪会,徐心和.具有变异特征的蚁群算法[J3.计算机研究与发展,1999,36(10):1240-1245)
[11]Ding
Jianli,Chen
Zengqiang,Yuan
Zhuzhi.On
the
combinationof
geneticalgorithmand
ant
algorithmEJ3.
JournalofComputerResearchandDevelopment・2003・40
(9):1351—1356(inChinese)
(丁建立,陈增强,褒著祉.遗传算法与蚂蚁算法的融合EJ3.计算机研究与发展,2003,40(9):1351—1356)
[1z]Zhu
Qingbao,Yang
Zhijun.Anant
colonyoptimizationalgorithm
based
onmutation
and
dynamic
pheromone
updating口].Journal
of
Software,2004。15(2):185—192
(in
Chinese)
(朱庆保,杨志军.基于变异和动态信息素更新的蚁群优化算法[J].软件学报,2004,15(2);185—192)
[13]ReimannM.Guiding
ACObyproblemrelaxation:A
case
study
on
thesymmetricTSP[G]/ILNCS4771.Berlin
l
Springer。2007:45-56[14]LeLouamFX,GendreauM,PotvinJY.GENIantsforthe
travelling
salesman
problem[刀.Annalsof
Operations
Research。2004。131(10):187—201
[153
Li
Bingyu,Xiao
Yunshi.Antcolonyalgorithmbased
on
modelalgorithmfortravelingsalesmanproblem口].Journal
ofTongjiUniversity,2003,31(11):1348—1352(inChinese)
(李炳宇,萧蕴诗.基于模式求解旅行商问题的蚁群算法[J-I.同济大学学报,2003,31(11):1348—1352)
[163
ZouPeng。Zhou
Zhi,ChenGuoliang,etaL
A
multilevel
reduction
algorithm
to
TsP[刀.Journalof
Software,2003,
14(1):35-42(inChinese)
(邹鹏,周智。陈国良,等.求解TSP问题的多级归约算法[J].软件学报,2003,14(1):35-42)
[17]ZhangYanping,ZhangLing,WuTao.The
representation
of
differentgranular
worlds:A
quotient
space口].Chinese
JournalofComputers,2004,27(3):328—333(inChinese)
(张燕平,张铃.吴涛.不同粒度世界的描述法——商空间法
[J].计算机学报,2004,27(3):328-333)
[18]EasterM,Kriegel
H
P,SanderJ,eta1.Adensity-based
algorithmfordiscoveringclusters
inlarge
spatial
databaseswith
noise[c]//Procof
the
Int
Conf
on
Knowledge
Discovery
and
Data
Mining(KDD-96).MenloPark,CA:
AAAI,1996:226-231
[193jiJunzhong.HuangZhen,Liu
Chunnian.Afast
ant
colony
optimizationalgorithmfortravelingsalesmanproblems[J].
Journalof
Computer
Researchand
Development,2009,46
(6):968—978(inChinese)
(冀俊忠,黄振,刘椿年.一种快速求解旅行商问题的蚁群算法[J].计算机研究与发展。2009,46(6):968—978)
JiJunzhong。bornin1969.PhDof
Beijing
Universityof
Technology.Professor.
Senior
member
ofChinaComputerFederation.Hismain
research
interests
includemachine
learning,Web
intelligence,
andcomputationintelligence.
冀俊忠,1969年生,博士,教授,中国计算机学会高级会员,主要研究方向为机器学习、Web智能、计算智能.
HuangZhen,born
in
1981.Master.His
mainresearchinterestsincludedatamining
and
Webintelligence.
黄振。1981年生,硕士,主要研究方向为数据挖掘、web智能.
LiuChunnian.bornin1944.ProfessorandPhDsupervisor.ReceivedhisBScdegree
in
mathematicsfromPekingUniversity,
his
MSC
degree
in
computer
science
from
BeijingUniversityofTechnology,andhis
PhD
degree
in
software
engineer
from
NorwegianUniversityofScienceandTechnology.Hismainresearch
interests
include
data
mining,inductive
logic
programming,constraintprogramming,machinelearning
andsoftcomputing.
刘椿年,1944年生,教授。博士生导师,主要研究方向为数据挖掘、人工智能、约束逻辑程序设计.
Dai
Qiguo,bornin1985.Mastercandidate
of
BeijingUniversityofTechnology.His
mainresearchinterestsincludedataminingandcomputationintelligence.
代启国.1985年生,硕士研究生,主要研究
方向为数据挖掘、计算智能.
444
计算机研究与发展2010.47(3)
ResearchBackground
Antcolony
optimization(ACO)algorithmis
a
metaheuristicandstochasticsearchtechnology,whichhasbeen
a
one
ofthe
effectivetoolsforsolvingdiscreteoptimizationproblems.However,thereismuchtime
tO
bottleneckthat
proposes
a
theACOalgorithmnovelandhigh
COSTStOO
solvetheiarge-scaledoptimizationproblems.Therefore,this
paper
efficientACO
algorithmforthetravelingsalesmanproblems(TSPs).First,anovelmultiple-grainrepresentationmodelofTSPsisproposed.Based
on
themodel,thispaper
on
presents
a
new
algorithmforTSPs,whichmainlycontainssixphases,i.e.agranularity
on
partitionalgorithmbaseddensityclustering,anACOalgorithmbased
the
same
the
coarse
grain,a
connectionalgorithmbetween
a
twogranularities,anACOalgorithmingranularity,afusionalgorithm
amonggranularities,and
of
TSPs
subsection
the
optimizationalgorithmregardlessofgranularities.Theexperimentalresultsforlargenumberproposedalgorithmcompetitiveinresearch
time
can
demonstratethat
is
greatlyimprovethespeedof
convergence
incontrastto
theclassicalACSalgorithm.and
highly
performancecomparedwithsomelatestelitistACOalgorithms.Ourworkissupportedbythemajor
programoftheNationslNaturalScienceFoundationofChina(No.60496322)。theBasicTheoryandCoreTechniques
ofNon-CanonicalKnowledge(Nos.60496322,60496327),andthe
BeijingNaturalScienceFoundation(No.4083034).
第17届全国网络与数据通信学术会议(NDCC2010)征文通知
2010年9月16El一17日
北戴河
由中国计算机学会网络与数据通信专业委员会主办,由东北大学秦皇岛分校和东北大学信息科学与工程学院联合承办的“第17届全国网络与数据通信学术会议”将于2010年9月16日到17日在美丽的海滨城市北戴河举行.
本次大会将围绕“网络与通信新技术及应用”这一主题展开,为来自国内外高等院校、科研院所、企事单位的学者、教授、专家、工程师提供一个代表国内网络与数据通信产学研界高水平的高层信息交流平台,探讨本领域发展所面临的关键挑战问题和热点研究方向.
会议论文集将由《东北大学学报(自然科学版)》增刊出版(EI检索源).论文参照《东北大学学报》格式,字数一般不超过6000字,稿件通过投稿系统提交,具体参见会议网站http://ndcc2010.neuq.edu.cn.部分优秀论文将被推荐到《计算机学报》,《电子学报》、《计算机研究与发展》、《电子与信息学报》的正刊发表(均为EI检索源).会议期间将评选会议优秀论文和优秀学
生论文.
本次会议的主要征文范围包括以下领域(但不限于):
新一代网络技术:网络体系结构、路由/交换技术、协议丁程、网络虚拟化、认知网络、IPv4/IPv6过渡技术、NGNINGI平台应用;新一代计算技术:云计算/网格计算、并行/分布式计算、普适/效用计算、服务计算;无线通信技术:下一代移动通信技术、自适应信号处理、传感器网络、移动自组织网络、智能天线、卫星通信;其他;光通信技术、网络安全、网络管理、网络应用.
投稿须知
1)投稿内容突出作者的创新与成果,具有较重要的学术价值与应用推广价值,未在国内外公开发行的刊物或会议上发表
或宣读过.
2)论文语言要求中文,字数一般不超过6000字,论文格式参照《东北大学学报》,投稿稿件用Word文件形式.东北大学学报的网站地址如下:http:/lxuebao.ned.edu.en/natural/index.asp.
3)请在稿件最后附上第一作者姓名、性别、职务/职称,所属单位、通信地址、邮政编码、联系电话和E—mail地址.并注明论文所属领域.
4)被录用的论文,至少要有一位作者参加会议并发盲,才有资格参与优秀论文的评选.
投稿方式
论文投稿通过投稿系统进行提交,详见会议网站:http://ndcc2010.neuq.edu.cn或者通过邮件地址ndec2010@mail.neuq.edu.cn联系.电子邮件请在邮件标题注明“NDCC2010投稿”.
重要日期
论文提交截止日期:2010年5月15日;论文录用通知日期:2010年7月1日;会议注册截止日期:2010年8月15日.联系方式
联系电话:0335—8052155
邮件地址:ndee2010@mail.neuq.edu.cn
联系人l王翠荣韩来权
会议网站:http://ndec2010.neuq.edu.eft