王永貴 趙煬 鄒赫宇 胡鵬程
摘 要:針對(duì)蛇算法尋優(yōu)階段交互性差,初始種群隨機(jī)程度嚴(yán)重,易陷入局部最優(yōu)解等問題,提出了一種多策略融合的蛇優(yōu)化算法(multi-strategy snake optimizer,MSSO)。首先,利用正交矩陣對(duì)蛇種群進(jìn)行初始化,使個(gè)體分布更加均勻;其次,設(shè)計(jì)探索開發(fā)階段切換的自適應(yīng)方程,用以替換原有的食物量與溫度閾值,使算法進(jìn)行自適應(yīng)階段切換;最后,使用聯(lián)合反向選擇策略替換算法原有的新個(gè)體孵化方法,提高算法收斂精度的同時(shí)加快算法收斂效率。選取10個(gè)基準(zhǔn)測(cè)試函數(shù)從不同角度對(duì)MSSO算法進(jìn)行實(shí)驗(yàn),測(cè)試算法性能,分析各策略的有效性,并使用Wilcoxon秩和檢驗(yàn)來證明算法顯著性,通過兩個(gè)工程應(yīng)用仿真實(shí)驗(yàn)來驗(yàn)證MSSO的實(shí)用性。各實(shí)驗(yàn)結(jié)果表明MSSO較比較算法綜合表現(xiàn)更優(yōu),證明MSSO算法改進(jìn)在尋優(yōu)能力、魯棒性、實(shí)用性等方面均有所提升。
關(guān)鍵詞:蛇優(yōu)化算法;正交矩陣初始化;自適應(yīng)階段切換;聯(lián)合反向選擇;元啟發(fā)算法;工程應(yīng)用問題
中圖分類號(hào):TP301.6?? 文獻(xiàn)標(biāo)志碼:A?? 文章編號(hào):1001-3695(2024)01-020-0134-08
doi:10.19734/j.issn.1001-3695.2023.05.0197
Multi-strategy fusion snake optimizer and its application
Abstract:This paper proposed a multi-strategy snake optimizer to address the problems of poor interactivity in the optimization-seeking phase of the snake algorithm,serious randomness of the initial population,and the tendency to fall into local optimal solutions.Firstly,it used an orthogonal matrix to initialize the snake population to make the individuals more uniformly distributed;secondly,it designed an adaptive equation to explore the development phase switching to replace the original food quantity and temperature threshold to make the algorithm perform adaptive phase switching;finally,it used a joint reverse selection strategy to replace the original new individual hatching method of the algorithm to improve the convergence accuracy of the algorithm while accelerating the convergence efficiency of the algorithm.It selected ten benchmark test functions to experiment the MSSO algorithm from different perspectives to test the algorithm performance,analyzed the effectiveness of each strategy,and used the Wilcoxon rank sum test to prove the algorithm significance,and verified the practicality of MSSO through two engineering application simulation experiments.The results of each experiment show that MSSO performs better than the comparative algorithm comprehensively,which proves that the MSSO algorithm improvement has improved in the aspects of the search ability,robustness and practicality.
Key words:snake optimizer;orthogonal matrix initialization;adaptive phase switching;joint opposition selection;metaheuristic algorithms;engineering application problems
0 引言
幾乎所有科學(xué)領(lǐng)域和工程應(yīng)用中存在的實(shí)際問題都可以很容易地轉(zhuǎn)換為優(yōu)化問題,而求解這些問題具有許多困難和挑戰(zhàn),例如非線性、多目標(biāo)、不連續(xù)性、高維性、不確定性和非凸區(qū)域,這使得專家學(xué)者們?cè)谑褂脗鹘y(tǒng)優(yōu)化方法求解這些大規(guī)模復(fù)雜優(yōu)化問題時(shí)會(huì)出現(xiàn)效率低下、解集不滿足實(shí)際需求等缺陷。因此運(yùn)行效率高、魯棒性強(qiáng)、泛用性廣的優(yōu)化算法求解工程領(lǐng)域大型復(fù)雜問題,不僅在理論方面有深刻意義,同時(shí)在應(yīng)用領(lǐng)域也具有廣泛前景?,F(xiàn)如今的算法優(yōu)化技術(shù)分為兩類:數(shù)學(xué)規(guī)劃和元啟發(fā)式。數(shù)學(xué)規(guī)劃的范疇包括整數(shù)規(guī)劃、數(shù)學(xué)規(guī)劃等傳統(tǒng)數(shù)學(xué)方法,因其復(fù)雜性難以解決上述提到的應(yīng)用領(lǐng)域問題。而元啟發(fā)式算法(metaheuristics algorithms,MA)因其具有易于實(shí)現(xiàn)、靈活性、避免陷入局部最優(yōu)陷阱等優(yōu)點(diǎn)[1~4],能夠找到最優(yōu)或近似最優(yōu)的解決方案。
蛇優(yōu)化算法(snake optimization,SO)是Hashim等人[5]提出的一種新型元啟發(fā)群算法,其迭代過程中的尋優(yōu)方法更豐富,調(diào)節(jié)參數(shù)較少,但SO算法存在前期收斂速度慢、階段交互性差、初始種群隨機(jī)程度嚴(yán)重、易收斂于局部最優(yōu)解等問題。
針對(duì)SO算法存在的問題,本文對(duì)前人提出的優(yōu)化算法改進(jìn)方案進(jìn)行研究。在文獻(xiàn)[6~8]中的改進(jìn)算法使用Lévy飛行策略增加粒子在迭代后期中的多樣性,以改善算法的尋優(yōu)能力。引入Logistic混沌搜索優(yōu)化GWO算法局部開發(fā)階段[9],避免陷入局部最優(yōu)導(dǎo)致尋優(yōu)停滯。對(duì)改進(jìn)算法使用動(dòng)態(tài)反向策略解決算法過早收斂和收斂到局部最優(yōu)的問題[10,11]。此文獻(xiàn)[12]提出了一種基于正交矩陣種群初始化方法,增強(qiáng)初始化時(shí)期種群間個(gè)體多樣性。李克文等人[13]提出的樽海鞘群優(yōu)化算法使用Piecewise映射方法優(yōu)化初始化種群個(gè)體分布,降低種群個(gè)體間的密度,加強(qiáng)種群的空間分布能力;李雅梅等人[14]提出了一種多策略改進(jìn)的天鷹算法,對(duì)天鷹的捕食方法進(jìn)行優(yōu)化,從整體上提升了算法性能。
為了進(jìn)一步改善SO算法的階段聯(lián)動(dòng)性與種群豐富度等問題,本文通過優(yōu)化初始化策略、自適應(yīng)階段切換、種群更新策略三方面來實(shí)現(xiàn)?;谏鲜龇治?,提出一種多策略混合的蛇優(yōu)化算法(MSSO),本文主要貢獻(xiàn)如下:
a)引入正交矩陣對(duì)種群進(jìn)行初始化,改進(jìn)種群個(gè)體初始化階段空間分布結(jié)構(gòu),提升算法的收斂速度。
b)根據(jù)算法在尋優(yōu)過程中的適應(yīng)度動(dòng)態(tài)選擇勘探階段和開發(fā)階段,有效減少不必要的時(shí)間開銷,加快收斂速度。
c)使用聯(lián)合反向選擇策略替代原算法的種群更新方法,新的更新策略保證開發(fā)階段的種群多樣性,增強(qiáng)算法在探索階段的個(gè)體豐富度,提高尋優(yōu)能力。
d)在十個(gè)測(cè)試函數(shù)上與其他優(yōu)化算法進(jìn)行比較,同時(shí)進(jìn)行多維度的實(shí)驗(yàn)分析,并在兩個(gè)工程領(lǐng)域的問題上進(jìn)行仿真實(shí)驗(yàn),以驗(yàn)證MSSO的工程實(shí)用性。
1 蛇優(yōu)化(SO)算法
SO算法通過模擬蛇類的戰(zhàn)斗模式和交配模式實(shí)現(xiàn)優(yōu)化算法的全局尋優(yōu),在戰(zhàn)斗模式中,每個(gè)雄性都會(huì)為了得到最好的雌性而戰(zhàn)斗,每個(gè)雌性都會(huì)試圖選擇最好的雄性。在交配模式中,交配發(fā)生在與食物量的可用性系數(shù)下的雌雄之間。如果交配過程發(fā)生在搜索階段內(nèi),雌蛇就有可能產(chǎn)卵,孵化出新后代。
1.1 初始化
SO算法首先生成一個(gè)均勻分布的隨機(jī)群體,并假設(shè)蛇群中雌性與雄性占比均為50%,群體分為雄性種群和雌性種群。
1.2 算法階段劃分
SO算法尋優(yōu)過程分為探索階段和開發(fā)階段。其中探索階段模擬蛇群在無食物情況下蛇類的行為模式,開發(fā)階段模擬食物存在時(shí)蛇類的行為模式,蛇類行為模式通過實(shí)物總量Q和溫度Temp控制。
1.2.1 探索階段
如果Q Xi,m(t+1)=Xrand,m(t)±X X=c2×Am×((Xmax-Xmin)×rand+Xmin)(1) 其中:Xi,m表示第i只雄性位置;Xrand,m表示隨機(jī)雄性的位置;Am表示雄性蛇個(gè)體的捕食能力;rand∈(0,1),c2=0.05。 1.2.2 開發(fā)階段 在Q>ThresholdQ時(shí),如果Temp>ThresholdTemp(0.6),蛇只會(huì)向食物移動(dòng),蛇個(gè)體的移動(dòng)公式如下: Xi,j(t+1)=Xfood±X X=c3×Temp×rand×(Xfood-Xi,j(t))(2) 其中:Xi,j是個(gè)體i(雄性或雌性)的位置;Xfood是最佳個(gè)體的位置;c3是常數(shù)且等于2。 如果Temp Xi,m(t+1)=Xi,m(t)+X X=c3×FM×rand×(Q×Xbest,f-Xi,m(t))(3) 其中:Xi,m為雄性個(gè)體i的位置;Xbest,f為雌性群體中最佳位置;FM為雄性戰(zhàn)斗力。 在Temp Xi,m(t+1)=Xi,m(t)+X X=c3×Mm×rand×(Q×Xi,f(t)-Xi,m(t))(4) 其中:Xi,f為個(gè)體i在雌性群體中的位置,Xi,m為個(gè)體i在雄性群體中的位置,Mm為雄性的交配能力。 2 改進(jìn)蛇算法 2.1 初始化種群的改進(jìn) 為增加算法初始化種群的多樣性,盡可能降低初始化種群的整體與局部密度,應(yīng)均勻地產(chǎn)生初始解使算法能夠均勻地探索整個(gè)搜索空間。正交陣列能夠提供均勻分布的位置組合,利用正交表的這一性質(zhì)構(gòu)造初始解,正交矩陣表示為L(zhǎng)Q(NM),矩陣的大小為Q×M,其中包含M個(gè)因子,每個(gè)因子分為N個(gè)等級(jí)。本文利用上述論文提出的方法構(gòu)造正交矩陣LQ(NM),其中N是奇整數(shù),Q=NI,I的方式選擇滿足等式: 正交表A按照以下步驟進(jìn)行構(gòu)造。 a)計(jì)算A的基礎(chǔ)元素。 b)計(jì)算A的非基本元素。 αj +(s-1)(N-1)+t=rem (αst+αj,N)s=1 to (j-1) and t=1 to (N-1)(8) αj=[α1j,α2j,α3j,…,αQj]T(9) c)刪除A的最后(M-D)列,使矩陣控制在D列。 d)隨機(jī)刪除A的(N-Q)行,使矩陣控制在Q行。 通過計(jì)算得到矩陣,使用如下公式生成初始解: xij=αij(xU-xLmax(A)-min(A))+xL 在求解空間的維度為2,lb=[1.0,1.0],ub=[7.0,9.0],因子為5時(shí)正交初始化得到的25個(gè)個(gè)體如圖1所示。 2.2 食物量與溫度機(jī)制的分析與改進(jìn) 根據(jù)第1章可知,SO算法分為探索階段和開發(fā)階段,圖2(a)表示處于探索階段蛇個(gè)體在一次迭代中的二維空間運(yùn)動(dòng)軌跡。圖2(b)~(d)表示蛇個(gè)體處在開發(fā)階段時(shí)對(duì)應(yīng)式(2)~(4)的二維空間運(yùn)動(dòng)軌跡。由圖2(a)可知,蛇個(gè)體更新后位置與更新前位置基本保持一致,說明SO算法處于探索階段時(shí),蛇個(gè)體在自身小范圍內(nèi)進(jìn)行活動(dòng);由圖2(b)可知,蛇個(gè)體為了覓食會(huì)向食物靠攏,此時(shí)食物代表最佳個(gè)體的位置;由圖2(c)可知,在進(jìn)入戰(zhàn)斗模式時(shí),為了獲取充足的食物,蛇個(gè)體會(huì)尋找最強(qiáng)大的異性;由圖2(d)可知,在進(jìn)入交配模式時(shí),蛇個(gè)體會(huì)改變自己的運(yùn)動(dòng)規(guī)律并靠近異性。由此可知,蛇算法在模型底層構(gòu)成上,探索階段用于全局尋優(yōu),開發(fā)階段用于局部尋優(yōu)與跳出局部最優(yōu)解,算法的設(shè)計(jì)架構(gòu)已經(jīng)比較完備,但由于食物量與溫度不超過閾值不能進(jìn)行階段轉(zhuǎn)換,使得階段間的交互過于生硬。 食物量Q是平衡SO探索階段和開發(fā)階段比重的關(guān)鍵參數(shù),SO中對(duì)Q描述是由最小值非線性遞減至最大值,當(dāng)降至某個(gè)閾值時(shí)SO從探索階段切換至開發(fā)階段。這種切換方式可能導(dǎo)致處在探索階段的時(shí)間過長(zhǎng),留給開發(fā)階段的時(shí)間不足,并且對(duì)不同的問題,控制階段切換的溫度閾值可能也不相同。為了使Q的設(shè)計(jì)更加靈活,減少SO處在探索階段的比重,采用適應(yīng)度公式取代原算法對(duì)食物量簡(jiǎn)單的賦值,保證食物量的動(dòng)態(tài)變化,從而達(dá)到平衡算法階段比重的效果,表達(dá)式如下所示。 溫度Temp的作用是根據(jù)當(dāng)前迭代次數(shù)切換蛇個(gè)體的位置更新方式,并在一定程度上重啟種群,確保算法不出現(xiàn)過早收斂的情況。根據(jù)下述公式優(yōu)化Temp的變化策略,優(yōu)化算法重啟種群的條件。 其中:Temp表示種群中每個(gè)個(gè)體在每個(gè)維度上的平均方差;k是常數(shù)閾值;n0是群體中的個(gè)體數(shù)。式(12)確定個(gè)體的聚集程度,計(jì)算每個(gè)個(gè)體的結(jié)果以確定方差是否小于k。如果滿足條件表示大多數(shù)粒子搜索結(jié)果相似,說明迭代的結(jié)果是收斂的,SO可直接切換至開發(fā)階段加快收斂速度,當(dāng)上式不成立時(shí)再切換至搜索階段。 2.3 聯(lián)合反向選擇 聯(lián)合反向選擇結(jié)合選擇性主導(dǎo)對(duì)立和動(dòng)態(tài)對(duì)立的優(yōu)點(diǎn)[15],增強(qiáng)算法的探索能力和開發(fā)能力,同時(shí)增強(qiáng)蛇個(gè)體分布的全局性,提高算法尋優(yōu)能力。 2.3.1 選擇性主導(dǎo)對(duì)立 SLO(selective leading opposition)[16]是從選擇性對(duì)立(selective opposition)發(fā)展而來的,它計(jì)算當(dāng)前解和最優(yōu)解之間每個(gè)維度上的差異距離,并將其與閾值進(jìn)行比較,大于閾值的維度是遠(yuǎn)距離維度(df),小于閾值的維度是近距離維度(dc)。同時(shí),還需要計(jì)算當(dāng)前解與最優(yōu)解之間的斯皮爾曼相關(guān)系數(shù)值,對(duì)相關(guān)性小于0的位置執(zhí)行SLO策略。SLO策略計(jì)算公式如下: 2.3.2 動(dòng)態(tài)對(duì)立 動(dòng)態(tài)對(duì)立(dynamic opposite,DO)結(jié)合了準(zhǔn)對(duì)立[17]和準(zhǔn)反射[18]的思想。它的優(yōu)點(diǎn)是可以動(dòng)態(tài)搜索空間,在搜索空間中不對(duì)稱移動(dòng),有助于算法從局部最優(yōu)解逃逸,計(jì)算公式如下: 2.4 改進(jìn)算法的邏輯流程 a)初始化,最大迭代數(shù)T、種群個(gè)體N、目標(biāo)函數(shù)維數(shù)D、邊界lb,ub。 b)利用式(10)進(jìn)行種群正交初始化,生成N條蛇個(gè)體X=[Xi1,Xi2,…,XiD],XiD表示第i條蛇在D維度上的位置;劃分雌雄群體,計(jì)算個(gè)體適應(yīng)度以及雌雄種群最佳適應(yīng)度。 c)通過選擇性主導(dǎo)對(duì)立策略更新所有個(gè)體的位置;若式(11)不成立,進(jìn)入探索模式,否則進(jìn)入開發(fā)模式。 d)在開發(fā)模式下,且Temp>k,根據(jù)式(2)更新蛇個(gè)體的位置;若Temp e)蛇個(gè)體處在戰(zhàn)斗模式時(shí)通過式(3)更新位置,處在交配模式時(shí)通過式(4)更新位置。 f)當(dāng)蛇個(gè)體進(jìn)行交配且產(chǎn)生后代后,所有蛇個(gè)體通過式(19)進(jìn)行重啟。 g)更新個(gè)體位置,計(jì)算所有個(gè)體當(dāng)前適應(yīng)度值,更新當(dāng)前雌雄群體及全局最優(yōu)適應(yīng)度,若達(dá)到最大迭代次數(shù)T,轉(zhuǎn)至步驟h),否則轉(zhuǎn)至步驟c)。 h)輸出最優(yōu)適應(yīng)度和位置Xbest。 2.5 全局收斂性先驗(yàn)分析 由于上述開發(fā)階段產(chǎn)生的新解體現(xiàn)算法搜索能力,本文對(duì)此進(jìn)行收斂性分析。為簡(jiǎn)化計(jì)算,本文探究戰(zhàn)斗模式或交配模式下的收斂性,個(gè)體戰(zhàn)斗系數(shù)和交配系數(shù)分別為F和M,最優(yōu)解為常數(shù)g,異性適應(yīng)度為d,隨機(jī)數(shù)r∈(0,1)。 證明 由式(3)(4)推出個(gè)體的遞推公式為 上式為二階常系數(shù)非齊次差分方程,其特征方程為 λ2+r(F+M)λ+rF+rM-1=0(21) Δ=r2(F+M)2-4(rF+rM-1)≥0,根據(jù)初始化x0計(jì)算x1和x2: x1=(1-rF-rM)x0+rFg+rMd x2=(1-rF-rM)2x0+(2-rF-rM)(rFg+rMd) 由于自變量t=1,2,3,…,當(dāng)t→∞時(shí),xt收斂的充要條件為|λ1,2|<1,解的收斂區(qū)間為0 綜上,MSSO算法的收斂域?yàn)?2 2.6 改進(jìn)算法的時(shí)間復(fù)雜度分析 時(shí)間復(fù)雜度是衡量算法的主要關(guān)鍵屬性值之一,能夠體現(xiàn)算法的運(yùn)行效率,具有關(guān)鍵意義。設(shè)置蛇種群大小為N,維度空間D,目標(biāo)計(jì)算量為T(D)。 初始化階段,使用正交初始化方法初始化種群,初始化參數(shù)時(shí)間設(shè)為t0,生成正交表時(shí)間為t1,查找雌雄最佳適應(yīng)度耗時(shí)為tm、tf,計(jì)算適應(yīng)度的時(shí)間為f(D),則初始化階段時(shí)間復(fù)雜度表示為:T1=O(t0+t1+N(tm+tf+f(D)))=O(Nf(D))。 探索階段通過式(1)更新個(gè)體位置的時(shí)間為t3,Q計(jì)算時(shí)間為t4,則此階段計(jì)算為T2=O(NDt3+t4)=O(ND)。 開發(fā)階段通過式(2)~(4)更新個(gè)體位置所用時(shí)間為t5,Temp計(jì)算時(shí)間為t6,動(dòng)態(tài)對(duì)立式(19)計(jì)算時(shí)間為tDO則此次階段計(jì)算為T3=O(ND(t5+tDO)+t6)=O(ND)。 更新適應(yīng)度為f(D),更新最優(yōu)位置和邊界處理的時(shí)間為t7,選擇性主導(dǎo)對(duì)立計(jì)算時(shí)間為tSLO,則最后階段的計(jì)算為T4=O(t7+N(DtSLO+f(D)))=O(N(D+f(D)))。 3 實(shí)驗(yàn)與實(shí)驗(yàn)分析 3.1 基準(zhǔn)測(cè)試函數(shù)及實(shí)驗(yàn)環(huán)境 為了驗(yàn)證MSSO算法優(yōu)化策略選取的正確性,選取10個(gè)經(jīng)典的單峰、多峰基準(zhǔn)測(cè)試函數(shù)評(píng)估MSSO的性能,實(shí)驗(yàn)在Windows 10、Intel Core i5-7300HQ環(huán)境下進(jìn)行,編程語言選用MATLAB2020b,測(cè)試函數(shù)及相關(guān)屬性如表1所示。 3.2 MSSO算法與其他智能算法的對(duì)比 為了檢測(cè)MSSO的性能,將其與蛇算法SO[5]、鯨魚算法WOA[19]、正余弦算法SCA[20]、灰狼算法GWO[21]、線性遞減慣性權(quán)重粒子群算法LDWPSO[22]、改進(jìn)粒子群算法MPSO[23]進(jìn)行比較,設(shè)置迭代次數(shù)T為500次,種群大小N為50,對(duì)上述所選算法獨(dú)立執(zhí)行30次獲得的平均值(mean)和標(biāo)準(zhǔn)差(STD)進(jìn)行對(duì)比,所選算法的參數(shù)配置如表2所示,運(yùn)行結(jié)果及綜合排名如表3所示,各算法最佳適應(yīng)度曲線如圖3所示。 3.3 全局收斂性后驗(yàn)分析 為了更直接觀察各算法在測(cè)試函數(shù)上的表現(xiàn),借助測(cè)試函數(shù)的迭代曲線驗(yàn)證MSSO的收斂性。圖3展現(xiàn)了各算法在F1~F10上的收斂曲線圖,MSSO在十個(gè)測(cè)試函數(shù)上的初始最佳適應(yīng)度分別為8.525E03,3.987E03,1.567E03,3.999E01,8.728E01,4.441E-15,7.911E01,-2.424E00,-5.806E-01,4.853E-02,SO相應(yīng)的值分別為9.179E03,4.407E01,3.727E03,6.201E01,1.239E02,1.984E01,1.213E02,-2.381E00,-5.897E-01,5.589E-02,與原算法相比,正交矩陣策略幫助改進(jìn)算法在初始化階段找到適應(yīng)度更好的位置,更好的適應(yīng)度有利于算法更早切換至開發(fā)階段,且MSSO在求解單峰、多峰測(cè)試函數(shù)時(shí),收斂速度均優(yōu)于對(duì)比優(yōu)化算法,證明正交初始化有助于算法切換至開發(fā)階段。在F1~F4上,算法直接切換至開發(fā)階段,避免了強(qiáng)制從探索階段切換至開發(fā)階段,較SO的效率提升了近一倍;且在F5、F6、F7上,各算法基本都收斂于理論最優(yōu)解,但MSSO的迭代次數(shù)明顯少于各對(duì)比優(yōu)化算法,尤其在F6上,正交初始化策略幫助MSSO在首輪迭代中就命中了局布最優(yōu)解,證明了策略的有效性;對(duì)于F7、F8、F9,MSSO均保持了最快的收斂速度于最優(yōu)的收斂精度;由后驗(yàn)分析得出,MSSO算法的策略選擇有效提升了算法性能,證明了其收斂性。 3.4 Wilcoxon 秩和檢驗(yàn) 因上述實(shí)驗(yàn)僅對(duì)平均值與標(biāo)準(zhǔn)差進(jìn)行評(píng)價(jià),采用Wilcoxon秩和檢驗(yàn)對(duì)各算法獨(dú)立運(yùn)行30次的實(shí)驗(yàn)結(jié)果進(jìn)行統(tǒng)計(jì)檢驗(yàn)[24],一步驗(yàn)證改進(jìn)算法有效性。設(shè)置顯著性水平為5%,當(dāng) p值小于5%,拒絕原假設(shè),說明兩對(duì)比算法的結(jié)果存在明顯差異,否則說明兩種算法性能相差不大。在上述實(shí)驗(yàn)的基礎(chǔ)上添加阿奎拉鷹優(yōu)化算法AO與麻雀算法SSA[25]作為實(shí)驗(yàn)對(duì)比算法,表4給出了各算法與MSSO進(jìn)行Wilcoxon秩和檢驗(yàn) 的p值,因算法與自身對(duì)比無意義,故MSSO的p值不再列出,其中p>0.05使用粗體表示,說明MSSO與對(duì)比算法在測(cè)試函數(shù)上的結(jié)果基本一致,NaN 表示實(shí)驗(yàn)樣本數(shù)據(jù)相同,算法性能相當(dāng)。 由表4可知,大部分情況下p值均小于0.05,證明MSSO算法優(yōu)越性在Wilcoxon 秩和檢驗(yàn)上是顯著的,可以認(rèn)為MSSO相較于對(duì)比算法尋優(yōu)能力更優(yōu)。結(jié)合上述對(duì)MSSO的最佳適應(yīng)度、全局收斂性先驗(yàn)分析、全局收斂性后驗(yàn)分析及Wilcoxon 秩和檢驗(yàn)實(shí)驗(yàn)可得出結(jié)論:使用正交矩陣初始化策略改進(jìn)了原算法的初始化方法,使用聯(lián)合反向?qū)α⒉呗愿倪M(jìn)新個(gè)體孵化方法,以及優(yōu)化開發(fā)探索階段的觸發(fā)條件,多策略融合優(yōu)化SO得到的MSSO算法表現(xiàn)出更優(yōu)秀的收斂性和魯棒性。 3.5 改進(jìn)策略的有效性分析 對(duì)三種改進(jìn)策略分別進(jìn)行有效性分析,利用表1中的測(cè)試函數(shù)對(duì)標(biāo)準(zhǔn)SO,僅采用正交矩陣初始化的SO(OSO),僅采用適應(yīng)度模型機(jī)制的SO(DQSO),僅采用聯(lián)合反向選擇的SO(JOSO)和MSSO算法分別在10、50和100維的條件下進(jìn)行測(cè)試??紤]到部分函數(shù)的維度固定,從表1的測(cè)試函數(shù)中選取3個(gè)單峰和2個(gè)多峰函數(shù)進(jìn)行測(cè)試。保持對(duì)比算法的參數(shù)一致,獨(dú)立運(yùn)行30次并計(jì)算最優(yōu)值(best)、均值(Mean)、標(biāo)準(zhǔn)差(Std),實(shí)驗(yàn)結(jié)果如表5所示。 由表5可知, MSSO在10、50、100維度下求解F1、F5、F6時(shí)均能找到理論最優(yōu)值,OSO、DQSO、JOSO的收斂精度優(yōu)于 SO,但無法收斂于理論最優(yōu)解;對(duì)于函數(shù)F4,DQSO和MSSO的尋優(yōu)精度在10和50維度時(shí)優(yōu)于其他對(duì)比算法且基本處于同一數(shù)量級(jí),說明動(dòng)態(tài)參數(shù)Q和Temp改變了探索階段和開發(fā)階段的比重,提高了算法的收斂效率,而在100維度下,MSSO的尋優(yōu)能力明顯優(yōu)于DQSO,說明聯(lián)合反向選擇可以增加算法在求解高維問題時(shí)的能力;其次從標(biāo)準(zhǔn)差看,對(duì)5個(gè)測(cè)試函數(shù)求解時(shí),MSSO、OSO、DQSO、JOSO的標(biāo)準(zhǔn)差均小于SO,其中MSSO在求解F1、F5時(shí)標(biāo)準(zhǔn)差均為0,說明各改進(jìn)策略都在一定程度上提高了魯棒性,同時(shí)也說明單一策略對(duì)算法的提升有限,融合三種策略對(duì)算法多方面進(jìn)行優(yōu)化,使算法在各維度下各測(cè)試函數(shù)的表現(xiàn)顯著提升。 3.6 MSSO種群多樣性分析 為驗(yàn)證改進(jìn)策略在迭代過程中對(duì)種群多樣性的影響,利用測(cè)試函數(shù)F1進(jìn)行下述實(shí)驗(yàn),設(shè)問題維度D=3,初始種群數(shù)N=50。圖(a)~(c)中左側(cè)三維點(diǎn)圖為MSSO個(gè)體分布示意圖,右側(cè)三維點(diǎn)圖為SO個(gè)體分布示意圖,圖(a)~(c)分別代表種群初始化、迭代10次和30次時(shí)個(gè)體分布情況。 如圖4(a)所示,MSSO利用正交矩陣初始化策略得到的個(gè)體分布更加均勻,而SO算法采取隨機(jī)分布初始減少種群多樣性,且每次初始化的差異過大,魯棒性差;圖4中,MSSO個(gè)體以較快的速度向最優(yōu)值附近聚集,圖4(b)中,MSSO的個(gè)體經(jīng)多次迭代后仍能保持較好的均勻性,SO的部分個(gè)體過于分散,距離最優(yōu)位置較遠(yuǎn);由圖4(c)可知,MSSO迭代30次后種群個(gè)體均已分布在最優(yōu)解的位置,SO種群還未完成收斂,改進(jìn)策略對(duì)初始種群多樣性與算法收斂速度優(yōu)化效果顯著。 3.7 超參數(shù)k的影響 上述中提及的Temp自適應(yīng)方程針利用k控制開發(fā)階段蛇個(gè)體位置更新方法的選取,從而達(dá)到更好的尋優(yōu)效果。為了研究不同k選值對(duì)尋優(yōu)結(jié)果的影響,選擇基準(zhǔn)測(cè)試函數(shù)Lévy作為測(cè)試函數(shù),圖5(a)為L(zhǎng)évy函數(shù)二維圖像,Lévy函數(shù)的理論最優(yōu)解為0且存在多個(gè)局部最優(yōu)解,因此選用Lévy函數(shù)測(cè)試k值對(duì)MSSO算法的影響會(huì)使實(shí)驗(yàn)結(jié)果更加明顯。為了方便觀察,對(duì)超參數(shù)k進(jìn)行對(duì)數(shù)運(yùn)算,lg? k在[-10,10]上選取合適的值,每次增長(zhǎng)為5。 由圖5(b)所示,MSSO在Lévy函數(shù)上進(jìn)行測(cè)試時(shí),lg k取-5時(shí)適應(yīng)度最高,過大或過小的k值都會(huì)對(duì)算法的尋優(yōu)能力造成負(fù)影響。 4 實(shí)際工程設(shè)計(jì)問題 為了驗(yàn)證MSSO在解決實(shí)際應(yīng)用的優(yōu)越性,選取電力系統(tǒng)的變壓器故障診斷與土木工程領(lǐng)域內(nèi)三連桿機(jī)構(gòu)設(shè)計(jì)問題進(jìn)行仿真實(shí)驗(yàn),選擇多種優(yōu)化算法分別進(jìn)行求解。 4.1 變壓器故障診斷 電力變壓器在電力系統(tǒng)中處于核心樞紐地位,擔(dān)負(fù)著電壓轉(zhuǎn)換、電能分配等重要功能,變壓器故障會(huì)給人們的生命安全和供電網(wǎng)絡(luò)帶來巨大危害。當(dāng)變壓器發(fā)生故障時(shí),常采用油中溶解氣體法(dissolved gas analysis,DGA),根據(jù)各種特征氣體濃度的變化,對(duì)變壓器故障進(jìn)行診斷辨識(shí)。 實(shí)驗(yàn)選取H2、CH4、C2H2、C2H4、C2H6、CO、CO2七種變壓器油中溶解氣體成分作為判斷變壓器故障類型指標(biāo),變壓器故障類型根據(jù)氣體成分以及含量分為正常運(yùn)行、高溫過熱、中低溫過熱、高能放電、低能放電、局部放電六類。 4.1.1 模型選擇 相較于傳統(tǒng)極限學(xué)習(xí)機(jī)(extreme learning machine,ELM)[26],多分類核極限學(xué)習(xí)機(jī)(multi-label kernel extreme learning machine,ML-KELM)[27],ML-KELM具有ELM的最小平方最優(yōu)解,具備調(diào)整參數(shù)少,運(yùn)行穩(wěn)定,收斂速度快,泛化性能好等優(yōu)勢(shì)。分別使用PSO、GWO、SO、MSSO尋優(yōu)選取ML-KELM模型核核函數(shù)g和正則化參數(shù)C,選用變壓器油中溶解氣體相關(guān)數(shù)據(jù)進(jìn)行變壓器故障診斷應(yīng)用對(duì)比實(shí)驗(yàn),通過故障診斷分類的精確度反映MSSO解決實(shí)際應(yīng)用的可靠性。 4.1.2 數(shù)據(jù)選擇 實(shí)驗(yàn)數(shù)據(jù)來源于遼寧省某電力公司的600組歷史監(jiān)測(cè)數(shù)據(jù),從中隨機(jī)選取500組樣本數(shù)據(jù),按照4:1比例劃分訓(xùn)練數(shù)據(jù)集與測(cè)試數(shù)據(jù)集。各數(shù)據(jù)集具體分布情況如表6所示。 利用MSSO對(duì)ML-KELM超參數(shù)進(jìn)行優(yōu)化,使用表6中數(shù)據(jù)訓(xùn)練ML-KELM,根據(jù)測(cè)試數(shù)據(jù)的預(yù)測(cè)結(jié)果計(jì)算Kappa系數(shù),Kappa系數(shù)計(jì)算公式作為適應(yīng)度函數(shù),從而獲得最佳參數(shù)下的ML-KELM模型,并預(yù)測(cè)變壓器故障類型。 4.1.3 變壓器實(shí)驗(yàn)總結(jié)與分析 使用智能算法PSO、GWO、SO、MSSO分別對(duì)ML-KELM超參數(shù)進(jìn)行優(yōu)化,用以訓(xùn)練ML-KELM模型,為了直觀地評(píng)估MSSO-ML-KELM故障診斷后的結(jié)果,選取macro F1、micro F1、Kappa系數(shù)作為診斷結(jié)果的評(píng)價(jià)指標(biāo),表7為分別在不平衡數(shù)據(jù)集與平衡數(shù)據(jù)集上的評(píng)估結(jié)果。 如表7所示,MSSO-ML-KELM較SO-ML-KELM、GWO-ML-KELM、PSO-ML-KELM的變壓器故障診斷評(píng)價(jià)指標(biāo)均有提升,Kappa系數(shù)分別提升0.055 2,0.069 9,0.111 9,micro F1分別提升5.63%,7.15%,11.95%,macro F1分別提升6.49%,8.02%,11.89%,證明MSSO算法對(duì)ML-KELM參數(shù)優(yōu)化并用于診斷變壓器故障類型使效果最為顯著,展現(xiàn)MSSO算法優(yōu)秀的尋優(yōu)能力,論證了MSSO的工程實(shí)用性。 4.2 三連桿機(jī)構(gòu)設(shè)計(jì)問題 三連桿機(jī)構(gòu)設(shè)計(jì)是土木工程領(lǐng)域的經(jīng)典問題,此問題試圖通過操縱兩個(gè)參數(shù),以在設(shè)計(jì)桁架時(shí)實(shí)現(xiàn)整體重量最小,其數(shù)學(xué)形式如下所示。 分別選擇MSSO、SO、GWO、SCA、WOA、MPSO進(jìn)行設(shè)計(jì)問題的尋優(yōu),并在表8中列出相關(guān)參數(shù)x1、x2、f以及各算法的排名,通過結(jié)果展示MSSO在解決實(shí)際問題方面的能力。 表8所示,MSSO給出的三連桿參數(shù)x1為0.822 601 0,x2為0.184 939 1,與其他算法對(duì)比,MSSO的f值最小,排名第一。結(jié)合上述兩組仿真實(shí)驗(yàn)結(jié)果充分表明MSSO可以有效解決復(fù)雜的工程問題,體現(xiàn)了MSSO在應(yīng)用領(lǐng)域內(nèi)的優(yōu)越性能。 5 結(jié)束語 針對(duì)傳統(tǒng)蛇優(yōu)化算法存在的探索開發(fā)階段交互差、種群豐富度低、收斂速度慢等問題,本文提出的多策略融合蛇優(yōu)化算法融合正交矩陣初始化、自適應(yīng)參數(shù)、聯(lián)合反向選擇三種策略對(duì)蛇算法進(jìn)行優(yōu)化,優(yōu)化后算法具有更高的求解精度與更快的收斂速度。通過10個(gè)測(cè)試函數(shù)的測(cè)試結(jié)果,驗(yàn)證了MSSO算法優(yōu)化策略的有效性,以及算法的優(yōu)越性,且在諸多算法中精準(zhǔn)度排名第一。兩個(gè)實(shí)際工程設(shè)計(jì)問題的仿真實(shí)驗(yàn)表明,利用MSSO優(yōu)化后的ML-KELM模型對(duì)變壓器樣本數(shù)據(jù)進(jìn)行故障診斷時(shí),評(píng)價(jià)指標(biāo)均有提升,利用MSSO求解三連桿機(jī)構(gòu)設(shè)計(jì)問題時(shí)較其他算法精度更高,論證了本文提出的MSSO的工程實(shí)用性,今后有望將本文算法運(yùn)用到其他領(lǐng)域的問題中。 參考文獻(xiàn): [1]Yang Xinshe.Engineering optimization:an introduction with metaheuristic applications[M].Hoboken:Wiley,2010. [2]Abualigah L,Gandomi A H,Elaziz M A,et al.Nature-inspired optimization algorithms for text document clustering—a comprehensive ana-lysis[J].Algorithms,2020,13(12):345-376. [3]Hussien A G,Hassanien A E,Houssein E H,et al.New binary whale optimization algorithm for discrete optimization problems[J].Engineering Optimization,2020,52(6):945-959. [4]Sayyadi R,Awasthi A.An integrated approach based on system dynamics and ANP for evaluating sustainable transportation policies[J].International Journal of Systems Science:Operations & Logistics,2020,7(2):182-191. [5]Hashim F A,Hussien A G.Snake optimizer:a novel meta-heuristic optimization algorithm[J].Knowledge-Based Systems,2022,242:108320. [6]Wang Shuang,Jia Heming,Abualigah L,et al.An improved hybrid aquila optimizer and Harris hawks algorithm for solving industrial engineering optimization problems[J].Processes,2021,9(9):1551-1578. [7]Tang Wenlong,Cha Hao,Wei Min,et al.Estimation of surface-based duct parameters from automatic identification system using the Lévy flight quantum-behaved particle swarm optimization algorithm[J].Journal of Electromagnetic Waves and Applications,2019,33(7):827-37. [8]Ewees A A,Mostafa R R,Ghoniem R M,et al.Improved seagull optimization algorithm using Lévy flight and mutation operator for feature selection[J].Neural Computing and Applications,2022,34(10):7437-7472. [9]Hu Jiao,Heidari A A,Zhang Lejun,et al.Chaotic diffusion-limited aggregation enhanced grey wolf optimizer:insights,analysis,binarization,and feature selection[J].International Journal of Intelligent Systems,2022,37(8):4864-4927. [10]Sahoo S K,Saha A K,Nama S,et al.An improved moth flame optimization algorithm based on modified dynamic opposite learning strategy[J].Artificial Intelligence Review,2023,56(4):2811-2869. [11]Wen Changsheng,Jia Heming,Wu Di,et al.Modified remora optimization algorithm with multistrategies for global optimization problem[J].Mathematics,2022,10(19):3604-3639. [12]Leung Y W,Wang Yuping.An orthogonal genetic algorithm with quantization for global numerical optimization[J].IEEE Trans on Evolutionary computation,2001,5(1):41-53. [13]李克文,耿文亮,張敏等.融合信息反饋共享與蜉蝣搜索機(jī)制的樽海鞘群算法[J].計(jì)算機(jī)應(yīng)用研究,2023,40(3):696-703,724.(Li Kewen,Geng Wenliang,Zhang Min,et al.Salp swarm algorithm combining information feedback sharing and mayfly search mechanism[J].Application Research of Computers,2023,40(3):696-703,724.) [14]李雅梅,孟嗣博,陳雪蓮.多策略改進(jìn)的天鷹優(yōu)化算法及其應(yīng)用[J].計(jì)算機(jī)應(yīng)用研究,2023,40(5):1352-1359.(Li Yamei,Meng Sibo,Chen Xuelian.Multi-strategy improved aquila optimizer and its application[J].Application Research of Computers,2023,40(5):1352-1359.) [15]Niu Yanbiao,Yan Xuefeng,Wang Yongzhen,et al.Dynamic opposite learning enhanced artificial ecosystem optimizer for IIR system identification[J].The Journal of Supercomputing,2022,78(11):13040-13085. [16]Chen Haochang,Wei Duqu.Chaotic time series prediction using echo state network based on selective opposition grey wolf optimizer[J].Nonlinear Dynamics,2021,104(4):3925-3935. [17]Sharma S,Bhattacharjee S,Bhattacharya A.Operation cost minimization of a micro-grid using quasi-oppositional swine influenza model based optimization with quarantine[J].Ain Shams Engineering Journal,2018,9(1):45-63. [18]Saha A,Chakraborty A K,Das P.Quasi-reflection-based symbiotic organisms search algorithm for solving static optimal power flow problem[J].Scientia Iranica,2019,26(3):1664-1689. [19]Luo Jun,Shi Baoyu.A hybrid whale optimization algorithm based on modified differential evolution for global optimization problems[J].Applied Intelligence,2019,49(5):1982-2000. [20]Gupta S,Deep K.A novel hybrid sine cosine algorithm for global optimization and its application to train multilayer perceptrons[J].Applied Intelligence,2020,50(4):993-1026. [21]Kamboj V K,Bath S K,Dhillon J S.Solution of non-convex economic load dispatch problem using grey wolf optimizer[J].Neuraluting & Applications,2016,27(5):1301-1316. [22]Murinto M,Rosyda M.Logarithm decreasing inertia weight particle swarm optimization algorithms for convolutional neural network[J].JUITA:Jurnal Informatika,2022,10(1):99-105. [23]Yang Xueming,Yuan Jinsha,Yuan Jiangye,et al.A modified particle swarm optimizer with dynamic adaptation[J].Applied Mathematics and Computation,2007,189(2):1205-1213. [24]劉成漢,何慶.改進(jìn)交叉算子的自適應(yīng)人工蜂群黏菌算法[J].小型微型計(jì)算機(jī)系統(tǒng),2023,44(2):263-268.(Liu Chenghan,He Qing.Adaptive artificial bee colony slime mold algorithm with improved crossover operator[J].Journal of Chinese Computer Systems,2023,44(2):263-268.) [25]Xue Jiankai,Shen Bo.A novel swarm intelligence optimization approach:sparrow search algorithm[J].Systems Science & Control Engineering,2020,8(1):22-34. [26]于德亮,劉冬,孫浩,等.基于PSO-ELM模型的潛油柱塞泵沖次優(yōu)化方法[J].信息與控制,2019,48(4):459-68.(Yu Deliang,Liu Dong,Sun Hao,et al.Submersible oil plunger pump impulse optimization study based on PSO-ELM model[J].Information and Control,2019,48(4):459-68.) [27]Luo Fangfang,Guo Wenzhong,Yu Yuanlong,et al.A multi-label classification algorithm based on kernel extreme learning machine[J].Neurocomputing,2017,260(1):313-320.