999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

蟻群算法在求解旅行商問題中的改進

2010-11-15 01:32:34嚴小燕夏桂林
巢湖學院學報 2010年6期
關鍵詞:信息

嚴小燕 李 旸 夏桂林

(1安徽農業大學信息與計算機學院,安徽 合肥 230036)

(2巢湖學院計算機系,安徽 巢湖 238000)

蟻群算法在求解旅行商問題中的改進

嚴小燕1,2李 旸1夏桂林2

(1安徽農業大學信息與計算機學院,安徽 合肥 230036)

(2巢湖學院計算機系,安徽 巢湖 238000)

蟻群算法是一種啟發式優化算法,在求解旅行商問題等多種組合優化問題上有著優越性。但基本蟻群算法收斂速度慢,易于陷入局部最優解,導致停滯現象出現。針對算法的這些缺點,提出給各條邊賦予不同的信息素初始量以加強算法初期信息素的作用,縮小算法的搜索范圍;并在進行全局信息素更新時,對到目前為止的最優解、最差解和普通解采用不同的更新策略。實驗結果表明,改進的蟻群算法在實驗環境下,解決旅行商問題時的性能較基本蟻群算法有較好的表現。

蟻群算法;旅行商問題;信息素初始化;信息素更新

1 引言

旅行商問題 (Traveling Salesman Problem,TSP),是近代組合優化領域的一個典型難題。[1]TSP問題可以形象描述為:給定n個城市(記為:r1,r2,…,rn)和它們兩兩之間的直達距離(記為:d(ri,rj)),一個旅行商從某一個城市出發,訪問每個城市一次且僅一次后再回到原出發城市,要求找出一條最短的旅行路線。即尋找一條巡回路徑R=(r1,r2,…rn,),使得公式(1)所示的目標函數最小。

上式中ri為城市號,取值范圍為從1到n的自然數。

TSP問題在科學、工程及經濟的各個方面具有廣泛的應用如:網絡通訊、電網規劃、管道鋪設、交通調度、物流貨物配送等。這些問題或者是TSP問題的原型,或者可以轉化為TSP問題。TSP問題形式簡單、易于描述,是諸多領域內出現的復雜問題的集中概括和簡化形式。因此,快速、有效地解決TSP問題有著極高的實際應用價值。

目前求解TSP問題的算法主要可以分為兩類:精確算法 (Exact Algorithm)和啟發式算法(Heuristic Algorithm)。近年來,啟發式算法在求解優化問題領域顯示出了自身的優越性。較精確算法,啟發式算法可以獲得較快的收斂速度和較高質量的全局解。

常用的啟發式算法有遺傳算法、模擬退火算法、粒子群算法和蟻群算法等。其中,蟻群算法是一種群體啟發式算法,與其他優化算法相比具有信息正反饋性、較強的魯棒性、采用分布式并行計算機制、易于與其它算法相結合等主要特點。[2]

但其不足之處是由于螞蟻是隨機選擇路徑,導致算法收斂速度較慢,搜索時間較長;且易于陷入局部最優解,易出現早熟、停滯現象。本文將針對基本蟻群算法的上述缺點,在信息素、搜索速度、搜索策略等相應方面對算法進行改進,以改善蟻群算法在解決TSP問題時的性能。

2 蟻群算法原理及數學模型

2.1 蟻群算法的原理

生物學家和仿生學家觀察研究發現,螞蟻在覓食走過的路徑上釋放一種特有的分泌物——信息素(Pheromone),[3]當它們碰到一個還沒有走過的路口時,就隨機地挑選一條路徑前行,同時釋放出與路徑長度有關的信息素。螞蟻走的路徑越長,則釋放的信息量越小。當后來的螞蟻再次碰到這個路口時,選擇信息素強度較高路徑的概率相對較大。當一條路徑上走過的螞蟻越來越多,其留下的信息素強度也會越來越高,后來的螞蟻選擇這條路徑的概率也越來越大,從而進一步增加該路徑的信息素強度,這樣便形成了一個正反饋機制。而其它的路徑上的信息素強度卻會隨著時間的流逝而削弱。螞蟻個體之間通過這種信息素傳遞信息,相互協作,最終蟻群尋找到從蟻穴到食物源的最短路徑。

從蟻群在覓食過程中尋找最短路徑得到啟發,20世紀90年代,意大利學者 Dorigo M,Maniezzo V和Colorni A提出了人工蟻群算法,[4]簡稱蟻群算法(Ant Colony Algorithm,ACA)。蟻群算法吸收了真實螞蟻的行為特性,是通過模擬真實螞蟻群體覓食行為的過程來完成對問題求解的一種仿生優化算法。

2.2 蟻群算法數學模型[5,6]

以求解平面上n個城市(1,2,…,n為城市編號)的TSP問題為例,說明基本蟻群算法模型。首先引入算法相關記號:m是蟻群中螞蟻的總數目;n是TSP問題規模;dij為城市i與城市j之間的距離;?ij(t)為啟發函數,在 TSP 問題中,一般取?ij(t)=1/dij; τij(t)為 t時刻路徑(i,j)上的信息素量,以此來模擬實際螞蟻的分泌物;tabuk為禁忌表,用以記錄螞蟻k當前所走過的城市,tabuk集合隨著進化過程做動態調整;Pkij(t)表示在 t時刻螞蟻k由城市i轉移到城市j的概率;α是信息啟發式因子,表示軌跡的相對重要性;β是期望啟發式因子,表示能見度的相對重要性;ρ是信息素揮發系數(0≤ρ<1),表示信息素含量 τij(t)隨時間的推移而衰減的程度,1-ρ為信息素殘留系數。基本蟻群算法的優化過程主要體現在兩個方面:路徑選擇機制和信息素更新機制。

(1)路徑選擇機制

在算法初始時刻,各條路徑上的信息素相等,并設τij(0)=非零常數。將m只螞蟻隨機放在n座城市上,并將每只螞蟻當前所在的城市設置為它的禁忌表的第一個元素。螞蟻k(k=1,2,…,m)在搜索過程中,根據各條路徑上的信息素量及路徑的啟發信息(城市之間的距離)來計算狀態轉移概率以決定其轉移方向。每只螞蟻被隨機放到其中的一個城市上,路徑構造依據一定的轉移概率進行,在t時刻,螞蟻k由城市i轉向城市j的狀態轉移概率為Pkij(t),其計算公式如下:

其中,allowedk={1,2,…,n}-tabuk表示螞蟻 k下一步允許選擇的城市。上式表明:轉移概率Pkij(t)與 ταi·jηβij成正比,螞蟻在選擇路徑時會盡量選擇路程短且信息素濃度較大的路徑。

(2)信息素更新機制

為了模擬避免殘留信息素過多引起殘留信息淹沒啟發信息,在每只螞蟻走完一步或者完成對所有n個城市的遍歷(一個循環結束)后,要對殘留信息素進行更新處理。(t+n)時刻,所有的螞蟻完成了一次周游,路徑(i,j)上信息素可根據以下公式做調整:

式中△τij(t)表示一次循環中路徑(i,j)上的信息素增量,初始時刻△τij(0)=0;τi(jk)(t)表示第 k 只螞蟻在一次循環中在路徑(i,j)上留下的信息素量。

3 蟻群算法的改進與實現流程

基本蟻群算法一般需要較長的搜索時間,且容易出現停滯現象。當一條路徑上的信息素較其他的路徑多時,后面的螞蟻會偏向于走這條路徑,使之信息素越來越多,算法易于陷入局部最優,即搜索進行到一定時間或程度后,所有螞蟻個體所發現的解趨于一致。這樣不利于進一步搜索得到更好的結果,可能導致無法找到全局最優解。

針對基本蟻群算法存在的不足,本文提出了一種改進的蟻群算法。先求出離各城市最近的若干個城市,構成一個子集。然后,

(1)對每一個當前城市,判斷下一個城市是否屬于這個子集,從而對各條邊賦予不同的初始信息素量以加強算法初期信息素的作用;

(2)在路徑狀態轉移上,增強搜索過程的指導性,同樣對每一個當前城市,判斷下一個城市是否屬于這個子集,再確定轉移概率;

(3)信息素更新上,對最優解進行更大限度的增強,而對最差解進行削弱;

(4)為避免由于第(3)點中最優與最差路徑信息量之間差距加劇而引起的搜索停滯現象,防止搜索過快地集中到局部最優解的周圍,增加對TSP中的每條邊上的信息素量的范圍限制。

根據以上分析,改進的蟻群算法求解TSP問題的實現步驟如下:

第1步:參數初始化。并令循環次數Nc=0,設置最大循環次數Ncmax,將m只螞蟻置于n個頂點(城市)上,有區別的給每條邊(i,j)設置初始時刻信息量 τij(0),且初始時刻△τij(0)=0。

第2步:將各螞蟻的初始出發點置于各自的禁忌表中。

第 3 步:每只螞蟻 k(k=1,2,3,…,m)根據狀態轉移概率公式計算的概率選擇頂點(城市)j,并將螞蟻移至 j,其中 j∈allowedk,將頂點(城市)j置于該螞蟻的禁忌表中。

第4步:循環執行第3步,直到每只螞蟻都生成一條路徑;

第5步:求出到目前為止的最優解和最差解;

第6步:分別更新最優解、最差解和普通解中邊上的信息量。

第7步:判斷各路徑上的信息素值是否在限制范圍內,如果超出此范圍,則強制設為最小值或者是最大值。

第8步:如果循環次數Nc≥Nmax,則循環結束并輸出最優路徑,否則清空禁忌表,Nc←Nc+1并跳轉到第3步,繼續下一輪循環。

4 算法實現及結果分析

選用國際上通用的TSPLIB基準庫中的Oliver30為例,對本論文提出的改進的蟻群算法進行實驗仿真,用VC++編程實現,以驗證其有效性。實驗環境:操作系統為Microsoft Windows XP Professional,CPU 為酷睿 2 雙核(1.6GHz),內存為1G。

分別對基本蟻群算法和改進的蟻群算法進行仿真。改進的蟻群算法的參數配置為:m=26,α=1.0,β=5.0,ρ=0.53,Q=1500,q0=0.22, 基本蟻群 算 法 參 數 配 置 為 :m=26,α=1.0,β=5.0,ρ=0.53,Q=1500,將兩種算法的最大迭代次數都設置為1000次,分別進行15次試驗,結果如表1所示。另外,改進的蟻群算法得到的最優解如圖1所示。

圖1 改進的蟻群算法求解Oliver30問題的最優解

表1 基本蟻群算法和改進的蟻群算法求解Oliver30問題結果比較

從表1中可以看出,在相同的實驗環境下,相同的參數設置,相同的最大迭代次數,本文提出的改進蟻群算法得到的最優解(423.912)和平均值(428.585)都要優于基本蟻群算法得到的最優解(440.555)和平均值(456.472)。 仿真結果表明,改進后的算法是有效的。

5 結束語

本文提出的改進蟻群算法通過對信息素初始量以及信息素更新策略等方面的改進,有效地克服了基本蟻群算法收斂速度慢,易于陷入局部最優解的缺點。對TSP問題(Oliver30)進行仿真實驗結果表明,改進蟻群算法的性能較基本蟻群算法有明顯的改善。

[1]E L Lawler,J K Lenstra and D B Shmoys(eds.).The Traveling Salesman Problem: A Guided Tour of Combinatorial Opti mization[M].New York: John Wiley&Sons,1985.

[2]李士勇.蟻群算法及其應用[M].哈爾濱:哈爾濱工業大學出版社,2004.

[3]孫京浩,李秋艷,楊欣斌等.基于蟻群算法的故障識別[J].華東理工大學學報,2004,30(2):194-198.

[4]Colorni A.,Dorigo M.,Maniezzo V,et al.Distributed optimization by ant colonies[C].Proceedings of the First European Conference on Artificial Life,1991:134-142.

[5]段海濱.蟻群算法原理及其應用[M].北京:科學出版社,2005.

[6]周康,強小利,同小軍等.求解 TSP 算法[J].計算機工程與應用,2007,43(29):43-47.

AN ANT COLONY ALGORITHM BASED IMPROVEMENT FOR TSP SOLUTIONS

YAN Xiao-yan1,2LI Yang1XIA Gui-lin2
(1 School of Information and Computer Science,Anhui Agricultural University,Hefei Anhui 230036)
(2 Computer Department of Chaohu College,Chaohu Anhui 238000 )

The ant colony algorithm is a heuristic algorithm.It has advantages on a variety of combinatorial optimization problems such as the TSP.However,basic ant colony algorithm may converge slowly and fall into local optimal solution easily,which leads to stagnation.to avoid these shortcomings of the algorithm,it is proposed that different initial amount of pheromone be given to different edges in order to enhance the effects of the pheromone in the early algorithm and narrow the algorithm search range; it is also the purpose to carry out the global pheromone update,the best solution,the worst solution and general solution with different update strategies.Experimental results show that improved ant colony algorithm has better performance in solving the TSP than the basic ant colony algorithm in experimental conditions.

ant colony algorithm;TSP;initialization of pheromone;update of pheromone

TP301.6

A

1672-2868(2010)06-0021-04

2010-08-21

嚴小燕(1984-),女,安徽廬江人。安徽農業大學計算機應用技術專業研究生,巢湖學院計算機系教師。研究方向:計算機網絡。

責任編輯:陳 侃

猜你喜歡
信息
訂閱信息
中華手工(2017年2期)2017-06-06 23:00:31
展會信息
中外會展(2014年4期)2014-11-27 07:46:46
信息超市
大眾創業(2009年10期)2009-10-08 04:52:00
展會信息
展會信息
展會信息
展會信息
展會信息
信息
建筑創作(2001年3期)2001-08-22 18:48:14
健康信息
祝您健康(1987年3期)1987-12-30 09:52:32
主站蜘蛛池模板: 日日拍夜夜操| 91丨九色丨首页在线播放| 毛片在线播放a| 亚洲色图另类| 精品人妻AV区| 狠狠ⅴ日韩v欧美v天堂| AV不卡无码免费一区二区三区| 亚洲激情区| 国产成人精品日本亚洲77美色| 色哟哟色院91精品网站| 国产交换配偶在线视频| 黄色成年视频| 久久亚洲中文字幕精品一区| 国产黄视频网站| 国产福利观看| 四虎精品国产AV二区| 97人妻精品专区久久久久| 热99精品视频| 欧美亚洲另类在线观看| 色综合久久88色综合天天提莫| 午夜激情福利视频| 亚洲国产理论片在线播放| 国产精品美女免费视频大全 | 九九热精品视频在线| 国产无码精品在线播放| 五月六月伊人狠狠丁香网| 99久久精品美女高潮喷水| 欧美日韩精品在线播放| 欧美黄网站免费观看| 99精品在线视频观看| 日韩欧美视频第一区在线观看| 亚洲国产成人超福利久久精品| 99尹人香蕉国产免费天天拍| 浮力影院国产第一页| 在线中文字幕网| 日韩精品无码不卡无码| 啦啦啦网站在线观看a毛片| 国产免费羞羞视频| 不卡视频国产| 亚洲欧美另类色图| 高清乱码精品福利在线视频| 国产三级成人| 亚洲一区二区在线无码| 欧美人在线一区二区三区| 国产女人18水真多毛片18精品 | 免费中文字幕一级毛片| 国产精品成人免费视频99| 91久久偷偷做嫩草影院电| 婷婷99视频精品全部在线观看| 国产日本一线在线观看免费| 一本大道东京热无码av| 婷婷亚洲最大| 亚洲无码电影| 国产高清无码第一十页在线观看| 美女免费黄网站| 国产一级毛片在线| 国产区在线观看视频| 国产亚洲欧美另类一区二区| 久久国产精品波多野结衣| 精品亚洲国产成人AV| 国产av一码二码三码无码| 毛片视频网址| 亚洲伊人天堂| 国产精品第一区| 日本免费新一区视频| 激情无码字幕综合| 99热这里只有精品5| 亚洲欧美日韩另类在线一| 一级毛片基地| 欧美成一级| 在线免费观看AV| 日本欧美午夜| 久久综合干| 人妻丰满熟妇AV无码区| 九色在线观看视频| 国产一区亚洲一区| 欧美一区二区自偷自拍视频| 国产网站一区二区三区| 成人另类稀缺在线观看| a毛片免费观看| 国产精品精品视频| 美女被狂躁www在线观看|