摘要:針對阿奎拉優化算法(AO)存在的不足,提出一種采用混合搜索策略的阿奎拉優化算法(HAO)。首先,利用動態調整函數平衡算法的全局探索與局部開發;其次,利用混沌自適應權重來增強算法的全局搜索能力、加快算法的收斂速度;最后,設計新的個體變異概率系數,采用改進型差分變異策略,利用適應度值較優個體引領群體中其他個體開展搜索活動,保持了種群的多樣性,增強了算法跳出局部最優的能力。通過八個基準測試函數和10個CEC2019測試函數,以及一個工程應用問題的數值實驗仿真對所提算法進行實驗驗證。實驗結果表明,所提算法的全局收斂速度和優化精度均得到了明顯地改善,跳出局部最優的能力得到了增強。
關鍵詞:阿奎拉優化算法;動態調整;混沌自適應權重;改進型差分變異
中圖分類號:TP18文獻標志碼:A
文章編號:1001-3695(2022)10-022-3026-07
doi:10.19734/j.issn.1001-3695.2022.04.0128
Aquila optimization algorithm using hybrid search strategies
Fu Xiaopeng1,Wang Yong1,2,Feng Aiwu1
(1.College of Artificial Intelligence,Guangxi Minzu University,Nanning 530006,China;2.Guangxi Key Laboratory of Hybrid Computation amp; IC Design Analysis,Nanning 530006,China)
Abstract:Aiming at the shortcomings of Aquila optimization algorithm(AO),this paper proposed an Aquila optimization algorithm using hybrid search strategy.Firstly,the algorithm introduced dynamic adjustment function to balance global exploration and local exploitation.Secondly,it introduced chaotic adaptive weights to enhance the global search capability of the algorithm and accelerate the convergence speed of the algorithm.Thirdly,it introduced a new individual mutation probability coefficient and an improved differential mutation strategy,and used individuals with better fitness values to lead other individuals in the population to carry out search activities,which maintained the diversity of the population and enhanced the ability of the algorithm to jump out of the local optimum.
The proposed algorithm was verified by experiments on the numerical experiment simulation of 8 benchmark test functions,10 CEC2019 test functions and 1 engineering application problem.The experimental results show that the algorithm has a significant improvement in global convergence speed and optimization accuracy,and has a better ability to jump out of the local optimum.
Key words:Aquila optimization algorithm;dynamic adjustment;chaotic adaptive weights;improved differential mutation
0引言
在過去的幾十年里,元啟發式算法已經被成功地應用于解決科學、工程等領域的優化問題。自遺傳算法(GA)[1]提出以來,國內外研究者已經提出了包括差分進化算法(DE)[2]、粒子群算法(PSO)[3]、鯨魚優化算法(WOA)[4]、引力搜索算法(GSA)[5]、正余弦算法(SCA)[6]、教學優化算法(TLBO)[7]、社會進化算法(SEA)[8]等眾多元啟發式算法。目前,元啟發式算法已逐漸在機器人路基規劃[9]、圖像分割[10]、集群車輛路徑問題[11]等領域得到了廣泛的應用。
阿奎拉優化算法(Aquila optimizer,AO)是Abualigah等人[12]于2021年提出的一種新的元啟發式算法。該算法啟發于鷹科飛行猛禽阿奎拉的狩獵行為,具有原理簡單、易于編程實現等特點。然而,AO也明顯存在收斂速度慢、易陷入局部最優等不足。針對AO的不足,同時采用將AO與哈里斯鷹算法相混合的改進策略,以增強算法的局部開發能力,同時還通過引入非線性逃逸能量參數和隨機對立學習策略來增強算法跳出局部最優能力;文獻[14]通過引入混沌映射來提高算法搜索的隨機性,把饑餓游戲搜索算法與AO相混合,以增強算法的探索能力;文獻[15]采用對立學習策略和小波變異策略來提升算法的優化精度;文獻[16]將AO與算術優化算法相結合,以提高算法的搜索效率。文獻[13~16]提出的改進版本AO,相較之于標準AO,其在優化精度方面有所改善,然而這些改進版本AO依然存在全局搜索能力不強、規避陷入局部最優的能力不強、早熟收斂等問題,仍有待進一步完善。針對這一問題,本文提出一種新的采用混合搜索策略的阿奎拉優化算法(Aquila optimization algorithm using hybrid search strategies,HAO)。首先引入動態調整策略平衡算法的勘探與開發,并利用混沌自適應權重提升算法的探索與開發能力;其次在算法陷入局部最優時,引入改進型差分變異策略對非最優個體進行變異,提升算法多樣性,避免算法陷入局部最優;最后通過數值實例仿真驗證了本文改進策略的有效性和可行性。
1AO算法簡介
AO算法的原理源于阿奎拉狩獵行為之間的切換,阿奎拉有四種狩獵行為:a)垂直俯沖的高空飛行模式,廣泛的確定狩獵區域和位置;b)短滑翔攻擊的等高線飛行,進一步探索獵物所在區域;c)緩慢下降攻擊的低空飛行,在選定的目標區域接近獵物并進行攻擊;d)降落地面,依靠行走發起精確攻擊。相應地,在AO算法的數學模型中,阿奎拉的前兩種狩獵行為表示為全局探索,分別表示為擴展探索和收縮探索;后兩種狩獵行為表示為局部開發,分別表示為擴展開發和收縮開發。其中,全局探索基于條件t≤2/3T執行(t為算法當前迭代次數,T為最大迭代次數),否則執行局部開發。
1.1全局探索
a)擴展探索。該階段,阿奎拉通過高空飛行能廣泛地探索目標所在區域。全局探索階段基于條件rand≤0.5(rand為0~1的隨機數)執行擴展探索,否則執行收縮探索。擴展探索的數學模型如式(1)所示。
X(t+1)=Xbest(t)×(1-t/T)+(XM(t)-rand×Xbest(t))(1)
XM(t)=1N∑Ni=1Xi(t) j=1,2,…,dim(2)
其中:Xbest(t)表示第t次迭代最佳解;1-t/T表示通過迭代次數來調整探索范圍;Xi(t)表示第t次迭代第i個體;XM(t)為第t次迭代的均值;dim表示問題維度大小;N為種群大小。
b)收縮探索。該階段通過等高線飛行進一步探索目標區域。其收縮探索的數學模型如式(3)所示。
X(t+1)=Xbest(t)×levy(dim)+XR(t)+rand×(y-x)(3)
levy(dim)=(s×u×σ)/|v|1/β(4)
σ=(Γ(1+β)×sin(πβ/2)Γ(1+β)×β×2(β-1)/2)(5)
y=r×cos(θ),x=r×sin(θ)(6)
其中:levy(dim)表示萊維飛行的分布函數;XR(t)表示當前種群的隨機個體;固定常量s=0.01;u和v均為[0,1]的隨機數;β=1.5;y和x表示搜索過程中的螺旋形狀;r=r1+U×D1;θ=3π/2-ω×D1;r1為1~20的固定值,表示固定的搜索周期數;U=0.005 65,D1為一個1到搜索空間維度(dim)的整數值,ω=0.005。
1.2局部開發
a)擴展開發。該階段,阿奎拉通過低空飛行開始對目標進行初步攻擊。在局部開發階段基于條件rand≤0.5執行擴展開發,否則執行收縮開發。其擴展開發的數學模型如式(7)所示。
X(t+1)=(Xbest(t)-XM(t))×α-rand+
((UB-LB)×rand+LB)×δ(7)
其中:UB、LB表示給定問題的上界和下界;α和δ為開發調整參數(AO中均為0.1)。
b)收縮開發。該階段,阿奎拉降落地面對目標發起精確攻擊。其搜索開發的數學模型如式(8)所示。
X(t+1)=QF(t)×Xbest(t)-(G1×X(t)×rand)-G2×levy(D)+rand×G1(8)
QF(t)=t2×rand-1(1-T)2,G1=2×rand-1,G2=2×(1-tT)(9)
其中:QF是用于平衡搜索策略的質量函數;G1表示追蹤潛逃獵物的各種活動;G2表示追蹤獵物時的飛行斜率。
2HAO算法
在標準AO算法中,首先,全局探索與局部開發之間的切換基于條件t≤(2/3)T這一固定概率轉換,容易導致算法探索與開發之間的不平衡,探索與開發之間缺乏信息交流。在算法搜索過程中,在前期通過全局探索廣泛確定目標所在區域,其僅僅只通過全局探索步驟搜索,未與局部開發步驟進行信息交流來縮小探索區域,容易導致算法在前期確定的目標區域過大;在算法后期,又通過在前期確定的大范圍區域進行精確的局部開發搜索,容易導致搜索效率下降,算法不能快速確定最優目標,算法收斂速度下降,收斂精度不高。 其次,在全局探索與局部開發階段中,種群中個體的更新都圍繞種群最優個體進行,容易導致算法的尋優性能對當前種群中最優個體的位置過度依賴,如果種群最優個體過早陷入局部最優的位置,其往往會對其他非最優個體進行引導聚集,過早地造成算法多樣性下降,導致算法出現早熟現象,算法陷入局部最優。基于以上分析,本文提出一種采用混合搜索策略的阿奎拉優化算法,以提高AO算法的優化性能。
2.1動態調整
固定的探索與開發概率容易導致搜索之間的不平衡,進而降低算法的搜索效率。從AO算法中不難看出,算法在執行探索步驟與開發步驟之間缺乏信息交流,導致探索與開發各自為政,探索與開發之間存在嚴重不平衡。為了克服這一缺陷,本文通過一種震蕩變化的函數作為切換探索與開發之間的動態調整概率系數。動態調整的函數如式(10)所示,其中動態調整函數變化曲線如圖1所示。
r(t)=(exp(-5t/T)×cos(5t)+l)/2(10)
其中:l=1,當r(t)lt;0.5時,其值變換為1-r(t)。在改進算法中通過rand≤r(t)動態切換全局探索步驟與局部開發步驟,基于一般元啟發式算法普遍采用“算法在搜索前期側重進行全局勘探、在后期側重開展局部開發”搜索策略原則,HAO算法也遵循這一原則。從圖1可以看出,r(t)的值在迭代前期表現為遠離數值0.5波動變化,隨著迭代次數的增加,r(t)值的波動幅度逐漸靠近數值0.5,最后r(t)在數值0.5附近波動變化,算法在前期r(t)的值大于rand的概率大,在前期執行全局探索的概率較大,隨著迭代次數的增加,r(t)波動數值減小,局部開發的概率逐漸增加,全局探索與局部開發的執行概率為一種動態平衡。通過rand≤r(t)這一切換原則,算法在前期既能以較大概率執行全局探索,進行目標收斂區域的確定,又能以較小概率執行局部開發,以小概率進行開發可進一步精確確定目標收斂區域,于算法前期確定的收斂范圍將更加接近目標區域,收斂范圍也更加有效;到了算法后期,由于是在更靠近目標的附近實施探索與開發行為,其找到目標的概率也隨之增大,算法的收斂速度和優化精度也隨之得到了提高。本文算法(HAO)由于利用切換式r(t)來調整算法的全局探索與局部開發,使算法在全局探索與局部開發之間可動態相互交流與交叉切換,從而可重新調整目標收斂區域,避免由于盲目搜索而導致算法收斂速度和收斂精度不高。
2.2混沌自適應權重
較大的慣性權重有利于算法的探索行為,較小的慣性權重有利于算法的開發行為。為此,本文設計一種非線性遞減的慣性權重,并引入logistic混沌系數的混沌自適應權重。混沌自適應權重的公式如式(11)所示,混沌自適應權重的變化曲線如圖2所示。
w(t)=z(t)×w1-(w1-w2)×(2t/T-(t/T)2)(11)
z(t)=a×z(t-1)×(1-z(t-1))(12)
其中:w1=0.9;w2=0.4;a=3;z(t)表示logistic混沌系數。
從圖2可以看出,混沌自適應權重的變化曲線整體上呈非線性遞減,這樣的策略既使得算法在前期有著高效的探索效率,加快算法目標收斂區域的確定,在算法后期又能提升算法開發效率,快速確定目標位置,提升算法收斂速度。其中混沌系數具有隨機性的特點,從圖2可以看出,混沌系數的引入使得自適應權重的變化具有一定的靈活性,自適應權重按波動性的非線性的規律變化。自適應權重通過對當前最優個體進行波動性擾動,可以有效提升當前最優個體的靈活性,使當前最優個體對種群其他個體的引導更加靈活,有助于種群多樣性的提升,避免算法陷入局部最優,從而提升算法的收斂精度。其中對式(1)(3)(7)(8)引入混沌自適應權重之后,分別如式(13)~(16)所示。
X(t+1)=w(t)×Xbest(t)×(1-t/T)+(XM(t)-rand×Xbest(t))(13)
X(t+1)=w(t)×QF(t)×Xbest(t)-(G1×X(t)×rand)-G2×levy(D)+rand×G1(14)
X(t+1)=w(t)×(Xbest(t)-XM(t))×α-rand+((UB-LB)×rand+LB)×δ(15)
X(t+1)=w(t)×QF(t)×Xbest(t)-(G1×X(t)×rand)-G2×levy(D)+rand×G1(16)
2.3改進型差分變異策略
從AO的式(1)(3)(7)(8)不難看出,其具有一個共同點,都是利用當前最優個體進行引導的搜索,基于前面的分析可知,這樣容易導致種群多樣性下降,算法陷入局部最優。因此,提升種群多樣性是算法避免陷入局部最優的關鍵所在。本文利用改進型差分變異策略,對種群中非最優個體進行變異操作,以增加種群的多樣性,增強算法跳出局部最優的能力。
a)變異概率系數的設計。本文主要對非最優個體進行變異操作,然而傳統的固定變異概率系數具有一定的隨機性與盲目性。因此,本文設計一種新的變異概率系數,其具有明確的指向性,使變異向有助于算法收斂的方向進行,進而加快算法的收斂。其變異概率系數如式(17)所示。
p(i)=0fiti=fitmin
0.3×(fiti-fitmin)fitmax-fitminfitilt;(fitmax+fitmin)/2
0.3fiti≥(fitmax+fitmin)/2(17)
其中:p(i)表示第i個個體的變異概率;fiti表示第i個個體的適應度值;fitmin表示群體中最小適應度值;fitmax表示群體的最大適應度值。當個體的變異概率randlt;p(i)時,則執行變異策略。式(17)表示對最優個體的變異概率為0,對非最優個體來說,其離最優個體越遠,變異的概率就越大;反之,則越小。因此,該變異概率系數是具有指向性的,可使非最優個體的變異朝算法收斂的方向進行。
b)變異操作。本文采用改進型差分變異策略進行變異操作,以提升算法的多樣性。差分變異方法主要有DE/rand/1、DE/rand/2、DE/best/1、DE/best/2、DE/current-to-rand/1、DE/current-to-best/1等。本文選取DE/best/2并加以改進,然后將其用于AO的變異操作。DE/best/2變異公式如式(18)所示。
X(t+1)=Xbest(t)+F×(Xr1(t)-Xr2(t))+F×(Xr3(t)-Xr4(t))(18)
其中:Xbest為群體當前最優個體;Xr1、Xr2、Xr3、Xr4為種群中的隨機個體;F為比例因子,取0~1的隨機數。本文對式(18)作如下改進(式(19):
Xnew(t+1)=Xα(t)+Xβ(t)+Xδ(t)3+F×sgn(m1)×(Xr1(t)-Xr2(t))+F×sgn(m2)×(Xr3(t)-Xr4(t))(19)
m1=fit(Xr1(t))-fit(Xr2(t)),m2=fit(Xr3(t))-fit(Xr4(t))(20)
其中:fit(X)表示X的適應度值;sgn(·)為符號函數。式(19)首先將Xbest改為種群中個體適應度前三個體的均值,通過適應度前三個體進行引導,個體的更新將不會盲目地趨向最優個體附近,且個體的分布在搜索空間將更加靈活,從而整個種群的多樣性將會得到改善,種群多樣性增加有利于算法跳出局部最優,從而提升算法的收斂精度;其次,在擾動項上增加符號函數,利用隨機個體的適應度信息來增強擾動項的離散性,個體的更新將更加靈活,種群多樣性將進一步得到改善。通過式(13)變異后的Xnew與當前個體進行適應度值對比,如果變異后適應度值更優,則保留變異個體。
2.4HAO算法流程
綜上所述,HAO算法執行的流程如圖3所示。
2.5HAO算法時間復雜度分析
假設算法迭代次數為T,種群規模為N,搜索空間維度為D,標準AO算法的時間復雜度為O(N×(T×D+1))。HAO算法中,使用動態調整的計算時間復雜度為O(T),使用混沌自適應權重的計算時間復雜度為O(T),在改進差分變異中,變異概率系數的計算時間復雜度為(T×N),變異操作的計算時間復雜度為(N×T×D)。若不考慮計算時間復雜度的低次項,則HAO的計算時間復雜度為O(N×(T×D+1)),與標準AO的計算時間復雜度一致。
2.6種群分布分析
設搜索空間為二維,種群規模為20。本文利用step函數來描繪和刻畫HAO和AO算法在不同進化代數的種群分布,具體如圖4所示。
圖4中的紅色小點為step函數的理論最優位置、藍色小圈為種群中不同個體的位置(見電子版)。從圖4可以看出,進化至第5代,AO算法種群中大多數個體聚集分布在與紅色小點(理論最優位置)還有一段距離的位置,但沒有個體靠近紅色小點;HAO算法種群中大多數個體都已經分布在紅色小點(理論最優位置)的附近周圍,并且有部分個體已經非常接近紅色小點了。進化至第25代,AO算法種群大多數個體仍然聚集在與紅色小點(理論最優位置)還有一段距離的位置,也沒有個體到達紅色小點位置;HAO算法種群中大多數個體都已經非常接近紅色小點,并且有部分個體已經到達紅色小點位置,算法已經找到理論最優位置了。進化至第50代,AO算法種群的分布情況與至第25代種群的分布情況基本一致,算法已陷入局部最優;HAO算法種群中大多數個體都已經到達紅色小點位置(理論最優位置)。綜合以上分析,從另一個側面說明HAO算法具有較強的全局搜索能力和較快的全局收斂速度,種群的多樣性得到有效保持,規避陷入局部最優的能力較強。
3數值實驗仿真分析
3.1實驗環境配置與基準測試函數
本次實驗仿真的環境配置為:64位Windows 10操作系統,Intel CoreTM i7-1065G7的CPU,主頻1.30 GHz,內存16 GB,仿真軟件為MATLAB R2019b。
為全面分析改進算法的性能,本文將HAO與標準AO算法、海鷗優化算法(SOA)[17]、算術優化算法(AOA)[18]、哈里斯鷹優化算法(HHO)[19]、文獻[15]的IAO算法、文獻[16]的AOAAO算法進行數值仿真實驗對比。選取八個基準測試函數進行數值實驗測試,測試函數如表1所示。
3.2數值實驗分析與收斂性分析
為了實驗測試的公平性,實驗中所有對比算法均在同一條件下運行。其中種群規模為30,最大迭代次數為500。在本文測試數據中,為避免隨機性對測試結果的干擾,每一算法對每一測試函數都獨立運行30次,并記錄每次運行測試的平均值和標準差。在平均值指標上精度越高,表明算法的尋優能力越強;在標準差指標上精度越高,表明算法整體尋優穩定性越優。表2為所有對比算法在八個基準函數測試數據的對比。為比較算法的收斂速度,將HAO與其他六種對比算法進行收斂速度測試(同一條件下),得到的函數收斂圖如圖5所示。
基于表2實驗數據進行對比分析。從平均值指標上看,HAO在f1~f6均達到理論最優值,在未達到理論最優的f7和f8上,HAO的精度均高于其他六種對比算法。值得強調的是,f7為高維多峰函數,尋找其最優值比較難,然而,HAO相較于AO在平均值尋優精度上提升了八個量級,提升效果較為明顯。從表2中可以看出,HAO尋優能力均強于對比算法,其中AO和HHO僅在f6上找到的平均值達到理論最優;SOA和AOA均未找到理論最優;IAO在f1、f3、f7找到理論最優,AOAAO在f1~f3、f7上找到理論最優值。因此,HAO的尋優能力在對比算法中是最強的。從標準差指標上看,HAO得到的標準差精度均比其他對比算法好,其中HAO求解f1~f6得到的標準差為理論最優,表現均比其他對比算法好,求解f7、f8得到的標準差也比其他對比算法更接近理論最優值,因此,HAO算法的穩定性均比其他對比算法好。HAO優化精度的提高主要得益于采用了改進型差分變異策略,通過隨機個體的差分作用,并利用適應度值較優的多個個體進行引領,有效提升了種群多樣性,增強了算法跳出局部最優能力的同時又可提升算法的優化精度。
從圖5中可以看出,HAO的收斂曲線(針對所有函數)均位于所有對比算法收斂曲線的最下方位置,因此,在七種對比算法中,HAO的收斂速度是最快的,本文算法(HAO)的搜索效率在七種對比算法中是最高的。HAO具有較好的收斂性能,這主要是因為本文算法(HAO)采用了動態調整策略,平衡了算法的全局探索與局部開發,利用混沌自適應權重提高了算法的全局搜索效率,從而加快了算法的收斂速度。
3.3不同改進策略分析
為驗證不同改進策略對HAO的影響,本文將HAO和AO分別與僅采用動態調整策略的阿奎拉優化算法(HAO-1)、僅采用混沌自適應權重的阿奎拉優化算法(HAO-2)、僅采用改進型差分變異策略的阿奎拉優化算法(HAO-3)進行數值實驗對比分析,并記錄平均值(M)和標準差(S)。實驗條件與3.2節保持一致。不同改進策略對比的實驗結果如表3所示。
從表3中可以看出,三種改進策略對提高算法的尋優能力都起到明顯的作用,特別是求解f1~f4 時的提升程度較為明顯;求解f5、f7、f8時,僅采用動態調整策略的AO算法(HAO-1)與僅采用混沌自適應權重的AO算法(HAO-2)的提升程度不是非常明顯,但是僅采用改進型差分變異策略的AO算法(HAO-3)求解這些測試函數時,尋優能力提升程度還是比較明顯的。融合三種搜索策略的HAO,其尋優能力明顯優于采用單一搜索策略的AO算法,HAO算法的改進策略對算法尋優性能的提升是具有積極作用的。
3.4Wilcoxon數學統計檢驗
本文通過Wilcoxon數學統計檢驗的方法,驗證HAO與AO、SOA、AOA、HHO、IOA、AOAAO的顯著性差異。表4為Wilcoxon檢驗結果。在顯著性水平為5%條件下檢驗算法之間的顯著差異性,其中p代表檢驗的數值,若p值小于5%,則代表算法之間存在顯著性差異,否則不具有明顯差異。h為檢驗結果,h為1則代表有明顯差異,為0則代表無明顯差異。NaN表示數據無效,即檢驗的所有樣本數據相同,算法不具有顯著差異性。從表4數據上看出,p值小于5%的占大多數,因此,HAO與其他六種對比算法具有顯著性差異,HAO的尋優能力更強。
3.5與最新改進元啟發式算法對比
為進一步驗證HAO算法的尋優性能,將HAO、AO算法和文獻[20]的采用混合策略改進的學生心理優化算法(SPBO)與文獻[21]采用多模式飛行的烏鴉搜索算法(MFCSA)進行數值實驗測試對比,并記錄測試的平均值與標準差。其中,在本次測試中,選取CEC2019的10個測試函數進行測試,CEC2019測試函數具有問題規模大、尋優較為復雜的特性,可以有效區別算法尋優能力之間的差異。測試條件與3.2節保持一致。CEC2019測試函數的具體特征如表5所示,CEC2019測試的數據如表6所示。
基于表6的數據可知,HAO算法在測試函數CEC01、CEC02、CEC04~CEC09的平均值和標準差精度均優于AO、SPBO、MFCSA算法;在CEC03上所有算法的平均值精度是一致的,但是HAO標準差精度優于其他幾種對比算法;在CEC10上,HAO算法的標準差精度略差于SPBO和MFCSA,但HAO算法的平均值精度依然保持領先的優勢。因此,從總體上看,HAO算法有著顯著的尋優性能,且算法的穩定性同樣具有明顯優勢,HAO算法的改進是有效的。
4工程應用
為驗證HAO的實用性,本文通過對在工業控制中廣泛使用的PID控制器進行參數優化,以驗證本文算法的實用性。PID控制器通過調節比例單元Kp、積分單元Ki、微分單元Kd組成的控制量對被控制對象進行調節,其目的是使適應度信息最小,以達到最佳的控制效果。其中,通過HAO算法對PID控制器優化原理如圖6所示。
在PID參數優化測試中適應度信息數學模型如式(21)所示。
F=∫∞0(ω1|e(t)|+ω2u2(t))dt(21)
u(t)=Kp[e(t)+1Ti∫t0e(t)dt+Tdde(t)t](22)
e(t)=in(t)-out(t)(23)
其中:ω1和ω2為[0,1]的權值常數;Ti為積分時間常數;Td為微分時間常數;Ki=Kp/Ti,Kd=Kp×Td;e(t)為給定的輸入量in(t)和輸出量out(t)之間的差值。此外,為了防止出現超調,采用一定的懲罰控制,當e(t)lt;0時,適應度信息的數學模型如式(24)所示。
F=∫∞0(ω1|e(t)|+ω2u2(t)+ω3|e(t)|)dt(24)
其中:ω3為權值,ω3gt;gt;ω1,通常ω1 = 0.999,ω2 = 0.001,ω3=100。在本文中選取二階延遲系統為被控制對象,其數學模型如式(25)所示。
out(s)=800s2+1.5s+1.6e-0.1s(25)
在PID優化測試中,本文算法(HAO)和AO、SOA、AOA、HHO、IAO、AOAAO算法分別對PID控制器進行優化,以驗證本文算法的實用效果。為了公平性,所有算法迭代次數均為100,其中Kp、Ki、Kd的取值均為[0,300]。圖7為各算法對PID控制器進行優化的適應度信息收斂曲線圖,表7為PID優化性能參數。
通過表7的數據可知,HAO的適應度信息為101.672 3,其適應度值的信息是最小的,因此HAO的優化效果較好。雖然HHO和IAO算法對PID控制器的優化適應度信息與HAO一致,但通過圖7可以看出,HAO的收斂速度明顯優于其他對比算法,HAO在10代以內適應度信息達到最優。因此,相較于其他對比算法,HAO的實用性更強。
5結束語
針對AO的不足,本文提出一種采用混合搜索策略的阿奎拉優化算法(HAO)。首先利用動態調整切換概率來平衡全局探索與局部開發;其次,利用混沌自適應權重增強算法的全局搜索效率,提升算法的收斂速度;最后,采用改進型差分變異策略,利用適應度值較優個體引領群體中其他個體開展搜索活動,保持了種群的多樣性,增強了算法跳出局部最優的能力。通過數值實驗測試,驗證了本文算法在優化精度、收斂速度方面得到了明顯的提升,且跳出局部最優的能力也得到了增強。最后,通過PID參數優化實例測試,驗證了本文算法具有較好的實用性。在后續研究中,考慮將本文算法應用于特征選擇、無線傳感器網絡節點定位和圖像分割等應用中。
參考文獻:
[1]Salomon R.Re-evaluating genetic algorithm performance under coordinate rotation of benchmark functions.A survey of some theoretical and practical aspects of genetic algorithms[J].Biosystems,1996,39(3):263-278.
[2]Price K V.Differential evolution:a fast and simple numerical optimizer[C]//Proc of North American Fuzzy Information Processing.Pisca-taway,NJ:IEEE Press,1996:524-527.
[3]Kennedy J,Eberhart R.Particle swarm optimization[C]//Proc of International Conference on Neural Networks.Piscataway,NJ:IEEE Press,1995:1942-1948.
[4]Mirjalili S,Lewis A.The whale optimization algorithm[J].Advances in Engineering Software,2016,95:51-67.
[5]Rashedi E,Nezamabadi-Pour H,Saryazdi S.GSA:a gravitational search algorithm[J].Information sciences,2009,179(13):2232-2248.
[6]Mirzazadeh M,Eslami M,Zerrad E,et al.Optical solitons in nonlinear directional couplers by sine-cosine function method and Bernoulli’s equation approach[J].Nonlinear Dynamics,2015,81(4):1933-1949.
[7]Singh M,Panigrahi B K,Abhyankar A R.Optimal coordination of directional over-current relays using teaching learning-based optimization(TLBO) algorithm[J].International Journal of Electrical Power amp; Energy Systems,2013,50:33-41.
[8]Pan Xiaoying,Jiao Licheng.Social cooperation based multi-agent evolutionary algorithm[J].Journal of Xidian University,2009,36(2):247-280.
[9]胡章芳,馮淳一,羅元.改進粒子群優化算法的移動機器人路徑規劃[J].計算機應用研究,2021,38(10):3089-3092.(Hu Zhangfang,Feng Chunyi,Luo Yuan.Path planning for mobile robot based on improved particle swarm optimization algorithm[J].Application Research of Computers,2021,38(10):3089-3092.)
[10]宋杰,許冰,楊淼中.基于自適應步長果蠅優化算法圖像分割[J].計算機工程與應用,2020,56(4):184-190.(Song Jie,Xu Bing,Yang Miaozhong.Image segmentation based on adaptive step drosophila optimization algorithm[J].Computer Engineering and Application,2020,56(4):184-190.)
[11]Islam M A,Gajpal Y,ElMekkawy T Y.Hybrid particle swarm optimization algorithm for solving the clustered vehicle routing problem[J].Applied Soft Computing,2021,110:107655.
[12]Abualigah L,Yousri D,Abd Elaziz M,et al.Aquila optimizer:a novel meta-heuristic optimization algorithm[J].Computers amp; Industrial Engineering,2021,157:107250.
[13]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.
[14]Zhang Yujun,Yan Yuxin,Zhao Juan,et al.Chaotic map enabled algorithm hybridizing hunger games search algorithm with Aquila optimizer[C]//Proc of the 2nd International Conference on Machine Learning and Computer Application.2021:1-5.
[15]Ma Lin,Li Jun,Zhao Ye.Population forecast of China’s rural community based on CFANGBM and improved Aquila optimizer algorithm[J].Fractal and Fractional,2021,5(4):190.
[16]Zhang Yujun,Yan Yuxin,Zhao Juan,et al.AOAAO:the hybrid algorithm of arithmetic optimization algorithm with Aquila optimizer[J].IEEE Access,2022,10:10907-10933.
[17]Dhiman G,Kumar V.Seagull optimization algorithm:theory and its applications for large-scale industrial engineering problems[J].Know-ledge-Based Systems,2019,165:169-196.
[18]Agushaka J O,Ezugwu A E.Advanced arithmetic optimization algorithm for solving mechanical engineering design problems[J].PLoS One,2021,16(8):e0255703.
[19]Aaha B,Sm C,Hf D,et al.Harris hawks optimization:algorithm and applications[J].Future Generation Computer Systems,2019,97:849-872.
[20]張偉,王勇,張寧.采用混合策略的改進學生心理優化算法[J].計算機應用研究,2022,39(6):1718-1724.(Zhang Wei,Wang Yong,Zhang Ning.Improved student psychological optimization algorithm using hybrid strategy[J].Application Research of Compu-ters,2022,39(6):1718-1724.)
[21]馮愛武,王勇,付小朋.采用多模式飛行的烏鴉搜索算法[J].計算機應用研究,2022,39(6):1710-1717.(Feng Aiwu,Wang Yong,Fu Xiaopeng.Crow search algorithm using multi-mode flight[J].Application Research of Computers,2022,39(6):1710-1717.)
收稿日期:2022-04-07;修回日期:2022-05-19基金項目:國家自然科學基金資助項目(61662005);廣西自然科學基金資助項目(2021GXNSFAA220068)
作者簡介:付小朋(1996-),男,重慶人,碩士研究生,主要研究方向為計算智能;王勇(1963-),男(通信作者),廣西南寧人,教授,碩導,博士,主要研究方向為計算智能(wangygxnn@sina.com);馮愛武(1996-),男,山西臨汾人,碩士研究生,主要研究方向為計算智能.