李彥蒼, 李一凡, 王釗, 王育德
(河北工程大學(xué)土木工程學(xué)院, 邯鄲 056038)
隨著大數(shù)據(jù)時(shí)代的快速發(fā)展,傳統(tǒng)的優(yōu)化算法已經(jīng)不能很好地解決信號(hào)處理、人工智能等領(lǐng)域存在的復(fù)雜優(yōu)化問題。對(duì)此研究人員基于群智能原理[1],提出了群智能優(yōu)化算法(swarm intelligence algorithm,SIA)[2],又稱仿生智能優(yōu)化算法,通常是受自然界中昆蟲、鳥獸等生物的群體行為或活動(dòng)規(guī)律啟發(fā)所提出的,即在一定范圍的區(qū)域空間內(nèi)尋找最優(yōu)解,具有較好的靈敏性、魯棒性等特點(diǎn)。
經(jīng)典群智能優(yōu)化算法有模擬螞蟻覓食行為的蟻群算法[3]、模擬鳥群覓食的信息傳遞行為的粒子群算法[4]。近年,國(guó)內(nèi)外學(xué)者提出了一些新型群智能優(yōu)化算法,如麻雀搜索算法[5]、灰狼算法[6]、鯨魚算法等。
改進(jìn)群智能優(yōu)化算法具有很多優(yōu)勢(shì):①可以進(jìn)一步增強(qiáng)搜索效率和準(zhǔn)確性,提高算法的全局搜索能力,更好地應(yīng)對(duì)復(fù)雜問題的優(yōu)化需求;②算法中引入新的策略、機(jī)制或調(diào)整參數(shù),增強(qiáng)算法的魯棒性,提高算法對(duì)干擾的適應(yīng)能力,從而提高算法的穩(wěn)定性和可靠性;③通過優(yōu)化群體的更新策略、調(diào)整算法的參數(shù)設(shè)置等方式,加快算法的收斂速度,提高算法的效率,使得算法在實(shí)際問題中更具實(shí)用性;④通過增加新的操作符、改進(jìn)搜索策略等方式,可以拓展算法的適用范圍,使得算法適用于更加復(fù)雜和多樣化的優(yōu)化問題。
石雅凱等[7]針對(duì)灰狼算法(grey wolf optimizer, GWO)易陷入局部最優(yōu)、后期收斂速度慢等問題,通過引入改進(jìn)Tent混沌映射反向?qū)W習(xí)策略和非線性收斂因子,并加入差分進(jìn)化的變異、交叉、選擇操作,提出一種改進(jìn)的差分灰狼優(yōu)化算法(improved differential evolution grey wolf optimizer, IDE-GWO)。 并應(yīng)用于優(yōu)化自動(dòng)導(dǎo)航小車( automated guided vehicle, AGV) 的比例積分微分( proportion integration differentiation,PID) 控制參數(shù)。與其他幾種算法對(duì)比,結(jié)果表明:改進(jìn)后算法中 PID 參數(shù)的控制效果明顯優(yōu)于其他智能優(yōu)化算法,能夠有效地提升 AGV 軌跡跟蹤性能,使得 AGV 實(shí)際軌跡能較好擬合目標(biāo)軌跡。
張濤等[8]針對(duì)無人機(jī)在復(fù)雜海域地貌中的三維路徑規(guī)劃,在人工魚群算法的基礎(chǔ)上提出了一種改進(jìn)的適應(yīng)性人工魚群算法。首先,利用數(shù)學(xué)模型建立地貌的三維模型,選取路徑最短為性能評(píng)價(jià)函數(shù),保證路徑規(guī)劃的合理性;其次,提出自適應(yīng)步長(zhǎng)和自適應(yīng)視野范圍來更新個(gè)體的位置,解決了人工魚群算法前期收斂速度慢的問題;并在追尾行為引入魚群中的社會(huì)經(jīng)驗(yàn)位置進(jìn)行更新以避免算法陷入局部最優(yōu)。將改進(jìn)后的人工魚群算法在3個(gè)復(fù)雜程度不同的地圖中與傳統(tǒng)的人工魚群算法與粒子群算法對(duì)比,結(jié)果表明,在三維路徑規(guī)劃問題求解中具有更好的收斂速度和精度。
鵜鶘優(yōu)化算法(pelican optimization algorithm,POA) 是由Trojovsk等[9]提出的一種新的隨機(jī)自然優(yōu)化算法,模擬了鵜鶘在狩獵過程中的自然行為,并使用了23種不同單峰態(tài)和多模態(tài)類型目標(biāo)函數(shù)對(duì)鵜鶘優(yōu)化算法的性能進(jìn)行評(píng)價(jià);結(jié)果表示,鵜鶘優(yōu)化算法在求解單峰函數(shù)時(shí)具有很強(qiáng)的向最優(yōu)解收斂的能力,求解多峰函數(shù)時(shí)具有很強(qiáng)的搜索能力,能夠在搜索空間中找到主要的最優(yōu)區(qū)域;此外,采用四個(gè)工程設(shè)計(jì)問題來測(cè)試鵜鶘優(yōu)化算法在優(yōu)化現(xiàn)實(shí)應(yīng)用中的有效性;鵜鶘優(yōu)化算法與8個(gè)著名元啟發(fā)式算法進(jìn)行了比較用于評(píng)估其優(yōu)化能力,仿真結(jié)果及其分析表明該算法具有一定的優(yōu)勢(shì)。但由于原始鵜鶘算法初始化的隨機(jī)性,降低了種群多樣性,使其收斂效率較低,易陷入局部最優(yōu)解;故融合三維螺旋運(yùn)動(dòng)和混合反向?qū)W習(xí)策略,擴(kuò)大在探索階段局部解的搜索范圍,增強(qiáng)全局探測(cè)能力;對(duì)其初始化階段、探索階段進(jìn)行改進(jìn),使其性能更加優(yōu)越。
POA是一種基于種群的算法,其中鵜鶘是該種群的個(gè)體。在基于群體的仿生智能算法中,每個(gè)群體成員意味著一個(gè)候選解決方案。每個(gè)群體成員根據(jù)優(yōu)化問題變量在搜索空間中的位置,提出優(yōu)化問題變量的值。最初,根據(jù)問題的下限和上限隨機(jī)初始化種群成員,表達(dá)式為
xi,j=lj+rand(uj-lj),
i=1,2,…,N;j=1,2,…,m
(1)
式(1)中:xi,j為第i個(gè)候選解的第j個(gè)變量的值;N為種群成員的數(shù)量;m為問題變量的維數(shù);rand為區(qū)間[0,1]中的隨機(jī)數(shù);lj、uj為第j個(gè)問題變量的上、下界。
本文中使用種群矩陣來表示鵜鶘算法中的種群成員。該矩陣中的每一行表示一個(gè)候選解決方案,矩陣中的列表示問題變量每一維度上的建議值。具體表達(dá)式為
(2)
式(2)中:X為鵜鶘的種群矩陣;Xi為第i只鵜鶘。
在POA算法中,每個(gè)種群成員都是鵜鶘,這是給定問題的候選解決方案。因此,可以基于每個(gè)候選解來評(píng)估給定問題的目標(biāo)函數(shù)。本文中使用矢量確定目標(biāo)函數(shù)的值稱為目標(biāo)函數(shù)向量。表達(dá)式為
(3)
式(3)中:F為目標(biāo)函數(shù)向量;Fi為第i個(gè)候選解的目標(biāo)函數(shù)值。
本文所提出的POA模擬鵜鶘在攻擊和捕獵時(shí)的行為和策略,以更新候選解決方案。這種狩獵策略分兩個(gè)階段進(jìn)行模擬:①向獵物移動(dòng)(探索階段);②水面上飛翔(開發(fā)階段)。
1.1.1 向獵物移動(dòng)(探索階段)
在第一階段,鵜鶘確定獵物的位置,然后朝著這個(gè)確定的區(qū)域移動(dòng)。對(duì)鵜鶘的策略進(jìn)行建模實(shí)現(xiàn)搜索空間的掃描和POA在發(fā)現(xiàn)搜索空間的不同區(qū)域方面的探索能力。
POA中重要一點(diǎn)是,獵物的位置是在搜索空間中隨機(jī)生成的。這增加了POA在精確搜索問題解決空間中的探索能力。上述概念和鵜鶘向獵物地點(diǎn)移動(dòng)的策略進(jìn)行了數(shù)學(xué)模擬,表達(dá)式為
(4)
在POA中,如果鵜鶘的目標(biāo)函數(shù)的值在該位置得到改善,則該位置被接受。在這種被稱為有效更新的更新類型中,防止算法移動(dòng)到非最佳區(qū)域。使用公式對(duì)該過程進(jìn)行建模為
(5)
1.1.2 水面上飛翔(開發(fā)階段)
在第二階段,鵜鶘到達(dá)水面后,它們?cè)谒嫔险归_翅膀,將魚向上移動(dòng),然后將獵物收集在喉嚨袋中。這一策略導(dǎo)致受攻擊區(qū)域的更多魚類被鵜鶘捕獲。對(duì)鵜鶘的這種行為進(jìn)行建??梢允筆OA收斂到狩獵區(qū)域中更好的點(diǎn)。這個(gè)過程增加了POA的本地搜索能力和開發(fā)能力。
從數(shù)學(xué)角度來看,算法必須檢查鵜鶘現(xiàn)位置附近的點(diǎn),以收斂到更好的解。鵜鶘在狩獵期間的這種行為在公式中進(jìn)行了數(shù)學(xué)模擬,即
(6)
在初始迭代中,該系數(shù)的值較大,因此,考慮每個(gè)構(gòu)件周圍的較大區(qū)域。隨著算法的重復(fù),R(1-t/T)系數(shù)減小,每個(gè)成員的鄰域半徑也隨之減小。這使我們能夠以更小、更精確的步長(zhǎng)掃描種群中每個(gè)成員周圍的區(qū)域,以便POA能夠根據(jù)概念收斂到更接近全局(甚至完全全局)最優(yōu)的解決方案。
在這個(gè)階段,有效的更新策略也被用來接受或拒絕新的鵜鶘位置,這一策略建模為
(7)
由無免費(fèi)午餐理論可知,在有限搜索區(qū)域內(nèi),任意一種算法,如果在一些訓(xùn)練樣本上表現(xiàn)好,那么必然在另一些訓(xùn)練樣本上表現(xiàn)不好。因此沒有算法可以在求解所有優(yōu)化問題時(shí)都優(yōu)于其他算法的。下列為POA算法尋優(yōu)時(shí)存在的問題。
(1) 鵜鶘優(yōu)化算法在全局探索過程中的搜索路徑參數(shù)是隨機(jī)數(shù)產(chǎn)生的,從而不能獲得很好全局搜索能力,導(dǎo)致該算法在尋優(yōu)過程中收斂精度低,易重復(fù)陷入局部最優(yōu)解中。
(2)由于鵜鶘優(yōu)化算法中探索階段和開發(fā)階段之間的轉(zhuǎn)變是隨機(jī)的,在算法迭代后期只進(jìn)行局部搜索,難以平衡算法的全局探索和局部開發(fā)能力。進(jìn)而因?yàn)榉N群在探索階段不能聚集到最優(yōu)解附近,造成算法早熟[10]。
在第一和第二階段更新了所有種群成員位置之后,基于種群的新狀態(tài)和目標(biāo)函數(shù)的值,更新最佳搜索代理位置。轉(zhuǎn)入下一次迭代,并重復(fù)式(4)~式(7)提出的POA算法更新步驟,直到達(dá)到最大迭代次數(shù)。最后,在算法迭代期間獲得的最佳候選解作為給定問題的準(zhǔn)最優(yōu)解。
POA算法偽代碼如下。
開始POA.1.輸入優(yōu)化問題信息.2.確定POA種群大小(N)和迭代次數(shù)(T).3.鵜鶘位置初始化和目標(biāo)函數(shù)計(jì)算.4.For t=1:T.5. 隨機(jī)產(chǎn)生獵物位置.6. F=1:N.7. 階段1:向獵物移動(dòng)(探索階段).8. For j=1:m.9. 使用等式(4)計(jì)算個(gè)體j維新位置.10. End.11. 使用等式(5)更新第i個(gè)種群個(gè)體.12. 階段2:水面上飛翔(開發(fā)階段).13. For j=1:m.14. 使用等式(6)計(jì)算個(gè)體j維新位置.15. End.16. 使用等式(7)更新第i個(gè)種群個(gè)體.17. End.18. 更新最佳候選解決方案.19.End.20.輸出POA獲得的最佳候選解決方案End POA.
混沌映射[11]是一種非線性的動(dòng)態(tài)行為?;煦绲牟豢深A(yù)測(cè)性與非周期性,可有效提高算法的尋優(yōu)效率[12]?;舅枷胧峭ㄟ^混沌映射將優(yōu)化變量線性映射到混沌變量,然后根據(jù)混沌的遍歷性和隨機(jī)性進(jìn)行優(yōu)化搜索,最后將獲得的解線性轉(zhuǎn)換到優(yōu)化變量空間[13]。利用混沌映射這一特點(diǎn),可以在一定范圍內(nèi)更全面地探索搜索空間[14],更容易跳出局部最優(yōu),通過初始化種群彌補(bǔ)基本鵜鶘優(yōu)化算法存在的不足。
本文中采用Gauss映射初始化種群,使搜索代理均勻分布,從而提升收斂速度,定義為
(8)
式(8)中:mod(1)為余函數(shù);[]表示取整運(yùn)算;x=(x1,x2,…,xd)為高斯映射產(chǎn)生的混沌序列;d為維度。
在鵜鶘優(yōu)化算法的探索階段,提出三維螺旋飛行[15]策略,即使鵜鶘沿著螺旋運(yùn)動(dòng)方式向獵物地點(diǎn)移動(dòng),并結(jié)合Levy飛行[16]策略改變飛行的步長(zhǎng)。這種螺旋移動(dòng)方式不斷改變旋轉(zhuǎn)角度,以擴(kuò)大當(dāng)前局部解的鄰域。有利于鵜鶘在早期迭代中有較大概率搜索到其他位置,避免了POA的過度局部利用。在這種策略下,可以用數(shù)學(xué)方式表示鵜鶘的新位置,即
(9)
式(9)中:M=xyz,表示三維螺旋位置更新系數(shù),x=ρcosθ、y=ρsinθ、z=ρθ分別表示螺旋運(yùn)動(dòng)下的坐標(biāo)(x,y,z)三維分量,用于更新搜索代理位置,其中ρ=ueθv,表示由對(duì)數(shù)螺旋常數(shù)u和v定義的螺旋直徑,設(shè)置u=0.05、v=0.05,θ為(0,2π)之間的隨機(jī)數(shù)。
Levy表示萊維飛行函數(shù),計(jì)算公式為
(10)
式(10)中:λ為[0,2]之間的隨機(jī)數(shù),此處設(shè)為λ=1.5;s為固定常數(shù),取0.01;w和k為[0,1]之間的隨機(jī)數(shù)。
(11)
式(11)中:Γ為Gamma函數(shù),表示階乘函數(shù)在實(shí)數(shù)與復(fù)數(shù)上的擴(kuò)展。
針孔成像是一種光學(xué)物理現(xiàn)象,光源通過針孔從板的一側(cè)照射到另一側(cè),并在屏幕上形成其反向圖像。受反向?qū)W習(xí)策略[17]和光的透鏡成像原理[18]的啟發(fā),為鵜鶘算法引入了一種新的基于針孔成像的學(xué)習(xí)策略,并將其應(yīng)用于在種群初始化后生成全局最優(yōu)解的對(duì)向個(gè)體,從而產(chǎn)生更多樣的對(duì)向點(diǎn)。增強(qiáng)POA探測(cè)全局最佳解決方案的能力。
圖1 針孔成像物理原理圖Fig.1 Pinhole imaging physical schematic diagram
(12)
(13)
為了提高搜索代理位置的多樣性,增強(qiáng)算法的全局尋優(yōu)能力,對(duì)最差位置的鵜鶘采用反向?qū)W習(xí)策略,即最優(yōu)最差反向?qū)W習(xí)策略。定義為
Xworst(t+1)=m+rand[n-Xworst(t)]
(14)
式(14)中:t為迭代次數(shù);Xworst為當(dāng)前最差位置向量;rand為[0,1]上的隨機(jī)數(shù)。
算法每一次迭代,通過式(9)與式(11)更新鵜鶘位置,比較反向?qū)W習(xí)前后的適應(yīng)度,對(duì)目標(biāo)函數(shù)的最優(yōu)解位置與適應(yīng)度值進(jìn)行更新。與精英反向?qū)W習(xí)策略相比,本文中選擇的是對(duì)當(dāng)前種群中最優(yōu)與最差的兩個(gè)個(gè)體位置進(jìn)行處理,即把搜索空間的邊界m與n設(shè)置為動(dòng)態(tài)變化的,使算法具有更加準(zhǔn)確有效的搜索范圍,從而提高了算法的搜索精度。
模仿BWO算法中的“鯨魚墜落”[19]這一現(xiàn)象,擬提出“鵜鶘墜落”階段。鵜鶘墜落中的平衡因子和概率是自適應(yīng)的,對(duì)控制勘探和開發(fā)能力起著重要作用。在遷徙和覓食過程中,鵜鶘受到人類的威脅。鵜鶘可以通過相互分享信息來逃避威脅。然而,有一部分鵜鶘沒有幸存下來,脫離了隊(duì)伍。這種現(xiàn)象可被稱為“鵜鶘墜落”。
在模型中,平衡因子(Bf)的計(jì)算方法為
Bf=Br(1-t/2T)
(15)
式(15)中:t為當(dāng)前迭代;T為最大迭代次數(shù);Br取[0,1]之間的隨機(jī)數(shù)。
為了模擬每次迭代中鵜鶘墜落的行為,從種群中的個(gè)體中選擇鵜鶘墜落的概率作為主觀假設(shè),以模擬群體中的微小變化。假設(shè)這些鵜鶘要么移動(dòng)到其他地方,要么被擊落并退出捕食隊(duì)伍。為了確保種群數(shù)量大小恒定,使用鵜鶘的位置和鵜鶘墜落的步長(zhǎng)來確定更新的位置。當(dāng)鵜鶘墜落概率Pf (16) 式(16)中:r1、r2和r3為介于(0,1)之間的隨機(jī)數(shù);Xstep為鵜鶘墜落的步長(zhǎng),確定為 Xstep=(ub-lb)exp(-C1T/Tmax) (17) 式(17)中:C1為與鵜鶘墜落概率和種群規(guī)模相關(guān)的階躍因子(C1=2Wfn);ub和lb分別為變量的上下限??梢钥闯?步長(zhǎng)受設(shè)計(jì)變量邊界、迭代次數(shù)和最大迭代次數(shù)的影響。 在該模型中,鵜鶘墜落的概率(Pf)被計(jì)算為線性函數(shù),即 Pf=0.1-0.05t/Tmax (18) 鵜鶘墜落的概率從最初迭代中的0.1降低到最后迭代中的0.05,表明當(dāng)鵜鶘在優(yōu)化過程中更接近食物源時(shí),鵜鶘的危險(xiǎn)性降低。 這一策略將被作為第三階段,所產(chǎn)生的新的鵜鶘位置是否被接受,判斷式為 (19) 綜上,本文提出的混合策略改進(jìn)鵜鶘算法(IPOA)步驟如下。 (1)設(shè)置種群大小、最大迭代次數(shù)等參數(shù) (2)在解空間中通過GAUSS映射生成初始種群。 (3)計(jì)算種群中個(gè)體目標(biāo)函數(shù)值并記錄最優(yōu)位置X(t)。 (4)根據(jù)式(15)、式(17)更新Bf與Pf。 (5)根據(jù)式(9)、式(6)更新個(gè)體位置。若Pf (6)獲取當(dāng)前種群個(gè)體中最優(yōu)位置與最差位置,按式(12)、式(14)更新個(gè)體位置,并更新最優(yōu)適應(yīng)度值和最佳位置X(t)。 (7)判斷是否達(dá)到最大迭代次數(shù),若達(dá)到則停止迭代,并輸出最優(yōu)結(jié)果; 反之,重復(fù)執(zhí)行式(9)、式(5)~式(7)。 為了驗(yàn)證IPAO算法在求解函數(shù)中的優(yōu)越性,將其與原始鵜鶘算法(POA)、鯨魚優(yōu)化算法(whale optimization algorithm, WOA)、北方蒼鷹算法(northern goshawk optimization, NGO)、灰狼算法(grey wolf optimization, GWO)、斑點(diǎn)狗優(yōu)化算法(spotted hyena optimizer, SHO)、海鷗優(yōu)化算法(seagull optimization algorithm, SOA)、混沌灰狼優(yōu)化算法(chaos grey wolf optimization, CGWO)、基于Levy飛行的飛蛾撲火算法(moth-flame optimization algorithm based on levy flights, LMFO)、基于柯西變異的蟻獅優(yōu)化算法(ant lion optimization algorithm based on cauchy variation, CALO)通過12個(gè)基準(zhǔn)函數(shù)進(jìn)行性能測(cè)試對(duì)比。F1~F7為單峰函數(shù),具有較少的局部極小值,主要測(cè)試算法的收斂速度與尋優(yōu)精度,F8~F12為高維多模態(tài)函數(shù),具有較多的局部極小值,主要測(cè)試算法跳出局部最優(yōu)的能力[20]?;鶞?zhǔn)函數(shù)信息如表 1所示。本文試驗(yàn)仿真環(huán)境為:Win10-64為操作系統(tǒng),8 GB內(nèi)存和2.50 GHz CPU,編程語言為MATLAB R2021a。 表1 用于測(cè)試的12個(gè)基準(zhǔn)函數(shù)Table 1 Twelve benchmark functions for testing 為了讓保證試驗(yàn)結(jié)果的公正性,參數(shù)設(shè)置為:搜索代理設(shè)置為數(shù)量30個(gè),迭代1 000次,各算法獨(dú)立運(yùn)行30次。 首先,由圖2可以看出,改進(jìn)后的算法對(duì)函數(shù)的收斂性能、運(yùn)行效率有了很大的提升。圖2(a)~圖2(g)為單峰函數(shù)的收斂曲線,主要測(cè)試算法的開發(fā)能力[21],由于加入了針孔成像與最優(yōu)最差反向?qū)W習(xí)策略,算法的收斂速度得到了極大的提升。圖2(h)~圖2(l)為高維多模態(tài)函數(shù)的收斂曲線,主要測(cè)試算法的搜索能力[21],由于加入了三維螺旋運(yùn)動(dòng)、GAUSS映射和動(dòng)態(tài)平衡因子,獲提升了收斂速度,在迭代后期更容易跳出局部最優(yōu),提高收斂精度。 圖2 算法收斂曲線Fig.2 Algorithm convergence curve 其次,表2為8個(gè)算法在相同條件運(yùn)行30次的對(duì)比結(jié)果,取最優(yōu)值、最差值、平均值與標(biāo)準(zhǔn)差作為性能評(píng)價(jià)標(biāo)準(zhǔn)。其中,平均值反映算法的尋優(yōu)精度。在求解單峰函數(shù)F1~F7時(shí),IPAO在求解F1、F2、F3、F4、F6時(shí)達(dá)到了理論值0,證明了反向?qū)W習(xí)策略提高了算法的跳出局部最優(yōu)的能力,求解F6時(shí)其他算法也達(dá)到了理論值,但由圖2(f)可知IPOA的收斂速度明顯優(yōu)于其他算法,驗(yàn)證了改進(jìn)后算法性能的優(yōu)越性。雖然求解函數(shù)F5、F7時(shí),IPOA未達(dá)到理論值,但其最優(yōu)值、最差值、均值都好于其他算法。求解高維多模態(tài)函數(shù)F8~F12時(shí),求解函數(shù)F8只有IPOA達(dá)到了的理論值;除了LMFO、CALO,其余算法均達(dá)到了F9、F11的理論值,但根據(jù)圖2(h)~圖2(j)、圖2(l)可知,IPOA算法的尋優(yōu)速度要遠(yuǎn)遠(yuǎn)優(yōu)于其他算法。求解函數(shù)F10,IPOA沒達(dá)到理論值,但其均值等各項(xiàng)指標(biāo)都優(yōu)于CGWO、LMFO、CALO等算法,再次證明了IPOA的優(yōu)越性能。進(jìn)而驗(yàn)證了改進(jìn)策略對(duì)算法性能的提升。 表2 12個(gè)測(cè)試函數(shù)結(jié)果對(duì)比Table 2 Comparison of 12 test function results 表2中的標(biāo)準(zhǔn)差反映算法的魯棒性[20]。求解F1~F7時(shí),除F5外IPOA均達(dá)到理論值;F1、F3求解過程中,除了POA、NGO的標(biāo)準(zhǔn)差與IPOA一致,IPOA好于其他算法。求解F2、F4、F5、F7中,IPOA的標(biāo)準(zhǔn)差比其他算法都要小,說明IPOA具有更好的穩(wěn)定性;在求解多峰函數(shù)F8~F12時(shí),雖然F10未達(dá)到標(biāo)準(zhǔn)值,但I(xiàn)POA的標(biāo)準(zhǔn)差小于其他算法,證明了IPOA的在求解過程中比其他算法更加穩(wěn)定。 最后,對(duì)比表2中運(yùn)行時(shí)間,在相同維度下, 由于IPOA融合5種改進(jìn)策略,其耗時(shí)要長(zhǎng)于加入1種改進(jìn)方法的CGWO、LMFO。原因是算法初始化增加了種群多樣性,改變運(yùn)動(dòng)路徑、擴(kuò)大全局搜索范圍等改進(jìn)策略可以幫助算法找到最優(yōu)解,但同時(shí)也會(huì)增加尋優(yōu)過程運(yùn)行的時(shí)間,而相比于其他算法,POA等原始算法的運(yùn)行時(shí)間是最短的。 為進(jìn)一步檢驗(yàn)IPOA與其他算法的差異,將IPOA算法與其他8種算法在30次獨(dú)立運(yùn)算下的最佳結(jié)果進(jìn)行Wilcoxon 符號(hào)秩和檢驗(yàn)。兩個(gè)算法間的差異程度用p值衡量,p<0.05表明差異性明顯;“+”代表IPOA明顯優(yōu)于對(duì)比算法;“-”代表IPOA明顯劣于對(duì)比算法;“=”表示相當(dāng)于對(duì)比算法;N/A表示無法進(jìn)行差異性判斷[22]。如表3所示,在11個(gè)測(cè)試函數(shù)上,IPOA的性能優(yōu)于POA、WOA、NGO、GWO、SOA、CGWO、LMFO、CALO算法,且p<10-10,表明IPOA具有非常顯著的優(yōu)越性,即具有更好的尋優(yōu)能力。 表3 Wilcoxon 符號(hào)秩和檢驗(yàn)Table 3 Wilcoxon matched-pairs signed-ranks test 三桿平面桁架結(jié)構(gòu)如圖3所示。桿x1、x2的橫截面面積為設(shè)計(jì)變量。將結(jié)構(gòu)總體積作為優(yōu)化目標(biāo)。各構(gòu)件應(yīng)力約束為σ=2 kN/cm2,外荷載作用為P=2 kN/cm2,l=100 cm。各桿件截面積的取值范圍為(0,1)cm2。該問題可優(yōu)化為一個(gè)非線性函數(shù),即 圖3 三桿桁架結(jié)構(gòu)圖Fig.3 Structure drawing of the three-bar truss (20) (21) (22) (23) 采用IPOA算法優(yōu)化的桁架結(jié)構(gòu)體積為263.551 6 cm3,低于其他算法。優(yōu)化結(jié)果對(duì)比如表4所示。 表4 三桿桁架優(yōu)化結(jié)果對(duì)比Table 4 Comparison of optimization results of three-bar truss 在鵜鶘優(yōu)化算法基礎(chǔ)上引入混合反向?qū)W習(xí)、Levy飛行和自適應(yīng)平衡因子策略,能更好地平衡勘探和開發(fā)能力,避免算法陷入局部最優(yōu);三維螺旋運(yùn)動(dòng)與針孔成像反向?qū)W習(xí)策略提高了算法的搜索范圍與搜索精度。通過運(yùn)行12個(gè)測(cè)試函數(shù),IPOA與5個(gè)原始算法、3個(gè)改進(jìn)算法進(jìn)行對(duì)比,并進(jìn)行了Wilcoxon 符號(hào)秩和檢驗(yàn);根據(jù)圖2、表3和表4的運(yùn)行結(jié)果分析,充分證明了IPOA算法改進(jìn)的可行性與有效性。經(jīng)仿真與案例分析,表明改進(jìn)后的算法具有較高的可行性和魯棒性。在解決桁架優(yōu)化問題中,IPOA達(dá)到了桁架體系體積最小的要求,可用于解決組合優(yōu)化問題。2.6 IPOA實(shí)現(xiàn)步驟
3 仿真試驗(yàn)與結(jié)果分析
3.1 基準(zhǔn)函數(shù)測(cè)試
3.2 Wilcoxon 符號(hào)秩和檢驗(yàn)
3.3 桁架優(yōu)化案例
4 結(jié)論