任宇希,丁振偉,莫愁,覃柄涪,肖浩彬
(1.桂林電子科技大學 541004;2.桂林智工科技有限責任公司 541001)
隨著計算機技術的發展,PID控制因其簡單、方便的優勢,被廣泛應用于電子、自動控制、航天等領域[1-2],在工程控制領域有著十分重要的地位,在實際系統中所占比例超過90%[3]。對于PID控制,最為關鍵的就是PID的參數整定,常規的參數整定方法,比較復雜難以實現,而且多存在震蕩的情況。使用智能算法能有效快速地實現PID參數整定。文獻[4]提出了蝙蝠算法的PID參數整定,分別使用Ziegler-Nichols方法、粒子群算法和蝙蝠算法獲得PID參數,對比了三種方法的系統閉環性能和運行效率。
禿鷹搜索(bald eagle search,BES)優化是馬來西亞學者Alsattar于2020年提出的一種新型元啟發式算法,該算法具有較強的全局搜索能力,能夠有效地解決各類復雜數值優化問題的優點[5]。其算法原理如下:
禿鷹是一種遍布于北美洲地區的猛禽,飛行中視力敏銳,觀察能力優秀.以其捕食鮭魚為例,首先禿鷹會基于個體和種群到鮭魚的濃度來選擇搜索空間,朝一個特定區域飛行;其次在選定搜索空間內搜索水面,直到發現合適的獵物;最后禿鷹會逐漸改變飛行高度,快速向下俯沖,從水中成功捕獲鮭魚等獵物。BES算法以禿鷹捕食獵物的行為進行模擬,將其分為選擇搜索空間、搜索空間獵物和俯沖捕獲獵物三個階段。
在控制系統中,PID控制的應用十分廣泛,傳統的PID控制一般是由控制器和受控對象所組成,是一種線性的控制系統。
PID 參數優化的目的在于尋找一組 Kp、Ki、Kd,使系統的指標達到最優。
r(t)為系統的輸入,y(t)為系統的輸出,e(t)為系統的偏差,u(t)為PID控制器的輸出,故存在以下表達式:

PID控制的標準函數公式如下:

經過標準簡化的傳遞函數模型如下:

K為控制器增益,Ti為積分時間常數,Td為微分時間常數。


影響系統性能的指標有很多,單位階躍信號和穩態誤差分別用來衡量閉環系統的動態性能和穩態性能,我們所指的動態性能一般包括上升時間tr、峰值時間 tp、超調量 σ、調節時間 ts、震蕩次數N。使用禿鷹算法進行PID參數優化,每只禿鷹都可以分別作為Kp(比例)、Ki(積分)、Kd(微分)三個參數,在搜索空間內,令 Kp∈[kpmin,kpmax],Ki∈[kimin,kimax],Kd∈[kdmin,kdmax],對種群進行初始化、適應度計算、迭代計算,搜索出一組(kp、ki、kd)使得全局解最優。將全局最優解對應的參數賦值給 Kp、Ki、Kd,畫出單位階躍曲線和適應度曲線。禿鷹算法整定PID參數系統框圖如圖1所示。

圖1 禿鷹算法整定PID參數
根據被控對象模型,經過算法迭代尋找到全局最優解,然后將對應的最優參數代入PID控制器,在每個迭代周期開始時,首先需要確定禿鷹的搜索空間,再來更新禿鷹的位置、更新運動狀態進行捕獲行動,接著更新捕獲行動中的位置,局部尋優的速度和準確性有所提高。
在算法優化參數的過程中,利用誤差絕對值時間指標作為參數選擇的最小目標函數,在目標函數中加入平方項,可以有效預防控制能量溢出,目標函數的公式如下:

同時為了避免超調,設置懲罰函數功能,即如果產生超調,將超調量作為最優指標其中的一項[6]。目標函數如下所示:

式中,ω1取值為 0.999,ω2取值為 0.01,(t)為誤差,u(t)為控制器輸出。
實驗基于Matlab平臺,算法參數設置維度為3,種群數量為50,最大迭代次數為100,控制螺旋參數 a=10,R=1.5。在控制領域,典型的系統一般為一階系統、二階系統,為了驗證禿鷹算法整定PID算法的性能,選用文獻[7]中一個經典的控制系統模型進行測試,并且與PSO-PID進行比較,系統的開環傳遞函數如下:

基于該傳遞函數的適應度曲線如圖2所示:

圖2 最優適應度曲線

圖3 BES-PID單位階躍曲線

圖4 PSO-PID單位階躍曲線
由實驗的圖像可以看出,基于禿鷹算法的PID參數整定下的適應度曲線相比PSO算法,通過較少的迭代之后達到穩定。單位階躍曲線來看,BESPID的超調量峰值為1.012,小于PSO-PID的超調量峰值1.016。所以,BES算法的優化PID參數在最優適應度曲線的迭代次數和優化超調量方面皆優于PSO算法。
本文引入了禿鷹算法進行PID參數整定,該算法具有較強的全局搜索能力,能有效解決比較復雜的尋優問題。輸入信號為單位階躍信號,以一種常見的開環控制模型為傳遞函數,并且與PSO粒子群算法進行了比較,通過對實驗仿真結果的分析,得到了禿鷹算法在最優適應度曲線穩定所需時長以及超調量方面均優于PSO粒子群算法。