摘要:針對白骨頂雞優(yōu)化算法(COOT)全局搜索能力差、優(yōu)化精度低和易陷入局部最優(yōu)等缺陷,提出了一種融合翻筋斗覓食和正余弦策略的白骨頂雞優(yōu)化算法,引入一種翻筋斗覓食策略,增加了白骨頂雞個體的多樣性。此外,在領(lǐng)導者位置更新過程中采用正余弦策略和隨機因子,以提高算法的搜索能力。通過10個標準檢驗函數(shù),以及Wilcoxon秩和檢驗,對改進的COOT性能進行了全面評估,并將其與其他幾種算法進行了比較。仿真結(jié)果表明,改進的COOT在迭代速度和收斂精度方面取得了顯著的提升,并展現(xiàn)了出色的魯棒性。
關(guān)鍵詞:改進白骨頂雞優(yōu)化算法;翻筋斗覓食策略;正余弦策略;隨機因子
中圖分類號:TP301.6文獻標志碼:A
0引言(Introduction)
近年來,深度學習以及智能優(yōu)化算法成為解決工程應(yīng)用或管理領(lǐng)域中復雜任務(wù)問題的有力工具[1\|2]。隨著人工智能的興起,智能優(yōu)化算法的研究與應(yīng)用更顯得尤為重要。白骨頂雞優(yōu)化算法(CootOptimizationAlgorithm,COOT)是NARUEI等[3]在2021年提出的一種新型智能優(yōu)化算法,通過模仿白骨頂雞的運動習性,包括其在水上游動時的協(xié)調(diào)性、快速轉(zhuǎn)向能力和在復雜環(huán)境中的靈活性。COOT具有簡明易懂、易于實施的特點,并且擁有出色的全局優(yōu)化能力。盡管COOT已經(jīng)在某些工程優(yōu)化問題中展現(xiàn)了其應(yīng)用價值并得到了成功應(yīng)用[4],但是仍然存在與其他智能優(yōu)化算法相同的搜索能力不足和易陷入局部最優(yōu)等問題[5]。目前,許多學者引入了多種策略以期改進其性能。例如,MEMARZADEH等[6]為了優(yōu)化風電功率預(yù)測模型的參數(shù),提出了一種基于長短期記憶和白骨頂雞優(yōu)化算法的風力發(fā)電企業(yè)新型最優(yōu)儲能系統(tǒng)模型。同樣,DIAB等[7]為了準確估計各種光伏模型,使用平衡白骨頂雞優(yōu)化算法和人工生態(tài)系統(tǒng)優(yōu)化算法對光伏模型參數(shù)進行優(yōu)化。GOUDA等[8]為了優(yōu)化太陽能機組在各種運行和負載場景下的性能,提出了基于白骨頂雞優(yōu)化算法的太陽能發(fā)電機組的性能評估。
針對COOT的缺陷,本文提出融合翻筋斗覓食和正余弦策略的白骨頂雞優(yōu)化算法(SSFCOOT)。首先,通過白骨頂雞個體的翻筋斗覓食策略,使算法跳入新的位置,擴大了搜索范圍并避免陷入局部最優(yōu)解。其次,在領(lǐng)導者位置更新中引入正余弦策略,并通過隨機因子對正余弦算法進行改進,以加快收斂速度和增強算法的搜索能力。
1白骨頂雞優(yōu)化算法(CootOptimizationAlgorithm)
COOT借鑒了白骨頂雞群在水面上的移動習性,主要有4種不同的運動行為,分別是個體隨機運動、鏈式運動、跟隨領(lǐng)導者移動和領(lǐng)導者移動。
1.1初始化種群
根據(jù)公式(1)隨機初始化白骨頂雞種群位置:
CootPos(i)=rand(1,d)×(ub-lb)+lb[JZ)][JY](1)
其中:CootPos(i)是第i個白骨頂雞的位置,rand為0到1的隨機數(shù),d表示維度,ub和lb分別是搜索空間的上限和下限。ub和lb的定義分別如公式(2)和公式(3)所示:3eKiJMxWVv3SPbbioq9Yvg==
ub=[ub1,ub2,…,ubd][JZ)][JY](2)
lb=[lb1,lb2,…,lbd][JZ)][JY](3)
初始化種群后,根據(jù)以下4種運動行為更新白骨頂雞的位置。
1.2個體隨機運動
在個體隨機運動中,使用公式(4)隨機初始化位置Q:
Q=rand(1,d)×(ub-lb)+lb[JZ)][JY](4)
個體隨機運動探索了搜索空間的不同部分。為了避免陷入局部最優(yōu),根據(jù)公式(5)更新位置:
CootPos(i)=CootPos(i)+A×R2×(Q-CootPos(i))[JZ)][JY](5)
其中:R2為[0,1]區(qū)間中的隨機數(shù),A是迭代的隨機函數(shù),更新方式如下:
A=1-L×〖SX(〗1〖〗Iter〖SX)〗[JZ)][JY](6)
其中:L為當前的迭代次數(shù),Iter為最大的迭代次數(shù)。
1.3鏈式運動
鏈式運動通過使用兩個個體的平均位置實現(xiàn)。首先計算兩個個體之間的距離向量,其次將其中的一個個體向另一個個體移動大約距離向量的一半,個體的新位置如下:
CootPos(i)=0.5×(CootPos(i-1)+CootPos(i))[JZ)][JY](7)
其中,CootPos(i)是第二個個體。
1.4跟隨領(lǐng)導者移動
白骨頂雞根據(jù)小組中領(lǐng)導者的位置更新自己的位置,每組中的白骨頂雞跟隨者向領(lǐng)導者移動。領(lǐng)導者的選擇如公式(8)所示:
K=1+(iMODNL)[JZ)][JY](8)
其中:i是當前個體的位置索引,NL是領(lǐng)導者的數(shù)量,K表示選定的第K個領(lǐng)導者。個體的位置更新如下:
[JZ]CootPos(i)=[WB]LeaderPos(k)+2×R1×cos(2Rπ)×
[DW](LeaderPos(k)-CootPos(i))[JY](9)
其中:CootPos(i)是個體的當前位置,LeaderPos(k)是選中的領(lǐng)導者位置,R1是[0,1]區(qū)間中的隨機數(shù),R是[-1,1]區(qū)間中的隨機數(shù)。
1.5領(lǐng)導者移動
為了找到最優(yōu)位置,領(lǐng)導者必須從現(xiàn)有的局部最優(yōu)位置跳轉(zhuǎn)到全局最優(yōu)位置。利用公式(10)更新領(lǐng)導者的位置。
LeaderPos(i)=〖JB({〗B×R3×cos(2Rπ)×(gBest-
LeaderPos(i))+gBest,R4<0.5
B×R3×cos(2Rπ)×(gBest-
LeaderPos(i))-gBest,R4≥0.5〖JB)〗[JY](10)
其中:gBest為領(lǐng)導者種群內(nèi)最優(yōu)個體的位置,R3和R4均為[0,1]區(qū)間中的隨機數(shù),R為[-1,1]區(qū)間中的隨機數(shù),B是迭代的隨機函數(shù),其更新方式如下:
2[ZK(][JP3]融合翻筋斗覓食和正余弦策略的白骨頂雞優(yōu)化算法(CootOptimizationAlgorithmbasedonsomersaultforagingandsine\|cosinestrategy)[HJ][BT)]
2.1翻筋斗覓食策略
為了增強COOT的跳出局部最優(yōu)解能力,引入了一種獨特的翻筋斗覓食策略。該策略將獵物的位置視為一個支點,并通過圍繞支點旋轉(zhuǎn)和翻滾的方式不斷尋找新的位置。翻筋斗覓食策略如公式(12)所示:
CootPos(i)=[WB]Cootpos(i)+s×(rand×gBestScore-rand×[DW]CootPos(i))[JY](12)
其中:CootPos(i)是白骨頂雞跟隨者的當前位置,s代表空翻因子,gBestScore表示目前的最優(yōu)位置,rand為[0,1]區(qū)間中的隨機數(shù)。圖1為白骨頂雞的翻筋斗覓食行為。
根據(jù)公式(12)和圖1可知,白骨頂雞的移動范圍取決于當前位置與其對稱位置之間的新搜索域。該搜索域是圍繞迄今為止發(fā)現(xiàn)的最佳白骨頂雞位置而確定的。白骨頂雞越接近最佳位置,對當前位置的擾動就越小,使得所有個體在搜索空間中逐漸趨近最優(yōu)解。因此,隨著迭代次數(shù)的增加,白骨頂雞翻筋斗覓食的范圍會逐漸縮小,實現(xiàn)自適應(yīng)的調(diào)整。
2.2正余弦策略
MIRJALILI提出了一種基于種群的優(yōu)化算法,即正余弦算法[9](SCA),用于解決各種優(yōu)化問題。該算法基于正弦和余弦函數(shù)的數(shù)學模型搜索空間中的不同區(qū)域,并要求它們朝著最優(yōu)解振蕩。為了使這一階段的領(lǐng)導者群體運動更加隨機,避免陷入局部優(yōu)化,引入了隨機因子p∈(0,1)。得到新的領(lǐng)導者位置更新公式如下:
LeaderPos(i)=〖JB({〗B×R3×cos(2Rπ)×(gBest-LeaderPos(i))+
p×gBest,R4<0.5
B×R3×sin(2Rπ)×(gBest-LeaderPos(i))-
p×gBest,R4≥0.5〖JB)〗[JZ)][JY](13)
2.3SSFCOOT算法步驟
綜上改進策略,本文所提的SSFCOOT,其計算步驟如下。
步驟1:初始化算法的相關(guān)參數(shù),即種群規(guī)模N、空間維度dim、種群的搜索空間[lb,ub]、最大迭代次數(shù)Iter等。
步驟2:根據(jù)公式(1)初始化種群并劃分領(lǐng)導者與跟隨者。
步驟3:根據(jù)公式(4)隨機生成位置Q。
步驟4:根據(jù)公式(7)、公式(8)、公式(9)、公式(12)更新追隨者位置。
步驟5:計算追隨者適應(yīng)度并更新領(lǐng)導者。
步驟6:根據(jù)公式(13)更新領(lǐng)導者位置。
步驟7:計算領(lǐng)導者適應(yīng)度。
步驟8:對迭代終止條件進行判斷,若滿足條件,則進行下一步操作;否則,繼續(xù)執(zhí)行步驟3。
3實驗結(jié)果分析(Analysisofexperimentalresults)
3.1基準測試函數(shù)
為了驗證本文改進算法(SSFCOOT)的尋優(yōu)能力,將SSFCOOT與標準COOT、鯨魚優(yōu)化算法(WhaleOptimizationAlgorithm,WOA)[10]、蟻獅優(yōu)化算法(AntLionOptimizer,ALO)[11]、阿基米德優(yōu)化算法(ArchimedesOptimizationAlgorithm,AOA)[12]、海鷗優(yōu)化算法(SeagullOptimizationAlgorithm,SOA)[13],分別選取5個單峰函數(shù)和5個多峰函數(shù)[14]進行對比仿真實驗。此外,6種算法均采用相同的軟件和硬件平臺,實驗是在配備32GBRAM與i7\|12700H處理器的個人計算機上進行的。
3.2收斂精度分析[HJ2.4mm]
為了評估SSFCOOT的優(yōu)化精度,本研究對比了改進算法與其他5種算法在10個測試函數(shù)(空間維數(shù)dim=30/50/100)上的性能。每種算法針對每個測試函數(shù)獨立運行30次,并使用平均值和標準差評估它們的優(yōu)化性能。表1展示了各種算法在10個測試函數(shù)上的優(yōu)化結(jié)果對比。
由表1可知,從縱向來看,SSFCOOT的求解精度明顯優(yōu)于其他5種算法,其中ALO的求解精度是其他5種對比算法中表現(xiàn)最差的,AOA次之。從維度方面來看,隨著測試函數(shù)維度的增加,COOT、WOA、ALO、AOA、SOA的尋優(yōu)能力整體呈現(xiàn)下降趨勢,這是因為維度增加使測試函數(shù)的復雜度增大,導致尋優(yōu)過程需要更大的計算量。WOA和SSFCOOT在求解函數(shù)F6和F8時,能夠準確地找到理論最優(yōu)值0,顯示出卓越的優(yōu)化能力。對于單峰函數(shù)來說,SSFCOOT的求解精度最高,也從側(cè)面表明了翻筋斗覓食和正余弦策略的引進提高了SSFCOOT的魯棒性。
3.3收斂曲線分析
為了深入分析各種算法的收斂性能,圖3展示了6種算法在10個測試函數(shù)上的收斂曲線。
如圖3(a)、圖3(b)、圖3(c)和圖3(d)中的單峰收斂曲線所示,SSFCOOT的收斂曲線一開始迅速減小,接近理論最優(yōu)值,并且其收斂速度隨著迭代次數(shù)的提升而提升。然而,對于其他5種算法,它們的收斂曲線呈現(xiàn)平緩的變化趨勢,并陷入局部最優(yōu)。這表明翻筋斗覓食策略可以有效地探索算法的理論最優(yōu)解,防止其陷入局部最優(yōu)。此外,圖3(f)、圖3(h)中的多峰收斂曲線表明,SSFCOOT和WOA在尋找最優(yōu)值時,收斂速度非常快,并最終獲得理論最優(yōu)解。然而,COOT似乎處于停滯狀態(tài)并陷入局部最優(yōu),驗證了引入正余弦策略和隨機因子可以幫助提高算法的全局優(yōu)化能力。同樣,如圖3(e)、圖3(i)和圖3(j)中的收斂曲線所示,SSFCOOT、WOA、COOT和AOA都表現(xiàn)出良好的搜索精度,但SSFCOOT的收斂速度明顯快于其他3種算法。綜上,與其他5種算法相比,SSFCOOT在收斂精度和收斂速度方面都具有優(yōu)勢,證實了本文提出的改進方法的有效性。
3.4Wilcoxon秩和檢驗
為了全面評估SSFCOOT在全局尋優(yōu)方面的優(yōu)越性,僅憑平均值和標準差作為性能指標是不足以充分說明問題的。為了確定SSFCOOT與其他5種算法之間是否存在顯著差異,本文采用Wilcoxon秩和檢驗進行性能測試。設(shè)定原假設(shè)H0:兩種算法在尋優(yōu)性能上基本相同。此外,提出了備選假設(shè)H1:兩種算法在性能上存在顯著差異。通過Wilcoxon秩和檢驗,可以更準確地評估SSFCOOT與其他算法之間的差異,以進一步驗證其優(yōu)越性。
當P<0.05時,可以被認為拒絕H0假設(shè),說明兩種算法在性能上存在顯著差異;當P>0.05時,可以被認為接受H0假設(shè),說明兩種算法在尋優(yōu)性能上基本相同。
表2為10個測試函數(shù)在搜索空間維度dim=30時,獨立運行30次的SSFCOOT與COOT、WOA、ALO、AOA、SOA的Wilconxon秩和檢驗對比分析。其中,“NaN”表示不適用,即無法進行顯著性判斷?!?”“=”“-”分別表示SSFCOOT的性能“優(yōu)于”“相當于”“劣于”其他算法。
由表2可知,大部分P值都小于0.05,總體上SSFCOOT的性能與其他5種算法的差異顯著,從而表明SSFCOOT相對于其他算法具有一定的優(yōu)越性。
4結(jié)論(Conclusion)
本文提出了一種融合翻筋斗覓食和正余弦策略的白骨頂雞優(yōu)化算法(SSFCOOT),旨在找到全局最優(yōu)解,提高收斂速度。首先,翻筋斗覓食策略的引入使SSFCOOT能夠擴大搜索范圍,增強種群多樣性。其次,在領(lǐng)導者位置中使用正余弦策略,并引入隨機因子,提高了算法的搜索能力。通過對10個基準測試函數(shù)進行的仿真實驗,以及基于Wilcoxon秩和檢驗的性能比較,驗證了SSFCOOT在收斂精度和速度方面的優(yōu)越性,同時該算法表現(xiàn)出較小的標準偏差,具有極強的穩(wěn)定性。
參考文獻(References)
[1]繆曉賓,陳昊.模擬退火算法優(yōu)化轉(zhuǎn)運小車轉(zhuǎn)向的梯形機構(gòu)設(shè)計[J].機械設(shè)計與研究,2023,39(5):67\|71.
[2]楊寶杰,石凱元,陳佳凱,等.基于改進粒子群算法的電力工程數(shù)據(jù)多目標優(yōu)化方法[J].電子設(shè)計工程,2024,32(5):95\|99.
[3]NARUEII,KEYNIAF.AnewoptimizationmethodbasedonCOOTbirdnaturallifemodel[J].Expertsystemswithapplications,2021,183:115352.
[4]張立峰,陳達.基于改進白骨頂雞優(yōu)化算法的ECT圖像重建[J].計量學報,2023,44(11):1692\|1698.
[5]李雪利,杜逆索,歐陽智,等.基于擾動因子和貪心策略的白骨頂優(yōu)化算法[J].智能計算機與應(yīng)用,2023,13(6):38\|49.
[6]MEMARZADEHG,KEYNIAF.AnewoptimalenergystoragesystemmodelforwindpowerproducersbasedonlongshorttermmemoryandCootBirdSearchAlgorithm[J].Journalofenergystorage,2021,44:103401.
[7]DIABAAZ,EZZATA,RAFAATAE,etal.OptimalidentificationofmodelparametersforPVsusingequilibrium,cootbirdandartificialecosystemoptimisationalgorithms[J].IETrenewablepowergeneration,2022,16(10):2172\|2190.
[8]GOUDAEA,KOTBMF,GHONEIMSSM,etal.Performanceassessmentofsolargeneratingunitsbasedoncootbirdmetaheuristicoptimizer[J].IEEEaccess,2021,9:111616\|111632.
[9]MIRJALILIS.SCA:aSineCosineAlgorithmforsolvingoptimizationproblems[J].Knowledge\|basedsystems,2016,96:120\|133.
[10]MIRJALILIS,LEWISA.Thewhaleoptimizationalgorithm[J].Advancesinengineeringsoftware,2016,95:51\|67.
[11]MIRJALILIS.Theantlionoptimizer[J].Advancesinengineeringsoftware,2015,83:80\|98.
[12]HASHIMFA,HUSSAINK,HOUSSEINEH,etal.Archimedesoptimizationalgorithm:anewmetaheuristicalgorithmforsolvingoptimizationproblems[J].Appliedintelligence,2021,51(3):1531\|1551.
[13]DHIMANG,KUMARV.Seagulloptimizationalgorithm:theoryanditsapplicationsforlarge\|scaleindustrialengineeringproblems[J].Knowledge\|basedsystems,2019,165:169\|196.
[14]胡春安,熊昱然.多策略改進的混沌哈里斯鷹優(yōu)化算法[J].計算機工程與科學,2023,45(9):1648\|1660.
作者簡介:
張志飛(1999\|),男,碩士生。研究領(lǐng)域:智能算法,計算機視覺。
孔維賓(1990\|),男,博士,副教授。研究領(lǐng)域:信號處理,微波技術(shù)。本文通信作者。
杜義(2000\|),男,碩士生。研究領(lǐng)域:智能檢測。
張婷琳(1988\|),女,博士,講師。研究領(lǐng)域:信號處理,人工智能。
王玉婷(2003\|),女,本科生。研究領(lǐng)域:電子信息。
高薪越(2004\|),女,本科生。研究領(lǐng)域:電子信息。