吳文海, 郭曉峰, 周思羽, 高 麗
(海軍航空大學(xué)青島校區(qū)航空儀電控制工程與指揮系, 山東 青島 266041)
差分進(jìn)化(differential evolution, DE)算法是由Storn等[1]提出的一種基于“貪婪競(jìng)爭(zhēng)”機(jī)制的智能算法,以結(jié)構(gòu)簡(jiǎn)單、性能優(yōu)越、魯棒性強(qiáng)、易于實(shí)現(xiàn)等特點(diǎn),吸引大量學(xué)者進(jìn)行研究[2],被廣泛應(yīng)用于各領(lǐng)域優(yōu)化問(wèn)題[3-5]。標(biāo)準(zhǔn)DE算法采用單一的變異策略和固定控制參數(shù)(變異因子F、交叉因子CR、種群數(shù)量NP),無(wú)法隨進(jìn)化過(guò)程動(dòng)態(tài)調(diào)整,導(dǎo)致算法在處理高維、多峰優(yōu)化問(wèn)題時(shí)容易陷入局部最優(yōu),造成算法早熟。因此,如何恰當(dāng)?shù)仄胶釪E算法全局探索和局部開(kāi)發(fā)能力,合理地對(duì)DE算法控制參數(shù)進(jìn)行整定,成為制約DE算法尋優(yōu)性能的關(guān)鍵問(wèn)題[6]。
Das等[7]對(duì)近幾年DE的研究進(jìn)行了回顧,主要從同時(shí)考慮策略選擇以及變異因子F和交叉因子CR的自適應(yīng)性、僅考慮變異因子F和交叉因子CR的自適應(yīng)性、僅考慮種群數(shù)量NP的自適應(yīng)性等3方面系統(tǒng)性地總結(jié)和梳理了DE最新發(fā)展情況。
在變異策略研究方面,基于鄰域的變異策略被廣泛采用以平衡全局探索和局部開(kāi)發(fā)能力,通過(guò)限制個(gè)體間相互作用范圍,有效地調(diào)整算法搜索能力,減少搜索重疊[8]。Das等[9]提出了一種基于環(huán)形拓?fù)溧徲虻腄E算法,將標(biāo)準(zhǔn)變異策略和基于局部鄰域改進(jìn)的變異策略結(jié)合,通過(guò)權(quán)重系數(shù)ω∈(0,1)調(diào)整兩者比例,動(dòng)態(tài)平衡全局搜索和局部搜索能力。Cai等[10]將自適應(yīng)選擇機(jī)制引入基于鄰域的DE算法中,使其能夠自適應(yīng)地從含有3種方向信息的備選池中生成變異策略。Cai等[11]提出一種基于指數(shù)鄰域的DE算法,引入二級(jí)鄰域排序算子,通過(guò)評(píng)價(jià)鄰域內(nèi)個(gè)體適應(yīng)值獲得潛在搜索方向,引導(dǎo)變異策略。Liao等[12]提出一種基于細(xì)胞拓?fù)溧徲虻腄E算法,將鄰域方向信息加入到變異操作中,根據(jù)適應(yīng)值將鄰域中個(gè)體分為優(yōu)、劣兩組,從兩組中分別隨機(jī)選取一個(gè)個(gè)體來(lái)構(gòu)造差向量。Pham等[13]引入最近鄰域比較機(jī)制,通過(guò)搜索總體中最近的個(gè)體來(lái)預(yù)先判斷解決方案是否值得評(píng)價(jià),從而避免不必要的評(píng)價(jià)。
在參數(shù)整定技術(shù)研究方面,由于不同優(yōu)化問(wèn)題的特點(diǎn)各不相同,僅憑經(jīng)驗(yàn)無(wú)法確定最合適的控制參數(shù),傳統(tǒng)固定控制參數(shù)的尋優(yōu)方法效率低下,嚴(yán)重制約DE算法的性能,而隨進(jìn)化過(guò)程動(dòng)態(tài)更新控制參數(shù)的自適應(yīng)技術(shù)展現(xiàn)出巨大的優(yōu)勢(shì)。AI-Dabbagh等[14]將自適應(yīng)參數(shù)整定技術(shù)劃分為:基于確定性機(jī)制、基于漸進(jìn)控制、基于進(jìn)程學(xué)習(xí)3類(lèi)。Draa等[15]提出了2種改進(jìn)正弦函數(shù)公式,周期性地控制F和CR的增減,提高了算法的靈活性。Venkatakrishnan等[16]采用基于適應(yīng)值的自適應(yīng)技術(shù),根據(jù)每代進(jìn)化中最大、最小適應(yīng)值的比值更新變異因子F,以提高算法在進(jìn)化初期的多樣性,加強(qiáng)算法在進(jìn)化后期的搜索能力。Zhang等[17]提出了一種基于高斯-柯西分布的DE算法,通過(guò)N(0.5,0.15)的高斯分布和C(0.5,0.3)的柯西分布為每一個(gè)體生成變異因子F和交叉因子CR,若子代在選擇操作中存活,則保留原參數(shù),否則重新生成。Stanovov等[18]采用C(MF,0.1)的柯西分布和N(MCR,0.1)的高斯分布為每一個(gè)體生成變異因子F和交叉因子CR,通過(guò)權(quán)重萊默均值更新MF和MCR。Lu等[19]提出一種基于對(duì)個(gè)體差異和種群多樣性的定量分析的自適應(yīng)參數(shù)整定方法,當(dāng)個(gè)體差異ω≥0且種群多樣性指標(biāo)σ小于預(yù)設(shè)值時(shí),根據(jù)更新方程重新計(jì)算變異因子F和交叉因子CR。
在上述基于鄰域的變異策略研究中,個(gè)體的鄰域在進(jìn)化過(guò)程中保持不變,鄰域內(nèi)個(gè)體數(shù)量固定,由于靜態(tài)鄰域拓?fù)湫畔⒔粨Q速度較慢,從而限制了算法的搜索能力,減緩算法的收斂速度,甚至容易使算法陷入局部最優(yōu),導(dǎo)致算法早熟。針對(duì)該問(wèn)題,本文提出一種基于隨機(jī)鄰域策略和廣義反向?qū)W習(xí)(generalized opposition-based learning, GOBL)的自適應(yīng)差分進(jìn)化(簡(jiǎn)稱(chēng)為GOBL-RNADE)算法實(shí)現(xiàn)對(duì)單目標(biāo)優(yōu)化問(wèn)題進(jìn)行求解。每一代進(jìn)化過(guò)程中,GOBL-RNADE算法為每一個(gè)體生成隨機(jī)鄰域,鄰域中的個(gè)體數(shù)量隨進(jìn)化過(guò)程動(dòng)態(tài)更新,鄰域中最優(yōu)個(gè)體作為基向量執(zhí)行“DE/neighbor/1”操作;根據(jù)文獻(xiàn)[18],建立歷史存檔存儲(chǔ)進(jìn)化過(guò)程中“精英”個(gè)體信息,通過(guò)存檔中數(shù)據(jù)動(dòng)態(tài)更新控制參數(shù);引入GOBL機(jī)制執(zhí)行種群初始化和種群“代跳”操作,提高算法尋得最優(yōu)解幾率,避免算法陷入局部最優(yōu)。
DE是一種基于“貪婪競(jìng)爭(zhēng)”以實(shí)現(xiàn)種群進(jìn)化的智能算法,主要包括變異、交叉和選擇等操作。
(1) DE/rand/1:
(1)
(2) DE/best/1:
(2)
(3)
式中:下標(biāo)j表示個(gè)體第j維;jrand為控制參數(shù);交叉因子CR∈(0,1)。
(4)
本文提出一種基于隨機(jī)鄰域的變異策略“DE/neighbor/1”,在每一代進(jìn)化過(guò)程中,算法為每一個(gè)個(gè)體從當(dāng)前種群中隨機(jī)選擇N個(gè)個(gè)體組成鄰域,鄰域中的最優(yōu)個(gè)體作為基向量,從鄰域內(nèi)剩余個(gè)體中隨機(jī)挑選2個(gè)個(gè)體組成差分向量,“DE/neighbor/1”具體可表示為
(5)
式中:Xnbest為鄰域內(nèi)最優(yōu)個(gè)體;Xr1,Xr2為從鄰域內(nèi)剩余個(gè)體中隨機(jī)挑選的個(gè)體。
(6)
通過(guò)自適應(yīng)策略,種群中較優(yōu)個(gè)體的鄰域中含有較少的鄰域個(gè)體,從而引導(dǎo)算法趨于探索能力,而較差的鄰域中含有較多的鄰域個(gè)體,從而引導(dǎo)算法趨于開(kāi)發(fā)能力。“DE/neighbor/1”充分利用種群中“隨機(jī)”信息和鄰域內(nèi)“最優(yōu)”信息,合理地平衡了算法全局探索和局部開(kāi)發(fā)能力,加速了信息交換速度,增加了種群多樣性,在避免算法陷入局部最優(yōu)的同時(shí),提高算法尋優(yōu)速度,而且該策略并未引進(jìn)其他參數(shù),并未增加算法復(fù)雜度。
(7)
(8)
(10)
式中:meanWL(·)為權(quán)重萊默均值,可表示為
(11)
(12)
本文采用權(quán)重萊默均值對(duì)MF,k和MCR,k進(jìn)行更新,不同于傳統(tǒng)的更新策略,本文所采用方法對(duì)“精英”存檔值賦予不同的權(quán)重,權(quán)重根據(jù)父代個(gè)體和實(shí)驗(yàn)個(gè)體的差異進(jìn)行計(jì)算,充分考慮了“精英”信息對(duì)MF,k和MCR,k的影響,提高“精英”信息對(duì)參數(shù)更新的作用。本策略充分利用“精英”信息保證控制參數(shù)最優(yōu)性,同時(shí)采用柯西分布和正態(tài)分布提高隨機(jī)性,保證種群多樣性。
GBOL[21]的定義如下:
(13)
(14)
本文應(yīng)用GOBL執(zhí)行種群初始化及代跳操作[23]。GOBL種群初始化如算法1所示。
算法1 GOBL種群初始化隨機(jī)初始化種群P0={X01,X02,…,X0NP};for i=1 to NP do for j=1 to D do X⌒0i,j=k(aj+bj)-X0i,j; if X⌒0i,j
GOBL種群“代跳”操作如算法2所示。其中Jr為預(yù)設(shè)代跳率。
算法2 GOBL種群“代跳”if rand(0,1)
引理1設(shè)解空間S,Ψ:Ω×S→S是DE生成的隨機(jī)壓縮算子,則Ψ存在唯一的隨機(jī)不動(dòng)點(diǎn),從而DE漸進(jìn)收斂[24]。
由引理1可知DE漸進(jìn)收斂,GOBL-RNADE是基于DE的基礎(chǔ)上改進(jìn)了隨機(jī)鄰域變異策略和GOBL策略,根據(jù)DE漸進(jìn)收斂性可證隨機(jī)鄰域變異策略和GOBL策略所產(chǎn)生的個(gè)體也漸進(jìn)收斂到一個(gè)最優(yōu)解。
定理1DE漸進(jìn)收斂,則GOBL-RNADE也漸進(jìn)收斂。
(15)
(16)
同時(shí),搜索空間的邊界滿(mǎn)足:
(17)
(18)
證畢
GOBL-RNADE的偽代碼如算法3所示。
算法3 GOBL-RNADE偽代碼 設(shè)置k=1,MF和MCR中所有元素為0.5;執(zhí)行GOBL種群初始化;while 終止條件未達(dá)到 do 重置SF=?,SCR=?; for i=1 to NP do 根據(jù)式(7)和式(8)生成FGi和CRGi; 根據(jù)式(6)計(jì)算鄰域個(gè)體數(shù)量NGi; 為第i個(gè)體隨機(jī)選擇NGi個(gè)鄰域個(gè)體,選擇最優(yōu)個(gè)體為Xnbest; 根據(jù)式(5)執(zhí)行“DE/neighbor/1”生成變異個(gè)體VGi; 根據(jù)式(3)執(zhí)行交叉操作生成實(shí)驗(yàn)個(gè)體UGi; if f(UGi)
GOBL-RNADE的基本流程如圖1所示。
圖1 GOBL-RNADE流程圖Fig.1 Process of GOBL-RNADE
為了驗(yàn)證GOBL-RNADE的尋優(yōu)性能,選取27個(gè)標(biāo)準(zhǔn)測(cè)試函數(shù)進(jìn)行實(shí)驗(yàn),如表1所示。其中f1~f7為單峰函數(shù),f8~f13為多峰函數(shù)[26],f14~f18為偏移單峰函數(shù),f19~f27為偏移多峰函數(shù)[27]。實(shí)驗(yàn)中所有算法對(duì)每一測(cè)試函數(shù)獨(dú)立運(yùn)行30遍,最大函數(shù)評(píng)價(jià)次數(shù)設(shè)置為10 000×D,采用置信度為5%的威爾科克森秩和檢驗(yàn)評(píng)估GOBL-RNADE與其他算法之間顯著性差異,威爾科克森秩和檢驗(yàn)是一種非參數(shù)檢驗(yàn),在不依賴(lài)總體分布形式的條件下,判斷實(shí)驗(yàn)數(shù)據(jù)所在總體的分布位置是否存在顯著性差異。其中,“+/≈/-”分別表示GOBL-RNADE優(yōu)于/近似/劣于所對(duì)比算法。
表1 標(biāo)準(zhǔn)測(cè)試函數(shù)
根據(jù)前文所述,N取較大值時(shí),“DE/neighbor/1”趨向于“DE/best/1”策略;N取較小值時(shí),“DE/neighbor/1”趨向于“DE/rand/1”策略,因此本節(jié)選取“DE/best/1”和“DE/rand/1”2種經(jīng)典DE作為比較對(duì)象,驗(yàn)證GOBL-RNADE性能。實(shí)驗(yàn)分別在D=30和D=50的情況下進(jìn)行比較,根據(jù)文獻(xiàn)[28],設(shè)置標(biāo)準(zhǔn)DE的控制參數(shù)為:種群數(shù)量N=100,變異因子F=0.5,交叉因子CR=0.9。實(shí)驗(yàn)結(jié)果(平均值±標(biāo)準(zhǔn)差)如表2和表3所示,其中黑體表示最優(yōu)值。從實(shí)驗(yàn)結(jié)果中可以看出,GOBL-RNADE在D=30和D=50的情況下均取得最好尋優(yōu)效果,尋優(yōu)精度高,穩(wěn)定性強(qiáng)。當(dāng)D=30時(shí),GOBL-RNADE在27個(gè)測(cè)試函數(shù)中獲得21個(gè)最優(yōu)值,分別有21個(gè)測(cè)試函數(shù)優(yōu)于DE/rand/1,22個(gè)測(cè)試函數(shù)優(yōu)于DE/best/1,僅有2個(gè)測(cè)試函數(shù)劣于對(duì)比算法。當(dāng)D=50時(shí),GOBL-RNADE在27個(gè)測(cè)試函數(shù)中同樣獲得21個(gè)最優(yōu)值,分別有18個(gè)測(cè)試函數(shù)優(yōu)于DE/rand/1,25個(gè)測(cè)試函數(shù)優(yōu)于DE/best/1,分別僅在5個(gè)和1個(gè)函數(shù)測(cè)試中劣于對(duì)比算法,說(shuō)明GOBL-RNADE在高維變量情況下仍能保持較好的尋優(yōu)性能。
表2 GOBL-RNADE與標(biāo)準(zhǔn)DE實(shí)驗(yàn)結(jié)果(D=30)
表3 GOBL-RNADE與標(biāo)準(zhǔn)DE實(shí)驗(yàn)結(jié)果(D=50)
續(xù)表3
將GOBL-RNADE與JADE[29]、SaDE[30]、MGSDE[31]以及DADDE[32]進(jìn)行對(duì)比。
各算法參數(shù)設(shè)置與原文獻(xiàn)一致,取D=30。各算法實(shí)驗(yàn)結(jié)果(平均值±標(biāo)準(zhǔn)差)如表4和表5所示,其中黑體表示最優(yōu)值。
表4 GOBL-RNADE與經(jīng)典DE實(shí)驗(yàn)結(jié)果(1)
續(xù)表4
表5 GOBL-RNADE與經(jīng)典DE實(shí)驗(yàn)結(jié)果(2)
根據(jù)實(shí)驗(yàn)結(jié)果可知,GOBL-RNADE在測(cè)試中尋優(yōu)效果最好,27個(gè)測(cè)試函數(shù)中有18個(gè)函數(shù)獲得最優(yōu)值。根據(jù)威爾科克森秩和檢驗(yàn)評(píng)估結(jié)果表明,GOBL-RNADE分別在16個(gè)、17個(gè)、22個(gè)、21個(gè)測(cè)試函數(shù)中優(yōu)于JADE、SaDE、MGSDE以及DADDE;在4個(gè)、7個(gè)、5個(gè)、4個(gè)測(cè)試函數(shù)中獲得與4種算法近似的結(jié)果;僅在7個(gè)、3個(gè)、0個(gè)、2個(gè)測(cè)試函數(shù)中差于JADE、SaDE、MGSDE以及DADDE。相較于其余4種算法,GOBL-RNADE有更好的尋優(yōu)精度及尋優(yōu)穩(wěn)定性。
對(duì)于單峰函數(shù)f1~f7,GOBL-RNADE除函數(shù)f7外均尋得最優(yōu)解0,函數(shù)f7GOBL-RNADE僅劣于DADDE,且兩種算法的最優(yōu)解誤差在同一數(shù)量級(jí)。單峰函數(shù)優(yōu)化問(wèn)題中,種群中的“精英”信息能夠高效引導(dǎo)算法尋得最優(yōu)解,根據(jù)“精英”信息,GOBL-RNADE變異策略趨向開(kāi)發(fā)能力,算法參數(shù)也根據(jù)“精英”信息動(dòng)態(tài)整定,從而使得GOBL-RNADE在處理單峰函數(shù)優(yōu)化問(wèn)題時(shí)具有明顯的優(yōu)勢(shì);對(duì)于多峰函數(shù)f8~f13,GOBL-RNADE尋優(yōu)性能遠(yuǎn)優(yōu)于MGBDE和DADDE,與SaDE尋優(yōu)性能相當(dāng),GOBL-RNADE對(duì)于f9~f11均收斂到最優(yōu)解0,函數(shù)f12和f13的最優(yōu)解誤差也與SaDE在同一量級(jí)。多峰函數(shù)優(yōu)化問(wèn)題中,由于函數(shù)存在多個(gè)局部最優(yōu)解,因此如何避免算法陷入局部最優(yōu)導(dǎo)致算法早熟是關(guān)鍵問(wèn)題,GOBL-RNADE采取GOBL種群“代跳”操作,基于代跳率Jr隨機(jī)在某代進(jìn)化結(jié)束后執(zhí)行GOBL,從而提高了種群的多樣性,避免算法陷入局部最優(yōu)導(dǎo)致算法早熟,因而GOBL-RNADE在處理多峰函數(shù)優(yōu)化問(wèn)題時(shí)具有一定的優(yōu)勢(shì);對(duì)于偏移單峰函數(shù)f14~f18,GOBL-RNADE在f14收斂到最優(yōu)解,在5個(gè)偏移單峰函數(shù)測(cè)試中獲得4組最優(yōu)結(jié)果,對(duì)于函數(shù)f17標(biāo)準(zhǔn)測(cè)試集在介紹時(shí)描述到“如果初始化過(guò)程在邊界處填充,則問(wèn)題將很容易解決”,本文采用GOBL執(zhí)行種群初始化,根據(jù)式(13)可知,在參數(shù)k的作用下初始化種群將遠(yuǎn)離邊界,因而導(dǎo)致GOBL-RNADE在函數(shù)f17測(cè)試中結(jié)果并不理想;對(duì)于偏移多峰函數(shù)f19~f27,GOBL-RNADE在9組測(cè)試中分別在f21、f24、f25、f26獲得最優(yōu)結(jié)果,f20和f27的最優(yōu)解誤差與最優(yōu)算法在同一量級(jí),尋優(yōu)效果近似,因此整體來(lái)說(shuō)GOBL-RNADE在處理多峰函數(shù)優(yōu)化問(wèn)題時(shí)具有一定的優(yōu)勢(shì)。
進(jìn)一步比較GOBL-RNADE與各算法在30次仿真實(shí)驗(yàn)中各測(cè)試函數(shù)的計(jì)算用時(shí),其結(jié)果如表6所示,可以看出GOBL-RNADE計(jì)算用時(shí)遠(yuǎn)小于其余算法。
表6 GOBL-RNADE與經(jīng)典DE計(jì)算用時(shí)
圖2給出GOBL-RNADE,JADE,SaDE,MGSDE以及DADDE在9個(gè)代表測(cè)試函數(shù)中的收斂曲線,其中縱坐標(biāo)為與全局最優(yōu)解的誤差值??煽闯鯣OBL-RNADE的收斂曲線明顯快于其余算法,f9和f10在較短時(shí)間內(nèi)收斂到最優(yōu)解0,說(shuō)明GOBL-RNADE尋優(yōu)速度更快。
圖2 GOBL-RNADE與經(jīng)典DE收斂曲線Fig.2 Convergence curves of GOBL-RNADE and classic DE
為進(jìn)一步比較GOBL-RNADE與其余4種算法的性能,本文采用弗里德曼檢驗(yàn)計(jì)算平均排序值,弗里德曼檢驗(yàn)是多個(gè)樣本齊一性的統(tǒng)計(jì)檢驗(yàn),所考查的樣本中的每組都具有一致的樣本數(shù)量,各樣本間相應(yīng)個(gè)體存在對(duì)應(yīng)關(guān)系。
對(duì)k個(gè)樣本量為n的樣本進(jìn)行排序,獲得k個(gè)樣本的秩和為
(19)
則檢驗(yàn)值可表示為
(20)
(21)
則拒絕檢驗(yàn)的原假設(shè)。
5種算法基于27個(gè)測(cè)試函數(shù)的平均排序值如表5所示,黑體為最優(yōu)值。從表7中可以看出GOBL-RNADE取得最優(yōu)排序值,且明顯優(yōu)于其余算法,說(shuō)明GOBL-RNADE具有更好的尋優(yōu)性能。
表7 5種DE算法弗里德曼檢驗(yàn)平均排序值
如前文所述,GOBL-RNADE包含3種改進(jìn)策略:隨機(jī)鄰域變異策略、基于歷史進(jìn)化信息自適應(yīng)參數(shù)策略和GOBL策略。為了研究各策略對(duì)DE性能的影響,本文將3種改進(jìn)策略進(jìn)行不同組合形成6種DE變體,分別表示為ADE僅包含自適應(yīng)參數(shù)策略,RNDE僅包含隨機(jī)鄰域變異策略,GOBL-DE僅包含GOBL策略,GOBL-ADE同時(shí)包含自適應(yīng)參數(shù)策略和GOBL策略,GOBL-RNDE同時(shí)包含隨機(jī)鄰域變異策略和GOBL策略和RNADE同時(shí)包含隨機(jī)鄰域變異策略和自適應(yīng)參數(shù)策略。通過(guò)與6種DE變體與GOBL-RNADE進(jìn)行對(duì)比,驗(yàn)證3種改進(jìn)策略對(duì)DE性能的改進(jìn)。
實(shí)驗(yàn)中選取DE/rand/1作為ADE、GOBL-ADE和GOBL-ADE的變異策略,RNDE、GOBL-DE和GOBL-RNDE的變異因子F=0.5,交叉因子CR=0.9,取D=30。實(shí)驗(yàn)結(jié)果(平均值±標(biāo)準(zhǔn)差)如表8和表9所示,其中黑體表示最優(yōu)值。
表8 GOBL-RNADE與各策略實(shí)驗(yàn)結(jié)果
表9 GOBL-RNADE與各策略實(shí)驗(yàn)結(jié)果
從實(shí)驗(yàn)結(jié)果可以看出,GOBL-RNADE在21個(gè)測(cè)試函數(shù)中取得最優(yōu)值,具有最好的尋優(yōu)性能,尋優(yōu)精度高,可靠性及魯棒性強(qiáng)。根據(jù)威爾科克森秩和檢驗(yàn)評(píng)估結(jié)果表明,GOBL-RNADE分別在25個(gè)、19個(gè)、25個(gè)、17個(gè)、17個(gè)、19個(gè)測(cè)試函數(shù)中優(yōu)于ADE、RNDE、GOBL-DE、GOBL-ADE、GOBL-RNDE和RNADE。
采用單一改進(jìn)策略的3種算法尋優(yōu)性能明顯較差,分別僅有1個(gè)、1個(gè)、2個(gè)測(cè)試函數(shù)優(yōu)于GOBL-RNADE,僅RNDE在7個(gè)測(cè)試函數(shù)中取得近似結(jié)果。采用2種改進(jìn)策略的DE變體實(shí)驗(yàn)結(jié)果要優(yōu)于采用單一改進(jìn)策略的DE變體,但仍遠(yuǎn)劣于GOBL-RNADE,分別僅有1個(gè)、1個(gè)、0個(gè)測(cè)試函數(shù)優(yōu)于GOBL-RNADE。
續(xù)表9
為進(jìn)一步比較各策略對(duì)DE性能的改進(jìn)效果,采用弗里德曼檢驗(yàn)計(jì)算GOBL-RNADE和6種DE變體的平均排序值,結(jié)果如表10所示,黑體為最優(yōu)值。從表10中可看出GOBL-RNADE取得最優(yōu)排序值,且明顯優(yōu)于其余算法。
表10 7種DE算法弗里德曼檢驗(yàn)平均排序值
表11給出了6種DE變體與GOBL-RNADE尋優(yōu)結(jié)果基于校正p值的多重檢驗(yàn)結(jié)果。根據(jù)表11結(jié)果可知,在α=0.05情況下,6種DE變體尋優(yōu)結(jié)果均與GOBL-RNADE存在顯著性差異,表明GOBL-RNADE性能明顯優(yōu)于其余6種算法。
表11 基于校正p值的多重檢驗(yàn)結(jié)果(1)
表12為3種改進(jìn)策略不同情況下基于校正p值的多重檢驗(yàn)結(jié)果,其中1組、2組針對(duì)有無(wú)隨機(jī)鄰域變異策略;3組、4組針對(duì)有無(wú)自適應(yīng)參數(shù)策略;5組、6組針對(duì)有GOBL策略。
對(duì)比ADE和RNADE,RNADE獲得8組與GOBL-RNADE相當(dāng)?shù)臏y(cè)試結(jié)果,而ADE僅獲得1組;其次,RNADE在f6、f20、f22均獲得最優(yōu)結(jié)果,其中在f6收斂到最優(yōu)解0,而ADE僅在f21獲得最優(yōu)結(jié)果;在全部27組測(cè)試中,RNADE僅在f3、f15、f16、f21劣于ADE。對(duì)比GOBL-DE和GOBL-RNDE,GOBL-RNDE獲得9組與GOBL-RNADE相當(dāng)?shù)臏y(cè)試結(jié)果,1組優(yōu)于GOBL-RNADE的測(cè)試結(jié)果,而GOBL-DE僅獲得2組優(yōu)于GOBL-RNADE的測(cè)試結(jié)果;其次,GOBL-RNADE在f6、f9、f18均獲得最優(yōu)結(jié)果,其中在f6、f9收斂到最優(yōu)解0;在全部27組測(cè)試中,GOBL-RNAD僅在f7、f16、f21、f24、f27劣于ADE。根據(jù)表12結(jié)果可知,在α=0.05的情況下,ADE和RNADE、GOBL-DE和GOBL-RND均存在顯著性差異,通過(guò)以上對(duì)比分析可以得出隨機(jī)鄰域變異策略能夠明顯提高DE的尋優(yōu)性能。
表12 基于校正p值的多重檢驗(yàn)結(jié)果(2)
對(duì)比RNDE和RNADE,RNADE在27組測(cè)試中有17組測(cè)試結(jié)果優(yōu)于RNDE。對(duì)比GOBL-DE和GOBL-ADE,GOBL-ADE僅在f7和f27劣于GOBL-DE,其余結(jié)果均優(yōu)于GOBL-DE,根據(jù)表12結(jié)果可知,在α=0.05情況下,GOBL-DE和GOBL-ADE存在顯著性差異,通過(guò)以上對(duì)比分析可以得出自適應(yīng)參數(shù)策略對(duì)DE尋優(yōu)精度起到改善作用。
對(duì)比RNDE和GOBL-RNDE,GOBL-RNDE在27組測(cè)試中有18組測(cè)試結(jié)果優(yōu)于RNDE,對(duì)比ADE和GOBL-ADE,GOBL-ADE在27組測(cè)試中有20組測(cè)試結(jié)果優(yōu)于ADE;其次,通過(guò)分析圖3可以得出,廣義反向?qū)W習(xí)策略能夠有效提高種群多樣性,幫助算法及時(shí)跳出局部極值,避免算法早熟。基于上述不同策略條件下DE與GOBL-RNADE性能分析可以得出,本文所采用的3種改進(jìn)策略對(duì)算法尋優(yōu)精度、尋優(yōu)速度及尋優(yōu)穩(wěn)定性等性能具有較好改進(jìn)。
此外,圖3給出了GOBL-RNADE和其余6種DE變體在9個(gè)代表測(cè)試函數(shù)中的收斂曲線。從圖3中可以看出,GOBL-RNADE的收斂曲線快于其余算法,具有更快的尋優(yōu)速度。
圖3 GOBL-RNADE與不同策略收斂曲線Fig.3 Convergence curves of GOBL-RNADE and different strategies
本文提出了一種基于隨機(jī)鄰域策略和GOBL的自適應(yīng)差分進(jìn)化算法,本算法提出一種基于隨機(jī)鄰域的變異策略,進(jìn)化過(guò)程中,通過(guò)動(dòng)態(tài)更新鄰域信息以平衡算法全局探索和局部開(kāi)發(fā)能力,采用基于歷史存檔的自適應(yīng)參數(shù)策略,充分利用進(jìn)化過(guò)程中的“精英”信息,自適應(yīng)調(diào)節(jié)控制參數(shù),提高了算法的尋優(yōu)精度和速度。引入GOBL策略,提高種群多樣性,避免算法陷入局部最優(yōu),導(dǎo)致算法早熟。通過(guò)基于27個(gè)標(biāo)準(zhǔn)測(cè)試函數(shù)的3組不同仿真實(shí)驗(yàn)分析表明,GOBL-RNADE具有很好的尋優(yōu)性能,尋優(yōu)精度高,收斂速度快,可靠性魯棒性強(qiáng),明顯優(yōu)于其他對(duì)比算法。