劉中鋒,李浩君
(1.寧波廣播電視大學(xué)網(wǎng)絡(luò)傳播學(xué)院,寧波315016;2.浙江工業(yè)大學(xué)教育科學(xué)與技術(shù)學(xué)院,杭州310023)
高維多目標(biāo)優(yōu)化問題(MaOPs)具有三個(gè)以上沖突目標(biāo),廣泛存在于現(xiàn)實(shí)應(yīng)用中,例如工程設(shè)計(jì)[1]、空中交通控制[2]、地下水管理[3]和分子設(shè)計(jì)[4]等。被用于解決多目標(biāo)優(yōu)化問題(MOPs)的多目標(biāo)進(jìn)化算法不能很好地優(yōu)化MaOPs問題[5-9],主要原因包括兩個(gè),第一個(gè)原因是收斂壓力的損失,在許多MaOPs問題中大多數(shù)候選解變得互不支配,從而導(dǎo)致傳統(tǒng)多目標(biāo)進(jìn)化算法中基于支配的選擇策略失效;第二個(gè)原因是多樣性管理困難,在許多MaOPs問題中,候選解在高維目標(biāo)空間中分布稀疏,導(dǎo)致多目標(biāo)進(jìn)化算法的多樣性管理策略失效。為了更好求解MaOPs問題,一些改進(jìn)方法[10-11]被提出,基本可以分為四類。第一類是基于收斂增強(qiáng)的方法,包括ε支配[12-13],L最優(yōu)[14]、模糊支配[15]、偏好次序排序[16]和θ支配[17]等。第二類采用性能指標(biāo)取代Pareto支配作為選擇非支配解的標(biāo)準(zhǔn)[18-21],相關(guān)算法有基于指標(biāo)的進(jìn)化算法[22]、基于S度量選擇的多目標(biāo)進(jìn)化算法[23]和基于超體積的進(jìn)化算法[24]。第三類是基于分解的方法將MaOPs問題分解為一組簡單子問題,然后以協(xié)同優(yōu)化的方式求解。例如,基于穩(wěn)定匹配模型的MOEA/D[25]和帶有自適應(yīng)權(quán)重向量調(diào)整方法的MOEA/D[26]。第四類將MaOPs問題轉(zhuǎn)換為一個(gè)多目標(biāo)優(yōu)化問題,利用已有的多目標(biāo)進(jìn)化算法進(jìn)行求解。例如,基于支配關(guān)系保存算法[27-28]。
盡管多目標(biāo)進(jìn)化算法已經(jīng)對(duì)MaOPs問題進(jìn)行了大量研究,但對(duì)于多目標(biāo)優(yōu)化問題中的大規(guī)模決策變量研究較少[29]。Ma等人[30]提出了基于決策變量分析的多目標(biāo)進(jìn)化算法(MOEA/DVA),用于求解大規(guī)模MOPs問題。該算法中提出了一種基于支配關(guān)系的決策變量分析方法,將決策變量分為三類:收斂性相關(guān)變量、多樣性相關(guān)變量和同時(shí)與收斂性和多樣性相關(guān)的變量。這種決策變量分析方法能夠有效優(yōu)化具有兩個(gè)或三個(gè)目標(biāo)的大規(guī)模MOPs問題,但對(duì)MaOPs問題沒有探究。支配關(guān)系并不是區(qū)分決策變量進(jìn)化狀態(tài)的唯一度量,例如,Cheng等人[31]的研究表明,候選解中決策變量與收斂方向之間的角度同樣可以用于測量決策變量的收斂性與多樣性。Zhang等人[32]在MOEA/DVA算法基礎(chǔ)之上提出了基于決策變量聚類方法的高維多目標(biāo)進(jìn)化算法(MLEA),用于求解大規(guī)模MaOPs問題。MLEA算法采用K均值方法對(duì)樣本解中決策變量和收斂方向的夾角進(jìn)行聚類,具有較小夾角平均值的簇表示對(duì)收斂性貢獻(xiàn)更大,具有較大夾角平均值的簇對(duì)多樣性貢獻(xiàn)更大,通過這種聚類思路將決策變量分為兩類,即收斂性相關(guān)變量和多樣性相關(guān)變量。實(shí)驗(yàn)表明MLEA算法在大規(guī)模MaOPs問題中具有一定的優(yōu)勢,但是簇的夾角平均值不能直接反映進(jìn)化狀態(tài),因此,并不能有力促進(jìn)種群的進(jìn)化過程。
本文針對(duì)大規(guī)模MaOPs問題,在LMEA算法基礎(chǔ)上提出了基于進(jìn)化角度比較方法的高維多目標(biāo)進(jìn)化算法(EACLMEA)。在進(jìn)化角度比較方法中,首先從種群中隨機(jī)選擇若干樣本解,通過比較當(dāng)前樣本解與另外三個(gè)隨機(jī)選擇樣本解的決策變量與收斂方向形成夾角大小,判斷決策變量的多樣性和收斂性;如果當(dāng)前樣本解的決策變量夾角小于其中兩個(gè)或以上,則該決策變量夾角具有屬于全部決策變量夾角中較小值高概率,判斷該決策變量具有較小夾角值,否則該決策變量具較大夾角值的高概率;較小夾角表示對(duì)多樣性貢獻(xiàn)更大,被判斷為多樣性相關(guān)變量,較大夾角表示對(duì)收斂性貢獻(xiàn)更大,為收斂性相關(guān)變量。
LMEA算法被設(shè)計(jì)用于求解大規(guī)模MaOPs問題,采用決策變量聚類方法將決策變量分為收斂性相關(guān)變量和多樣性相關(guān)變量。收斂性相關(guān)變量根據(jù)交互分析方法可以進(jìn)一步劃分為若干收斂性相關(guān)變量子組,然后利用收斂性優(yōu)化策略優(yōu)化收斂性相關(guān)變量子組;多樣性相關(guān)變量則采用多樣性優(yōu)化策略進(jìn)行優(yōu)化。
通過一個(gè)具有四個(gè)決策變量x1,x2,x3和x4的兩目標(biāo)最小化問題來說明決策變量聚類方法。為了說明決策變量與收斂性相關(guān)還是與多樣性相關(guān),首先從種群中隨機(jī)選擇nSel(本例中nSel為2)個(gè)候選解,所選擇候選解的每個(gè)決策變量都被執(zhí)行nPer(本例中nPer為8)次擾動(dòng)。
將擾動(dòng)每個(gè)決策變量產(chǎn)生的樣本解歸一化,擬合歸一化樣本解以生成一條線L。所有樣本解組成超平面的法線與擬合線L的之間的角度被計(jì)算為f1+…+fm=1,其中M是目標(biāo)數(shù),法線代表了收斂方向。每一個(gè)決策變量都關(guān)聯(lián)了一些角度,角度的數(shù)量取決于用于決策變量聚類所選擇候選解的數(shù)量。因?yàn)楸纠杏袃蓚€(gè)候選解被選擇用于決策變量聚類,因此每個(gè)決策變量xi,1≤i≤4,與兩個(gè)角度相關(guān)聯(lián)。決策變量聚類方法中,與決策變量關(guān)聯(lián)的角度用于測量決策變量對(duì)于收斂性和多樣性的貢獻(xiàn),即較大的角度意味著該決策變量對(duì)多樣性貢獻(xiàn)更大,一個(gè)更小的角度對(duì)收斂性貢獻(xiàn)更大,更多的解被用于決策變量聚類,則會(huì)有更多的角度與每一個(gè)決策變量關(guān)聯(lián),則對(duì)于決策變量的度量更加準(zhǔn)確。
采用k均值聚類方法將決策變量分為兩簇,其中較小夾角平均值簇中的決策變量為收斂性相關(guān)變量,在另一個(gè)簇中的決策變量為多樣性相關(guān)變量。
算法1用于說明決策變量交互分析過程。首先初始化交互作用的變量子組的空集合subCVs,然后根據(jù)決策變量之間的交互作用,將收斂性相關(guān)變量集合CV中的變量分配給不同的收斂性相關(guān)變量子組,其中交互關(guān)系被定義如下:給定一個(gè)MOP問題,min f=min(f1,f2,…,fm),如果存在x,a1,a2,b1,b2和至少一個(gè) fk,1≤k≤m,滿 足 fk(x)|xi=a2,xj=b1
算法1:InteractionAnalysis(P,CV,nCor)
輸入:P(當(dāng)前種群),CV(收斂性相關(guān)變量集合),nCor(被選取用于決策變量交互分析的解的數(shù)量)
輸出:subCVs(CV中的交互決策變量子組集合)
1:subCVs←?;
2:forall th ev∈CVdo;
3:CorSet←?;
4:forall th e Group∈subCVsdo
5: forall th eu∈Groupdo
6: flag←false;
7: for i=1tonCor do
8: Randomly selecta solution p from P;
9:if v isinteracted with u in p then
10: flag←true;
11:CorSet←CorSet∪{Group};
12:break;
13:if flagthen
14: break;
15:if CorSet==?th en
16: subCVs←subCVs∪{{v}};
17:else
18: subCVs←subCVs/CorSet;
19:Group←all var iablesin CorSet and v;
20:subCVs←subCVs∪{Group};
T-ENS核心思想是利用一棵樹來表示每一個(gè)非支配前沿的解,樹中節(jié)點(diǎn)用于存儲(chǔ)解,同時(shí)也存儲(chǔ)決定解之間支配關(guān)系的目標(biāo)信息,可以從分配給非支配前沿的解(即樹中的解)推斷出很多非支配關(guān)系,從而可以減少同一前沿解之間的比較次數(shù),因此,提高了快速非支配排序的計(jì)算效率,該方法的具體過程如算法2所示。
算法2:T-ENS的主要步驟
輸入:P(種群),M(目標(biāo)數(shù))
輸出:F(前沿集合,每個(gè)前沿被一棵樹表示)
1:根據(jù)第一個(gè)目標(biāo)升序排列P;
2:F←?;
3:k←0;
4:whilenot_empty(P) do;
5:k←k+1;
6:for all th ep∈Pdo
8:update_tree(p,F[]k,objSeq);
9:return F;
在算法1完成交互分析后,LMEA算法開始使用收斂性優(yōu)化策略逐個(gè)優(yōu)化每一個(gè)收斂性相關(guān)變量子組,過程如算法3。在收斂性優(yōu)化策略中,利用T-ENS對(duì)父代種群進(jìn)行非支配排序,計(jì)算出每一個(gè)候選解到理想點(diǎn)的歐氏距離。每個(gè)子組中的變量,使用二元競賽法則從種群P中隨機(jī)選擇兩個(gè)候選解,然后利用重組算子生成的變量替代同一子組中的決策變量值,保持剩余決策變量不變,以生成子代候選解。當(dāng)且僅當(dāng)子代候選解在非支配排序中具有較小的非支配前沿?cái)?shù),或者它具有與父代相同的非支配前沿?cái)?shù),但與理想點(diǎn)之間的歐氏距離較小時(shí),子代候選解被認(rèn)為具有比其父代解具有更好的收斂性。那么如果子代候選解比其父代具有更好的收斂性,則選擇將其作為下一代,否則子代候選解被丟棄,父代候選解作為下一代。
算法3:ConvergenceOptimization(P,subCVs)
輸入:P(當(dāng)前種群),subCVs(收斂性相關(guān)變量子組的集合)
輸出:P(下代種群)
1:Front←Nondo min atedSort(P);
2:計(jì)算P中每個(gè)解和原始點(diǎn)在目標(biāo)空間中的距離
3:forall th eGroup∈subCVsdo
4:nEvaluated←0;
5:whilenEvaluated< ||P do
6: S←?;
7: for i=1to ||P do
8: if rand() 9: S←S∪{i}; 10:O←? 11:for s∈Sdo 12:通過二元競賽從P中選擇p1和p2,其中每個(gè)解的前沿?cái)?shù)和距離被用于作為第一和第二標(biāo)準(zhǔn); s'(G roup)表示在組Group中決策變量以上的組成s'值的一個(gè)向量*/ 14:s''←s; 15:s''(Group)←s'(Group); 16:O←O∪{s''} 17:nEvaluated←nEvaluated+|O|; 18:Front←Nondo min atedSort(P∪O); 19:計(jì)算目標(biāo)空間中O中的所有解和原始點(diǎn)之間的距離; 20:根據(jù)前沿?cái)?shù)和距離,用O中每個(gè)解替代P中相應(yīng)的解; 在多樣性優(yōu)化策略中,通過將所有多樣性相關(guān)變量作為一個(gè)整體進(jìn)行優(yōu)化,以從P種群中生成|P|子代;然后,子代與父代進(jìn)行組合,組合種群通過兩階段進(jìn)行環(huán)境選擇。首先,從k-1個(gè)前沿中選擇候選解,k是滿足|F1∪F2∪…∪Fk|>|P|的最小值;來自前沿Fk的最好多樣性的剩余候選解被一個(gè)一個(gè)地選擇直到種群規(guī)模|P|被達(dá)到,多樣性通過目標(biāo)空間中候選解之間的角度進(jìn)行測量。多樣性優(yōu)化策略如算法4所示。重復(fù)算法3和算法4直到終止條件滿足。 算法4:DiversityOptimization(P,DV) 輸入:P(當(dāng)前種群),DV(多樣性相關(guān)變量)輸出:Q(下代種群) 1:O←?; 2:forall thep∈Pdo 3:隨機(jī)從P中選擇p1和p2; 4: p'(DV)←recombination(p1(DV),p2(DV)); 5: p''←p; 6: p''(DV)←p'(DV); 7:O←O∪{p''}; 8:F←Nondo min ateSort(P∪O); 9:Q←F1∪F2∪…∪Fk-1,其 中 k是 滿 足|F1∪F2∪…∪Fk|>|P|的最小值; 10:if Q=?th en 11:Q←在Fk中的所有極值; 12:Fk←Fk/Q; 13:計(jì)算所有目標(biāo)空間中Q∪Fk內(nèi)任意兩個(gè)解之間的角度; 14:while ||Q< ||P do 15: p←argmaxx∈Fkminy∈QAngle[]x[y]; 16:Q←Q∪{p}; EACLMEA算法采用了LMEA算法的基本結(jié)構(gòu),同時(shí)在EACLMEA算法中引入了進(jìn)化角度比較方法替代LMEA算法中的決策變量聚類方法。 EACLMEA算法如算法5,由五部分組成。第一部分隨機(jī)初始化包括n個(gè)候選解的種群;第二部分采用進(jìn)化角度比較方法將這些變量分為兩組,即收斂性相關(guān)變量和多樣性相關(guān)變量;第三部分依據(jù)交互分析方法,如算法1,將收斂性相關(guān)變量進(jìn)一步劃分為若干收斂性相關(guān)變量子組,同一子組內(nèi)變量間存在交互作用,不同子組間的變量不存在交互作用關(guān)系。第四部分采用收斂性優(yōu)化策略,如算法3,優(yōu)化收斂性相關(guān)變量子組;第五部分采用多樣性優(yōu)化策略,如算法4,優(yōu)化多樣性相關(guān)變量。 算法5:EACLMEA算法的主要框架 輸入:N(種群大小),nSel(被選取用于決策變量進(jìn)化角度比較的解的數(shù)量),nPer(決策變量進(jìn)化角度比較中每個(gè)解被擾動(dòng)的數(shù)量),nCor(被選取用于決策變量交互分析的解的數(shù)量) 輸出:P(最終種群) 1:P?Initialize(N); 2:[DV,CV]?VarialbleEvolutionAngleCompare(P,nSel,nPer); 3:subCVs?InteractionAnalysis(P,CV,nCor);4:while termination criterion not fulfilled do 5:P?ConvergenceOptimization(P,subCVs);6:P?DiversityOptimization(P,DV); 7:end while 進(jìn)化角度即決策變量與收斂方向之間的夾角,計(jì)算方法為從種群中選擇nSel個(gè)樣本解,每個(gè)樣本解的決策變量被擾動(dòng)nPer次,以生成擾動(dòng)樣本解,然后將擾動(dòng)樣本解歸一化,生成歸一化樣本解。并通過線L擬合歸一化樣本解中的決策變量。線L與歸一化樣本解組成超平面的法線形成夾角,即為歸一化樣本解中決策變量的進(jìn)化角度,法線代表收斂方向,因此進(jìn)化角度也可以表述為決策變量與收斂方向之間的夾角。進(jìn)化角度比較方法,如算法6所示,核心思想是通過進(jìn)化角度大小判斷決策變量屬于收斂性相關(guān)變量還是多樣性相關(guān)變量。對(duì)于某一決策變量i,如步驟2,為了判斷決策變量i是多樣性相關(guān)還是收斂性相關(guān),隨機(jī)從種群P選擇nSel個(gè)樣本解,如步驟3,通過比較當(dāng)前樣本解,與另外三個(gè)隨機(jī)選擇樣本解中決策變量夾角的大小,得出決策變量是否具有所有決策變量中較小值的高概率,如果具有較小值高概率,判斷決策變量i為多樣性相關(guān)變量,否則為收斂性相關(guān)變量。 算 法6:VarialbleEvolutionAngleCompare(P,nSel,nPer) 輸入:P(當(dāng)前種群),nSel(被選擇用于決策變量進(jìn)化角度比較的解的數(shù)量),nPer(被選擇用于決策變量進(jìn)化角度比較的每個(gè)解的擾動(dòng)數(shù)) 輸出:DV(多樣性相關(guān)變量),CV(收斂性相關(guān)變量) 1:D←決策變量的長度; 2:for i=1 to Ddo 3:S←從P中隨機(jī)選擇nSel個(gè)解; 4: for j=1 nSel todo 5: 擾動(dòng)S[]j的第i個(gè)決策變量nPer次以生成一個(gè)種群SP; 6: 歸一化SP; 7:為SP擬合一個(gè)線L; 8: Angle[i][j]←計(jì)算L和超平面的法線之間的角度,f1+…fM=1,M是目標(biāo)數(shù); 9:K←randsample(nSel,3); 10:if Angle[i][j]小于Angle[i][ K(1)]、Angle[i][ K(2)]和Angle[i][K (3)]中兩個(gè)或三個(gè)值 11:JudgeAngle[i][j]←0; 12:elseif Angle[i][j]小于Angle[i][ K(1)]、Angle[i][K (1)]和Angle[i][K (1)]中兩個(gè)或三個(gè)值 13:JudgeAngle[i][j]←1; 14: else JudgeAngle[i][j]←1 15:CV←{i=1,…,D|mean( MSE[i])<1e-2}; 16: if any( JudgeAngle(C V)==1)≠?and any(JudgeAngle(C V)==0)≠? 17:if JudgeAngle(C V,:)==1 18: CV=CV&JudgeAngle==1 19:else CV=CV&JudgeAngle==0 20:DV←{j=1,…,D|j?CV}; 為了驗(yàn)證EACLMEA算法在大規(guī)模MaOPs問題中的性能,對(duì)比了三種最新的多目標(biāo)進(jìn)化算法,即MOEA/DVA算法[30]、NSGA-III[33]算法和LMEA算法[32]。 使用被廣泛使用的測試集LSMOP[34]作為實(shí)驗(yàn)問題,LSMOP測試集用于研究者開發(fā)多變量和高維多目標(biāo)問題,允許創(chuàng)建帶有任何數(shù)量決策變量和目標(biāo)數(shù)的函數(shù)。LSMOP包括9個(gè)測試問題,LSMOP1-LSMOP9,在本研究中所有測試問題的目標(biāo)數(shù)均為5個(gè),決策變量分別考慮100個(gè)和1000個(gè),所有測試問題均為大規(guī)模MaOPs問題。 為了進(jìn)行公正比較,用于比較的算法參數(shù)均采用原文獻(xiàn)推薦值以獲得最佳性能,其他公用參數(shù)具體設(shè)置如下: (1)種群規(guī)模、最大評(píng)估次數(shù)和運(yùn)行次數(shù):所有算法種群規(guī)模均為10,最大評(píng)估次數(shù)為1000,在每個(gè)測試問題上,每個(gè)算法獨(dú)立執(zhí)行20次,以獲得統(tǒng)計(jì)結(jié)果; (2)本文提出的EACLMEA算法相關(guān)參數(shù):進(jìn)化角度比較方法中,種群中被選擇用于進(jìn)化角度比較的樣本解的數(shù)量nSel=5,每個(gè)樣本解被擾動(dòng)數(shù)為nPer=50,用于交互分析方法中的解的數(shù)量為nCor=5。 (3)性能指標(biāo):采用被廣泛使用性能指標(biāo),翻轉(zhuǎn)世代距離(IGD)作為評(píng)價(jià)算法的性能指標(biāo),IGD值越小,解集質(zhì)量越好。 表1給出了四種算法在具有100和1000個(gè)決策變量的9個(gè)測試問題LSMOP1-LSMOP9上,20次獨(dú)立運(yùn)行獲得的IGD值的統(tǒng)計(jì)結(jié)果,最佳結(jié)果顯示為灰色背景。其中符號(hào)“+”、“-”和“≈”分別表示在0.05顯著水平的Wilcoxon軼和檢驗(yàn)上,相比EACLMEA算法的IGD值,顯著更好、更差和統(tǒng)計(jì)學(xué)沒有差異。 表1四種算法在測試問題LSMOP1-LSMOP9上獲得的IGD值 從表1中可以得出兩個(gè)觀察結(jié)果,首先LMEA和EACLMEA總體獲得更好的IGD值,且EACLMEA獲得更多的最優(yōu)IGD值。EACLMEA在LSMOP5-LSMOP9和具有100個(gè)決策變量的LSMOP3上具有更好的結(jié)果;LMEA在LSMOP1、具有100個(gè)決策變量的LSMOP2、具有1000個(gè)決策變量的LSMOP3和具有100個(gè)決策變量的LSMOP4上具有更好的IGD值。在Wilcoxon軼和檢驗(yàn)結(jié)果中,在LSMOP9、具有100個(gè)決策變量的LSMOP2、具有1000個(gè)決策變量的LSMOP4和具有1000個(gè)決策變量的LSMOP6上,LMEA和EA?CLMEA在統(tǒng)計(jì)學(xué)上沒有差異。EACLMEA算法獲得更多最優(yōu)IGD值原因是,進(jìn)化角度比較方法能夠?qū)Q策變量準(zhǔn)確區(qū)分為多樣性相關(guān)變量和收斂性相關(guān)變量,通過相關(guān)優(yōu)化策略獲得較好的IGD值;EACLMEA算法整體上比LMEA算法具有更優(yōu)的性能,原因是EA?CLMEA算法將具有較小夾角的決策變量判斷為多樣性相關(guān)變量,從而使更加偏向收斂方向決策變量的多樣性得到充分利用。其次,隨著決策變量從100變?yōu)?000,EACLMEA算法都能獲得較好的IGD值,說明該算法能夠適應(yīng)高維度多目標(biāo)優(yōu)化問題中,大規(guī)模決策變量的優(yōu)化需求。 本文提出基于進(jìn)化角度比較方法的高維多目標(biāo)進(jìn)化算法(EACLMEA),進(jìn)化角度比較方法根據(jù)當(dāng)前樣本解與隨機(jī)選擇樣本解的決策變量與收斂方向形成夾角的大小比較,判斷當(dāng)前樣本解的決策變量為收斂性相關(guān)變量或多樣性相關(guān)變量,如果當(dāng)前樣本解的決策變量小于大多數(shù)隨機(jī)選擇樣本解決策變量夾角,則判斷決策變量為多樣性相關(guān)變量,采用多樣性優(yōu)化策略進(jìn)行優(yōu)化;否則采用收斂性優(yōu)化策略優(yōu)化該決策變量。結(jié)果表明EACLMEA算法在大多數(shù)LSMOP問題中取得更好的IGD值,即進(jìn)化角度比較方法能夠有效解決大規(guī)模高維多目標(biāo)優(yōu)化問題。2 EACLMEA算法
2.1 EACLMEA算法的主要框架
2.2 進(jìn)化角度比較方法
3 實(shí)驗(yàn)與分析
3.1 實(shí)驗(yàn)設(shè)置
3.2 結(jié)果與討論

4 結(jié)語