高建瓴,喻明毫
(貴州大學(xué) 大數(shù)據(jù)與信息工程學(xué)院,貴陽 550025)
在機(jī)器學(xué)習(xí)以及人工智能中存在許多連續(xù)的、離散的、受約束的或無約束的現(xiàn)實(shí)問題,同時又由于這些問題的特點(diǎn),在解決這類問題存在很大的難度.因此,元啟發(fā)式算法被設(shè)計來解決此類問題.元啟發(fā)式算法簡單易實(shí)現(xiàn),其核心操作并不依賴于目標(biāo)的梯度信息或其數(shù)學(xué)特征,所以在現(xiàn)代工程應(yīng)用中廣泛應(yīng)用.受自然啟發(fā)的元啟發(fā)式算法可以分為幾類:基于進(jìn)化算法[1,2]、基于物理現(xiàn)象算法[3]以及基于群體的算法[4-7].基于群體的算法通過模擬自然界中動物的行為來進(jìn)行建模從而達(dá)到優(yōu)化的目的,粒子群算法PSO[4]靈感來源于鳥類群居的社會行為,其使用了很多粒子(候選解)在搜索空間中4處飛行來尋找最佳解決方案.鯨魚優(yōu)化算法WOA[5]通過模仿座頭鯨捕食行為構(gòu)建出搜索、包圍和狩獵等的數(shù)學(xué)模型,從而達(dá)到尋優(yōu)目的.薛建凱等提出的麻雀搜索算法(SSA)通過模擬麻雀尋覓食物的行為[6]構(gòu)建數(shù)學(xué)模型,從而對現(xiàn)實(shí)問題進(jìn)行優(yōu)化.
哈里斯鷹優(yōu)化算法(Harris Hawks Optimization,HHO)是Heidari,A.A等[7]基于哈里斯鷹捕食而構(gòu)建的一種新型的群智能優(yōu)化的算法.算法中包含了兩個階段:探索階段和開發(fā)階段,階段之間的切換由能量因子E控制,該算法尋優(yōu)效果較好.同時在工程上應(yīng)用廣泛,如光伏電池和模塊的參數(shù)估計[8]、圖像分割[9]、TDOA定位[10]等場景.
與其余元啟發(fā)式算法相同,基本HHO算法同樣存在對用戶定義參數(shù)顯示出的敏感性以及初始化種群缺失多樣性、收斂速度慢、易陷入局部最優(yōu)解等問題.為此湯安迪等[11]利用精英等級制度改進(jìn)HHO算法,郭雨鑫等[12]利用黃金正弦優(yōu)化HHO.針對基本HHO算法的幾個缺點(diǎn),本文在原算法的基礎(chǔ)上進(jìn)行以下幾個方面的改進(jìn):1)在元啟發(fā)式算法中,群體初始化分布對算法收斂性以及精度有很大影響[13].原算法對種群進(jìn)行隨機(jī)化初始,隨機(jī)初始化種群的方式遍歷性低,個體分布不均,無法全面覆蓋搜索空間,使得算法性能受影響,為了提高初始種群的遍歷性,提高算法尋優(yōu)效率,本文使用Sobol序列初始化種群使得初始種群在搜索空間均勻分布;2)針對HHO算法探索階段效率較低的問題,融合差分進(jìn)化算法[2]加速HHO算法的尋優(yōu)過程以及尋優(yōu)精度,同時提高全局搜索能力;3)二次插值方式產(chǎn)生新個體:在HHO開發(fā)階段一共有4個策略,在策略1、策略3中獵物都有足夠能量逃跑,對開發(fā)階段收斂速度有一定影響,為了提高開發(fā)效率,改進(jìn)算法在迭代過程中選取3個個體采用二次插值方式產(chǎn)生下一代個體,提高哈里斯鷹包圍效率.最后加入簡單的精英策略選出更優(yōu)的種群,增加算法的穩(wěn)定性.
哈里斯鷹算法靈感來自于探索哈里斯鷹的猛擊獵物、突襲和不同的攻擊策略.算法分為探索階段和開發(fā)階段,兩個階段的過度由能量因子E控制.
2.1.1 探索階段
本階段哈里斯鷹在棲息地通過眼睛追蹤和發(fā)現(xiàn)獵物,哈里斯鷹隨機(jī)棲息在某地,機(jī)會均等的策略發(fā)現(xiàn)獵物,位置更新策略如下:
(1)
(2)
其中Xrand(t)表示當(dāng)前種群隨機(jī)選取的個體,Xrabbit(t)表示獵物位置,Xm(t)表示當(dāng)前種群的平均位置,隨機(jī)參數(shù)q,ri∈random(0,1),i=1,2,3,4,[LB,UB]表示上下界,N為種群個數(shù).
2.1.2 過度
探索到開發(fā)階段通過能量因子E控制,公式如下:
E=2E0(1-t/T)
(3)
其中:能量因子E是獵物的逃跑能量,哈里斯鷹算法通過E判斷探索和開發(fā)階段的轉(zhuǎn)換,t表示當(dāng)前迭代,T表示最大迭代次數(shù),E0表示(-1,1)之間的隨機(jī)數(shù).
2.1.3 開發(fā)階段
在開發(fā)階段,哈里斯鷹為了防止獵物逃跑,使用了4種策略包圍獵物.用r表示獵物逃跑概率.
策略1.軟包圍.|E|≥0.5,r≥0.5時,獵物有充足能量逃跑.
X(t+1)=(Xrabbit(t)-X(t))-E|JXrabbit(t)-X(t)|
(4)
其中J=2(1-r5)表示獵物逃跑距離,r5是(0,1)之間的隨機(jī)數(shù).
策略2.硬包圍.|E|<0.5,r≥0.5時,獵物逃跑的能量很低,哈里斯鷹會迅速突襲獵物.
X(t+1)=Xrabbit(t)-E|Xrabbit(t)-X(t)|
(5)
策略3.快速俯沖軟包圍.當(dāng)|E|≥0.5而r<0.5時,獵物有足夠能量逃跑,所以先軟包圍再快速俯沖攻擊.在此過程加入Levy函數(shù)[14]LF模擬獵物跳躍及逃跑模型.
(6)
Y=Xrabbit(t)-E|JXrabbit(t)-X(t)|
(7)
Z=Y+S×LF(D)
(8)
其中D是所求問題維度,S是D維的隨機(jī)飛行向量.
策略4.快速俯沖硬包圍.當(dāng)|E|<0.5而r<0.5時,獵物沒有足夠能量逃跑,所以先硬包圍再快速俯沖攻擊獵物.
(9)
Y=Xrabbit(t)-E|JXrabbit(t)-Xm(t)|
(10)
哈里斯鷹算法步驟如下:
Step1.設(shè)置種群參數(shù)(種群數(shù)量N、最大迭代次數(shù)T,迭代計數(shù)器t),隨機(jī)初始化種群Xi,初始化Xrabbit位置.
Step2.計算每個個體適應(yīng)度,更新Xrabbit位置.進(jìn)入循環(huán).
Step3.計算能量因子E、獵物逃跑距離J、逃跑概率r.如果|E|≥1|,則使用公式(1)更新個體位置,如果|E|<1,根據(jù)2.1.3節(jié)中的不同策略包圍獵物,更新個體位置.
Step4.判斷是否達(dá)到終止條件,如果沒有則返回Step 2,否則終止迭代輸出最優(yōu)位置以及對應(yīng)的適應(yīng)度值.
差分進(jìn)化DE算法是一種直接搜索算法,與遺傳算法相似,進(jìn)化過程包含了變異、交叉、選擇3個部分,DE算法通過個體之間的差分量實(shí)現(xiàn)個體變異以及種群進(jìn)化,本文主要結(jié)合差分進(jìn)化算法種群變異以提高HHO算法探索性能,差分進(jìn)化種對每個個體向量Xi(t),i=1,2…,NP,差分進(jìn)化算法基本變異策略如下:
Xi(t+1)=Xr1(t)+F·[Xr2(t)-Xr3(t)]
(11)
其中r1,r2,r3為(1,NP)之間互不相等的整數(shù)且不等于i,F∈[0,2]是一個常數(shù)因子.
元啟發(fā)式算法性能在一定程度上受初始種群的影響,在搜索空間中分布均勻的種群能保證較高的遍歷性、多樣性,提高算法效率[14].為了提高算法全局搜索能力,國內(nèi)外學(xué)者使用混沌映射初始化種群,卓然等利用混沌Tent映射[15]初始化種群,倪龍雨等使用Logistic混沌映射擾動最優(yōu)解[16]來優(yōu)化算法.Arora等[17]采用 Circle 混沌方法初始化種群.Gehad等[18]使用多種混沌映射嵌入搜索代理中以提高搜索效率.
這些混沌算法雖然具備一定的跳出局部最優(yōu)解的能力,但還存在隨機(jī)性強(qiáng)和相鄰點(diǎn)緊密相關(guān)的性質(zhì)的缺點(diǎn),比如Tent映射最小周期點(diǎn)(0.2,0.4,0.6,0.8)和不穩(wěn)定點(diǎn)(0,0.25,0.5,0.75)[19].為此本文采用Sobol序列初始化種群,Sobol屬于低差異序列,相比偽隨機(jī)序列,低差異序列在給定空間分布更均勻,其任意長度子序列都能均勻填充函數(shù)空間[20].Sobol序列周期短,采樣速度快,在處理高維問題上效率更高[21].于是根據(jù)Sobol序列初始化的種群如下:
xn=xmin+Kn·(xmax-xmin)
(12)
其中Kn∈[0,1]是Sobol序列產(chǎn)生的隨機(jī)數(shù).[xmin,xmax]是最優(yōu)解取值范圍.圖1所示為在[0,1]之間產(chǎn)生維度為9、種群數(shù)量為200的初始隨機(jī)序列與在[xmin,xmax]范圍內(nèi)產(chǎn)生的Sobol序列對比,可以看出Sobol序列分布更均勻.
圖1 兩種方式隨機(jī)產(chǎn)生(0,1)之間的隨機(jī)數(shù)Fig.1 Random numbers between randomly generated (0,1)
HHO的主要缺點(diǎn)之一是其不擅長于探索解空間,它依賴于能量因子控制算法探索和開發(fā).為了解決這一局限性,提高HHO探索能力,解決HHO過早收斂的問題,本文將HHO和具有良好探索能力的DE算法進(jìn)行雜交,以改進(jìn)HHO探索能力弱的缺點(diǎn).結(jié)合DE算法之后,為了更好平衡探索階段和開發(fā)階段,引入了一個新的控制參數(shù)λ,當(dāng)rand≤λ時,算法進(jìn)入探索階段,否則為開發(fā)階段.λ通過如下公式調(diào)整:
λ=1-(t/T)
(13)
其中T是最大迭代次數(shù),t是當(dāng)前種群迭代次.本文使用λ來控制算法的探索和開發(fā)能力,λ的值根據(jù)公式(14)調(diào)整,隨著時間的推移從1降到0.
優(yōu)化算法在進(jìn)入開發(fā)階段后對局部搜索能力要求更高,局部搜索能力差會導(dǎo)致算法陷入局部最優(yōu)解,原HHO算法的開發(fā)階段分為了4個策略,其中策略1、策略3依賴于獵物逃跑距離J從而陷入被動局面,為了能夠主動預(yù)測探索獵物下一步位置,本文使用二次插值方式在目標(biāo)位置進(jìn)行探索,從而主動出擊,以便跳出局部最優(yōu)解.二次插值法基本思想是在搜索區(qū)間中不斷使用二次多項(xiàng)式去近似目標(biāo)函數(shù),并且逐步用插值多項(xiàng)式的極小值點(diǎn)去逼近搜索問題的極小值點(diǎn).
首先在目前種群中選取最優(yōu)解A(a1,a2,…,aD),A具有最優(yōu)適應(yīng)度值(也就是Xrabbit),然后再隨機(jī)選取兩個個體B(b1,b2,…,bD)、C(c1,c2…,cD).其中D是要求解問題的維度.則X′(t+1)(x1,x2,…,xD)為這3個個體產(chǎn)生的下一代個體,公式如下:
(14)
其中f(A)、f(B)、f(C)分別表示A、B、C的適應(yīng)度值.新產(chǎn)生的個體X′(t+1)(x1,x2,…,xD)必然是二次曲線的極小值點(diǎn).策略1、策略3在改進(jìn)時也有不同,策略1中哈里斯鷹位置更新公式直接使用式(14),策略3哈里斯鷹需要俯沖攻擊獵物,更優(yōu)的位置有利于捕食,所以本文通過比較公式(6)和式(14)產(chǎn)生的下一代,從中選取最優(yōu)的個體.公式如下:
X(t+1)=min(f(X(t+1)),f(X′(t+1)))
(15)
在min()函數(shù)中X(t+1)由公式(6)得來,X′(t+1)由公式(14)計算得到.同時,改進(jìn)算法中包含了簡單的精英模式:每次循環(huán)得到的個體是父代和子代之間更優(yōu)的個體.
結(jié)合3.1-3.3節(jié),本文改進(jìn)的哈里斯鷹算法(IHHO)流程如下:
Step1.設(shè)置種群參數(shù)(種群數(shù)量N、最大迭代次數(shù)T,迭代計數(shù)器t),使用公式(12)初始化種群Xi,隨機(jī)初始化Xrabbit位置(最優(yōu)位置).計算初始種群個體適應(yīng)度f.
Step2.根據(jù)適應(yīng)度更新Xrabbit位置.
Step3.計算能量因子E、獵物逃跑距離J、逃跑概率r、控制參數(shù)λ,產(chǎn)生隨機(jī)數(shù)rand.
Step4.判斷;如果rand≤λ,算法進(jìn)入探索模式,根據(jù)公式(11)更新個體位置.如果rand>λ,進(jìn)入開發(fā)模式.再根據(jù)能量因子E和逃跑概率r判斷包圍策略,其中策略1使用公式(14)更新位置,策略3使用公式(15)更新.策略2、策略4分別使用公式(5)、公式(9)更新位置.
Step5.計算子代適應(yīng)度f′,如果f′ Step6.判斷是否達(dá)到終止條件,如果沒有則返回Step 2,否則終止迭代輸出最優(yōu)位置以及對應(yīng)的適應(yīng)度值. 為了驗(yàn)證IHHO的性能,本文使用了12個基準(zhǔn)函數(shù)進(jìn)行測試,這12個測試函數(shù)中分為3類:單峰函數(shù)(f1(x)~f5(x)):常用來檢測算法尋優(yōu)能力和收斂速度;常用來檢測算法尋優(yōu)能力和收斂速度;多峰函數(shù)(f6(x)~f9(x)):測試算法 全局搜索能力和避免算法陷入局部最優(yōu)解的能力;固定維度函數(shù)(f10(x)~f12(x)):測試算法探索和開發(fā)之間的平衡能力,如表1所示. 表1 測試函數(shù)集Table 1 Test function set 對比算法的參數(shù)設(shè)置:粒子群算法PSO、飛蛾撲火算法MFO[22]、灰狼優(yōu)化算法GWO[23]、哈里斯鷹算法HHO參數(shù)設(shè)置分別與相應(yīng)參考文獻(xiàn)相同;麻雀搜索算法SSA:發(fā)現(xiàn)者比例PD=0.2、偵察者比例SD=0.1、警戒閾值R2=0.8;差分進(jìn)化算法DE變異策略為:DE/rand/1,變異概率為0.9;鯨魚優(yōu)化算法WOA常數(shù)b設(shè)置為1. 本文選取平均值和標(biāo)準(zhǔn)差作為算法性能的度量標(biāo)準(zhǔn).評價標(biāo)準(zhǔn)中:平均值用于衡量算法的求解精度,標(biāo)準(zhǔn)差用于衡量算法魯棒性.實(shí)驗(yàn)環(huán)境:操作系統(tǒng)為Windows10、CUP:Intel Core i5-7500,編譯器Pycharm,各算法程序使用Python編寫. 本文首先用每個算法每個測試函數(shù)測試,其中多維度測試函數(shù)(f1(x)~f9(x))維度為30維,每個算法獨(dú)立運(yùn)行30次,以驗(yàn)證算法的穩(wěn)定性及收斂性,結(jié)果如表2所示. 表2 函數(shù)測試結(jié)果Table 2 Function test results 分析表2對12個測試函數(shù)的測試結(jié)果可知,IHHO在尋優(yōu)結(jié)果均值更接近于函數(shù)理論全局最優(yōu)值,同時多個測試函數(shù)重復(fù)獨(dú)立實(shí)驗(yàn)得到的標(biāo)準(zhǔn)差更小,說明算法魯棒性強(qiáng),尋優(yōu)精度相較于PSO、GWO、MFO、DE、SSA、WOA以及HHO好.在求解單峰函數(shù)時,只有函數(shù)f2效果略低于WOA.其余單峰測試函數(shù)效果均優(yōu)于其他算法.同時改進(jìn)算法在單峰測試函數(shù)與固定維度測試函數(shù)中的尋優(yōu)表現(xiàn)優(yōu)于HHO算法,多維測試函數(shù)尋優(yōu)結(jié)果中f9表現(xiàn)好于HHO算法,其余多峰測試函數(shù)尋優(yōu)結(jié)果相差不大.函數(shù)f5的全局最小值處于拋物型凹陷曲面,曲面最速下降方向與到達(dá)全局最優(yōu)值的方向近似垂直,PSO、GWO、SSA、DE等算法都很難近似全局最優(yōu)解,IHHO在此函數(shù)上求解能力最強(qiáng).對于所有測試函數(shù),IHHO在f1、f3~f5、f9、f11~f12上效果最好,在f6~f8上尋優(yōu)效果與HHO算法相似.表2 中同樣對8個算法的尋優(yōu)能力進(jìn)行排序,整體上看IHHO算法性能更佳. 除精度之外,本文還比較了不同算法的尋優(yōu)時間,用于評價算法時間效率,表3中給出了每個函數(shù)30次獨(dú)立實(shí)驗(yàn)尋優(yōu)時間.可以看出IHHO算法中總耗時略高于DE算法與HHO算法,比其他算法耗時低. 表3 優(yōu)化過程耗時Table 3 Optimization process time consuming 圖2中給出的收斂曲線進(jìn)一步比較了IHHO算法和7個對比算法的性能,圖中所示IHHO算法在500次迭代中均能收斂最優(yōu)解,同時除了f11、f12之外IHHO算法收斂速度均快于其他對比算法,在函數(shù)f11的收斂曲線中IHHO比GWO、HHO算法略慢,且所有算法在早期均能收斂于最優(yōu)解并趨于穩(wěn)定.由測試函數(shù)f12的結(jié)果可以看出,雖然IHHO算法前期收斂速度不及GWO、WOA、DE、MFO、PSO等算法,但是在迭代后期,IHHO算法能更接近全局最優(yōu)解.整體來看IHHO算法在f3、f5、f9、f12這幾個函數(shù)的收斂速度上相比于HHO算法提升較為明顯,其余函數(shù)上略有提升,但I(xiàn)HHO算法精度高于HHO算法. 圖2 IHHO與其余算法收斂曲線對比Fig.2 IHHO convergence curves are compared with the other algorithms 僅通過比較算法在不同函數(shù)上30次獨(dú)立實(shí)驗(yàn)的平均值與標(biāo)準(zhǔn)差并不能精確比較算法每次運(yùn)行結(jié)果,因?yàn)檫\(yùn)行結(jié)果具有一定偶然性,因此為了估計算法之間統(tǒng)計學(xué)上的顯著性差異,使用Wilcoxon非參數(shù)檢檢驗(yàn),該檢驗(yàn)不限定兩獨(dú)立樣本必須滿足正態(tài)性,而是基于樣本的秩次排列.為此在顯著性水平為0.05條件下對比IHHO算法和其他算法的顯著性差異,當(dāng)檢驗(yàn)p值小于0.05說明對比算法存在顯著性差異,否則的話說明對比算法尋優(yōu)結(jié)果整體相同.由表4中可以看出,IHHO與PSO、MFO、GWO、DE、SSA、WOA在11個測試函數(shù)上有顯著性差異.與HHO對比在8個測試函數(shù)上有顯著性差異.由以上分析結(jié)果可知,IHHO算法在測試函數(shù)上的尋優(yōu)效果好于其余7個對比算法. 表4 IHHO對比其余算法Wilcoxon 統(tǒng)計檢驗(yàn)結(jié)果Table 4 IHHO compared the results of the Wilcoxon statistical test for the remaining algorithms 為了探討本文不同改進(jìn)策略對算法的影響,于是使用了3個改進(jìn)策略IHHO1、IHHO2以及IHHO3和HHO、IHHO進(jìn)行比較,取8個測試函數(shù),實(shí)驗(yàn)獨(dú)立運(yùn)行30次,實(shí)驗(yàn)結(jié)果如表5所示.分析表5中結(jié)果,使用Sobol序列初始化種群(IHHO1)與結(jié)合DE算法改進(jìn)策略(IHHO2)對于固定維度函數(shù)的尋優(yōu)效果改善明顯,二次插值法(IHHO3)對多維度測試函數(shù)尋優(yōu)效果改善較為明顯.使用這3種策略混合提出的IHHO效果明顯好于HHO. 表5 不同策略結(jié)果對比 Table 5 Results results of different strategies 文獻(xiàn)[11]利用混沌精英等級制度提出改進(jìn)HHO算法CEHHO,文獻(xiàn)[12]利用黃金正弦優(yōu)化HHO提出了EGHHO,本次實(shí)驗(yàn)使用12個基準(zhǔn)函數(shù)與這兩種改進(jìn)算法進(jìn)行對比,重復(fù)獨(dú)立實(shí)驗(yàn)30次并比較結(jié)果,實(shí)驗(yàn)結(jié)果如表6,本文改進(jìn)算法在多峰測試函數(shù)上表現(xiàn)優(yōu)于另外兩種改進(jìn)算法,在單峰測試函數(shù)中與其余兩種改進(jìn)算法相差不大.總體來看IHHO有7個測試函數(shù)的尋優(yōu)效果好于EGHHO與CEHHO,圖3所示給出了6個函數(shù)的收斂曲線,從曲線看出IHHO在函數(shù)f10上收斂速度明顯快于EGHHO與CEHHO,其余函數(shù)則相差不大. 表6 與不同改進(jìn)算法對比Table 6 Contrison with different improved algorithms 圖3 不同改進(jìn)算法收斂曲線Fig.3 Convergent curves of different improved algorithms 以上實(shí)驗(yàn)結(jié)果分析驗(yàn)證了IHHO在低維搜索空間的有效性,展現(xiàn)出了較強(qiáng)的尋優(yōu)能力,但一般算法在高維搜索空間性能會急劇下降,為了驗(yàn)證IHHO在高維搜索空間的穩(wěn)定性,本文選取6個測試函數(shù)(f1~f3,f6~f8)分別設(shè)置3個維度為100維、500維以及1000維,算法獨(dú)立運(yùn)行30次驗(yàn)證算法在高維搜索空間有效性,實(shí)驗(yàn)結(jié)果如表7所示. 表7 高維空間優(yōu)化測試結(jié)果Table 7 High-dimensional spatial optimization of the test results FunSSA100D500D1000DWOA100D500D1000DHHO100D500D1000DIHHO100D500D1000Df1Mean2.13E+045.78E+041.53E+051.08E-681.32E-704.70E-693.33E-072.49E-063.56E-068.32E-824.14E-833.70E-77Std.ev2.77E+033.46E+035.90E+035.82E-686.48E-702.30E-686.32E-077.41E-065.72E-064.47E-812.21E-821.99E-76f2Mean1.12E+024.26E+029.64E+028.32E-499.53E-481.33E-482.43E-041.18E-031.70E-033.64E-411.20E-421.23E-42Std.ev7.63E+001.48E+011.66E+014.21E-484.36E-475.86E-484.44E-042.12E-032.56E-031.88E-403.00E-423.96E-42f3Mean1.97E+058.04E+053.17E+061.15E+063.05E+071.22E+081.91E+001.45E+021.14E+031.02E-512.76E-071.95E-06Std.ev8.53E+043.32E+051.29E+063.66E+051.49E+074.12E+073.89E+003.78E+022.36E+033.75E-511.48E-061.00E-05f6Mean8.64E+022.77E+037.02E+037.58E-150.00E+000.00E+005.68E-074.01E-062.54E-060.00E+000.00E+000.00E+00Std.ev3.97E+018.93E+011.74E+024.08E-140.00E+000.00E+001.30E-061.03E-055.20E-060.00E+000.00E+000.00E+00f7Mean1.36E+011.26E+011.30E+013.64E-153.05E-154.23E-155.54E-054.52E-056.15E-054.44E-164.44E-164.44E-16Std.ev4.48E-012.88E-011.58E-012.65E-152.04E-151.82E-155.54E-056.61E-056.90E-054.44E-164.93E-321.48E-31f8Mean1.73E+025.30E+021.36E+037.40E-180.00E+000.00E+003.12E-071.11E-068.53E-070.00E+000.00E+000.00E+00Std.ev2.04E+013.36E+017.19E+012.77E-170.00E+000.00E+003.12E-072.65E-062.99E-060.00E+000.00E+000.00E+00 通過表7結(jié)果可知,PSO、GWO與SSA雖然穩(wěn)定,但其在高維搜索空間中的尋優(yōu)效果較差,在1000維搜索空間中,MFO與DE算法在函數(shù)f2上出現(xiàn)無法優(yōu)化的現(xiàn)象,WOA在測試函數(shù)f2上出現(xiàn)了性能下降的現(xiàn)象,其余測試函數(shù)則保持了一定的穩(wěn)定性.HHO算法在高維搜索空間中尋優(yōu)效果也有所下降,整體來看,只有IHHO在高維空間中仍然能夠保持較好的優(yōu)化效果,體現(xiàn)了IHHO算法的穩(wěn)定性. 哈里斯鷹優(yōu)化算法近年來提出的一種新穎的優(yōu)化算法,本文針基本HHO算法存在收斂速度慢,尋優(yōu)精度低等問題提出了混合差分進(jìn)化以及二次插值法改進(jìn)的哈里斯鷹算法IHHO,改進(jìn)算法在初始化階段使用Sobol序列初始化種群分布,提高算法初始種群在搜索空間中的遍歷性,為提高全局搜索能力奠定基礎(chǔ);HHO算法探索階段全局搜索能力低,于是本文融合了DE算法的變異策略,以提高算法全局搜索能力;最后在開發(fā)階段,針對哈里斯鷹包圍不主動的缺點(diǎn),使用二次插值方式產(chǎn)生下一代,增加主動性,提高算法在局部搜索時的能力,同時加入簡單的精英策略以保證算法穩(wěn)定性.將IHHO與其余6中算法以及HHO算法進(jìn)行實(shí)驗(yàn)對比,結(jié)果表明IHHO在單峰測試函數(shù)、多峰測試函數(shù)、固定維度測試函數(shù)上均有較好的表現(xiàn),在收斂速度以及收斂精度上優(yōu)于對比算法,在尋優(yōu)耗時上,IHHO耗時同樣低于大部分對比算法.4 實(shí)驗(yàn)結(jié)果分析
4.1 算法參數(shù)與測試函數(shù)集
4.2 30次獨(dú)立實(shí)驗(yàn)結(jié)果分析
4.3 收斂曲線分析
4.4 不同改進(jìn)策略分析
4.5 與其他改進(jìn)對比
4.6 高維優(yōu)化實(shí)驗(yàn)分析
5 結(jié) 語