劉 彬, 劉澤仁, 趙志彪, 李 瑞, 聞 巖, 劉浩然
(1.燕山大學(xué) 電氣工程學(xué)院, 河北 秦皇島 066004; 2.燕山大學(xué) 信息科學(xué)與工程學(xué)院, 河北 秦皇島 066004;3.燕山大學(xué) 機(jī)械工程學(xué)院, 河北 秦皇島 066004)
科學(xué)研究與工程實(shí)踐中存在很多個(gè)互相沖突的目標(biāo),多目標(biāo)優(yōu)化就是在這些目標(biāo)中尋找“折中”的方案[1~2]?;谌后w搜索的進(jìn)化方法可以并行處理多個(gè)目標(biāo)函數(shù),適用于求解多目標(biāo)優(yōu)化問題。粒子群優(yōu)化算法(particle swarm optimization,PSO)便是一種基于鳥類覓食行為的群體智能優(yōu)化算法,其結(jié)構(gòu)簡(jiǎn)單,參數(shù)設(shè)置少,收斂速度快,被廣泛用于解決多目標(biāo)優(yōu)化問題[3]。但粒子群算法在解決多目標(biāo)優(yōu)化問題時(shí)也面臨一些問題:其快速收斂特性易使種群陷入局部最優(yōu)Pareto前沿;單一的搜索模式易導(dǎo)致粒子收斂精度不高。因此,一些學(xué)者對(duì)多目標(biāo)粒子群(multi-objective particle swarm optimization,MOPSO)算法提出了改進(jìn):Yang J M[4]等提出自適應(yīng)混沌MOPSO優(yōu)化算法,利用一種新型動(dòng)態(tài)加權(quán)方法選擇全局最優(yōu)粒子;謝承旺[5]等提出應(yīng)用檔案精英學(xué)習(xí)和反向?qū)W習(xí)的MOPSO算法,應(yīng)用檔案精英學(xué)習(xí)增強(qiáng)算法的全局搜索能力,并使用動(dòng)態(tài)反向?qū)W習(xí)機(jī)制構(gòu)成變異算子,增加粒子跳出局部最優(yōu)的可能性?;趩畏N群的優(yōu)化算法雖然在一定程度上提高了MOPSO算法性能,但由于算法單一的搜索模式易使每個(gè)粒子趨向于種群的“社會(huì)部分”,導(dǎo)致解的多樣性降低,搜索性能差[6]。有學(xué)者提出將算法的單一種群拆分成多個(gè)子種群的方法,采用多個(gè)種群并行搜索,以提高種群的多樣性和算法的收斂能力:劉衍民[7]等提出基于動(dòng)態(tài)多種群的MOPSO算法,采用動(dòng)態(tài)的方法構(gòu)建多個(gè)子種群并行搜索,并用K-均值聚類算法確定子種群的搜索行為,提高粒子的多樣性以及跳出局部最優(yōu)的能力;劉慧慧[8]等提出基于多種群協(xié)同的MOPSO算法,將多目標(biāo)優(yōu)化問題分解為多個(gè)單目標(biāo)優(yōu)化問題,每個(gè)種群優(yōu)化一個(gè)目標(biāo),同時(shí)將非劣解存儲(chǔ)在外部檔案。
基于以上分析,采用多種群的優(yōu)化算法可以提高粒子的搜索能力,探索更廣闊的解空間,因此,本文提出一種基于速度交流的多種群MOPSO算法(research on multi-population MOPSO algorithm based on velocity communication,MVCMOPSO)。算法將單種群劃分為多個(gè)子種群并引入速度交流機(jī)制,子種群間通過速度交流分享信息,使粒子飛向不同的方向,探索更多的未知領(lǐng)域,改善粒子單一的搜索模式,提高粒子全局搜索能力,得到質(zhì)量更好的解。此外,算法采用混沌映射優(yōu)化慣性權(quán)重,應(yīng)用到粒子的速度和位置更新,提高粒子搜索的遍歷性和全局性。粒子在算法運(yùn)行后期易出現(xiàn)“聚集”現(xiàn)象,為避免粒子陷入局部最優(yōu)Pareto前沿,對(duì)各子種群執(zhí)行不同的變異操作,并將算法得到的非劣解存儲(chǔ)在外部檔案[9]。仿真實(shí)驗(yàn)采用多目標(biāo)測(cè)試問題和先進(jìn)多目標(biāo)優(yōu)化算法進(jìn)行對(duì)比,實(shí)驗(yàn)結(jié)果驗(yàn)證了算法的有效性。
以多目標(biāo)最小化問題為例,具有n個(gè)決策變量、m個(gè)優(yōu)化目標(biāo)的多目標(biāo)問題[10]可以表示為:
(1)
式中:x=(x1,…,xn)∈X?Rn為n維的決策向量,X為n維的決策空間;y=(y1,…,ym)∈Y?Rm為m維的目標(biāo)向量,Y為m維的目標(biāo)空間。目標(biāo)函數(shù)F(x)定義了m個(gè)由決策空間向目標(biāo)空間的映射函數(shù);gi(x)≥0代表q個(gè)不等式約束;hj(x)=0 代表p個(gè)等式約束。
在多目標(biāo)優(yōu)化問題中,并不存在一個(gè)能夠使所有目標(biāo)值同時(shí)達(dá)到最優(yōu)的解,而是得到一個(gè)Pareto最優(yōu)解集合,在此給出幾個(gè)常用的重要定義。
定義1(Pareto支配)[11]稱決策向量xv=(v1,v2,…,vn)對(duì)xu=(u1,u2,…,un)是Pareto支配的,記為xv 定義2(Pareto最優(yōu)解集)[11]如果P*={x∈Rn|x′∈Rn,x′ 定義3(Pareto前沿PF*)[11]Pareto解集在目標(biāo)函數(shù)上的映射為PF*={F(x)|x∈P*},映射之后的集合稱為Pareto前沿。 由定義可知,Pareto支配關(guān)系決定了多目標(biāo)優(yōu)化算法迭代過程中個(gè)體的優(yōu)劣;Pareto最優(yōu)解集是算法運(yùn)行結(jié)束后所有非支配解集的集合;Pareto前沿是最優(yōu)解集對(duì)應(yīng)的目標(biāo)函數(shù)映射值的集合。 PSO是一種基于群體智能的優(yōu)化算法,每個(gè)粒子由速度和位置2個(gè)要素構(gòu)成[12]。速度決定粒子的飛行方向和運(yùn)動(dòng)步長(zhǎng),它的改變會(huì)導(dǎo)致位置也發(fā)生相應(yīng)的改變。在第t+1次迭代時(shí),種群中粒子i的速度和位置更新公式為: vi,d(t+1)=wvi,d(t)+c1r1(pi,d(t)- xi,d(t))+c2r2(pg,d(t)-xi,d(t)) (2) xi,d(t+1)=xi,d(t)+vi,d(t+1) (3) 式中:w為慣性權(quán)重,vi,d(t)和xi,d(t)分別為第t次迭代時(shí)粒子i的第d維變量的速度和位置,pi,d(t)和pg,d(t)分別為第t次迭代時(shí)粒子i的第d維變量歷史最優(yōu)和全局最優(yōu)的位置,c1和c2為學(xué)習(xí)因子,r1和r2為[0,1]區(qū)間上均勻分布的隨機(jī)值。 3 基于速度交流的多種群MOPSO算法 MVCMOPSO算法將單種群劃分為多個(gè)子種群,采用速度交流機(jī)制實(shí)現(xiàn)粒子速度信息共享,使粒子不僅能探索更多的未知領(lǐng)域,還會(huì)朝著更好的方向進(jìn)化;加入混沌序列優(yōu)化慣性權(quán)重,進(jìn)一步提高粒子全局搜索能力;為減少粒子陷入局部最優(yōu)Pareto前沿的可能性,算法在運(yùn)行后期對(duì)每個(gè)子種群實(shí)行不同的變異操作。 大多數(shù)MOPSO算法采用單一種群的搜索模式,所有操作只限定在一個(gè)種群中進(jìn)行,如果個(gè)體趨向于一致,算法易陷入局部最優(yōu)Pareto前沿,導(dǎo)致解的分布性比較差。采用多種群進(jìn)化能很好地提高粒子搜索能力,降低陷入局部最優(yōu)的可能性[13]。粒子群算法中的多種群策略大部分是基于粒子間位置信息的共享,很少考慮粒子的速度信息。本文則將速度信息作為種群間的媒介進(jìn)行信息交換。根據(jù)種群間的速度信息交流機(jī)制進(jìn)行子種群的劃分,即種群數(shù)量固定,速度信息動(dòng)態(tài)交流,從而對(duì)子種群進(jìn)行規(guī)劃,有效實(shí)現(xiàn)子種群搜索領(lǐng)域的分割,從而增強(qiáng)算法的探索與開發(fā)能力。速度信息交流機(jī)制如圖1所示。 圖1 多種群速度信息交流Fig.1 Multi-population speed information exchange MVCMOPSO根據(jù)速度交流機(jī)制選擇合適的種群數(shù)量,將單種群等分為4個(gè)子種群P1、P2、P3、P4,設(shè)定P1和P2為基本子種群,執(zhí)行標(biāo)準(zhǔn)的PSO搜索行為;P1和P2把各自種群的速度信息分享給子種群P3,進(jìn)而調(diào)整自身種群的運(yùn)動(dòng)行為,探索不同于P1和P2的搜索領(lǐng)域;子種群P1、P2和P3再分別將各自種群速度信息分享給子種群P4,以影響子種群P4的搜索行為,使整個(gè)粒子群飛向更廣闊的解空間。該方法使4個(gè)子種群具有各自的搜索行為,改善了粒子單一的搜索模式,既能滿足子種群間自由競(jìng)爭(zhēng),又可以實(shí)現(xiàn)子種群間的信息交流,有效提高了粒子的全局搜索能力。 (4) (5) 式中:vi,d(t)和xi,d(t)分別為第t次迭代時(shí)粒子i的第d維變量的速度和位置,w(t)為采用混沌映射優(yōu)化的慣性權(quán)重。 (6) (7) (8) (9) 為更清晰地解釋速度交流機(jī)制的運(yùn)行,以二維最小值目標(biāo)為例,從4個(gè)子種群中各選擇一個(gè)粒子作為代表,假設(shè)分別為x1、x2、x3、x4,對(duì)應(yīng)的任意給定速度分別為v1、v2、v3,如圖2(a)所示。算法在第t次迭代時(shí),利用速度交流機(jī)制得到的新的粒子速度分別為v1′、v2′、v3′、v4′,對(duì)應(yīng)位置分別為x1′、x2′、x3′、x4′,算法最終目的是使粒子收斂于真實(shí)Pareto前沿。算法在第t+1次迭代時(shí),粒子間再采用速度交流機(jī)制分享信息后迭代更新如圖2(b)所示,更新后的粒子速度分別為v1″、v2″、v3″、v4″,對(duì)應(yīng)位置分別為x1″、x2″、x3″、x4″。由圖2可見,粒子間分享速度信息后,相互協(xié)調(diào)向著不同的方向運(yùn)動(dòng),探索更多的未知領(lǐng)域,快速向真實(shí)Pareto前沿靠近,進(jìn)一步實(shí)現(xiàn)全局搜索。 圖2 粒子協(xié)同進(jìn)化Fig.2 Particle coevolution 將單種群等分為4個(gè)子種群P1、P2、P3和P4并引入速度交流機(jī)制,實(shí)現(xiàn)了子種群間的速度信息交流,使解空間得到合理有效的搜索規(guī)劃,改善種群的單一搜索模式,極大地提高了種群的全局探索和開發(fā)能力。 MOPSO算法常因收斂快速而陷入局部最優(yōu),粒子不能有效探索整個(gè)解空間?;煦缦到y(tǒng)具有遍歷性、隨機(jī)性和穩(wěn)定性的特點(diǎn)[14],為進(jìn)一步提高算法搜索性能,促進(jìn)粒子可以在整個(gè)解空間進(jìn)行探索,本文采用混沌映射來優(yōu)化粒子速度,更新式(4)和式(6)中的慣性權(quán)重。利用Logistic映射來產(chǎn)生混沌變量: zt+1=μzt(1-zt) (10) 式中:μ為控制參數(shù)。設(shè)0≤z0≤1,t為當(dāng)前迭代次數(shù),t=0,1…;μ=4時(shí)系統(tǒng)完全處于混沌狀態(tài)。對(duì)于Logistic映射,初值z(mì)0不能取0、0.25、0.5、0.75和1這5個(gè)值,因?yàn)檫@5個(gè)取值都會(huì)使序列陷入不動(dòng)點(diǎn)0或0.75。 利用式(10)優(yōu)化慣性權(quán)重,將優(yōu)化結(jié)果映射到區(qū)間[wmin,wmax]中: w(t)=wmin+(wmax-wmin)zt (11) 式中[wmin,wmax]為慣性權(quán)重的取值范圍,一般取[0.4,0.9][15]。 再將優(yōu)化以后的慣性權(quán)重[式(11)]代入式(4)和式(6)中,使粒子具有遍歷性,提高粒子全局搜索能力。為說明混沌映射對(duì)慣性權(quán)重的優(yōu)化作用,圖3給出了慣性權(quán)重在100次迭代過程中的取值變化。由圖3可見,利用Logistic映射優(yōu)化的慣性權(quán)重?cái)?shù)值變化不定(隨機(jī)性),但是取值在[0.4,0.9]區(qū)間(穩(wěn)定性),使慣性權(quán)重盡可能遍歷所有取值而又在給定范圍內(nèi),從而使粒子能夠更好地探索解空間。 圖3 混沌映射優(yōu)化慣性權(quán)重Fig.3 Chaotic map optimize inertia weight 算法在運(yùn)行后期,粒子運(yùn)動(dòng)速度逐漸減慢,搜索能力降低,易出現(xiàn)“聚集”現(xiàn)象,陷入局部最優(yōu)Pareto前沿。為降低粒子在算法后期陷入局部最優(yōu)的可能性,需添加擾動(dòng)使粒子能夠及時(shí)跳出局部最優(yōu)繼續(xù)探索。本文利用變異機(jī)制對(duì)粒子施加擾動(dòng),考慮到各子種群的搜索模式不盡相同,以進(jìn)化代數(shù)作為變異的觸發(fā)條件,對(duì)4個(gè)子種群同時(shí)進(jìn)行4種不同的變異操作,使粒子分散并飛向不同的方向,進(jìn)行不同路徑的搜索,增大粒子飛向更好解的概率。 設(shè)定多種變異觸發(fā)條件為L(zhǎng)t,當(dāng)進(jìn)化代數(shù)t 基本子種群P1的搜索模式采用標(biāo)準(zhǔn)粒子群的搜索模式,若使粒子跳出局部最優(yōu),變異程度應(yīng)該大一些。本文選用反向?qū)W習(xí)變異[16]對(duì)粒子施加擾動(dòng),使粒子向著反方向進(jìn)化,變異后的解可描述為: (12) 基本子種群P2的搜索模式同樣采用標(biāo)準(zhǔn)粒子群的搜索模式,因此也宜采用變異程度較大的擾動(dòng)方式。本文選用高斯變異[17],在原個(gè)體位置基礎(chǔ)上增加一個(gè)高斯分布隨機(jī)向量,變異后的解可描述為: (13) 式中Gaussi(0,1)為服從均值為0,方差為1的高斯分布。 子種群P3的速度融合了基本子種群P1和P2的速度信息,從而攜帶了前兩者的變異信息,因此只需進(jìn)行程度較小的變異即可。本文選用柯西變異[18],使粒子在原位置基礎(chǔ)上進(jìn)行小幅度變化,變異后的解可描述為: (14) (15) 子種群P4的速度同時(shí)受到P1、P2和P3速度的影響,攜帶的變異信息比較多,因此宜采用最小的擾動(dòng)方式。本文選用非均勻變異[19],變異后的解為: (16) 式中: UB和LB分別為子種群P4粒子的位置上限和下限;T為最大迭代次數(shù),b為系統(tǒng)參數(shù)(決定變異運(yùn)算的非均勻度)。非均勻變異步長(zhǎng)Δ(t,y)是一種自適應(yīng)調(diào)節(jié)步長(zhǎng)的變異算子,在算法運(yùn)行后期達(dá)到變異觸發(fā)條件后,搜索半徑依概率減小,到算法臨近結(jié)束僅在當(dāng)前解的狹小鄰域中搜索,這樣能夠保證對(duì)最優(yōu)解的準(zhǔn)確定位,減小從當(dāng)前鄰域中“逃逸”的概率。 不同的子種群采用不同的變異方式,搜索能力也不同,共同協(xié)助種群在算法后期跳出局部最優(yōu)Pareto前沿,飛向不同的方向繼續(xù)對(duì)解空間進(jìn)行探索。 MVCMOPSO算法的步驟如下: Step1:參數(shù)初始化:種群大小為4 N,初始化外部檔案A(0)=Φ,設(shè)置最大容量與種群規(guī)模相同為4 N;迭代次數(shù)t=0;迭代次數(shù)為Gmax; Step2:初始化4個(gè)大小為N的子種群,根據(jù)Pareto支配,將非支配解加入A(0),形成A(1); Step3:根據(jù)擁擠距離,選擇每個(gè)粒子的全局最優(yōu)領(lǐng)導(dǎo)粒子:在A(t)中隨機(jī)選取2個(gè)粒子,選擇擁擠度距離大的粒子作為全局最優(yōu)領(lǐng)導(dǎo)粒子; Step4:令t=t+1,進(jìn)入循環(huán)迭代; Step5:判斷是否達(dá)到變異條件:若迭代次數(shù)t Step6:將多種群合并為單種群,并將單種群中的個(gè)體與A(t)中的非劣解進(jìn)行Pareto支配比較,如果不被A(t)中的非劣解支配,則加入到A(t)中,判斷A(t)中的解數(shù)量是否大于4 N,如果是,則刪除擁擠距離小的多余的解; Step7:根據(jù)Pareto支配分別更新子種群粒子歷史最優(yōu)值:若當(dāng)前解支配歷史最優(yōu)解,則令當(dāng)前解替代粒子歷史最優(yōu)解;若歷史最優(yōu)解支配當(dāng)前解,則粒子歷史最優(yōu)解不變,若兩者互不支配,則隨機(jī)選擇一個(gè)作為粒子歷史最優(yōu)解;更新粒子全局最優(yōu)解; Step8:終止條件判定:若t 假設(shè)優(yōu)化問題含有m個(gè)目標(biāo),種群大小為4 N,外部檔案最大容量為A*。種群函數(shù)評(píng)價(jià)復(fù)雜度為O(4mN),擁擠度距離的復(fù)雜度為O(mA*logA*)(假設(shè)使用快速非支配排序算法),種群和檔案進(jìn)行Pareto支配比較。如果外部檔案最大容量與種群數(shù)量相同,則MVCMOPSO的計(jì)算復(fù)雜度為O(16mN2)。 為驗(yàn)證本文提出算法的有效性,將MVCMOPSO與NSGA-Ⅱ[20]、SPEA2[21]、AbYSS[22]、MOPSO[11]、SMPSO[23]、GWASF-GA[24]先進(jìn)算法進(jìn)行對(duì)比。選取ZDT系列測(cè)試函數(shù)[25]ZDT1、ZDT2、ZDT3、ZDT6,以及Schaffer[26]、Kursawe[27]、Viennet2和Viennet3[28]測(cè)試函數(shù)進(jìn)行測(cè)試和對(duì)比,如表1所示。 表1 多目標(biāo)優(yōu)化測(cè)試函數(shù)Tab.1 Multi-objective optimization test functions 在求解不同多目標(biāo)優(yōu)化問題時(shí),通過收斂性和多樣性評(píng)估指標(biāo),驗(yàn)證多目標(biāo)優(yōu)化算法的性能。為更清晰定量評(píng)價(jià)不同的多目標(biāo)優(yōu)化算法的性能,選用3個(gè)指標(biāo)IGD[29](Inverse Generational Distance,反世代距離)、GD[30](Generational Distance,世代距離)、SP[31](Spread,分布性)綜合評(píng)價(jià)算法的收斂性和多樣性。 1) IGD指標(biāo):IGD可用來綜合評(píng)價(jià)算法的收斂性和多樣性。IGD指標(biāo)定義為: (17) 式中:di為真實(shí)前沿PFtrue與得到的Pareto最優(yōu)解之間最短歐氏距離;n為外部檔案中粒子個(gè)數(shù)。IGD值越小,表明得到解集的收斂性和多樣性越好。 2) GD指標(biāo):GD可用來評(píng)價(jià)得到解集的收斂性。GD指標(biāo)定義為: (18) 式中:di為外部檔案中第i個(gè)粒子到真實(shí)前沿PFtrue最短歐氏距離,n為外部檔案中粒子個(gè)數(shù)。GD值越小,表明得到解集的收斂性越好。 3) SP指標(biāo):SP可用來評(píng)價(jià)得到解集的分布性,即均勻分布在真實(shí)Pareto前沿附近的特性。SP指標(biāo)定義為: (19) 對(duì)各個(gè)算法在同一測(cè)試問題上獨(dú)立運(yùn)行30次并統(tǒng)計(jì)結(jié)果,對(duì)于兩目標(biāo)測(cè)試函數(shù),種群規(guī)模設(shè)置為100,涉及到應(yīng)用外部檔案的算法,外部檔案規(guī)模同樣設(shè)置為100,其他算法實(shí)驗(yàn)參數(shù)按照對(duì)應(yīng)的參考文獻(xiàn)設(shè)置。 對(duì)于三目標(biāo)測(cè)試函數(shù),種群規(guī)模設(shè)置為200。多種變異操作觸發(fā)的迭代次數(shù)Lt設(shè)為100,迭代次數(shù)均為300。 7種算法的性能對(duì)比結(jié)果如表2~表4所示,其中粗體字表示所有對(duì)比算法在對(duì)應(yīng)行測(cè)試問題中的最優(yōu)評(píng)價(jià)指標(biāo)。 表2 7種算法IGD性能指標(biāo)的均值結(jié)果Tab.2 Mean results of 7 algorithms IGD performance indicators 表3 7種算法GD性能指標(biāo)的均值結(jié)果Tab.3 Mean results of 7 performance GD performance indicators 由表2可知,MVCMOPSO在8個(gè)測(cè)試問題中獲得2個(gè)最優(yōu)IGD值,其中在ZDT2測(cè)試問題中明顯優(yōu)于其他算法,NSGA-Ⅱ和SPEA2均獲得1個(gè)最優(yōu)值,AbYSS和SMPSO均獲得2個(gè)最優(yōu)值。除在ZDT6測(cè)試問題中MOPSO比MVCMOPSO取得的效果好,其他測(cè)試函數(shù)中MVCMOPSO的綜合性能均優(yōu)于MOPSO,說明本文對(duì)MOPSO所采取的改進(jìn)方法是有效的。在ZDT2和Schaffer測(cè)試問題中,本文算法均獲得了收斂性和多樣性最好(IGD值最小)的解,說明算法引入的速度交流機(jī)制實(shí)現(xiàn)了子種群間的信息共享,使粒子能夠在解空間中進(jìn)行不同區(qū)域的搜索,極大地提高了粒子的全局搜索性能。 由表3可知,MVCMOPSO在8個(gè)測(cè)試問題中獲得2個(gè)最優(yōu)GD值,NSGA-Ⅱ和MOPSO均獲得1個(gè)最優(yōu)值,SMPSO和GWASF-GA均獲得2個(gè)最優(yōu)值。表2中,SMPSO在ZDT3和Kursawe測(cè)試問題中均取得了最好的IGD值,表現(xiàn)出良好的優(yōu)越性,但從表3可得,MVCMOPSO在ZDT3和Kursawe測(cè)試問題中的收斂性指標(biāo)卻優(yōu)于SMPSO,說明MVCMOPSO采用的多種變異協(xié)同操作能夠協(xié)助粒子及時(shí)跳出局部最優(yōu),使得到的非支配解能更好地收斂于真實(shí)Pareto前沿。 由表4的SP評(píng)價(jià)指標(biāo)結(jié)果可見,本文算法在8個(gè)測(cè)試問題中獲得3個(gè)最優(yōu)值,NSGA-Ⅱ、AbYSS和MOPSO均獲得1個(gè)最優(yōu)值,SMPSO獲得2個(gè)最優(yōu)值。在解決ZDT1、Schaffer以及Viennet2測(cè)試問題中,本文算法獲得的解集分布性最好,說明算法采用混沌序列優(yōu)化的慣性權(quán)重,提高了粒子的遍歷性,促進(jìn)粒子能均勻分布在真實(shí)Pareto前沿。 表4 7種算法SP性能指標(biāo)的均值結(jié)果Tab.4 Mean results of 7 performance SP performance indicators 為直觀展示各算法所得解集的收斂性和分布性,圖4和圖5給出7種算法在Kursawe(二維非連續(xù))和Viennet3(三維連續(xù))測(cè)試函數(shù)上的Pareto前沿,圖4(a)和圖5(a)為測(cè)試函數(shù)真實(shí)Pareto前沿,圖4(b)~圖4(h)和圖5(b)~圖5(h)所得Pareto前沿。 由圖4可見,在解決Kursawe(二維非連續(xù))測(cè)試函數(shù)中,SMPSO得到的解收斂性和分布性最好。GWASF-GA得到的解沒有均勻分布在非連續(xù)前沿的第一段前沿,表現(xiàn)為部分密集部分稀松。 由表4也可知,GWASF-GA的SP指標(biāo)最大,解集的分布性最差。MVCMOPSO得到的解集能很好地收斂于真實(shí)Pareto前沿,且分布均勻,說明算法在解決非連續(xù)問題時(shí)具有一定的優(yōu)勢(shì),速度交流機(jī)制的運(yùn)用,改善了粒子單一的搜索模式,提高了解的質(zhì)量。 圖4 7種算法在Kursawe測(cè)試函數(shù)上的對(duì)比Fig.4 Comparison of 7 algorithms on Kursawe test function 圖5 7種算法在Viennet 3測(cè)試函數(shù)上的對(duì)比Fig.5 Comparison of 7 algorithms on Viennet 3 test function 由圖5可見,GWASF-GA在優(yōu)化Viennet3(三維連續(xù))測(cè)試函數(shù)時(shí)只有部分解收斂于真實(shí)前沿,盡管它的GD值是最好的,但它的分布性很差。NSGA-Ⅱ、AbYSS、MOPSO、SMPSO解集分布性良好,只有小部分解沒有均勻分布在真實(shí)Pareto前沿。MVCMOPSO取得最佳的解集效果,說明算法采取的改進(jìn)策略有效地提高了待優(yōu)化函數(shù)的解的質(zhì)量,從而獲得收斂性和分布性最好的解。 為更好地權(quán)衡多目標(biāo)粒子群優(yōu)化算法解集的收斂性和多樣性,改善粒子單一的搜索模式,本文提出了基于速度交流的多種群MOPSO算法。結(jié)合實(shí)驗(yàn)得到如下結(jié)論: 1) 將單種群等分為4個(gè)子種群P1、P2、P3和P4,并引入速度交流機(jī)制,實(shí)現(xiàn)了速度信息共享,改善了粒子單一的搜索模式,實(shí)現(xiàn)了對(duì)解空間不同區(qū)域的充分探索,提高了解的全局搜索能力。 2) 采用混沌映射優(yōu)化粒子慣性權(quán)重,應(yīng)用于粒子速度和位置的更新,提高了粒子的遍歷性,使粒子盡可能探索更廣闊的解空間。 3) 在算法運(yùn)行后期,為降低粒子陷入局部最優(yōu)Pareto前沿的可能性,提出了多種變異協(xié)同操作,每個(gè)子種群采用一種變異方式,實(shí)現(xiàn)不同的路徑搜索,協(xié)助粒子跳出局部最優(yōu)獲得收斂性和分布性更好的解。 4) 利用不同特征數(shù)據(jù)驗(yàn)證算法的收斂性和多樣性,同時(shí)與NSGA-Ⅱ、SPEA2、AbYSS、MOPSO、SMPSO和GWASF-GA算法進(jìn)行對(duì)比,實(shí)驗(yàn)結(jié)果表明,MVCMOPSO算法能夠得到收斂性和多樣性更好的Pareto解。2.2 粒子群算法
3.1 多種群速度交流機(jī)制
3.2 混沌映射優(yōu)化慣性權(quán)重
3.3 多種變異協(xié)同操作
3.4 算法步驟
3.5 計(jì)算復(fù)雜度分析
4 仿真驗(yàn)證與分析
4.1 性能評(píng)價(jià)指標(biāo)和實(shí)驗(yàn)參數(shù)設(shè)定
4.2 實(shí)驗(yàn)結(jié)果分析
5 結(jié) 論