• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      引入啟發(fā)信息的粒子群算法在低碳TSP中的應(yīng)用*

      2022-06-23 03:26:50申曉寧潘紅麗陳慶洲
      關(guān)鍵詞:極值全局實(shí)例

      申曉寧,潘紅麗,陳慶洲,游 璇,黃 遙

      (1.南京信息工程大學(xué)自動(dòng)化學(xué)院,江蘇 南京 210044;2.江蘇省大氣環(huán)境與裝備技術(shù)協(xié)同創(chuàng)新中心,江蘇 南京 210044;3.江蘇省大數(shù)據(jù)分析技術(shù)重點(diǎn)實(shí)驗(yàn)室,江蘇 南京 210044)

      1 引言

      眾所周知,二氧化碳(CO2)是引起溫室效應(yīng)的主要因素,美國國家海洋和大氣局NOAA(National Oceanic and Atmospheric Administration)稱,在所有造成全球變暖的溫室氣體中,CO2占63%。根據(jù)國際能源署IEA(International Energy Agency)的數(shù)據(jù),2019年全球碳排放量的增長約為330億噸。除了發(fā)電供熱,全球第二大二氧化碳排放量貢獻(xiàn)者便是交通運(yùn)輸,交通運(yùn)輸產(chǎn)生的二氧化碳占全球二氧化碳排放量的23%,而交通運(yùn)輸總碳排放量的主要來源是道路運(yùn)輸[1]。因此,對于車輛路徑的優(yōu)化不僅要考慮耗時(shí)最少和路徑最短,同時(shí)也要考慮低碳環(huán)保這一要素。

      旅行商問題TSP(Traveling Salesman Problem)[2]可以被看作車輛路徑問題VRP(Vehicle Routing Problem)的特例,即單一車輛的VRP。TSP的應(yīng)用極其廣泛,VRP[3]、機(jī)器人路徑規(guī)劃[4]等工程問題都可以轉(zhuǎn)化成TSP進(jìn)行求解。文獻(xiàn)[3]將TSP的解進(jìn)行拆分并將其轉(zhuǎn)化為VRP的解。文獻(xiàn)[5]使用啟發(fā)式算法求解VRP,為每輛車分配客戶點(diǎn)并通過求解TSP確定該車的最優(yōu)路徑。此外,TSP還可以作為并行機(jī)器調(diào)度問題中的一個(gè)排序子問題[6]。目前,關(guān)于TSP的研究大多將總的行駛距離最短作為優(yōu)化目標(biāo)。然而,隨著環(huán)境狀況每日愈下,污染物排放和燃料消耗所造成的環(huán)境治理成本越來越高,人們在交通運(yùn)輸領(lǐng)域也開始考慮“綠色物流”的踐行。國家在“十四五規(guī)劃綱要”中也提出了廣泛形成綠色生產(chǎn)生活方式的要求和碳排放總量持續(xù)減少,生態(tài)環(huán)境持續(xù)改善的目標(biāo)。為響應(yīng)這一號(hào)召,近年來,一些學(xué)者將TSP與環(huán)境問題相結(jié)合,以降低能源消耗,減少CO2排放,緩解溫室效應(yīng)為優(yōu)化目標(biāo)。Wang等[1]研究了能耗最小化的TSP,采用改進(jìn)的分支定界方法最小化車輛的載重與行駛距離的乘積,但該方法僅在小規(guī)模問題中能夠獲得最優(yōu)解。Kaabachi等[7]研究了一類帶時(shí)間窗的綠色TSP,將蟻群算法與局部搜索相結(jié)合,確定車輛速度從而將燃油消耗降至最低。文獻(xiàn)[8]建立了一個(gè)最小化碳排放量的TSP模型,考慮了載重對碳排放的影響,并采用改進(jìn)的蛙跳算法進(jìn)行求解。然而,上述方法都存在著群體多樣性喪失快、求解精度低和問題啟發(fā)信息利用少等缺點(diǎn)。為了改善這一現(xiàn)象,本文在低碳TSP現(xiàn)有工作的基礎(chǔ)上,建立符合實(shí)際的低碳旅行商問題LCTSP(Low-Carbon Traveling Salesman Problem)的數(shù)學(xué)模型,并考慮在群智能算法中設(shè)計(jì)一系列問題特征驅(qū)動(dòng)的改進(jìn)策略,以提高算法的多樣性和求解精度。

      群智能優(yōu)化算法是能夠有效求解NP-hard問題[9]的一類算法,Kennedy等[10]于1995年提出的粒子群算法PSO(Particle Swarm Optimization)便是其中的典型代表。它通過初始化、適應(yīng)度評價(jià)、速度和位置更新等階段產(chǎn)生較優(yōu)后代,實(shí)現(xiàn)進(jìn)化迭代。與其余群智能算法相比,PSO還依靠粒子速度完成搜索,并且在迭代進(jìn)化中只有最優(yōu)粒子把信息傳遞給其他粒子,搜索速度更快。此外,PSO還具有記憶性、自我學(xué)習(xí)能力和社會(huì)學(xué)習(xí)能力,搜索精度也更高。大量學(xué)者對PSO算法的改進(jìn)及其應(yīng)用做了深入研究。Xia等[11]提出了一種三重檔案粒子群算法,該算法通過選擇合適的學(xué)習(xí)樣本建立粒子學(xué)習(xí)模型。文獻(xiàn)[12]提出一種自適應(yīng)多策略行為粒子群優(yōu)化算法,為群體中的每個(gè)粒子提供多種行為進(jìn)化策略。Marinakis等[13]采用包含3種自適應(yīng)策略的多自適應(yīng)粒子群優(yōu)化算法求解帶時(shí)間窗的車輛路徑問題。文獻(xiàn)[14]提出Beam-PSO優(yōu)化算法,解決了一類多行程車輛路徑問題。因此,本文選擇PSO算法作為所提模型的基本求解算法,結(jié)合問題的啟發(fā)信息,提出一種基于啟發(fā)信息的離散粒子群算法HDPSO(Heuristic Discrete Particle Swarm Optimization)。實(shí)驗(yàn)結(jié)果表明,所提算法具有更高的求解精度。

      2 低碳旅行商問題

      2.1 低碳旅行商問題的模型

      與傳統(tǒng)TSP不同,LCTSP的優(yōu)化目標(biāo)是確定車輛在運(yùn)輸過程中碳排放量最小的路線。由于運(yùn)輸過程中載重量不斷變化,車輛行駛相同的距離,碳排放量可能是不同的。因此,LCTSP模型有著更強(qiáng)的實(shí)用性,更滿足 “節(jié)能減排”的理念。假設(shè)LCTSP共有n個(gè)節(jié)點(diǎn)(包括倉庫和客戶點(diǎn)),貨車在運(yùn)輸過程中以勻速運(yùn)動(dòng)且燃燒效率不變,建立LCTSP的數(shù)學(xué)模型如式(1)~式(6)所示:

      (1)

      (2)

      s.t.Xij=1 or 0,i≠j

      (3)

      (4)

      (5)

      (6)

      其中,式(1)表示LCTSP的目標(biāo),即最小化一次運(yùn)貨過程中所有節(jié)點(diǎn)之間路徑段的碳排放量之和,第i、j個(gè)節(jié)點(diǎn)間路徑段的碳排放量為節(jié)點(diǎn)間的直接距離dij與對應(yīng)距離的碳排放量系數(shù)ε(Mij)的乘積;式(2)給出ε(Mij)與節(jié)點(diǎn)間的載重量Mij的函數(shù)關(guān)系[9];式(3)~式(6)為模型的約束條件,其中式(3)~式(5)保證貨車能經(jīng)過所有節(jié)點(diǎn)且每個(gè)節(jié)點(diǎn)僅經(jīng)過一次,Xij表示貨車是否選擇節(jié)點(diǎn)i和節(jié)點(diǎn)j之間的路徑,Xij=1表示選擇,Xij=0表示未選擇;式(6)防止貨車超載,保證各客戶節(jié)點(diǎn)總的需求量不超過載重量,mi(i=2,3,…,n)表示除倉庫點(diǎn)之外每個(gè)節(jié)點(diǎn)的需求量,M1表示貨車從倉庫出發(fā)時(shí)的載重量,M0表示貨車的最大載重量限制。

      2.2 模型有效性的驗(yàn)證

      為了驗(yàn)證模型的正確性和有效性,即LCTSP模型能夠在對車輛行駛距離影響較小的情況下大幅度減少碳排放量,本節(jié)分別實(shí)驗(yàn)了以最短行駛距離為目標(biāo)的經(jīng)典TSP和以最小碳排放為目標(biāo)的LCTSP。在公開數(shù)據(jù)集TSPLIB[15]中10個(gè)不同規(guī)模實(shí)例的基礎(chǔ)上,隨機(jī)生成載重和各客戶節(jié)點(diǎn)的需求量信息。2種模型的對比結(jié)果如表1所示(實(shí)例名稱中的數(shù)字表示TSP的規(guī)模)。其中,經(jīng)典TSP中的最短行駛距離在TSPLIB中是已知的,碳排放量則是將最短行駛距離對應(yīng)的最優(yōu)路徑代入2.1節(jié)LCTSP模型中的目標(biāo)(即式(1)和式(2))計(jì)算得出的;LCTSP中的碳排放量是采用本文3.1節(jié)提出的HDPSO算法求解LCTSP數(shù)學(xué)模型得出的最優(yōu)碳排放量值,再通過其對應(yīng)的最優(yōu)路徑求出行駛距離。表中還給出了與經(jīng)典TSP相比,LCTSP行駛距離或碳排放量的增加或減少百分比,“↑”表示增加,“↓”表示減少。

      從表1中可以看出,與經(jīng)典TSP相比,雖然LCTSP模型在總的行駛距離上有所增加,但在10個(gè)實(shí)例中,有6個(gè)增加的百分比都小于1%,其余4個(gè)實(shí)例增加的百分比也均小于7%,這表示該模型對行駛距離的影響總體很小。在碳排放量方面,LCTSP模型相比經(jīng)典TSP減少的幅度很大。例如,在實(shí)例gr14和fri26上,它們的運(yùn)輸距離之差為0,但是碳排放量卻分別減少了17.65%和12.65%;在大規(guī)模實(shí)例pr152上,雖然運(yùn)輸距離增加了6.70%,但是碳排放量卻減少了11.21%。這些數(shù)據(jù)表明,LCTSP模型正確且有效,它以低碳作為性能指標(biāo),能夠在保持車輛行駛距離較短的同時(shí)大幅度減少碳排放量,實(shí)現(xiàn)了“綠色運(yùn)輸”。

      Table 1 Results comparison of classic TSP and LCTSP

      3 求解LCTSP的HDPSO算法

      針對所建LCTSP模型,本文提出一種基于啟發(fā)信息的離散粒子群算法HDPSO。本節(jié)給出HDPSO的算法框架,并詳細(xì)介紹采用的新型離散個(gè)體生成算子和改進(jìn)策略。

      3.1 HDPSO算法框架

      HDPSO算法求解LCTSP模型的框架如圖1所示。HDPSO主要由4個(gè)模塊組成:(1)初始化;(2)種群中新個(gè)體的生成;(3)個(gè)體極值和全局極值的更新;(4)個(gè)體極值和全局極值的局部搜索。具體實(shí)現(xiàn)步驟如算法1所示。

      Figure 1 The framework of HDPSO to solve LCTSP 圖1 HDPSO求解LCTSP的框架圖

      算法1基于啟發(fā)信息的離散粒子群算法

      Input:N(種群規(guī)模)、n(城市規(guī)模)、Y(鄰域數(shù)量)、Pr(逆轉(zhuǎn)變異選擇概率)、α(優(yōu)先卸貨城市點(diǎn)比例)、K(相似度閾值)。

      Output:Xg(最優(yōu)個(gè)體)。

      01:隨機(jī)生成N個(gè)體Xi(i=1,2,…,N) ,計(jì)算每個(gè)個(gè)體的適應(yīng)度fitness(Xi);

      02:確定種群的全局極值Xg和每個(gè)個(gè)體的個(gè)體極值Xip;

      03:Whiletermination criterion not fulfilleddo

      04:fori=1 toNdo

      05:Xi←m_Mutate(Xi,Pr);/*個(gè)體多元變異(交換、逆轉(zhuǎn)、插入)*/

      06:Xinew←Greedy_Crossover(Xi,Xip);/*個(gè)體與個(gè)體極值貪婪交叉生成新個(gè)體Xinew*/

      07:iffitness(Xinew) ≤fitness(Xi)

      08:Xi=Xinew;

      09:Xinew←Greedy_Crossover(Xi,Xg);/*個(gè)體與全局極值貪婪交叉生成新個(gè)體Xinew*/

      10:iffitness(Xinew)≤fitness(Xi)

      11:Xi=Xinew;

      12:iffitness(Xi)≤fitness(Xip)

      13:Xip=Xi;//更新個(gè)體極值

      14:iffitness(Xi)≤fitness(Xg)

      15:Xg=Xi;//更新全局極值

      16:Xip←p_unload(Xip,α);/*基于優(yōu)先卸貨啟發(fā)信息對個(gè)體極值進(jìn)行局部搜索*/

      17:Xip(round(α*n)+1:n) ←Reversion(Xip(round(α*n)+1:n));/*未卸貨的剩余位進(jìn)行逆轉(zhuǎn)變異*/

      18:endfor

      19:Xg←Gbest_Search(X,Xg,Y,K,N);/*基于種群相似度對全局極值進(jìn)行精細(xì)化搜索,X表示個(gè)體集合*/

      20:endwhile

      21:OutputXg

      3.2 新型離散個(gè)體生成算子

      標(biāo)準(zhǔn)PSO算法是針對連續(xù)優(yōu)化問題設(shè)計(jì)的,粒子的速度和位置更新如式(7)和式(8)所示:

      (7)

      (8)

      3.2.1 保持“慣性”的個(gè)體多元變異策略

      個(gè)體多元變異策略實(shí)現(xiàn)方法的偽代碼如下所示:

      m_Mutate(X,Pr)

      Input:逆轉(zhuǎn)變異的概率Pr、個(gè)體X。

      Output:變異后的新個(gè)體Xnew。

      01:Ps=Pi=(1-Pr)/2;

      02:index←Roulette(Ps,Pr,Pi);/*基于輪盤賭選擇變異方式的序號(hào)*/

      03:ifindex==1

      04:Xnew←Swap(X);//交換變異

      05:elseifindex==2

      06:Xnew←Reversion(X);//逆轉(zhuǎn)變異

      07:elseifindex==3

      08:Xnew←Insertion(X);//插入變異

      09:OutputXnew

      首先,根據(jù)輸入的逆轉(zhuǎn)變異概率Pr計(jì)算交換變異和插入變異的概率Ps和Pi(第1行);接著,基于輪盤賭選擇變異方式的序號(hào)(第2行);若為方式1,則對個(gè)體進(jìn)行交換變異(第3~4行);若為方式2,則對個(gè)體進(jìn)行逆轉(zhuǎn)變異(第5~6行);若為方式3,則對個(gè)體進(jìn)行插入變異(第7~8行)。最后輸出變異后的新個(gè)體。

      3.2.2 跟蹤極值的貪婪交叉算子

      為了引導(dǎo)個(gè)體朝著最優(yōu)解的方向移動(dòng),本文根據(jù)LCTSP的特征設(shè)計(jì)了一種跟蹤極值的貪婪交叉算子。首先,交叉是兩個(gè)離散個(gè)體之間的信息交互,因此它可以用于個(gè)體與個(gè)體極值以及個(gè)體與全局極值之間的信息交流。其次,將載重與距離信息同時(shí)引入算子中,保證個(gè)體的“貪婪性”,即個(gè)體順序訪問的城市都是碳排放量相對較少的城市,該算子的設(shè)計(jì)不僅使得PSO適用于求解LCTSP這類離散問題,同時(shí)也提升了算法的收斂速度。

      貪婪交叉的實(shí)現(xiàn)偽代碼如下所示:

      Greedy _Crossover (Xpbest,X)

      Input:個(gè)體極值Xpbest、個(gè)體X。

      Output:新個(gè)體Xnew。

      01:Xnew←0;

      02:選擇倉庫點(diǎn)作為起始城市S;

      03:將S加入Xnew并從Xpbest和X中刪除S;

      04:從Xpbest和X中選擇城市S的左右相鄰城市作為候選城市{SLp,SRp,SLX,SRX};

      05:從 {SLp,SRp,SLX,SRX}選擇城市S′,使得S′和S之間的路徑碳排放量最小;

      06:將S′加入Xnew并從Xpbest和X中刪除S′;

      07:whileXis not emptydo

      08:ifS′∈{SLp,SLX}

      09: 將S′設(shè)為下一個(gè)出發(fā)城市S;

      10: 在S的左候選城市{SLp,SLX}中選擇新的S′作為下一個(gè)訪問的城市,使得S′與S之間的路徑碳排放量最小;

      11:else

      12: 將S′設(shè)為下一個(gè)出發(fā)城市S;

      13: 從S的右候選城市{SRp,SRX}中選擇新的S′作為下一個(gè)訪問的城市,使得S′與S之間的路徑碳排放量最小;

      14:endif;

      15: 將 S′加入Xnew并從Xpbest和X中刪除S;

      16:endwhile

      17:OutputXnew

      該算子以個(gè)體與個(gè)體極值進(jìn)行交互為例,個(gè)體與全局極值的交互同理。

      首先以倉庫點(diǎn)作為新個(gè)體的出發(fā)城市S(第2~3行)。從城市S的左右相鄰城市{SLp,SRp,SLX,SRX}中選擇城市S′,使得城市S′與城市S構(gòu)成碳排放量最少的路徑段(第4~6行)。第8行區(qū)分了兩種情況:一是下一個(gè)訪問的城市S′屬于城市S的左側(cè)相鄰城市集合,此時(shí)由于從個(gè)體極值Xpbest和個(gè)體X中刪除了S,城市S′右側(cè)相鄰城市為空,將S′設(shè)為下一個(gè)出發(fā)城市S,從S的左候選城市{SLp,SLX}中選擇新的S′作為下一個(gè)訪問的城市(第8~10行);二是S′是從城市S的右側(cè)相鄰城市集合中選擇的,此時(shí),城市S′左側(cè)城市為空,將S′設(shè)為下一個(gè)出發(fā)城市S,從S的右候選城市相鄰城市集合{SRp,SRX}中選擇新的S′作為下一個(gè)訪問的城市(第11~13行)。為了避免重復(fù)訪問某些城市,只從當(dāng)前未選擇城市中選擇下一個(gè)訪問的城市。第8~14行重復(fù)執(zhí)行,直到訪問了所有城市并生成了新的個(gè)體。

      3.3 考慮優(yōu)先卸貨的個(gè)體極值局部搜索策略

      由式(7)可知,個(gè)體極值和全局極值是參與信息交互的主要信息源,隨著迭代的進(jìn)行,種群越來越相似,跳出局部最優(yōu)解的能力也越來越弱,最終將導(dǎo)致算法搜索停滯,而局部搜索是一種跳出局部最優(yōu)的有效方法?;谏鲜龇治霾⒔Y(jié)合問題的啟發(fā)信息,本文提出考慮優(yōu)先卸貨的個(gè)體極值局部搜索PU_PLS(Priority-Unloading Personal best Local Search)策略。從個(gè)體極值的前α*n位中依次貪婪選取相距最近的城市,避免在行駛初期因?yàn)檩d重過大造成大量的CO2排放。此外,對個(gè)體極值中剩下的(1-α)*n位進(jìn)行逆轉(zhuǎn)變異,以增加搜索的多樣性,有效地避免種群陷入局部最優(yōu)。

      PU_PLS的實(shí)現(xiàn)方法如圖2所示。假設(shè)①點(diǎn)為車輛的出發(fā)點(diǎn)。首先,從①點(diǎn)出發(fā),依次選擇距離前一點(diǎn)最近的城市優(yōu)先卸貨,直至確定好前α*n個(gè)節(jié)點(diǎn),并用它們替代原個(gè)體極值的前α*n位。接著,確定當(dāng)前個(gè)體極值回路中的缺少城市和重復(fù)城市,并用缺少城市依次替代重復(fù)城市。最后,為了防止算法過度貪婪,在剩下的(1-α)*n位中隨機(jī)產(chǎn)生2個(gè)變異點(diǎn),并在這兩點(diǎn)之間進(jìn)行逆轉(zhuǎn)變異,產(chǎn)生新的個(gè)體極值。

      Figure 2 Schematic diagram of personal best local search operation considering priority unloading圖2 考慮優(yōu)先卸貨的個(gè)體極值局部搜索過程示意圖

      3.4 考慮同化程度的全局極值精細(xì)化搜索策略

      在粒子群優(yōu)化算法中,每一個(gè)新個(gè)體的生成都需要與全局極值進(jìn)行信息交互,因此,全局極值的優(yōu)劣很大程度上決定了個(gè)體的搜索質(zhì)量,也主導(dǎo)了種群的走向。針對這一現(xiàn)象,本文提出考慮同化程度的全局極值精細(xì)化搜索ASS_GRS(ASSimilation Global best Refined Search)策略,采用2-Opt算子對全局極值進(jìn)行局部搜索,判斷種群與全局極值的相似程度,當(dāng)種群的相似度高于閾值時(shí),表示該種群已被同化,此時(shí)選擇點(diǎn)插法對個(gè)體極值進(jìn)一步挖掘,以改變個(gè)體交互的信息源。該策略根據(jù)種群相似度及時(shí)調(diào)整信息交互源,不僅提高了搜索精度,也降低了種群的同化速度。

      ASS_GS的實(shí)現(xiàn)偽代碼如下所示:

      Gbest_Search(X,Xgbest,Y,K,N)

      Input:個(gè)體X,全局極值Xgbest,鄰域解數(shù)量Y,相似度閾值K,種群規(guī)模N。

      Output:全局極值Xgbest。

      01:Xgbest←2_opt(Xgbest,Y);/*利用2-Opt對全局極值進(jìn)行優(yōu)化*/

      02:forq=1 toNdo

      03:smq←similar(Xq,Xgbest);/*計(jì)算群體中的個(gè)體與全局極值之間的相似度*/

      04:ifminq(smq)>K

      05:Xgbest←Dot_Insertion(Xgbest);/*點(diǎn)插法優(yōu)化全局極值*/

      06:OutputXgbest

      首先,將2-Opt算子[17]作用在全局極值上(第1行)。接著判斷種群中每個(gè)個(gè)體與全局極值的相似度。假設(shè)種群中第q個(gè)個(gè)體與全局極值的相似度為smq,將其定義為第q個(gè)個(gè)體和全局極值取值相同的位數(shù)與總位數(shù)之比,如式(9)所示:

      q=1,2,…,N;i=1,2,…,n

      (9)

      Figure 3 Diagram of point-interpolation圖3 點(diǎn)插法過程示意圖

      3.5 復(fù)雜度分析

      對HDPSO算法的時(shí)間復(fù)雜度分析如下:初始種群個(gè)體極值和全局極值的確定為O(Nn),新個(gè)體生成為O(Nn),個(gè)體極值和全局極值的更新為O(N),考慮優(yōu)先卸貨的個(gè)體極值局部搜索為O(Nn),考慮同化程度的全局極值精細(xì)化搜索為O(Nn)。綜上,HDPSO算法總的時(shí)間復(fù)雜度為上述結(jié)果中的最大值O(Nn)。對HDPSO算法的空間復(fù)雜度分析如下:種群初始化時(shí)產(chǎn)生N個(gè)n維的個(gè)體,其空間復(fù)雜度為O(Nn),因?yàn)樗惴ㄖ袀€(gè)體更新都在原有個(gè)體上替換,不需要占用新的運(yùn)算空間,所以算法的空間復(fù)雜度為O(Nn)。相較于基本PSO算法的時(shí)間復(fù)雜度O(Nn)和空間復(fù)雜度O(Nn),本文所提HDPSO算法的計(jì)算復(fù)雜度未增加。

      4 實(shí)驗(yàn)仿真與結(jié)果分析

      為了驗(yàn)證所提HDPSO算法和改進(jìn)策略的有效性,本節(jié)采用Matlab R2017b軟件進(jìn)行仿真實(shí)驗(yàn),計(jì)算機(jī)處理器參數(shù)為Intel(R) Core(TM) i5-5500U CPU@ 2.40 GHz,8 GB運(yùn)行內(nèi)存。設(shè)計(jì)3組實(shí)驗(yàn):(1)針對所提策略中引入的新參數(shù),選取不同的數(shù)值進(jìn)行實(shí)驗(yàn)對比,確定最優(yōu)的參數(shù)取值;(2)改進(jìn)策略的有效性驗(yàn)證;(3)將所提HDPSO算法與文獻(xiàn)中6種代表性算法進(jìn)行對比,以驗(yàn)證所提算法的性能。本節(jié)所有實(shí)驗(yàn)采用與2.2節(jié)相同的10個(gè)LCTSP實(shí)例。

      4.1 參數(shù)分析

      HDPSO算法中的粒子群規(guī)模N和鄰域解數(shù)量Y分別是標(biāo)準(zhǔn)PSO和2-Opt算子中的常用參數(shù)。本文實(shí)驗(yàn)取文獻(xiàn)中的常用值N=200,Y=10[17,19]。而逆轉(zhuǎn)變異選擇概率Pr、優(yōu)先卸貨城市點(diǎn)比例α和相似度閾值K為新引入的參數(shù),需要對這3個(gè)參數(shù)進(jìn)行取值分析。由于它們的取值均在[0,1],因此以0.1為間隔在[0,1]上選取不同的參數(shù)值,對HDPSO算法的求解精度進(jìn)行對比。在依次分析每個(gè)新引入?yún)?shù)時(shí),固定粒子群算法自身參數(shù)(例如粒子群規(guī)模等)的取值不變。為減少隨機(jī)性影響,算法在每一參數(shù)取值下分別運(yùn)行30次。以規(guī)模為51的測試實(shí)例eil51為例,實(shí)驗(yàn)結(jié)果如表2所示。其中,Best表示30次運(yùn)行搜索到的最佳碳排放量,Avg表示30次運(yùn)行求得的平均碳排放量,Best和Avg的最佳值均加粗表示。

      由表2可知,對于逆轉(zhuǎn)變異選擇概率Pr,當(dāng)Pr等于0或1時(shí),HDPSO的求解結(jié)果最差;當(dāng)Pr=0時(shí),表明此時(shí)算法中不存在逆轉(zhuǎn)變異,而逆轉(zhuǎn)變異是相對其他2種變異方式更加具有問題特征啟發(fā)性的變異方式;當(dāng)Pr=1時(shí),表明此時(shí)算法中只存在逆轉(zhuǎn)變異,而無其他2種變異方式,從而縮小了個(gè)體的搜索范圍,導(dǎo)致種群多樣性的流失;當(dāng)Pr∈[0.4,0.8]時(shí),最優(yōu)解Best的值是相同的,均值A(chǔ)vg在Pr=0.6時(shí)最小,此時(shí)算法更加穩(wěn)定。對于優(yōu)先卸貨城市點(diǎn)比例α,當(dāng)α=0時(shí),算法未采用考慮優(yōu)先卸貨的個(gè)體極值局部搜索策略,求解精度較差;當(dāng)α=1時(shí),由于過度貪婪,種群極易陷入局部最優(yōu)??紤]卸貨具有依次選取最近城市這一規(guī)則,α越高,則種群中的個(gè)體越相似?;谏鲜龇治?,α應(yīng)取大于0的較小值,從實(shí)驗(yàn)結(jié)果上也得到了:當(dāng)α∈[0.2,0.4]時(shí),HDPSO搜索到的最優(yōu)解Best最好,且在α=0.2時(shí)均值A(chǔ)vg最小。對于相似度閾值K,極端的取值會(huì)使算法的求解能力變得很差:當(dāng)K=0時(shí),表示每一次迭代都需要對全局極值進(jìn)行點(diǎn)插法優(yōu)化,增加了種群的同化概率;當(dāng)K=1時(shí),表示種群的相似度一直不會(huì)滿足閾值條件,此時(shí),考查群體同化程度的機(jī)制和點(diǎn)插法策略均將失效。由表2可知,當(dāng)K∈[0.6,0.8]時(shí),HDPSO求得的Best最好,且在K=0.6時(shí)的均值A(chǔ)vg最小。綜上,對所提算法HDPSO引入的3個(gè)新參數(shù)的最佳取值如下:Pr=0.6,α=0.2,K=0.6。后文實(shí)驗(yàn)均采用這組參數(shù)值,以最大目標(biāo)評價(jià)次數(shù)MAXFE為100 000作為算法的終止條件。

      Table 2 Results comparison with different parameters on the eil51 example

      4.2 改進(jìn)策略的有效性驗(yàn)證

      4.2.1 新型離散個(gè)體生成算子的有效性驗(yàn)證

      為檢驗(yàn)3.2節(jié)設(shè)計(jì)的新型離散個(gè)體生成算子NDO的有效性,將HDPSO算法中的算子NDO分別替換為現(xiàn)有文獻(xiàn)中基于隨機(jī)交換序列的個(gè)體生成算子RES(Random Exchange Sequence)[20]和基于部分映射交叉的個(gè)體生成算子PMX(Partially Mapped cross)[21],將由此得到的2種算法與HDPSO進(jìn)行對比。每種算法仍是獨(dú)立運(yùn)行30次。表3統(tǒng)計(jì)了3種算法在10個(gè)規(guī)模不同實(shí)例上的最優(yōu)值(Best)和平均值(Avg)。為顯著對比3種算子的優(yōu)劣,本文引入顯著水平為0.05的Wilcoxon秩和檢驗(yàn)對30次實(shí)驗(yàn)結(jié)果進(jìn)行統(tǒng)計(jì)測試,其中,“+”表示NDO顯著優(yōu)于對比算子,“=”表示兩者無明顯差異,“-”表示NDO顯著劣于對比算子。

      表3選擇了10個(gè)規(guī)模遞增的LCTSP實(shí)例測試3種算子的有效性。可以看出,隨著問題規(guī)模的增大,RES和PMX的尋優(yōu)能力明顯不能滿足求解精度的需要,搜索到的路徑解具有較大的碳排放量,但NDO仍具有較好的表現(xiàn):與RES和PMX相比,NDO分別在9個(gè)(除小規(guī)模實(shí)例gr24以外)和8個(gè)實(shí)例(除小規(guī)模實(shí)例gr24和fri26以外)上獲得了更優(yōu)的最優(yōu)值Best,在全部10個(gè)實(shí)例上取得了最佳的平均值A(chǔ)vg。同時(shí),統(tǒng)計(jì)測試結(jié)果顯示,在所有實(shí)例上,NDO均顯著優(yōu)于RES和PMX。原因主要在于NDO將低碳旅行商問題的啟發(fā)信息與PSO算法的結(jié)構(gòu)相融合,使個(gè)體多元變異保留了標(biāo)準(zhǔn)PSO中的“慣性”,同時(shí)貪婪交叉實(shí)現(xiàn)了個(gè)體與個(gè)體極值和全局極值之間信息的交互。個(gè)體多元變異有利于維護(hù)群體的多樣性,而利用貪婪思想盡可能提取個(gè)體、個(gè)體極值和全局極值中的有效信息,保證了算法的求解精度和收斂速度。但是,貪婪思想易導(dǎo)致算法陷入局部最優(yōu),出現(xiàn)早熟收斂,因此也需要配合其他一些改進(jìn)策略進(jìn)一步提升算法性能。

      Table 3 Statistics of solving results of three discrete individual generating operators

      4.2.2 2種改進(jìn)策略的有效性驗(yàn)證

      為了驗(yàn)證2.3節(jié)考慮優(yōu)先卸貨的個(gè)體極值局部搜索策略PU_PLS和3.4節(jié)考慮同化程度的全局極值精細(xì)化搜索策略ASS_GS的有效性,在HDPSO算法中分別刪除其中一種策略,產(chǎn)生2種只有單一策略的算法(HDPSO-PU_PLS和HDPSO-ASS_GS)。將它們與HDPSO進(jìn)行對比,以分析每種改進(jìn)策略對HDPSO性能的影響。實(shí)驗(yàn)結(jié)果如表4所示。

      由表4可知,綜合運(yùn)用了2種改進(jìn)策略的HDPSO算法在求解精度上有了大幅度提升。HDPSO-PU_PLS和HDPSO-ASS_GS分別在前3個(gè)和前5個(gè)中小規(guī)模實(shí)例上與HDPSO算法的最優(yōu)值Best一致,在剩余的中大規(guī)模實(shí)例上搜索到的Best值均劣于HDPSO算法。對于平均值A(chǔ)vg,刪除單一策略后的2種算法在所有10個(gè)實(shí)例上均劣于HDPSO算法。同時(shí),統(tǒng)計(jì)測試結(jié)果表明,在絕大多數(shù)實(shí)例上,HDPSO算法刪除單一策略后會(huì)導(dǎo)致求解性能顯著變差。究其原因,首先,策略PU_PLS引入了LCTSP問題的啟發(fā)信息對個(gè)體極值進(jìn)行局部搜索,這有利于增強(qiáng)算法對解空間的探索能力;其次,策略ASS_GS考慮種群相似度,對全局極值進(jìn)行精細(xì)化搜索,保證了信息交互的質(zhì)量,提升了個(gè)體的求解精度;最后,基于種群相似度及時(shí)調(diào)整交互信息源的思想也有助于降低種群同化速度??傊鲜鰧?shí)驗(yàn)結(jié)果驗(yàn)證了所提改進(jìn)策略存在的必要性和有效性。

      Table 4 Results comparison between HDPSO algorithms and algorithms those single strategy

      4.3 HDPSO算法的性能驗(yàn)證

      為驗(yàn)證HDPSO算法在求解LCTSP時(shí)的性能,將HDPSO算法與現(xiàn)有算法進(jìn)行對比。由于目前文獻(xiàn)中幾乎沒有直接求解LCTSP的算法,因此,實(shí)驗(yàn)復(fù)現(xiàn)了6種具有代表性的求解TSP的算法,將它們分別應(yīng)用于本文建立的LCTSP模型,并與HDPSO算法進(jìn)行對比。

      4.3.1 與經(jīng)典算法的對比

      選取3種經(jīng)典搜索算法(模擬退火SA(Simulated Annealing)法[22]、禁忌搜索TS(Tabu Search)算法[23]和遺傳GA(Genetic Algorithm)算法[24]與HDPSO算法進(jìn)行對比。算法的參數(shù)設(shè)置如表5所示,每種算法運(yùn)行30次,實(shí)驗(yàn)結(jié)果如表6所示。

      Table 5 Parameters setting of SA,TS and GA

      由表6可見,在小規(guī)模實(shí)例gr24,fri26和bays29上,SA,TS,GA和HDPSO的最優(yōu)值Best一致;在其余7個(gè)實(shí)例上,HDPSO能獲得更優(yōu)的Best。對于所有實(shí)例,HDPSO的平均值A(chǔ)vg都優(yōu)于SA和TS的,僅在gr24上的平均值與GA的相同。通過顯著水平為0.05的Wilcoxon秩和檢驗(yàn)可以發(fā)現(xiàn),HDPSO在所有實(shí)例上的求解結(jié)果均顯著優(yōu)于SA和TS的;與GA相比,HDPSO僅在小規(guī)模實(shí)例pr24和fri26上的結(jié)果與GA的無顯著差異,而在其它所有實(shí)例上均顯著更優(yōu)。綜上,相較于SA,TS和GA,HDPSO表現(xiàn)出了更高的求解精度。

      Table 6 Experimental results comparison of HDPSO,SA,TS and GA

      4.3.2 與新型代表性算法的對比

      為了進(jìn)一步驗(yàn)證所提算法的性能,從近期文獻(xiàn)中選擇了基于粒子群算法+蟻群算法+3-Opt算法的混合算法PSO+ACO+3-Opt[19]、蜘蛛猴DSMO(Discrete Spider MOnkey)算法[2]和改進(jìn)遺傳算法IGA(Improved Genetic Algorithm)[25]與HDPSO算法進(jìn)行對比。算法的參數(shù)設(shè)置如表7所示,每種算法運(yùn)行30次,實(shí)驗(yàn)結(jié)果如表8所示。

      Table 7 Parameters setting of comparative algorithms

      由表8可見,與其它3種新型算法相比,本文HDPSO算法在絕大多數(shù)實(shí)例(尤其是中大規(guī)模實(shí)例)上取得了最佳的最優(yōu)值Best和平均值A(chǔ)vg。顯著水平為0.05的Wilcoxon秩和檢驗(yàn)結(jié)果表明,HDPSO分別在9個(gè)、10個(gè)和7個(gè)實(shí)例上顯著優(yōu)于PSO+ACO+3-Opt,DSMO和IGA,而僅在實(shí)例att48上顯著劣于IGA。

      Table 8 Results comparison between HDPSO and algorithms from recent literatures

      上述各組實(shí)驗(yàn)結(jié)果表明,本文HDPSO算法對于不同規(guī)模的LCTSP的綜合性能優(yōu)于各類對比算法。主要原因有:HDPSO算法融入了問題特定的啟發(fā)信息,使得個(gè)體向最優(yōu)解的移動(dòng)更有針對性;新型離散個(gè)體生成算子提升了算法的求解精度,加快了算法的收斂速度;考慮優(yōu)先卸貨的個(gè)體極值局部搜索策略對個(gè)體極值進(jìn)行局部搜索,在防止算法早熟收斂的同時(shí)增強(qiáng)了對解空間的探索能力;全局極值精細(xì)化搜索策略基于種群相似度及時(shí)調(diào)整信息交互源,降低了種群同化速度,保證了信息交互的質(zhì)量。綜上,本文HDPSO算法的求解精度高且穩(wěn)定性好。

      5 結(jié)束語

      針對當(dāng)前碳排放污染日益嚴(yán)峻的社會(huì)現(xiàn)象,本文研究了低碳旅行商問題LCTSP。所做工作和結(jié)論如下:(1)建立LCTSP的數(shù)學(xué)模型,并驗(yàn)證了模型的有效性。(2)針對LCTSP的特點(diǎn),設(shè)計(jì)了一種新型離散個(gè)體生成算子,對個(gè)體自身采用多元變異策略,保持個(gè)體的“慣性”,同時(shí)采用貪婪交叉策略實(shí)現(xiàn)個(gè)體與個(gè)體極值和全局極值之間信息的交互。同時(shí),為了解決由于個(gè)體生成的貪婪性導(dǎo)致的種群早熟收斂問題,提出考慮優(yōu)先卸貨的個(gè)體極值局部搜索策略和考慮種群同化程度的全局極值精細(xì)化搜索策略。實(shí)驗(yàn)結(jié)果表明,本文所提2種策略與個(gè)體生成算子的結(jié)合極大地提升了算法的求解精度,刪除任意一種策略都會(huì)顯著降低HDPSO的性能。(3)將本文算法與文獻(xiàn)中6種具有代表性的算法進(jìn)行對比,實(shí)驗(yàn)結(jié)果表明,HDPSO算法在求解精度和穩(wěn)定性方面優(yōu)于所有對比算法,能在絕大多數(shù)不同規(guī)模的問題中搜索到碳排放量最小的全局最優(yōu)路徑。

      猜你喜歡
      極值全局實(shí)例
      Cahn-Hilliard-Brinkman系統(tǒng)的全局吸引子
      量子Navier-Stokes方程弱解的全局存在性
      極值點(diǎn)帶你去“漂移”
      極值點(diǎn)偏移攔路,三法可取
      一類“極值點(diǎn)偏移”問題的解法與反思
      落子山東,意在全局
      金橋(2018年4期)2018-09-26 02:24:54
      匹配數(shù)為1的極值2-均衡4-部4-圖的結(jié)構(gòu)
      新思路:牽一發(fā)動(dòng)全局
      完形填空Ⅱ
      完形填空Ⅰ
      陆丰市| 江川县| 吉林省| 昌邑市| 仪征市| 盐津县| 黑河市| 马龙县| 博客| 阜宁县| 台南市| 营山县| 密云县| 金坛市| 乳山市| 扶风县| 柳河县| 芦溪县| 顺昌县| 客服| 津南区| 抚松县| 宝鸡市| 洪泽县| 繁昌县| 桦南县| 巴彦县| 阿鲁科尔沁旗| 上饶市| 农安县| 望奎县| 普兰店市| 西平县| 江阴市| 东安县| 邓州市| 福鼎市| 慈溪市| 海原县| 广汉市| 白城市|