亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        蟻群算法在求解旅行商問題中的改進(jìn)

        2010-11-15 01:32:34嚴(yán)小燕夏桂林
        巢湖學(xué)院學(xué)報(bào) 2010年6期
        關(guān)鍵詞:信息

        嚴(yán)小燕 李 旸 夏桂林

        (1安徽農(nóng)業(yè)大學(xué)信息與計(jì)算機(jī)學(xué)院,安徽 合肥 230036)

        (2巢湖學(xué)院計(jì)算機(jī)系,安徽 巢湖 238000)

        蟻群算法在求解旅行商問題中的改進(jìn)

        嚴(yán)小燕1,2李 旸1夏桂林2

        (1安徽農(nóng)業(yè)大學(xué)信息與計(jì)算機(jī)學(xué)院,安徽 合肥 230036)

        (2巢湖學(xué)院計(jì)算機(jī)系,安徽 巢湖 238000)

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

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

        1 引言

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

        上式中ri為城市號(hào),取值范圍為從1到n的自然數(shù)。

        TSP問題在科學(xué)、工程及經(jīng)濟(jì)的各個(gè)方面具有廣泛的應(yīng)用如:網(wǎng)絡(luò)通訊、電網(wǎng)規(guī)劃、管道鋪設(shè)、交通調(diào)度、物流貨物配送等。這些問題或者是TSP問題的原型,或者可以轉(zhuǎn)化為TSP問題。TSP問題形式簡(jiǎn)單、易于描述,是諸多領(lǐng)域內(nèi)出現(xiàn)的復(fù)雜問題的集中概括和簡(jiǎn)化形式。因此,快速、有效地解決TSP問題有著極高的實(shí)際應(yīng)用價(jià)值。

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

        常用的啟發(fā)式算法有遺傳算法、模擬退火算法、粒子群算法和蟻群算法等。其中,蟻群算法是一種群體啟發(fā)式算法,與其他優(yōu)化算法相比具有信息正反饋性、較強(qiáng)的魯棒性、采用分布式并行計(jì)算機(jī)制、易于與其它算法相結(jié)合等主要特點(diǎn)。[2]

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

        2 蟻群算法原理及數(shù)學(xué)模型

        2.1 蟻群算法的原理

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

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

        2.2 蟻群算法數(shù)學(xué)模型[5,6]

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

        (1)路徑選擇機(jī)制

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

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

        (2)信息素更新機(jī)制

        為了模擬避免殘留信息素過多引起殘留信息淹沒啟發(fā)信息,在每只螞蟻?zhàn)咄暌徊交蛘咄瓿蓪?duì)所有n個(gè)城市的遍歷(一個(gè)循環(huán)結(jié)束)后,要對(duì)殘留信息素進(jìn)行更新處理。(t+n)時(shí)刻,所有的螞蟻完成了一次周游,路徑(i,j)上信息素可根據(jù)以下公式做調(diào)整:

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

        3 蟻群算法的改進(jìn)與實(shí)現(xiàn)流程

        基本蟻群算法一般需要較長(zhǎng)的搜索時(shí)間,且容易出現(xiàn)停滯現(xiàn)象。當(dāng)一條路徑上的信息素較其他的路徑多時(shí),后面的螞蟻會(huì)偏向于走這條路徑,使之信息素越來越多,算法易于陷入局部最優(yōu),即搜索進(jìn)行到一定時(shí)間或程度后,所有螞蟻個(gè)體所發(fā)現(xiàn)的解趨于一致。這樣不利于進(jìn)一步搜索得到更好的結(jié)果,可能導(dǎo)致無法找到全局最優(yōu)解。

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

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

        (2)在路徑狀態(tài)轉(zhuǎn)移上,增強(qiáng)搜索過程的指導(dǎo)性,同樣對(duì)每一個(gè)當(dāng)前城市,判斷下一個(gè)城市是否屬于這個(gè)子集,再確定轉(zhuǎn)移概率;

        (3)信息素更新上,對(duì)最優(yōu)解進(jìn)行更大限度的增強(qiáng),而對(duì)最差解進(jìn)行削弱;

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

        根據(jù)以上分析,改進(jìn)的蟻群算法求解TSP問題的實(shí)現(xiàn)步驟如下:

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

        第2步:將各螞蟻的初始出發(fā)點(diǎn)置于各自的禁忌表中。

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

        第4步:循環(huán)執(zhí)行第3步,直到每只螞蟻都生成一條路徑;

        第5步:求出到目前為止的最優(yōu)解和最差解;

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

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

        第8步:如果循環(huán)次數(shù)Nc≥Nmax,則循環(huán)結(jié)束并輸出最優(yōu)路徑,否則清空禁忌表,Nc←Nc+1并跳轉(zhuǎn)到第3步,繼續(xù)下一輪循環(huán)。

        4 算法實(shí)現(xiàn)及結(jié)果分析

        選用國(guó)際上通用的TSPLIB基準(zhǔn)庫(kù)中的Oliver30為例,對(duì)本論文提出的改進(jìn)的蟻群算法進(jìn)行實(shí)驗(yàn)仿真,用VC++編程實(shí)現(xiàn),以驗(yàn)證其有效性。實(shí)驗(yàn)環(huán)境:操作系統(tǒng)為Microsoft Windows XP Professional,CPU 為酷睿 2 雙核(1.6GHz),內(nèi)存為1G。

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

        圖1 改進(jìn)的蟻群算法求解Oliver30問題的最優(yōu)解

        表1 基本蟻群算法和改進(jìn)的蟻群算法求解Oliver30問題結(jié)果比較

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

        5 結(jié)束語(yǔ)

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

        [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]李士勇.蟻群算法及其應(yīng)用[M].哈爾濱:哈爾濱工業(yè)大學(xué)出版社,2004.

        [3]孫京浩,李秋艷,楊欣斌等.基于蟻群算法的故障識(shí)別[J].華東理工大學(xué)學(xué)報(bào),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]段海濱.蟻群算法原理及其應(yīng)用[M].北京:科學(xué)出版社,2005.

        [6]周康,強(qiáng)小利,同小軍等.求解 TSP 算法[J].計(jì)算機(jī)工程與應(yīng)用,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

        嚴(yán)小燕(1984-),女,安徽廬江人。安徽農(nóng)業(yè)大學(xué)計(jì)算機(jī)應(yīng)用技術(shù)專業(yè)研究生,巢湖學(xué)院計(jì)算機(jī)系教師。研究方向:計(jì)算機(jī)網(wǎng)絡(luò)。

        責(zé)任編輯:陳 侃

        猜你喜歡
        信息
        訂閱信息
        中華手工(2017年2期)2017-06-06 23:00:31
        展會(huì)信息
        信息超市
        展會(huì)信息
        展會(huì)信息
        展會(huì)信息
        展會(huì)信息
        展會(huì)信息
        信息
        健康信息
        祝您健康(1987年3期)1987-12-30 09:52:32
        亚洲av日韩aⅴ永久无码| 亚洲国产精品成人天堂| 一区二区三区精品亚洲视频| 日本一区三区三区在线观看| 中文字幕无码av波多野吉衣| 中文字幕亚洲无线码| 26uuu欧美日本在线播放| 黄色潮片三级三级三级免费| 国产精品久久精品第一页| 好男人日本社区www| 中文字幕巨乱亚洲| 亚洲成av人片在久久性色av| 欧美性色欧美a在线播放| 麻豆精品久久久久久久99蜜桃| 无码精品一区二区三区超碰| 亚洲精品一区二区三区日韩| 久久久久亚洲av无码a片| 国产午夜福利在线播放| av少妇偷窃癖在线观看| 成人自拍三级在线观看| 少妇人妻中文字幕hd| 麻豆国产人妻欲求不满| 国产黄色精品高潮播放| 亚洲高清一区二区三区在线播放| 亚洲 自拍 另类小说综合图区 | 亚洲爆乳无码精品aaa片蜜桃 | 五月天欧美精品在线观看| 人妻尤物娇呻雪白丰挺| 色综合久久中文字幕综合网| 欧美巨大巨粗黑人性aaaaaa| 激情 一区二区| 国产高清视频在线不卡一区| 国色天香精品一卡2卡3卡4| 国产欧美精品一区二区三区–老狼 | 情色视频在线观看一区二区三区| 插入日本少妇一区二区三区| 中文字幕一区二区三区日韩精品| 久久天堂av色综合| 韩国三级黄色一区二区| 成在线人免费视频| 好爽受不了了要高潮了av|