王 粟,蔡文成,曾 亮
(湖北工業大學電氣與電子工程學院,湖北 武漢 430068)
在工業控制中,PID控制器憑借結構簡單、成本低、魯棒性強等優點成為了應用最為廣泛的控制器[1]。隨著微積分和控制理論的不斷深入,分數階PID控制的設計也日漸成熟。分數階PID控制器由于多了兩個可調參數λ和μ,相較于整數階控制器能夠更靈活地控制受控對象[2]。
在實際應用中,分數階PID控制器有三種常用的整定方法:1)相位裕量與幅值裕量法,利用相位裕量和幅值裕量與控制器參數的數學關系式求出;2)主導極點法,利用主導極點的特點來確定;3)基于Bode理想傳遞函數的分數階控制器參數整定法,根據Bode理想傳遞函數作為參考系統來確定[3]。
上述三種方法通過計算或實驗可以得出控制器參數,實現對受控系統的有效控制,但也存在一些問題,例如:整定規則多,計算量大,方法復雜,而且當受控系統發生變化時,又需要重新計算[4]。這些問題的存在使分數階PID控制器很難滿足當今工業控制中實時性、快速性、穩定性的要求,因此尋找一種快速、穩定的算法就顯得尤為重要。
隨著人工智能算法的迅速發展,本質上,控制器參數整定也是一種尋優過程,有關學者提出了利用智能算法對分數階PID控制器參數進行尋優。張艷珠[5]等人提出了遺傳算法尋優,齊戰[6]等人提出了基于改進狀態空間模型的遺傳算法尋優;金滔[7]等人提出了粒子群算法參數尋優,趙華東[8]等人提出了基于改進慣性權重和學習因子的粒子群算法尋優,那景童[9]提出了模糊自適應粒子群算法尋優;吳正平[10]提出了改進生理地理學優化算法尋優;熊兼海[11]提出基于模糊免疫的分數階控制器設計。
天牛須搜索(Beetle Antennae Search,簡稱BAS)算法是學者受天牛覓食的啟發提出的一種仿生算法。該算法有兩個優點:第一,不需要知道函數具體形式和梯度信息[12];第二,能夠降低運算量,縮短尋優時間[13]。這兩個優點應用于控制器參數整定十分合適,因此汪玉風[14]等人利用天牛須算法的優點對PID控制器進行參數尋優。本文作者在閱讀大量有關文獻的基礎上,提出一種基于混沌天牛須算法的分數階PID控制器參數尋優,仿真結果顯示該方法收斂速度快、精確度高。
分數階PID控制器由Podlubny教授最先提出,一般格式簡記為PIλDμ,傳遞函數為:
(1)
式中:KP為比例增益;KI為積分增益;KD為微分增益;λ和μ分別為積分階次和微分階次。
本文采用Oustaloup法對控制器中的微積分算子近似處理[15],基本步驟如下:
1)確定近似頻段的范圍[ωb,ωh]和近似階次N;
(2)
(3)
(4)
3)最后根據式(5)得出分數階Laplace算子sα的整數階有理傳遞函數的表達形式;
(5)
實現了從分數階傳遞函數到整數階傳遞函數的近似后,采用simulink模塊封裝技術,即可設計出分數階傳遞函數模塊。
BAS算法是2017年提出的智能優化算法,其生物原理為:天牛通過左右須感應到的食物氣味的強弱來判斷其大致方向,如果左邊的觸角收到的氣味強度比右邊大,就會向左飛,反之則向右飛,依據這一原理天牛就可以快速準確地找到食物[16]。
根據天牛的覓食原理,建立通用系統模型,過程如下:
1) 隨機生成天牛種群所在的位置以及天牛須的朝向,并對其進行歸一化處理;
(6)
其中,Dim為空間維度,rands()為matlab中生成隨機矩陣函數。
2) 建立天牛左右須與天牛個體的質心對應的空間坐標方程;
(7)
其中,xi表示天牛個體的質心在第i次迭代的位置,d0表示天牛須之間的距離,xli表示天牛左須在第i次迭代的位置,xri表示天牛右須第i次迭代的位置。
3) 確定天牛下一步移動的方向;
根據系統所選的適應度函數,計算天牛左右須的適應度值,并往適應度值小的觸須方向移動。
4) 迭代更新天牛的位置;
xi+1=xi-eta·b·sign(f(xri)-f(xli))
(8)
其中,eta為步長因子,通常取0.95左右,sign(·)為符號函數,其作用是返回參數的正負值,f(·)表示為適應度函數。
混沌是一種非線性科學概念,是指系統對因對初值敏感而表現出的不可預測的、類似隨機性的運動。該現象普遍存在于自然界,具有遍歷性、隨機性、規律性等特點[17]。
從數學形式上看,Logistic映射是一種非常簡單的混沌映射,所以本文使用Logistic映射產生混沌序列變量。Logistic映射的公式為:
Xn+1=Xn·μ·(1-Xn)
(9)
式中,μ∈[0,4],是Logistic參數。需要注意的是,當Xn∈[0,1]時,Logistic映射工作處于混沌狀態。
本文設計的混沌優化步驟如下,基本思想是把混沌變量通過Logistic線性映射到優化變量的取值空間,然后利用混沌變量進行搜索。
1)按照公式(9)將最優天牛位置映射到Logistic方程的定義域[0,1]中,形成混沌變量;
2)將形成的混沌變量按照公式(10)逆映射到函數解空間中;
(10)

3)利用公式(11)對個體進行混沌擾動;
(11)
式中,X′為經過擾動后的新個體,step為擾動步長,可以由公式(12)確定,
step=a+(b-a)·rand(1,Dim)
(12)
式中,a為參數下限,取-1;b為參數上限,取1;Dim為空間維度,rand()為生成隨機矩陣函數。
混沌搜索能在一定范圍內按其自身的規律不重復地遍歷所有狀態,所以利用混沌擾動產生的混沌變量進行搜索毫無疑問地比盲目隨意的隨機搜索更具優越性[17]。利用混沌搜索的這一優點,本文將兩者有機結合在一起,每次天牛位置更新后,利用混沌擾動機制,避免天牛個體陷入局部最優。
算法迭代步驟如下:
步驟1 設置混沌天牛須算法參數;
步驟2 初始化天牛須種群;
步驟3 根據公式(6)進行歸一化處理;
步驟4 根據公式(7)搜尋可行解;
步驟5 根據公式(8)更新天牛須位置;
步驟6 將最優天牛個體通過Logistic映射,形成混沌變量;
步驟7 根據公式(10)逆映射到解空間中;
步驟8 進行混沌擾動,
步驟9 對擾動后的個體判斷是否滿足終止準則,滿足則退出循環,不滿足則返回步驟3。
本文利用Matlab/Simulink對混沌天牛須算法程序和系統模型進行仿真。混沌天牛須算法與simulink模型之間連接的橋梁是天牛個體(即分數階PID控制參數)和該天牛對應的適應度值(即控制系統的性能指標)。
混沌天牛須算法參數設置為:天牛種群規模Size=10,維數Dim=5,左右須距離d=1,初始步長step=2,步長系數eat=0.95,混沌系數u=4,迭代次數MaxIter=80,最小適應度值MinFit=0.6,選取的被控對象的傳遞函數
(10)
選誤差性能指標ITAE作為適應度函數

(11)
經過算法尋優,得出的分數階控制器為:
(12)
為了驗證利用混沌天牛須算法尋優后的分數階PID控制器參數是否能達到預期的控制效果,再使用天牛須算法、粒子群算法對分數階PID參數進行尋優,尋優后的控制器傳遞函數為:
(13)
(14)
各自的性能指標見表1。

表1 算法性能指標
將控制器參數帶入到仿真模型中,得出圖1所示的仿真波形。

圖 1 仿真階躍波形
結合表1 和圖1可以看出混沌天牛須算法相較于天牛須算法和粒子群算法有較好的尋優能力。
分數階PID控制器參數對控制器性能起著決定性作用,本文運用混沌天牛須算法,通過引進混沌擾動機制,使天牛個體能夠找到全局最優值,尋優得出的參數也具有很好的控制效果。經過仿真結果對比,混沌天牛須算法相較于天牛須算法、粒子群算法尋優后的參數更具有效性。更進一步,對于比例系數,其階次是否也能為分數階,這有待研究。