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

求解旅行商問題的一種新方法

2012-08-16 08:03:18呂善國曹義親陳紅麗
華東交通大學學報 2012年5期
關鍵詞:模型

呂善國,曹義親,陳紅麗

(華東交通大學軟件學院,江西南昌330013)

旅行商問題[1](traveling salesman problems,TSP)是一個經典的組合優化問題,是指在給定了距離的城市集合中求解經過所有城市恰好一次的最短回路,是一個典型的NP難問題[2]。在VLSI芯片設計、機器人控制和車輛選路等許多領域有廣泛的應用[3]。

求解該類問題可以使用精確算法,常用的方法包括:分枝定界法[4]、線性規劃法[5]和動態規劃法[6]等,能保證得到最優解,但計算復雜度隨著網絡規模的增大呈指數增長,是NP困難的。當網絡達到一定規模時,通常使用近似算法或啟發式算法求解TSP。近似算法是把誤差控制在一定范圍的前提下快速得到解決方案,包括構造型算法和改進型算法。構造型算法從某個非法解開始,按一定規則一次性的構造一個合法解;而改進型算法在給定的初始合法解上逐步改進,是一種迭代法。近似算法主要有遺傳算法[7]、蟻群算法[8]、模擬退火算法[9]、人工神經網絡[10]、LK算法[11]、人工免疫算法[12]、粒子群優化算法[13]和混合智能算法[14]等。

因此,尋找一種高效的近似算法來求解旅行商問題意義非常重大。通過對旅行商問題的深入研究,本文提出了一種簡化模型法SModel(simple model)來求解旅行商問題。SModel方法在簡化的網絡模型基礎上,對模型中的路徑進行重構得到旅行商問題的解。

1 簡化網絡的模型

1.1 符號定義

在對具體問題進行描述之前,先給出一些符號的定義。對于給定的圖G=(V,E,W),其中:V為頂點集合,V={v i,i=1,…,n},E為邊的集合,W為邊的權值集合。D(vi)和SD(vi)均表示節點vi的度,包括節點的入度和出度,區別在于D(vi)表示初始網絡中節點vi的度,而SD(vi)表示被處理過的網絡中節點vi的度;路徑表示從一個節點出發經歷一系列節點最終到達某個節點的通路,兩個端節點的度為1,其余節點的度均為2;環路表示從一個節點出發經歷一系列節點最終回到出發點的路徑,環路中所有節點的度均為2。

1.2 簡化模型

簡化初始圖的模型在一定的約束條件下把一個初始圖簡化為邊的數量較少的圖,在簡化網絡圖的基礎上,進行路徑的選擇,構建滿足要求的路徑。簡化模型記為SModel,其詳細過程包括排序操作和選擇操作。

1)排序操作。對于一個圖G=(V,E,W),把E中所有邊按照權值從大到小排列,排序后的邊存儲在一個集合SortEdgeArray中。

2)選擇操作。所有排序后的邊按照先后順序進行測試。對于任一條邊 <vi,vj>,如果滿足式(1)的限制,<vi,vj>將從SortEdgeArray中刪除,同時,D(vi)和D(vj)都將減1。

當所有的邊都經過測試后,剩下的邊與所有的節點可以構成一個或多個子圖,子圖中絕大多數節點的度都為2,很少一部分節點的度為3或者更大的數字。構建SModel的計算復雜度為O(eln(e))(其中,e為邊的數目)。

2 模型法求解TSP

初始圖轉化為SModel后,將對SModel中的節點和邊進行一次遍歷。所有節點和邊的初始狀態置為0,一旦被遍歷過了,狀態由0轉化為1。

起始節點在度數大于2的節點中隨機選擇,記為vr。遍歷結點vr,狀態由0變為1;在狀態為0的邊集和結點集中選擇與vr相連的邊erj和鄰接點vj,且邊erj狀態由0變為1;將vj作為vr,重復上述過程,直到所有結點均被遍歷過或者找不到狀態為0的結點vr的鄰接點為止。

如果未遍歷完成且找不到狀態為0的結點vr的鄰接點,說明發現了一個局部環。在整個遍歷過程中,可能存在大量的局部環。經分析,所有的局部環分為兩類,分別處理這兩類局部環。

2.1 處理局部環

2.1.1 只有1個結點的度大于2的局部環

遍歷過程中發現局部環,若如圖1(a)所示,所有結點中只有1個結點的度大于2,這種類型的環稱為Cycle1。在該環中,只有與結點vs相連的邊大于2,因此需要刪除一條與vs相連的邊。對應Cycle1,破環方法如圖2(b,c,d)所示。

圖1 Cycle1的破環方法Fig.1 The broken ring methods of Cycle1

ve作為這個局部環中最后被遍歷的節點,vn標記為僅次于vs被遍歷到的節點。對于圖1(b),如果ve與環中的某節點(p指針指向的節點)在初始圖中是相連的,同時,沿著遍歷方向的下一個節點與某個狀態為0的節點在初始圖中也相連,則可以刪除p指針指向的節點與其下一個節點之間的連邊和邊 <ve,vs>,并加入新邊連接到狀態為0的結點v,新加入的邊狀態由0變為1,當前節點變為新加入的節點,繼續遍歷;圖1(c)與圖1(b)的處理方法相似,把ve變為vn,p指向節點的下一個結點按照逆遍歷方向選擇。如果仍然不能破壞局部環,就考慮圖1(d)所示的方法來解決。圖1(d)中,v0先于vs被遍歷。如果v0與此環中某節點在初始圖中相連,同時在p指向節點的遍歷方向的下一個節點與其他狀態為0的節點在初始圖中也相連,則新加入的狀態為0的節點變為當前節點,新加入的邊狀態由0變為1,繼續遍歷。

選擇狀態為0的新節點時要滿足總代價增量最小的原則,即增加的兩條邊的權值和與刪除的兩條邊的權值和的差值最小。

2.1.2 多于1個節點的度大于2的局部環

相對于類型Cycle1,局部環中度大于2的節點數目多于1個的環稱為類型Cycle2。在考慮結點之間是否可以連接時,首先計算度數大于2的結點,其破環方法與Cycle1的破環方法類似。

不管是哪種類型的局部環,如果其無法與其他狀態為0的節點相連,則把本次遍歷路徑中的所有節點和邊存儲到一個路徑集中,重新選擇下一次遍歷的初始節點。

2.2 對集中路徑的連接和調節

當SModel遍歷完成,路徑集中的路徑數目通常大于1。如果不同路徑中的端節點是可連接的,則這兩條路徑可以連接為一條路徑。連接方法如圖2(a,b)所示,節點va,vn,vi和vk都是不同路徑中的端節點,對于圖2(a),如果某路徑的一個端節點與另一條路徑中的中間節點(圖2(a)中為vc)是可連接的,而此中間節點的鄰居節點(圖2(a)中為vb)與其另一端的端節點vn是相連的,則這兩條路徑可以合并為一條路徑。對于圖2(b),如果一條路徑的兩個端節點與另一條路徑中相鄰的兩個節點分別相連(vi與vc相連,vk與vd相連,vi和vk是一條路徑的兩個端點,vc和vd在另一條路徑中相鄰),則這兩條路徑可以合并為一條。

重復上面的操作,直到所有路徑合并為一條,稱其為全局路徑。

2.3 生成全局環

如圖2(c)所示,vb與vc為鄰居節點,vb與端點va在同一側,vc與vk也在同一側,如果一對鄰居節點分別與不同側的端節點相連,則全局路徑可以轉換為全局環。例如,vc與va相連,vb與vk相連,增加邊<vb,vk> ,<va,vc> ,刪除邊 <vb,vc> ,則完成所有操作。增加和刪除邊的操作要遵循最小增量原則。

3 實驗分析

求解TSP問題的近似算法性能標準包括算法的運行時間和解的質量。通常以相對于最優解的誤差為評價標準,計算公式如下

式中:R為解,Opt為最優解。

以下給出在TSPLIB[15]的典型實例上進行的測試結果,如表1所示。實例名稱中的數字表示實例的規模,如實例Eil51的規模為51。Opt是TSPLIB中的最優解,即最短路徑值Min即最短路徑是簡化模型法的最優解與Opt的誤差,Avg是簡化模型法的平均解與Opt的誤差,n是遍歷過程中發現的局部環數目。

圖2 處理路徑的方法Fig.2 The method of dealing with path

表1 各實例測試結果Tab.1 Test results of examples

實驗中每個實例至少運行100次,從實驗結果看出,測試實例的平均解與最優解非常接近,這是由于從全局入手來構造SModel,避免了陷入局部最優的狀態。另外,簡化模型法得到的最優解與TSPLIB中的最優解的誤差基本都小于10%,是可以接受的。值得注意的是,局部環的數目在一定程度上可以表示簡化模型法的計算復雜度。

簡化模型法解決TSP問題的時耗小。實驗中,對節點規模為1 000到5 000個節點的隨機網絡圖進行了處理,其運行時間與節點規模的關系如圖3所示。顯然,隨著節點規模的增加,運行時間也會增加,但是增長程度與線性曲線接近。

圖3 節點規模為1 000到5 000的時間消耗Fig.3 Time consumption from 1 000 to 5 000 nodes

4 總結

本文提出了一種求解旅行商問題的新方法。新算法對初始網絡進行簡化得到簡化模型(SModel),然后處理模型中的局部環,刪除冗余的邊,生成多條路徑,再對生成的路徑進行重構,最終得到滿足要求的全局環路。在TSPLIB中典型實例上的實驗結果表明,該算法在求解速度和求解能力方面都能得到比較令人滿意的結果。

[1]LAWLER E L,LENSTRA J K,RINNOOY KAN A H G,et al.The traveling salesman problem[M].Chichester:John Wiley&Sons,1985:51-78.

[2]GAREY M R,JOHNSON D S.Computers and intractability:a guide to the theory of NP-Completeness[M].San Francisco:W H Freeman,1979:25-30.

[3]萬穎瑜,周智,陳國良,等.SizeScale:求解旅行商問題(TSP)的新算法[J].計算機研究與發展,2002,39(10):1294-1302.

[4] CARPANETO G,TOTH P.Some new branching and bounding criteria for the asymmetric traveling salesman problem[J].Management Science,1980,26(7):736-743.

[5]G DANTZIG,R FULKERSON,S JOHNSON.Solution of a large scale traveling salesman problem[J].Operations Research,1954,2(4):393-410.

[6]BELLMAN R.Dynamic programming treatment of the traveling salesman problem[J].JACM,1962(9):61-63.

[7]SU F,ZHU F,YIN Z,et al.New crossover operator of genetic algorithms for the TSP[C]//Yu lean.International Joint Conference on Computational Sciences and Optimization.Jinan,China:IEEE Computer Society,2009:666-669.

[8] ZHOU Y.Runtime Analysis of an ant colony optimization algorithm for TSP instances[J].IEEE Transactions on Evolutionary Computation,2009,13(5):1083-1092.

[9]SONG C,LEE K.Extended simulated annealing for augmented TSP and multi-salesmen TSP[C]//Don Wunsch,Michael Hasselmo,et al.Proceedings of the International Joint Conference on Neural Networks.Portland,Oregon:IEEE Neural Networks Society,2003:2340-2343.

[10] ABDEL-MOETTY S.Traveling salesman problem using neural network techniques[C]//Ahmed Zoweil,Dokki,Giza.The 7th International Conference on Informatics and Systems.Cairo,Egypt:IEEE Conference Publications Program,2010:1-6.

[11]LIN S,KERNIGHAN B.An effective heuristic algorithm for the traveling salesman problem[J].Operation Research,1973,21(2):486-515.

[12] HUNT J,COOKE D.Learning using an artificial immune system[J].Journal of Network and Computer Applications,1996,19(2):189-212.

[13]JAMES K,EBERHART R.Adiscrete binary version of the particle swarm algorithm[J].Proceeding of the IEEE International Conference on Systems,Man and Cybernetics,1997(5):4104-4108.

[14]陳冬華.旅行商問題推廣及其混合智能算法[J].華東交通大學學報,2011,28(2):102-106.

[15]REINELT G,TSPLIB.Atravelling salesman problem library[J].ORSAJournal of Computer,1991,3(4):376-384.

猜你喜歡
模型
一半模型
一種去中心化的域名服務本地化模型
適用于BDS-3 PPP的隨機模型
提煉模型 突破難點
函數模型及應用
p150Glued在帕金森病模型中的表達及分布
函數模型及應用
重要模型『一線三等角』
重尾非線性自回歸模型自加權M-估計的漸近分布
3D打印中的模型分割與打包
主站蜘蛛池模板: 久久青草热| 农村乱人伦一区二区| 波多野结衣二区| 最新国产你懂的在线网址| 激情综合网激情综合| 99re在线观看视频| 中文字幕日韩丝袜一区| 久久情精品国产品免费| 天天综合色天天综合网| 99久久国产精品无码| 999福利激情视频| 99视频在线观看免费| 强乱中文字幕在线播放不卡| 丁香六月综合网| 日韩无码视频播放| 亚洲欧洲日产国产无码AV| 欧洲熟妇精品视频| 无码专区国产精品第一页| 91精品啪在线观看国产60岁 | 国产精品夜夜嗨视频免费视频| 九九热这里只有国产精品| 国产在线观看第二页| 操美女免费网站| 波多野结衣爽到高潮漏水大喷| 美女扒开下面流白浆在线试听| 日韩无码精品人妻| 国产成人综合久久精品下载| 国产欧美精品专区一区二区| 五月六月伊人狠狠丁香网| 国产亚洲精品自在久久不卡 | 亚州AV秘 一区二区三区| 亚洲美女高潮久久久久久久| 国产福利拍拍拍| 青青青视频免费一区二区| 亚洲第一区欧美国产综合| 国产欧美日韩va另类在线播放| 一级片一区| 亚洲v日韩v欧美在线观看| 国产成人精品日本亚洲77美色| 中文国产成人久久精品小说| 色综合天天娱乐综合网| 免费a级毛片视频| 久久久噜噜噜久久中文字幕色伊伊 | 亚洲侵犯无码网址在线观看| 亚洲第一视频网| 国产亚洲精久久久久久久91| 5555国产在线观看| 国产xx在线观看| 久久久久久久久久国产精品| 91毛片网| 久久黄色影院| 色悠久久久| 日本久久网站| 四虎精品黑人视频| 国产精品三级专区| 毛片卡一卡二| 99久久人妻精品免费二区| 欧美亚洲网| 国产一在线| 日韩a在线观看免费观看| 国产91小视频| 亚洲欧美日韩天堂| 色综合久久88| 毛片在线播放a| 国产精品网曝门免费视频| 日本手机在线视频| 国产日韩欧美精品区性色| 国产一级二级三级毛片| 亚洲人成影院午夜网站| 久久国产精品影院| 午夜国产理论| 成人免费午间影院在线观看| 久久精品女人天堂aaa| 狼友视频国产精品首页| 全部免费特黄特色大片视频| 麻豆精选在线| 亚洲综合第一页| 国产在线精彩视频二区| 麻豆国产在线观看一区二区| 国产麻豆精品手机在线观看| 人人爽人人爽人人片| 国产精品浪潮Av|