• 
    

    
    

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

      ?

      求解高維優(yōu)化問題的改進鯨魚優(yōu)化算法

      2022-12-19 03:00:58王永貴關(guān)連正
      計算機與生活 2022年12期
      關(guān)鍵詞:鯨魚全局交叉

      王永貴,李 鑫+,關(guān)連正

      1.遼寧工程技術(shù)大學(xué) 軟件學(xué)院,遼寧 葫蘆島 125105

      2.北京工業(yè)大學(xué) 信息學(xué)部,北京 100124

      高維優(yōu)化問題(一般指維數(shù)超過100的函數(shù)優(yōu)化問題)廣泛地存在于科學(xué)研究和工程應(yīng)用之中,如航空航天設(shè)計、機器學(xué)習(xí)、神經(jīng)網(wǎng)絡(luò)優(yōu)化等問題。當(dāng)搜索空間維數(shù)增加,特別是高維數(shù)時,搜索空間呈指數(shù)擴展,這就產(chǎn)生了“維數(shù)災(zāi)難”[1]。這些問題難以使用傳統(tǒng)的優(yōu)化算法來解決,因此元啟發(fā)式算法引起了人們極大的研究興趣,并被廣泛應(yīng)用。

      近年來,許多研究者受啟發(fā)于自然界,通過模仿生物行為或自然現(xiàn)象,提出了許多新型元啟發(fā)式算法。其中,鯨魚優(yōu)化算法(whale optimization algorithm,WOA)[2]是由Mirjalili 和Lewis 于2016 年提出的一種新型群體智能自然啟發(fā)算法,源于對座頭鯨種群捕食行為的模仿研究實現(xiàn)對復(fù)雜優(yōu)化問題的尋優(yōu)。研究表明,WOA算法能夠有效解決29個數(shù)學(xué)優(yōu)化問題和6個約束工程設(shè)計問題。在函數(shù)優(yōu)化方面,已被證明其尋優(yōu)精度和收斂速度均優(yōu)于粒子群優(yōu)化算法、引力搜索算法等其他群體智能優(yōu)化算法[2]。相較于傳統(tǒng)算法,WOA算法具有參數(shù)設(shè)置少(參數(shù)A和C)、易于編程實現(xiàn)、尋優(yōu)能力良好的特點,目前已經(jīng)被廣泛應(yīng)用到數(shù)據(jù)挖掘[3]、圖像處理[4]、臨床醫(yī)學(xué)[5]、結(jié)構(gòu)優(yōu)化[6]、電力系統(tǒng)[7-8]等領(lǐng)域。但和其他群體智能優(yōu)化算法一樣,WOA算法不可避免地存在全局勘探能力不足、尋優(yōu)精度低等問題。為了解決WOA算法中存在的問題,提高算法尋優(yōu)效果,目前研究人員主要從以下幾個方面改進標(biāo)準(zhǔn)WOA算法。

      (1)融合其他算法。研究人員嘗試充分發(fā)揮其他算法的優(yōu)點,開發(fā)許多混合自然啟發(fā)的方法以改善現(xiàn)有算法的探索和開發(fā)性能。例如文獻[9]混合粒子群算法,將粒子群算法用于開發(fā)階段,更快地將粒子引導(dǎo)到最優(yōu)值,減少計算時間;文獻[10]提出兩種與模擬退火算法融合的方式,一種將模擬退火算法作為算子嵌入WOA算法提高算法開發(fā)能力,另一種在WOA 算法找到最佳解后使用模擬退火算法來增強最終解;文獻[11]引入正弦余弦算法,使用該算法的更新方式替換WOA 算法原有的收縮包圍位置更新策略,提高算法求解精度。

      (2)引入混沌映射?;煦缬成浔硎痉蔷€性系統(tǒng)中復(fù)雜動態(tài)行為的映射,具有周期性和非重復(fù)性。例如文獻[12]使用混沌映射調(diào)整算法中的參數(shù)p,混沌輔助控制參數(shù),快速搜索最優(yōu)解,細(xì)化算法的收斂精度。文獻[13]將混沌搜索策略引入WOA算法的位置更新中,研究了十種不同混沌映射對WOA性能的影響,并試圖找出提高WOA 性能的最佳混沌映射。文獻[14]在WOA 算法局部開發(fā)階段引入Logistic 混沌搜索,避免WOA算法過早地陷入局部最優(yōu)停滯。

      (3)優(yōu)化搜索方式。通過修改螺旋收縮和包圍獵物方程控制鯨魚個體的搜索位置。例如文獻[15]同時在螺旋收縮和包圍獵物公式中加入雙自適應(yīng)權(quán)重,以提高WOA 算法全局搜索能力。文獻[16]引入黃金分割數(shù)優(yōu)化WOA算法的位置更新方式,從而在全局勘探階段和局部開發(fā)階段進行平衡。文獻[17]在鯨魚個體位置更新公式中引入自適應(yīng)慣性權(quán)重,通過平衡算法的開發(fā)和勘探能力,進一步改善WOA算法的尋優(yōu)性能。

      除此以外,還有學(xué)者從其他角度對WOA算法進行改進。例如文獻[18]提出一種改進的二進制WOA算法并用于選擇分類和降低維度的最優(yōu)特征子集。文獻[19]將二次插值方法應(yīng)用于種群的領(lǐng)導(dǎo)者,以提高局部開發(fā)能力和求解的精度。文獻[20]將WOA算法與最近的爬山局部搜索的變體相結(jié)合,以進一步加強其開發(fā)過程。

      以上改進算法雖然從不同角度提高WOA 算法的尋優(yōu)效果,但多數(shù)只是針對中小規(guī)模優(yōu)化問題(小于100 維)而言,在處理大規(guī)模優(yōu)化問題時,WOA 算法仍存在全局勘探能力不足和難以跳出局部極值的現(xiàn)象。因此,本文嘗試將WOA算法加以改進并應(yīng)用于求解高維優(yōu)化問題,提出動態(tài)拉普拉斯交叉和參數(shù)調(diào)整的鯨魚優(yōu)化算法(dynamic Laplace crossover and parameter adjustment for whale optimization algorithm,DPWOA)。首先利用Fuch混沌和優(yōu)化的對立學(xué)習(xí)混合策略初始化鯨魚種群代替原算法的隨機初始化種群策略,提高初始鯨魚種群的質(zhì)量;其次WOA 中參數(shù)A在算法流程中起關(guān)鍵作用而參數(shù)A無法保證算法進行足夠的全局勘探,故引入新的參數(shù)J,使得算法保證充足全局開發(fā)的同時更好地平衡全局勘探和局部開發(fā);最后在局部開發(fā)階段引入拉普拉斯算子進行動態(tài)交叉操作,使最優(yōu)鯨魚個體在開發(fā)的不同時期采用不同的交叉策略,前期精細(xì)搜索范圍,后期更好地跳出局部極值。10個標(biāo)準(zhǔn)測試函數(shù)(100、500、1 000維)的仿真實驗結(jié)果表明,改進的WOA算法具有良好的尋優(yōu)效果,能有效處理高維優(yōu)化問題。

      1 相關(guān)理論

      1.1 鯨魚優(yōu)化算法

      鯨魚優(yōu)化算法是受鯨魚種群獨特的Bubble-net捕食方式而啟發(fā),通過尋找獵物、包圍獵物、Bubblenet捕食三種機制搜尋最優(yōu)解。在WOA算法中,假設(shè)N為鯨魚總數(shù),D為探索空間的維度,第t次迭代時,第i只鯨魚在第D維空間中的位置表示為(i=1,2,…,N),用全局最優(yōu)位置X*=表示為獵物位置。在完成以上初始化設(shè)置后,鯨魚種群進行三種方式的位置更新操作。

      1.1.1 尋找獵物

      在尋找獵物階段,由于獵物位置對于鯨魚種群是未知的,故鯨魚通過集體合作獲取獵物位置。鯨魚使用種群中隨機個體位置作為導(dǎo)航目標(biāo)來尋找食物,其數(shù)學(xué)模型描述如下:

      式中,Xrand表示當(dāng)前鯨魚種群中隨機選取的鯨魚個體位置,D表示隨機個體與當(dāng)前個體的距離,A·D為系數(shù)向量,其中A和C定義如下:

      式中,r1和r2表示[0,1]之間的隨機數(shù),a表示收斂因子,隨迭代過程其值從2線性遞減到0。

      1.1.2 包圍獵物

      鯨魚能夠識別獵物的位置,并將它們包圍起來,在WOA算法中,首先假設(shè)當(dāng)前種群中最優(yōu)個體的位置為獵物的位置,種群中其他鯨魚個體均向最優(yōu)個體包圍,其數(shù)學(xué)模型描述如下:

      式中,t表示當(dāng)前迭代次數(shù),X*表示當(dāng)前種群中最優(yōu)個體位置。

      1.1.3 Bubble-net捕食

      鯨魚種群向獵物位置游動,通過螺旋Bubble-net方式進行狩獵,其數(shù)學(xué)模型描述如下:

      其中,D′=|X*(t)-X(t)|表示第t次迭代中最優(yōu)個體與當(dāng)前個體的距離,b為常數(shù),用來定義對數(shù)螺旋形狀,l表示[-1,1]之間的隨機數(shù)。

      鯨魚的包圍獵物機制和Bubble-net 捕食是一種同步行為,在數(shù)學(xué)模型描述中,通常選取兩種方式的概率相同,即其描述如下:

      式中,p表示[0,1]之間的隨機數(shù),鯨魚優(yōu)化算法流程如圖1所示。

      圖1 鯨魚優(yōu)化算法流程圖Fig.1 Whale optimization algorithm flow chart

      1.2 Fuch混沌映射

      混沌是非線性系統(tǒng)的一個特征,在數(shù)學(xué)上被定義為由簡單確定性函數(shù)生成的隨機數(shù)。將混沌思想融入到元啟發(fā)式優(yōu)化算法,核心是利用混沌變量的隨機性、遍歷性和不規(guī)律性,替換服從標(biāo)準(zhǔn)概率分布的隨機變量進行優(yōu)化搜索,從而搜尋整個解空間,產(chǎn)生分布均勻的個體,提高初始種群質(zhì)量。

      目前文獻中廣泛使用的混沌映射是Logistic 和Tent映射等,傳統(tǒng)的混沌映射由于自身存在有理數(shù)不動點,通常需要限制初始狀態(tài)的取值范圍并設(shè)計相應(yīng)的預(yù)防算法避免平衡態(tài)的產(chǎn)生,在增加設(shè)計難度的同時降低了算法的執(zhí)行效率。如Logistic 映射對初值敏感,只有控制參數(shù)為4 時才完全進入混沌狀態(tài),有較高的概率在區(qū)間兩端取值且遍歷不均勻[21]。Tent映射雖具有更好的遍歷均勻性,但存在小周期和不動點,容易陷入局部循環(huán),使混沌優(yōu)化效率降低[22]。文獻[23]提出的Fuch映射無有理數(shù)不動點,通過在優(yōu)化過程中不斷縮小優(yōu)化變量的搜索空間來提高搜索效率和搜索精度,比Logistic和Tent映射具有更高的搜索效率。該映射具有對初值不敏感、遍歷均衡和收斂較快等優(yōu)點,且在初值不為0的情形下均能產(chǎn)生混沌。鑒于上述分析,本文采用Fuch 映射作為混沌搜索的映射函數(shù),其數(shù)學(xué)模型描述如下:

      由于Logistic 和Tent 映射產(chǎn)生的變量取值范圍為[0,1],在將決策變量xi映射為混沌向量進行混沌搜索時,需要先將xi的每一維通過下式將混沌初始值限制在[0,1]內(nèi):

      然后將產(chǎn)生的混沌初始向量li通過Logistic 和Tent映射函數(shù)進行載波操作生成混沌向量ci,最后通過下式變換到原解空間向量:

      而Fuch 映射不依賴于初始值,在初始值的微小變化時產(chǎn)生的混沌序列是完全不同且毫無規(guī)律的[23],因此進行混沌搜索時不用先將決策變量xi變換到混沌變量區(qū)間,直接通過式(9)產(chǎn)生混沌向量,載波操作后再還原到原解空間即可。同時文獻[22]指出一旦Logistic 和Tent 映射的初始值超出[0,1]范圍,產(chǎn)生的混沌序列將會無效。因此從算法執(zhí)行角度來說,F(xiàn)uch映射可以提高求解全局最優(yōu)問題的搜索效率。

      1.3 拉普拉斯交叉

      拉普拉斯交叉算子[24]由Deep 等人提出,拉普拉斯算子分布的密度函數(shù)如下:

      2 本文算法

      本文按照WOA算法流程,分別從初始化種群階段、全局勘探階段和局部開發(fā)階段三方面對鯨魚優(yōu)化算法進行改進。

      2.1 種群初始化策略

      對于基于群體迭代的元啟發(fā)式算法來說,初始種群的優(yōu)劣影響算法的求解精度和收斂速度,多樣性更好的初始種群能為算法全局搜索奠定基礎(chǔ)。由于對待優(yōu)化問題的全局最優(yōu)值沒有先驗知識,WOA算法采用隨機初始化方式產(chǎn)生初始種群,隨機方式產(chǎn)生的初始化種群不能保證種群的多樣性,無法有效提取搜索空間的有用信息,在一定程度上會影響算法的收斂速度和搜索能力。

      本文將Fuch混沌初始化與對立學(xué)習(xí)初始化相結(jié)合,提出Fuch 混沌對立初始化策略。對立學(xué)習(xí)[25]是Tizhoosh 于2005 年提出的一種新的機器智能方案,Tizhoosh 的研究表明對立解比當(dāng)前解更接近全局最優(yōu)的概率是50%。故同時搜索當(dāng)前解和對立解,保留較優(yōu)解可使種群盡可能均勻分布在搜索空間中。

      然而在進行實驗時發(fā)現(xiàn),由于優(yōu)化變量的上下界往往是對稱的,而基準(zhǔn)函數(shù)又常帶有絕對值或平方,若采用一般的對立學(xué)習(xí)策略得到的對立解只是與初始解符號相反,對應(yīng)的適應(yīng)度值則是相同的,這樣同一個適應(yīng)度值對應(yīng)多個解,無法有效提高種群多樣性。為減少此現(xiàn)象,提出新的生成對立解的公式:

      如式(14)所示,將初始解的每一維映射到區(qū)間中心值附近,產(chǎn)生的對立解不再只是對應(yīng)初始解的相反數(shù),使得對立解具有不同的適應(yīng)度值,增加種群適應(yīng)度值的多樣性進而提高初始解的質(zhì)量。

      群體智能優(yōu)化算法往往不能保證獲得理論最優(yōu)值,而是通過迭代獲得無限逼近最優(yōu)值的近似解。由1.2節(jié)可知,F(xiàn)uch映射可以提高算法執(zhí)行過程中的搜索效率,故利用Fuch映射較高的搜索效率,產(chǎn)生多樣性良好的優(yōu)質(zhì)混沌初始種群,然后對混沌初始種群及其對立種群進行排序選擇,將適應(yīng)度值較優(yōu)的解作為初始鯨群,能夠充分提取求解空間的有用信息,在保證種群多樣性的同時大幅提高初始解的質(zhì)量。而初始種群的質(zhì)量會直接影響算法的收斂速度,質(zhì)量更好的初始種群能夠幫助算法以更快的速度獲得符合實際需求的近似解,有效減少鯨群狩獵過程中的迭代次數(shù),進而提升算法的收斂速度。

      假設(shè)N為鯨魚總數(shù),F(xiàn)uch 混沌對立初始化鯨魚種群步驟如下:

      步驟1利用式(9)進行迭代產(chǎn)生混沌向量序列,i=1,2,…,N;

      步驟2通過式(10)將混沌向量載波到原解空間生成初始解Xi;

      步驟3將初始解Xi按照式(16)計算出對應(yīng)的對立解OPi;

      步驟4將初始解Xi和對立解OPi根據(jù)適應(yīng)度值進行排序,選擇較優(yōu)的前N個解作為鯨魚種群的初始解。

      2.2 改進全局勘探階段

      根據(jù)式(2)可知,全局勘探階段鯨魚個體的位置更新主要取決于兩部分:隨機選擇的鯨魚個體Xrand位置和系數(shù)向量A與D的乘積。根據(jù)WOA 算法流程,鯨魚種群在迭代過程中有一半的機會根據(jù)A值大小進行位置更新操作,在此基礎(chǔ)上,只有當(dāng)|A|>1時,按照式(2)進行全局勘探操作。A值隨迭代次數(shù)的變化如圖2所示,系數(shù)向量A在[-2,2]之間變化,在迭代過程中|A|從2 遞減到0。而由圖2 可以直觀看出,迭代全程中|A|大于1的比例很小,這導(dǎo)致鯨魚種群進行全局勘探的概率很低,無法充分探索搜索空間使得全局搜索能力進一步減弱。對于基于群體智能的元啟發(fā)式算法來說,迭代過程中的較大步長可以有效提高搜索效率[26]。因此本文在全局勘探公式中引入新的參數(shù)J,以提高鯨魚種群的全局勘探能力,改進后的數(shù)學(xué)模型描述如下:

      圖2 A 值隨迭代變化圖Fig.2 Variation of A-value with iteration

      其中,sign(·)為符號函數(shù),參數(shù)J定義如下:

      式中,Tmax表示最大迭代次數(shù)。

      式(18)右側(cè)為符號函數(shù)sign(·)、新參數(shù)J和D的乘積,其中J·D決定了此次迭代位置更新的步長,sign(·)決定了此次迭代位置更新的方向。參數(shù)J隨迭代次數(shù)的變化如圖3所示,右上部分為迭代后期局部放大圖。由圖3 可看出J值隨著迭代次數(shù)的增加而減少,與圖2 中的參數(shù)A相比,參數(shù)J使得位置更新步長不僅包括許多小步長,還包括一定數(shù)量的大步長,從而可以幫助鯨魚種群更好地進行空間搜索,并在整個全局搜索過程中保持種群的多樣性。在迭代過程的前期階段,偶爾的大步長使DPWOA算法更有效地探索搜索區(qū)域,提高全局勘探能力。在迭代過程的后期階段,較大的步長可以幫助DPWOA算法更好地擺脫局部極值的束縛。

      圖3 J 值隨迭代變化圖Fig.3 Variation of J-value with iteration

      2.3 改進局部開發(fā)階段

      鯨魚種群的開發(fā)階段是對座頭鯨狩獵行為的模擬,通過螺旋收縮和包圍獵物方式進行,局部開發(fā)過程能夠幫助算法有效地搜索最優(yōu)解。然而這兩種方式均圍繞當(dāng)前的最優(yōu)鯨魚個體進行搜索,并且具有相對較小的步長。當(dāng)目前最優(yōu)值接近局部最優(yōu)時,圍繞局部最優(yōu)的小步長搜索模式會使算法陷入局部極值中,難以擺脫局部極值的束縛。標(biāo)準(zhǔn)的鯨魚優(yōu)化算法缺乏有效的變異機制,使鯨魚種群容易陷入局部極值。針對這一問題,目前使用較多的方法是引入和聲算子和差分算子,但差分算子涉及的突變、選擇操作,和聲算子涉及的微調(diào)擾動和隨機選擇操作,在幫助鯨群躲避局部極值的同時,在一定程度上會大幅增加算法的負(fù)擔(dān)。因此為使算法易于操作并具有通用性,本文在局部開發(fā)階段動態(tài)地引入拉普拉斯交叉算子,幫助鯨魚種群擺脫局部極值的束縛,避免算法早熟收斂。

      文獻[27]單純在每次迭代之后引入拉普拉斯算子進行交叉變異操作,沒有考慮固定參數(shù)取值對于最終結(jié)果的影響。為交叉變異操作更符合算法迭代規(guī)律,本文采用動態(tài)拉普拉斯交叉策略。圖4表示不同b值取值下拉普拉斯交叉密度函數(shù)曲線的差異,取值參考文獻[24]。b=1.0 時用實線表示,b=0.5 時用虛線表示,從垂直方向看,虛線中心值附近的峰值大于實線,兩端的峰值小于實線;從水平方向看,實線越接近水平軸兩端下降越緩慢,而虛線趨近水平軸的兩端。

      圖4 拉普拉斯密度函數(shù)曲線Fig.4 Laplace density function curve

      由于實線比虛線更容易產(chǎn)生遠(yuǎn)離原點的隨機數(shù),具有更寬的分布范圍,在局部開發(fā)的前期選擇b=1.0 進行拉普拉斯交叉,使得鯨魚個體能夠以較大步長探索求解空間,更好地擺脫局部極值束縛。其數(shù)學(xué)模型描述如下:

      由于虛線在中心值附近產(chǎn)生隨機數(shù)的概率較高,在局部開發(fā)的后期選擇b=0.5 進行拉普拉斯交叉,使得鯨魚個體在最優(yōu)解附近以較小步長游走,精細(xì)搜索最優(yōu)區(qū)域,提高尋找全局最優(yōu)的概率。其數(shù)學(xué)模型描述如下:

      式(21)、式(22)中r為[0,1]之間的隨機數(shù),t表示當(dāng)前迭代次數(shù),Tmax表示最大迭代次數(shù),1-t/Tmax表示[0,1]之間的單調(diào)遞減函數(shù)。在開發(fā)前期,t值較小,因此1-t/Tmax較大,當(dāng)其大于r時,算法隨機選取一條鯨魚與當(dāng)前最優(yōu)個體按照式(21)進行交叉操作;在開發(fā)后期,t值較大,因此1-t/Tmax較小,當(dāng)其小于r時,算法隨機選取一條鯨魚與當(dāng)前最優(yōu)個體按照式(22)進行交叉操作。動態(tài)拉普拉斯交叉操作使得開發(fā)前期產(chǎn)生遠(yuǎn)離父代的子代,以較大步長能夠更好地探索搜索空間,增大跳出局部極值的概率,避免算法早熟收斂。開發(fā)后期產(chǎn)生距離父代的較近的子代,以較小步長能夠精細(xì)搜索最優(yōu)解附近空間,增大尋找全局最優(yōu)解的概率,進而幫助鯨群以更快的速度收斂至全局最優(yōu)。整體而言,開發(fā)階段引入拉普拉斯交叉算子,使得鯨魚種群按照迭代進程進行自適應(yīng)動態(tài)交叉操作,提高算法的收斂速度和求解能力。

      同時按照式(19)的設(shè)定,將參數(shù)J引入開發(fā)階段式(6)中的A,改進后的包圍機制公式如下:

      2.4 算法流程

      綜上所述,本文算法執(zhí)行步驟如下,流程如圖5所示。

      圖5 DPWOA算法流程圖Fig.5 DPWOA flow chart

      步驟1初始化相關(guān)參數(shù),包括鯨魚個體數(shù)N,最大迭代次數(shù)Tmax;

      步驟2按照2.1 節(jié)利用混沌對立學(xué)習(xí)策略初始化鯨魚種群;

      步驟3計算鯨魚種群中個體適應(yīng)度值,記錄當(dāng)前最優(yōu)個體X*適應(yīng)度值;

      步驟4生成隨機數(shù)p,若p≥0.5,則按照式(18)更新個體位置,轉(zhuǎn)步驟7,否則轉(zhuǎn)步驟5;

      步驟5生成隨機數(shù)r1,若r1≤0.5,則按照式(7)更新個體位置,否則按照式(23)更新個體位置;

      步驟6生成隨機數(shù)r2,若r2≤1-t/Tmax,則按照式(21)進行交叉操作,否則按照式(22)進行交叉操作,并更新個體位置;

      步驟7轉(zhuǎn)步驟3,判斷是否滿足迭代終止條件,若滿足則算法終止,否則轉(zhuǎn)步驟4繼續(xù)迭代。

      2.5 時間復(fù)雜度分析

      下面將DPWOA 算法與WOA 算法的時間復(fù)雜度進行對比分析。

      設(shè)第t次迭代時算法所得最優(yōu)解為,其中t=1,2,…,Tmax,Tmax為最大迭代次數(shù)。收斂閾值為ε,在第k次(k≤Tmax)迭代時,若f()≤ε則認(rèn)為滿足收斂精度的要求,算法終止迭代,否則算法繼續(xù)迭代至Tmax次終止,記k為終止迭代次數(shù)。WOA 算法和DPWOA算法每次迭代過程中的鯨魚個數(shù)不變,均記為Nw,每條鯨魚每次迭代需要的運行時間為Ti,其中i=1,2,…,k。假設(shè)WOA 算法的終止迭代次數(shù)為k1,DPWOA 算法的終止迭代次數(shù)為k2,則WOA 算法時間復(fù)雜度為O(k1NwTi),DPWOA算法的時間復(fù)雜度為O(k2NwTi)。分析可知WOA 算法與DPWOA 算法在運行時間性能的差異主要取決于迭代次數(shù)k。WOA算法使用參數(shù)A調(diào)節(jié)探索和開發(fā),致使算法在迭代過程中全局探索能力不足,鯨魚個體逐漸偏離最優(yōu)解;而DPWOA算法利用參數(shù)J進行位置更新操作,能夠保證鯨群更有效地探索求解空間,鯨魚個體向最優(yōu)解靠攏,取得更好的尋優(yōu)效果。也就是說在兩種算法迭代次數(shù)相同的情況下,相比WOA 算法,DPWOA算法的迭代結(jié)果更加接近理論最優(yōu)值,先滿足收斂閾值要求,提前終止迭代,致使k2<k1,運行時間較少。DPWOA算法相比WOA算法數(shù)學(xué)模型改變之處均為常數(shù)級運算,對時間復(fù)雜度的增量影響遠(yuǎn)遠(yuǎn)小于迭代次數(shù),可以忽略。因此DPWOA算法的時間復(fù)雜度O(k2NwTi) 小于WOA 算法的時間復(fù)雜度O(k1NwTi)。

      2.6 算法綜合分析

      本文DPWOA 算法對WOA 算法的執(zhí)行過程(鯨群初始化、鯨群全局勘探、鯨群局部開發(fā))進行深入研究,在保留WOA算法良好的仿生機制的基礎(chǔ)上對其進行改進。用Fuch混沌和對立學(xué)習(xí)相結(jié)合的初始化種群方式,替換WOA 算法的隨機方式,降低算法的不確定性。該初始化種群策略能夠產(chǎn)生多樣性良好的高質(zhì)量種群,為后續(xù)迭代奠定基礎(chǔ);在全局勘探階段調(diào)整參數(shù),用新的參數(shù)J代替原始參數(shù)A,增加全局勘探的概率。該策略能夠增強算法的全局勘探能力,幫助鯨魚種群更好地探索求解空間,提高算法的尋優(yōu)精度和收斂速度;在局部開發(fā)階段引入拉普拉斯交叉策略,迫使鯨群按照迭代進程進行自適應(yīng)動態(tài)交叉操作,幫助鯨群以更快的速度收斂至全局最優(yōu),降低算法早熟收斂的概率。綜上所述,DPWOA中改進策略均能以直接或間接的方式提高算法的尋優(yōu)精度和收斂速度,三種改進策略密切配合、協(xié)同進行,充分發(fā)揮了DPWOA的求解效果。

      3 實驗與結(jié)果分析

      3.1 實驗環(huán)境及測試函數(shù)

      本文所有測試均在CPU 為Intel Core i5-4210M,主頻2.60 GHz,內(nèi)存12 GB,操作系統(tǒng)Windows 7 的機器上進行,程序代碼在Matlab R2018b上實現(xiàn)。

      本文選取10 個標(biāo)準(zhǔn)測試函數(shù)[28]測試算法性能,大部分函數(shù)存在多個局部最優(yōu)值,準(zhǔn)確找到其全局最優(yōu)值具有一定難度,能夠充分考察算法的尋優(yōu)能力。如表1所示,在所有測試函數(shù)中,f1~f5為單峰函數(shù),主要用于測試算法的尋優(yōu)精度和收斂性;f6~f10為多峰函數(shù),主要用于測試算法的跳出局部極值和全局搜索能力[29]。

      表1 測試函數(shù)Table 1 Benchmark functions

      3.2 實驗設(shè)置及結(jié)果分析

      實驗選取標(biāo)準(zhǔn)WOA 算法[2]、近年來的改進算法LWOA算法[26]、LXWOA算法[27]作對比,來評價DPWOA算法在處理高維優(yōu)化問題時的尋優(yōu)效果。

      實驗中設(shè)置所有算法的鯨魚種群數(shù)為50,最大迭代次數(shù)Tmax為500,其他對比實驗參數(shù)設(shè)置與各文獻一致。所有算法分別在100 維、500 維、1 000 維上獨立運行50 次,通過統(tǒng)計最優(yōu)值best、最差值worst、均值mean和標(biāo)準(zhǔn)差std考察算法性能。

      3.2.1 尋優(yōu)精度分析

      4 個算法在100 維、500 維、1 000 維對10 個測試函數(shù)的尋優(yōu)效果如表2~表4所示。

      由表2~表4數(shù)據(jù)分析可知,DPWOA算法在不同維數(shù)的所有實驗中均具有最佳的尋優(yōu)效果,且求解精度幾乎不受維數(shù)增加的影響,而其他三種算法的求解精度隨著維數(shù)增加有明顯降低,與理論最優(yōu)值偏離程度增大。對于單峰函數(shù)f1~f5,DPWOA 算法在所有維度中的最優(yōu)值都能達(dá)到全局最優(yōu)。在f1、f2、f3上獲得了理論最優(yōu)的均值和標(biāo)準(zhǔn)差,且具有良好的穩(wěn)定性。f4、f5上雖未收斂至全局最優(yōu)但相較于其他對比算法,DPWOA 算法具有絕對優(yōu)勢的尋優(yōu)效果,對于函數(shù)f5其取得了理想狀態(tài)下的標(biāo)準(zhǔn)差且尋優(yōu)效果高出其他對比算法至少247 個數(shù)量級。對于多峰函數(shù)f6~f10,當(dāng)函數(shù)規(guī)模為100 維和500 維時,除f8外,DPWOA算法均能穩(wěn)定地收斂至全局最優(yōu),獲得理論最優(yōu)值和標(biāo)準(zhǔn)差。隨著維數(shù)增加,DPWOA算法在函數(shù)f8上的尋優(yōu)精度略有降低,但其求解效果仍優(yōu)于其他對比算法。當(dāng)函數(shù)規(guī)模由500 增加至1 000 維時,對于函數(shù)f6,DPWOA算法存在陷入局部極值的風(fēng)險,但其收斂效果仍優(yōu)于其他對比算法。

      表2 求解100維測試函數(shù)的算法性能對比Table 2 Comparison of algorithms for solving 100D functions

      表3 求解500維測試函數(shù)的算法性能對比Table 3 Comparison of algorithms for solving 500D functions

      表4 求解1 000維測試函數(shù)的算法性能對比Table 4 Comparison of algorithms for solving 1000D functions

      整體而言,標(biāo)準(zhǔn)WOA算法在實驗中的均值與全局最優(yōu)值有較大偏差,隨著函數(shù)優(yōu)化問題的規(guī)模變大,求解精度偏差也逐漸增大。改進算法LWOA 和LXWOA 算法的求解效果在不同函數(shù)下各有優(yōu)劣且均優(yōu)于標(biāo)準(zhǔn)WOA算法,在大部分函數(shù)上的求解結(jié)果隨著函數(shù)規(guī)模增大而降低。由于萊維飛行策略的隨機性,LWOA 算法相較于LXWOA 算法,在部分函數(shù)上取得了更好的最優(yōu)值但是穩(wěn)定性較差。固定參數(shù)取值使得LXWOA雖然相較于LWOA具有更好的穩(wěn)定性但尋優(yōu)效果仍不佳。DPWOA 算法的尋優(yōu)效果不受函數(shù)規(guī)模變化的影響,在所有維度的基準(zhǔn)函數(shù)測試實驗中,除個別函數(shù)外其最優(yōu)值、均值和標(biāo)準(zhǔn)差均取得理想效果。隨著函數(shù)優(yōu)化問題維度增加,DPWOA 算法能夠保持良好的全局勘探能力和穩(wěn)定的尋優(yōu)效果,具有處理高維優(yōu)化問題的能力。

      3.2.2 收斂曲線分析

      基準(zhǔn)函數(shù)的收斂曲線可以更直觀地展示算法的收斂速度和跳出局部極值的能力,本文給出在1 000維下4種算法的適應(yīng)度收斂曲線,如圖6~圖15所示。

      由圖6~圖15 分析可知,相較于其他對比算法,DPWOA算法具有更高的尋優(yōu)精度、更快的收斂速度和更強的跳出局部極值的能力。從函數(shù)f1、f4、f9可以明顯看出,DPWOA算法在迭代初期的適應(yīng)度值明顯優(yōu)于其他算法,說明混沌對立學(xué)習(xí)策略有效提高了初始種群的質(zhì)量。由f1、f2、f6、f8、f10收斂曲線可以看出,由于WOA 算法全局勘探能力不足,容易陷入局部極值,收斂曲線處于停滯狀態(tài)。由f2、f4、f6、f8、f9收斂曲線可以看出,由于LWOA 算法在每次迭代后對鯨魚種群采用萊維飛行策略更新位置,而隨機行走具有不穩(wěn)定性,收斂曲線存在局部停滯和較大波動。LXWOA采用固定參數(shù)的拉普拉斯交叉操作,相較于WOA 收斂曲線更陡峭,相較于LXWOA 收斂曲線更平滑,但由于固定參數(shù)的限制,由f9、f10可以明顯看出,在迭代前期收斂曲線就已經(jīng)趨向于平緩,存在早熟收斂問題。DPWOA 算法首先利用混沌對立學(xué)習(xí)策略初始化種群,形成多樣性更好的優(yōu)質(zhì)種群;其次對參數(shù)A進行調(diào)整,避免全局勘探概率過低影響算法全局收斂;最后動態(tài)地進行拉普拉斯交叉操作,避免算法早熟收斂。由f1~f10收斂曲線可以明顯看出,無論是求解單峰函數(shù)還是多峰函數(shù),DPWOA算法的收斂曲線相較于其他對比算法更加陡峭,具有更快的收斂速度、更少的迭代次數(shù)和更高的求解精度。

      圖6 f1收斂曲線Fig.6 Convergence curve of f1

      圖7 f2收斂曲線Fig.7 Convergence curve of f2

      圖8 f3收斂曲線Fig.8 Convergence curve of f3

      圖9 f4收斂曲線Fig.9 Convergence curve of f4

      圖10 f5收斂曲線Fig.10 Convergence curve of f5

      圖11 f6收斂曲線Fig.11 Convergence curve of f6

      圖12 f7收斂曲線Fig.12 Convergence curve of f7

      圖13 f8收斂曲線Fig.13 Convergence curve of f8

      圖14 f9收斂曲線Fig.14 Convergence curve of f9

      圖15 f10收斂曲線Fig.15 Convergence curve of f10

      4 結(jié)束語

      為克服鯨魚優(yōu)化算法在處理高維優(yōu)化問題時,存在求解精度低、容易陷入局部極值的問題,本文提出一種動態(tài)拉普拉斯交叉和參數(shù)調(diào)整的鯨魚優(yōu)化算法。首先通過Fuch混沌映射生成多樣性良好的優(yōu)質(zhì)混沌初始種群,在此基礎(chǔ)上結(jié)合優(yōu)化的對立學(xué)習(xí)策略進一步優(yōu)化初始種群,為準(zhǔn)確尋找全局最優(yōu)值奠定基礎(chǔ);然后對全局勘探公式中參數(shù)進行調(diào)整,使得算法有足夠的全局搜索機會,同時在全局勘探和局部開發(fā)之間進行平衡;最后在開發(fā)階段對最優(yōu)個體進行拉普拉斯交叉,使得迭代前期產(chǎn)生較遠(yuǎn)子代,擴展探索空間,迭代后期產(chǎn)生較近子代,精細(xì)最優(yōu)解空間。利用10 個標(biāo)準(zhǔn)函數(shù)在不同維度進行對比實驗,實驗結(jié)果表明與近年來改進算法相比,本文算法在求解高維優(yōu)化問題時具有良好的尋優(yōu)效果。

      猜你喜歡
      鯨魚全局交叉
      小鯨魚
      幼兒100(2022年41期)2022-11-24 03:20:20
      Cahn-Hilliard-Brinkman系統(tǒng)的全局吸引子
      量子Navier-Stokes方程弱解的全局存在性
      迷途鯨魚
      鯨魚
      “六法”巧解分式方程
      鯨魚島——拖延癥
      動漫星空(2018年4期)2018-10-26 02:11:54
      落子山東,意在全局
      金橋(2018年4期)2018-09-26 02:24:54
      連一連
      基于Fast-ICA的Wigner-Ville分布交叉項消除方法
      計算機工程(2015年8期)2015-07-03 12:19:54
      蚌埠市| 乌兰浩特市| 翁源县| 阜阳市| 西藏| 申扎县| 台江县| 东至县| 徐水县| 威远县| 江都市| 扶风县| 太和县| 富源县| 榆树市| 合川市| 洪洞县| 华容县| 民丰县| 乐东| 沧源| 深水埗区| 车致| 西贡区| 福海县| 迭部县| 泾阳县| 白玉县| 德保县| 利津县| 四子王旗| 葫芦岛市| 搜索| 安远县| 上高县| 津南区| 确山县| 清苑县| 铜鼓县| 皋兰县| 景洪市|