李彥蒼,李晶霞+,杜尊峰,朱海濤,韓沐軒
(1.河北工程大學 土木工程學院,河北 邯鄲 056038;2.天津大學 建筑工程學院,天津 300350)
斑點鬣狗優化算法(spotted hyena optimizer,SHO)是Dhiman等受斑點鬣狗捕獵啟發下提出的一種新智能優化算法。針對基本的斑點鬣狗算法易陷入局部最優、搜索能力和收斂速度慢等問題,相關學者們提出了眾多改進策略[1-10]。例如,文獻[11]針對斑點鬣狗優化算法易受隨機因子影響的問題,提出了一種結合模擬退火和斑點鬣狗算法結合的混合式算法,有效改善局部最優解和收斂速度慢的缺點。文獻[12]因斑點鬣狗算法具有魯棒性強和參數少的優點,所以將SHO應用于抽水蓄能電站優化調度研究,對抽水蓄能電站帶來更大的收益。文獻[13]提出用萊維飛行和單純形搜索法提高算法的平衡性和搜索能力,將改進后的算法應用于電力系統的圖像分割中,驗證了改進斑點鬣狗優化算法分割效果對比其它算法的優越性。
以上眾多學者對SHO算法的改進與應用為我們提供了一定的借鑒意義,但基本SHO在初始位置不均勻、局部易陷入最優等方面還有待提高。針對SHO算法存在的不足,本文提出了基于拉普拉斯交叉的改進斑點鬣狗優化算法(Laplace crossover spotted hyena optimizer,LPSHO)。在前期采用Fuch混沌策略對斑點鬣狗個體位置初始化,對鬣狗種群的多樣性進行改善;通過一種動態自適應的慣性權重,平衡了SHO的全局探索與局部開發能力;再引入拉普拉斯算子進行動態交叉操作,使得種群更符合迭代規律,前期種群精細搜索范圍,后期更好跳出局部極值;最后將逐維反向學習機制融入到小孔成像反向學習策略中,提高SHO收斂速度和尋優能力。通過LPSHO的仿真實驗及3個工程實例問題,驗證了LPSHO具有更優越的優化性能。
斑點鬣狗依靠視覺能迅速熟悉和確定獵物的位置并包圍它們。斑點鬣狗個體間依據社會地位和互相信任的協作能力,擁有更加敏捷高效的圍捕能力。此時最靠近目標獵物的鬣狗個體作為當前最優解,剩余的斑點鬣狗根據最優解更新調整自己的位置,然后得到全局最優解。數學模型如下
Dh=|B·Pp(X)-P(X)|
(1)
P(x+1)=Pp(x)-E·Dh
(2)
式中:Dh為獵物與斑點鬣狗之間的距離;x是迭代次數;P是當前斑點鬣狗的位置;Pp是當前獵物位置;B是搖擺因子;E是收斂因子,具體公式如下
B=2·rd1
(3)
E=2h·rd2-h
(4)
h=5-(iter*5/Xmax)
(5)
式中:rd1與rd2為[0,1]區間內的隨機數;h是控制因子;h從5到0線性遞減,取值范圍為[0,5];iter=1,2,…,Xmax,Xmax為最大迭代次數。
斑點鬣狗個體間根據可信賴的等級制度和精準判別獵物的能力進行分組狩獵,在此過程中種群定義當前最優搜索個體,剩余的斑點鬣狗搜索個體劃分為一個集群,集體向最優搜索個體集合,來更新位置。該行為具體定義如下
Dh=|B·Ph-PK|
(6)
PK=Ph-E·Dh
(7)
Ch=PK+PK+1+…+PK+N
(8)
式中:Ph定義了斑點鬣狗的第一個最佳位置;其它斑點鬣狗的位置為Pk;Ch是N個最優解的集群;N為斑點鬣狗數量,其中N的計算如下
N=countnos(Ph,Ph+1,Ph+2,…,(Ph+M))
(9)
式中:M為一個[0.5,1]的隨機向量,nos定義可行解的數量并計算所有候選解,該過程與搜索空間的最優解相似。
在狩獵的最后時期斑點鬣狗仍不斷更新位置并攻擊獵物,其中控制因子h在迭代過程中從5線性遞減到0,收斂因子E隨著h的變化也逐漸減小。當|E|<1時,斑點鬣狗攻擊獵物。該行為定義如下
P(x+1)=Ch/N
(10)
式中:P(x+1) 保持最優解,Ch保持最優解集群。
在全局探索過程中斑點鬣狗允許更新最佳搜索集群Ch中的個體位置并繼續攻擊獵物,當|E|>1時,鬣狗個體之間會互相分散,從遠離獵物的地方搜索、繼續尋找和攻擊更合適的獵物,斑點鬣狗的這種捕獵行為確保了算法的全局搜索能力。
SHO算法通常采用隨機生成的方式來初始化種群,使得種群初始分布不均勻、種群多樣性不穩定。而混沌優化作為一種隨機的、非收斂的、確定性的非線性系統常用于解決全局最優問題,而且混沌優化整體搜索速度高于遺傳算法[14]和模擬退火算法[15],因此已經廣泛應用于不同領域[16]。故本文選擇混沌映射來初始化種群。
Lyapunov指數(λ)是判斷混沌運動特性的一個重要指標。由表1中Lyapunov指數比較得出,Fuch混沌映射具有更強的混沌特性,能更好實現混沌尋優。無限折疊Fuch混沌映射與Logistic映射、Tent映射、Chebyshev映射相比在解空間內有更優良的初值敏感性和更均衡的遍歷性[17]。

表1 4種混沌映射的Lyapunov指數比較
斑點鬣狗種群的初始值對該算法的影響很大,初始值的大小決定算法的尋優速度和陷入局部最優的能力。采用無限折疊Fuch混沌映射使得優化結果不依賴于初始值,提高SHO全局尋優的效率。Fuch混沌映射數學模型為
(11)
其中,Px為Fuch映射的混沌變量,Px≠0;P∈Z+;x=1,2,…xmax;x為迭代次數;xmax為最大迭代次數。
斑點鬣狗個體在位置更新時只有當前最優個體和最佳搜索集群,導致基本SHO在全局搜索階段可能會產生鬣狗個體停滯在理論位置附近的情況,降低搜索精度。利用權重調整算法,對全局探索和局部開發能力有一定的平衡作用[18]。本文受文獻[19]中一種動態調整慣性權重的啟發,提出了一種動態自適應的慣性權重,式子如下
(12)
式中:x為當前迭代次數;Xmax為最大迭代次數;ωs代表迭代開始時的初始權值,當x=0時,ωs=0.9;ωe代表迭代終止時的權值;當x=Xmax時,ωe=0.4,l為控制因子。本文中l=0.6。改進的SHO如下
(13)
權重隨迭代次數增加的同時非線性遞減,所以SHO在迭代初期時權值較大,全局搜索能力較強;隨著迭代次數的增加,權值減小,算法的局部開發能力加強。此時SHO以最小權重采用螺旋式方式搜索最優解,具有更強的搜索能力。
由Kusum Deep和Manoj Thakur提出拉普拉斯交叉算子在尋找最優性和可靠性方面有極大的幫助[20]。標準的SHO算法由于缺乏一定的變異機制,導致鬣狗種群易陷入局部極值。然而鬣狗種群在包圍和狩獵前期一直在當前最優個體附近搜索,此時步長較小。當鬣狗種群以小步長模式搜索時,此時最優個體接近局部最優個體,易使SHO陷入局部最優值。為改善此類情況,采用一種動態拉普拉斯交叉策略對鬣狗種群位置進行更新,這種交叉變異操作更符合算法迭代規律。其分布密度函數如下
(14)
式中:a∈R是位置參數,b>0是尺度參數,其拉普拉斯分布函數如下
(15)
式中:x為當前迭代次數,Xmax為最大迭代次數,r為[0,1]區間內的隨機數,在包圍和狩獵后期令b=0.5進行拉普拉斯交叉,有更大可能性在鬣狗父代個體旁邊產生子代,斑點鬣狗個體在最優解附近準確搜索游走,會更快尋找到全局最優解。其數學模型描述如下
(16)
在包圍和狩獵階段引入拉普拉斯交叉算子,斑點鬣狗種群按照迭代規律進行自適應動態交叉操作,提高基本SHO算法的求解能力。
SHO算法僅在每次種群迭代時目標位置進行更新,選擇當前最優個體代替之前個體,而不考慮種群搜索范圍和收斂速度的情況。故SHO在求解高維復雜函數時,常受維度之間互相干擾,導致求解速度和尋優精度降低。針對這類問題,逐維反向機制融合小孔成像學習策略,對鬣狗個體的目標位置進行更新,在每個維度迭代時能同時搜索兩個值,進而提高SHO算法的全局尋優能力和收斂速度。根據文獻[21]可知,反向學習與群智能算法相結合可以避免算法過早收斂,可以增強算法的尋優能力。受小孔成像反向原理的啟發用于學習策略,其基本原理如圖1所示。

圖1 小孔成像反向學習的原理圖
由小孔成像原理可以得出
(17)
令調節因子n=h/h′,得到X′best的表達式
(18)
由式(19)可以得出,與一般的反向學習策略(n=1時)不同,逐維小孔成像反向學習策略可以通過調整小孔屏和接受屏之間的距離來改變n值的大小,從而跳出局部極值得到最優解。
當n=1時,可得
X′best=(aj+bj)-Xbest
(19)
斑點鬣狗優化算法每迭代一次,式(18)對鬣狗個體進行位置篩選,某一維度的值經過反向學習以后與其它維度的值組成新的解,對各個適應度值進行比較和篩選,從而確定最優解。
輸入:斑點鬣狗種群Pi(i=1,2,…,n)
輸出:Ph
(1)初始化參數。采用Fuch混沌映射生成鬣狗位置信息Px,更新h、B、E和N
(2)計算個體適應度值
(3)Ph記錄當前最好個體位置,Ch定義為最佳搜索集群
(4)Whilex (5)FOR i=1 TO N do (6)根據式(12)計算慣性權重ω的值 (7)根據式(13)更新調整鬣狗種群的位置 (9)采用拉普拉斯交叉策略更新Pi (10)利用式(18)執行逐維小孔成像反向學習策略 (11)end if (12)計算個體適應度值,選擇適應度最好的斑點鬣狗個體作為最優解,更新Ph (13)x=x+1 (14)end while (15)返回Ph (16)結束程序 為了全面驗證LPSHO的尋優性能效果,我們選取了9個不同特點的標準測試函數進行對比測試,主要分為3類:其中,f1~f4為單峰基準測試函數,主要用于測試算法的局部開發能力;f5~f7為多峰測試函數、f8和f9為固定維度多峰測試函數,該類測試函數有較多局部極值點,群智能算法尋優過程中易于陷入局部最優,主要用于測試算法的跳出局部極值能力和全局探索能力。其具體信息見表2。 表2 測試函數 為了驗證改進斑點鬣狗算法的優化效果,選擇改進斑點鬣狗優化算法(LPSHO)與基本斑點鬣狗算法(SHO)、灰狼算法(GWO)[22]、海鷗算法(SOA)[23]對9個典型的基準測試函數進行30次對比實驗,可以客觀地反映算法改進的有效性。為保證公平、降低結果的偶然性,各算法基本參數與原文獻保持一致。 由于算法維度也會影響算法的尋優性能,為更加全面的驗證算法的有效性以及低維高維的求解能力,設置7個單峰和多峰測試函數 (n=30,50,100維) 和2個固定維度測試函數(n=2維)進行對比仿真。記錄50次實驗中各測試函數的最優值、平均值和標準差,算法的運行結果見表3、表4、表5,對其最好的結果加粗顯示。 表3 不同算法對3個多峰測試函數的尋優性能比較 表4 不同算法對4個單峰測試函數的尋優性能比較 表5 不同算法對2個固定維度測試函數的尋優性能比較 從表4可看出,對于單峰測試函數f1~f4,LPSHO的尋優性能不僅比標準的SHO更好,在對比其它智能優化算法也能體現出很好的尋優性能。雖然其它4種算法均能收斂到最優值0,但LPSHO對比中顯示出它更強的尋優能力和穩定性。在高峰函數的優化問題上,除了GWO外其它3種算法都能收斂到理論最優值0,但LPSHO對目標函數的求解精度和成功率比其它算法的測試結果好。從表3看出,對于測試函數f5和f7,LPSHO、SHO、SOA在n=30,50,100維時的收斂情況都較好,但對比測試函數f6時,LPSHO標準差更小,也看出比其它算法更強的尋優能力與穩定性,這說明LPSHO在求解高維復雜函數的有效性。 從表5數據得出,LPSHO對于固定維度測試函數的結果相對穩定。盡管這4種算法在迭代過程中都收斂到理論最優值,但只有LPSHO的平均值更小,其求解結果明顯優于其它3種算法,具有更強的穩定性。綜上所述,LPSHO是一種穩定性更好、尋優能力更強、收斂精度更好的算法。 為了更直觀體現LPSHO的優越性,確保4種算法的迭代次數相同、維度為30(固定維度測值函數維度為2)的情況下得到如圖2所示不同基準函數的平均收斂曲線。通過與其它算法的結果對比,驗證LPSHO不論是在求解單峰還是多峰函數上,LPSHO表現出更優越的求解性能,具有更好的全局收斂性。由函數f1、f2、f3、f8和f9收斂曲線可以看出,算法迭代初期的適應度值更優于其它算法,說明用混沌映射對種群初始化,提高了斑點鬣狗種群的質量?;維HO算法收斂曲線存在著局部停滯的情況,而LPSHO算法采用慣性權重調節全局搜索和局部開發能力,相比其它算法有足夠的全局搜索能力。最后采用拉普拉斯交叉和反向學習策略,避免算法早熟收斂,使LPSHO算法具有更快的收斂速度和更好的求解精度。 圖2 標準測試函數的尋優收斂曲線 為進一步驗證LPSHO算法在實際工程應用優化問題中的有效性和可行性,選用焊接梁設計問題和15桿桁架、52桿桁架對工程算例進行分析,并與其它3種算法的結果對比分析。 該問題的主要目標是使焊接梁的制造成本最小化,如圖3所示。優化約束包括梁中的剪切應力(τ)和彎曲應力(σ)、桿上的屈曲荷載(Pc)、梁的端部撓度(δ)。該問題有4個優化變量為焊縫厚度(h)、鋼筋連接長度(l)、鋼筋高度(t)、鋼筋的厚度(b),如下所示。 圖3 焊接梁模型 其數學模型表示如下: Subjectto (20) (21) 將基本SHO、GWO、SOA和LPSHO算法應用于焊接梁設計求解模型中,表6中給出了通過這些算法獲得的最優結果,對比情況如下。 表6 焊接梁設計的比較結果 結果表明,LPSHO收斂到了最佳設計值,從表7中統計的結果進行比較,可以看出LPSHO在最優值和中位數方面表現得更好,LPSHO對焊接梁設計問題的優化效果更好并且需要更少的分析來找到最佳設計。由此可證,本文LPSHO在實際工程應用中是有效且可行的,與其它求解優化問題的方法相比,LPSHO算法的成功率較高。 表7 焊接梁設計問題統計比較 4.2.1 算例1 15桿平面桁架的結構模型如圖4所示,各桿件的應力允許值為±120 MPa;位移約束為16個;壓力約束共15個;應力約束值范圍[115.37,120];材料密度為7800 kg/m3;彈性模量為200 GPa;桁架截面面積的設計變量取值為:[113.2,143.2,145.9,174.9,185.9,235.9,265.9,297.1,308.6,334.3,338.2,497.8,507.6,736.7,791.2,1063.7](mm2),該桁架結構的荷載工況見表8。 圖4 15桿桁架結構 表8 荷載工況/kN LPSHO、標準SHO、GWO和SOA對15桿經典桁架模型優化對比的收斂曲線如圖5所示。由表9的優化結果可得出改進后的算法LPSHO在求解精度和優化程度上表現更好,同時達到了減輕桁架質量的目的。 圖5 15桿桁架收斂曲線 表9 15桿桁架結構優化結果對比 4.2.2 算例2 52桿空間桁架有21個節點和52根桿,其中8個節點固定,節點1-13處各有集中質量50 kg,如圖6所示。全結構材料密度為7800 kg/m2;彈性模量為210 GPa。節點1-13處有50 kg質量荷載。 圖6 52桿空間桁架結構 該桁架結構的桿件分類見表10,設計變量共13個,其中有5個形狀變量和8個面積變量。每組各桿件橫截面積均相等,范圍為1~10 cm2,此外,該算例的頻率范圍為:f1≤15.916 Hz、f2≥28.648 Hz。 表10 52桿空間桁架桿件分類 由表11、表12、表13的優化結果可得出改進后的算法LPSHO在求解精度和優化程度上比基本SHO算法表現更好,同時達到了減輕桁架質量的目的。由圖7的4種算法迭代曲線對比看出,改進后的算法LPSHO的收斂速度和尋優能力更強。再次驗證了LPSHO具有更好的性能,并達到了優化模型過程中節省時間和材料的雙重目的。 圖7 52桿桁架收斂曲線 表11 52桿桁架結構優化結果對比 表12 形狀優化結果對比 表13 優化結果的各階頻率 針對基本斑點鬣狗優化算法求解精度低、復雜優化效果不良、易陷入局部最優的缺點,提出了一種改進的斑點鬣狗優化算法,通過仿真實驗得到以下結論。 (1)在前期引入Fuch混沌映射來初始化種群,避免了算法初始狀態時的取值范圍趨于平衡態;在全局搜索階段,利用一種基于混沌自適應的慣性權重,平衡了LPSHO尋優過程中的全局探索和局部開發能力;再引入基于拉普拉斯交叉策略的改進斑點鬣狗算法,一定程度上改進了基本斑點鬣狗算法易陷入局部最優的缺點,使得種群更符合迭代規律;最后利用逐維小孔成像反向學習機制,進一步提高了算法的收斂速度和求解能力。LPSHO在迭代前期種群精細搜索范圍,后期更好跳出局部極值,從而達到了改進的目的。 (2)通過對9個基準測試函數仿真實驗,驗證了改進的斑點鬣狗優化算法在求解精度和求解速度方面有更大的優勢,也驗證了改進斑點鬣狗優化算法是可行且有效的。通過對機械設計優化和桁架結構優化問題的驗證,從而證實該算法在求解組合優化上的有效性和正確性,為解決復雜的工程約束問題提供思路。3 實驗仿真與分析
3.1 基本測試函數

3.2 仿真實驗環境和參數設置
3.3 實驗結果及分析




4 工程算例與結果分析
4.1 焊接梁設計







4.2 桁架優化










5 結束語