文/譚慧莉
蟻群算法的參數(shù)分析
文/譚慧莉
在詳細(xì)分析了蟻群算法的數(shù)學(xué)模型及綜述當(dāng)前國內(nèi)外蟻群算法研究現(xiàn)狀的基礎(chǔ)上,文章重點(diǎn)對(duì)狀態(tài)轉(zhuǎn)移概率和信息素更新機(jī)制進(jìn)行改進(jìn),并以旅行商問題(TSP)為例進(jìn)行仿真實(shí)驗(yàn),有效地避免了蟻群算法出現(xiàn)早熟和停滯的問題,驗(yàn)證了改進(jìn)的合理性和有效性。
蟻群算法 TSP問題 狀態(tài)轉(zhuǎn)移概率信息素
當(dāng)今社會(huì)已高速發(fā)展,各領(lǐng)域內(nèi)不斷的涌現(xiàn)出超大規(guī)模、隨機(jī)性的復(fù)雜問題,傳統(tǒng)的計(jì)算方法難于解決這些復(fù)雜問題。蟻群算法(ACA)是近年提出的解決這類復(fù)雜問題的一種模擬進(jìn)化算法。最早,由意大利學(xué)者M(jìn).Dorigo等人于1991年在首屆歐洲人工生命會(huì)議上提出。從此,蟻群算法逐漸引起了許多國家研究者的關(guān)注,大量有價(jià)值的研究成果陸續(xù)發(fā)表。
蟻群算法最初用于解決旅行商問題(TSP)。旅行商問題是一個(gè)經(jīng)典的組合優(yōu)化問題,是驗(yàn)證求解組合優(yōu)化問題有效性的一個(gè)間接標(biāo)準(zhǔn)。
在自然界中,螞蟻個(gè)體從蟻巢出發(fā)尋找食物源,會(huì)在所經(jīng)過的路徑上留下一種稱為“信息素”的物質(zhì),后面螞蟻在運(yùn)動(dòng)的過程中,能夠感知這種物質(zhì)的存在和強(qiáng)度,最終,找出蟻巢和食物源之間的最短距離。受蟻群覓食行為的啟發(fā),M.Dorigo等人提出了蟻群算法的基本思想,以n個(gè)城市的TSP問題(1,2,…,n分別表示城市的編號(hào))為例,算法的數(shù)學(xué)模型是:
m—蟻群螞蟻的數(shù)量
dij—城市i與j之間的距離(假定dij=dji),i,j=1,2,…,n
bi(t)—t時(shí)刻位于城市i的螞蟻的數(shù)量
ηij(t)—t時(shí)刻所能提供的某種啟發(fā)式信息,

τij(t)—t時(shí)刻螞蟻群在路徑(i,j)上的信息素

其中α為信息啟發(fā)式因子,β為期望啟發(fā)式因子,tabuk是螞蟻k已走過的城市,表示t時(shí)刻螞蟻k的禁忌表。

算法步驟:
(3)螞蟻的禁忌表索引號(hào)k=1
(5)螞蟻個(gè)體根據(jù)狀態(tài)轉(zhuǎn)移概率公式(1)計(jì)算的概率選擇城市j并前進(jìn),
(6)修改禁忌表指針,即螞蟻k移動(dòng)到新的城市,并把該城市加到螞蟻k的禁忌表中
(8)根據(jù)式(2)和(3)更新每條路徑上的信息量
蟻群算法作為一種新型的模擬進(jìn)化算法,具有正反饋機(jī)制,分布式計(jì)算,易與其他方法結(jié)合等很多優(yōu)點(diǎn)。但是,蟻群算法也存在一些不足和缺陷,收斂速度慢、易于停滯等問題是目前重點(diǎn)解決的問題,針對(duì)以上缺陷,蟻群算法的主要研究內(nèi)容集中在以下幾個(gè)方面:
真實(shí)的蟻群社會(huì)中,不同螞蟻分工不同,相互協(xié)作共同完成任務(wù)。對(duì)此進(jìn)行模擬的多態(tài)蟻群算法中,引入多種螞蟻群,不同螞蟻群的信息素調(diào)控不同,在螞蟻搜索過程中,針對(duì)各具體路徑選擇合適的信息素的濃度,加快尋優(yōu)收斂速度。
L.M.Gambardella提出了一種修正的蟻群算法—蟻群系統(tǒng),對(duì)螞蟻尋路的規(guī)則進(jìn)行了一定的調(diào)整;張軍[7]等人對(duì)蟻群算法中的參數(shù)進(jìn)行分析得到了較好的改進(jìn)。
針對(duì)蟻群算法容易出現(xiàn)局部最優(yōu)解和停滯的的缺點(diǎn),通過對(duì)文獻(xiàn)[3,5,6,7]的深入研究,d對(duì)蟻群算法在以下兩方面做出改進(jìn):
修改公式(1)為



即蟻群創(chuàng)建的第一條路徑時(shí)要參考城市之間的距離信息,導(dǎo)致蟻群留下的信息可能不準(zhǔn)確,阻礙以后的螞蟻發(fā)現(xiàn)更好的全局最優(yōu)解。改進(jìn)對(duì)策:
借鑒文獻(xiàn)[8]中對(duì)最大可選城市數(shù)的分析:以城市i為中心,作半徑為R的圓PCi,R從0不斷擴(kuò)大,直至取得i的臨近城市為止時(shí)記錄下圓內(nèi)的城市數(shù)

定義初始時(shí)刻信息素值

q為權(quán)值,0和1之間取值,將距離當(dāng)前城市較遠(yuǎn)的初始信息素值設(shè)為較近城市的q倍。
選用TSPLIB基準(zhǔn)庫中的Oliver30問題進(jìn)行試驗(yàn),已知的Oliver30問題的最短路徑長度為423.740 601,路徑中螞蟻的行走路線為:1—2—3—4—6—5—7—8—9—10—11—12—13—14—15—16—17—19—18—20—21—22—23—24—25—28—26—27—29—30。
由于算法中的參數(shù)選取對(duì)實(shí)驗(yàn)結(jié)果影響很大,采用了多組參數(shù)對(duì)實(shí)驗(yàn)結(jié)果進(jìn)行分析,令Q=100,m=20,迭代200次的最優(yōu)路徑值為424.4611,螞蟻的行走路線為:6—10—9—8—7—4—3—2—1—30—29—28—26—27—25—24—23—22—21—20—18—19—17—16—15—14—13—12—11—5。

本文在充分研究了蟻群算法在狀態(tài)轉(zhuǎn)移概率和信息素更新方面的缺陷的基礎(chǔ)上,對(duì)蟻群算法進(jìn)行改進(jìn),并通過TSP問題的仿真實(shí)驗(yàn)進(jìn)行數(shù)據(jù)分析和比較驗(yàn)證了改進(jìn)的有效性。
[1]M.Dorigo,C.Blum.Ant Colony Optimization Theory:ASurvey. Theoretical Computer Science,2005,344(2-3):243-278.
[2]M.Birattari,P.Pellegrini,M. Dorigo.On the Invariance of Ant Colony Optimization.IEEE Transactions on Evolutionary Computation.2007,11(06):732-742
[3]徐宗本.計(jì)算智能[M].北京:高等教育出版社,2004:111-123.
[4]M.Dorigo,L.M.Gambardella.Ant Colonies for the Traveling Salesman Problem. Bio-System,1997,43:73-81.
[5]鮑文杰.朱信忠.趙建民.徐慧英.加權(quán)值.多態(tài)蟻群算法[J].軟件工程,2016(04):1-4.
[6]L.M.Gambardella,M.Dorigo.Solving Symmetric and a Symmetric TSPs by Ant Colonies.Proceedings of the IEEE Conference on Evolutionary Computation,1996:622-627.
[7]張軍,劉羽,程樊啟.蟻群算法解決TSP問題的并行化研究與實(shí)現(xiàn)[J].計(jì)算機(jī)技術(shù)與發(fā)展,2011(05):72-74.
[8]全 惠 云,文 高 進(jìn).求 解TSP的 子空間遺傳算法[J].數(shù)學(xué)理論與應(yīng)用,2002,22(01):36-39.
作者單位 哈爾濱商業(yè)大學(xué) 黑龍江省哈爾濱市 150028
譚慧莉(1979-),女,理學(xué)碩士。哈爾濱商業(yè)大學(xué)講師。研究方向?yàn)閮?yōu)化理論。