劉 靜,劉瑞敏
(昆明理工大學(xué) 信息工程與自動化學(xué)院,云南 昆明 650217)
因為PID控制具有結(jié)構(gòu)簡單、魯棒性強(qiáng)、算法易于實現(xiàn)的優(yōu)點[1],在當(dāng)今的火電廠過程控制中,依然存在著比較多的PID控制,同時,PID控制器對系統(tǒng)的穩(wěn)定、安全和經(jīng)濟(jì)運行有著十分重要的影響,因此控制器參數(shù)的整定和優(yōu)化一直是關(guān)鍵的問題。另一方面,由于控制對象復(fù)雜,導(dǎo)致PID參數(shù)的整定變得比較困難。隨著群體智能算法的發(fā)展,優(yōu)化控制器參數(shù)也相應(yīng)的得到了較好的解決。文獻(xiàn)[2]采用遺傳算法對PID控制器參數(shù)進(jìn)行優(yōu)化,遺傳算法在進(jìn)行尋優(yōu)的時候不需要知道目標(biāo)函數(shù)的梯度信息,該算法根據(jù)適應(yīng)度函數(shù)作為尋優(yōu)依據(jù),通過交叉、變異、選擇等算子優(yōu)化參數(shù),但這些操作又從一定程度上影響了尋優(yōu)的收斂速度。文獻(xiàn)[3]采用標(biāo)準(zhǔn)粒子群算法進(jìn)行PID參數(shù)優(yōu)化。粒子群算法是一種基于全局優(yōu)化的群體智能算法,該算法是對普通的隨機(jī)搜索算法的改進(jìn),模擬鳥群尋找食物這一特點在多維空間中構(gòu)造多個粒子進(jìn)行尋優(yōu)。每個粒子不斷更新自己的位置,通過自身最優(yōu)值和群體最優(yōu)值來修改自己的前進(jìn)方向和速度[4]。標(biāo)準(zhǔn)粒子群算法是以軌道形式實現(xiàn)的,同時由于其粒子速度有限,因此搜索過程只是一個有限的區(qū)域空間,不能保證其以概率1收斂到全局最優(yōu)解[5]。
本文在300 MW循環(huán)流化床實例基礎(chǔ)之上,分析并研究了混沌量子粒子群算法在熱工控制中對PID控制器參數(shù)的優(yōu)化。首先,通過經(jīng)驗公式對流化床在滿負(fù)荷運行時的燃料控制器的參數(shù)進(jìn)行初步整定,然后,利用標(biāo)準(zhǔn)粒子群算法和混沌量子粒子群算法分別對流化床在滿負(fù)荷運行時的燃料控制器進(jìn)行參數(shù)優(yōu)化,通過仿真表明,混沌量子粒子群算法有比更好的參數(shù)優(yōu)化效果,在熱工控制中具有一定的實用價值。
在工業(yè)控制中,PID控制器占有比較大的比重。針對一些典型的控制模型,比如一階慣性加遲延系統(tǒng):
(1)
對該模型往常采用的是典型的Z-N整定公式,但是該種方法應(yīng)用起來比較困難,尤其是像熱工控制中的PID參數(shù)的整定,因此,本文選用的文獻(xiàn)[6]中所提到的PID經(jīng)驗公式,該方法在應(yīng)用方便,并且所得到的控制參數(shù)相對穩(wěn)定。
假如實際中的PID傳遞函數(shù)如下所示:
(2)
式中,δ是比例帶,Ti是積分時間,Td是微分時間,α是常數(shù),一般取0.1。
對于自衡系統(tǒng),其PID參數(shù)的整定經(jīng)驗公式如下所示:
δ=αK(β+n1)
(3)
Ti=γ(nT+τ)
(4)
(5)
其中ε為4~8之間的任意數(shù)式中的n1為
取α=0.081,γ=0.6
在文中的實例仿真部分,對由該經(jīng)驗公式獲取的控制參數(shù)進(jìn)行相應(yīng)的仿真,驗證該公式的有效性。
PID控制器指的是比例、積分、微分三種控制效果的線性組合,可以將三種效果認(rèn)為是對誤差值現(xiàn)在、過去、未來的三種不同的處理方式。PID在線性系統(tǒng)的控制中有廣泛的應(yīng)用,因為其結(jié)構(gòu)比較簡單、控制算法易于實現(xiàn)且魯棒性好,具體的結(jié)構(gòu)如圖1所示。
圖1 PID控制器結(jié)構(gòu)圖
PID控制系統(tǒng)若要得到一個好的控制效果,需要比例、積分、微分這3個參數(shù)較好的組合,一般在工程中難直接獲取較好的控制參數(shù)。本文首先通過PID經(jīng)驗公式得到初始的控制參數(shù),縮小優(yōu)化參數(shù)的范圍,然后利用混沌量子粒子群算法優(yōu)化出更好的控制參數(shù),從而使PID控制器取得好的控制效果。
粒子群算法是對隨機(jī)搜索法的改進(jìn),隨機(jī)搜索法是一個粒子在空間中進(jìn)行尋優(yōu),而粒子群算法則是多個粒子在空間中進(jìn)行尋優(yōu),從而可以提升尋優(yōu)的速度以及準(zhǔn)確性。粒子群算法是模擬鳥群尋找食物的方法來進(jìn)行設(shè)計的。每個粒子的位置更新以及移動速度的更新取決于粒子自身歷史最優(yōu)位置、群體最優(yōu)位置、自身當(dāng)前位置。其具體的數(shù)學(xué)表達(dá)形式如下所示[6]:
Vin(t+1)=ωVin(t)+c1r1(Xbestin-Xin)+
c2r2(Xbestgn-Xin)
(6)
Xin(t+1)=Xin(t)+Vin(t+1)
(7)
式(6)(7)分別是粒子速速更新表達(dá)式、位置更新表達(dá)式。在式(6)中ω是慣性權(quán)重參數(shù),慣性權(quán)重表明了原來速度在下一次速度中所占的比例,ω越大,則其所占比例越大,反之越小。它決定著粒子的全局搜索能力和局部搜索能力,當(dāng)ω較大的時候,則其全局搜索能力大,反之則其局部搜索能力強(qiáng)。r1和r2分別是兩個0~1的隨機(jī)數(shù)。經(jīng)過多次仿真以及查閱文獻(xiàn)可知,一般取ω=0.7即可。另外,c1和c2取1.4[6]。
2.3.1混沌量子粒子群算法原理
混沌量子粒子群算法是將混沌特性和粒子的量子行為特性相結(jié)合而形成的。這種改進(jìn)的方法與傳統(tǒng)的標(biāo)準(zhǔn)粒子群算法的不同之處在于粒子的更新不再局限于更新速度的限制,即可以避免只在一個有限的區(qū)域內(nèi)進(jìn)行尋優(yōu),從而可以改善標(biāo)準(zhǔn)粒子群不能保證其以概率1收斂到全局最優(yōu)解這一問題。在量子空間中粒子滿足聚集狀態(tài)的性質(zhì)完全不同,因此,粒子可以在整個可行解中進(jìn)行搜索,這也決定改進(jìn)后的算法要比標(biāo)準(zhǔn)粒子群算法有更好地全局搜索最優(yōu)解的能力。量子粒子群算法是根據(jù)量子力學(xué)中的薛定諤波動方程來進(jìn)行求解的。在波動方程中,波函數(shù)的平方是粒子在空間某一點出現(xiàn)的概率密度,通過該方程得出粒子在空間中某一點出現(xiàn)的概率密度函數(shù)。然后通過蒙特卡羅隨機(jī)模擬的方式得到粒子的位置方程。以下是其具體的數(shù)學(xué)表達(dá)式[7]:
(8)
式中的u是一個0~1的隨機(jī)數(shù),其中L的具體表達(dá)式如表達(dá)式(9)所示
L(t+1)=2×β|mbest-X(t)|
(9)
(10)
式(10)中的mbest是某一代某個粒子每個尋優(yōu)參數(shù)的自身最優(yōu)值均值所組成的向量,PiN是某個粒子的第N個參數(shù)的自身最優(yōu)值。
X(t+1)=P±β×|mbest-X(t)|×ln(1/u)
(11)
P=(r1Pid+r2Pig)/(r1+r2)
(12)
式(11)是最終得出的粒子位置更新的表達(dá)式,式(12)中的Pid和Pig分別是粒子自身歷史最優(yōu)值、整個群體最優(yōu)值。從式(12)中可以看出,粒子的位置更新也是跟粒子自身歷史最優(yōu)值和整個群體的最優(yōu)值是有關(guān)的。粒子的位置更新表達(dá)式中只有β這一個參數(shù)是可控的,該參數(shù)在整個算法中比較重要,對算法的收斂性有較大影響。
混沌是一種貌似無規(guī)則的運動,指在確定性非線性系統(tǒng)中,不需附加任何隨機(jī)因素亦可以出現(xiàn)類似隨機(jī)的行為,混沌系統(tǒng)的演化對于初始條件十分敏感,從一定意義上來說系統(tǒng)的未來是不可預(yù)測的。混沌具有一定的隨機(jī)性,這種隨機(jī)性可以有效避免算法陷入局部最優(yōu)。另外,混沌的遍歷性如果可以控制的得當(dāng)則可以使最終的尋優(yōu)結(jié)果無限接近最優(yōu)。比較經(jīng)典的混沌系統(tǒng)有Logistic映射[8]:
zn+1=4zn(1-zn)zn∈(0,1)
(13)
本文使用的是下面的混沌映射:
(14)
當(dāng)判斷出種群陷入到局部最優(yōu)的時候,可以利用式(14)的混沌映射產(chǎn)生一組混沌序列,然后利用這組序列去產(chǎn)生一組隨機(jī)的新粒子代替一些粒子,從而使種群跳出局部最優(yōu)。
yi=pgi±λzi(i=0,1,…n)
λ=λ×α
其中λ的初值為1,α初值為0.5,另外隨之迭代次數(shù)的逐漸增加,搜索也會變得越來越精細(xì)。
2.3.2種群早熟的判斷依據(jù)
(1)粒子適應(yīng)度方差
隨著種群的不斷更新,每一代粒子的適應(yīng)度之間的差異會逐漸減小,粒子之間也便會越來越密集。可通過下面的方差定義來間接的反應(yīng)映粒子適應(yīng)度之間的差異。假設(shè)在第T代,第i個粒子的適應(yīng)度值是Q(i),且當(dāng)前粒子的平均適應(yīng)值是Qavg,種群的適應(yīng)度方差定義式為[9]:
(15)
式(15)中f是歸一化定標(biāo)因子,主要用來限制δ2的大小。F的大小主要取決于某一代種群中適應(yīng)度的最大值、最小值與Qavg之間的差異。具體的過程如下所示:當(dāng)Qmax-Qavg>1或者Qavg-Qmin>1的時候,f=max (Qmax-Qavg,Qavg-Qmin),否則f=1。即:
f=max{1,max{|fi-fmax|}},i∈[1,n]
(16)
從適應(yīng)度方差的定義式可以看出,當(dāng)δ2越大,則種群粒子之間表現(xiàn)的越分散,反之則表現(xiàn)的越集中。
(2)粒子之間的平均粒距
粒子之間的平均粒距是從空間上表現(xiàn)了粒子之間的分散程度,這種表示方法會更加直觀的反映出粒子之間的粒子個體的聚集程度。X(i,j)中i代表某一代中的第i個粒子,j代表該粒子的第j個優(yōu)化參數(shù)。X(j)代表該代中粒子的第j個優(yōu)化參數(shù)的平均值。以下是平均粒距的表達(dá)式[9]:
(17)
由平均粒距表達(dá)式可以看出,當(dāng)D越大,則粒子之間的分散程度越大;D越小,則粒子之間的分散程度會越小。另外,從上面這兩種判斷依據(jù)可以看出,前者屬于從數(shù)值的角度直接反映種群之間的聚集程度,后者則是通過空間幾何的形式反映種群之間的分散程度。
2.3.3混沌量子粒子群算法的步驟
混沌量子粒子群算法流程:
第一步:初始化種群。設(shè)置好種群的粒子個數(shù),一般設(shè)置為30~80即可,本文選取的粒子個數(shù)是50個。設(shè)置好循環(huán)迭代的次數(shù)以及優(yōu)化參數(shù)的上下限。
第二步:根據(jù)選定的優(yōu)化目標(biāo)函數(shù),計算初始種群每個粒子的適應(yīng)度值。
第三步:比較粒子的適應(yīng)度值,找出初始種群中的最優(yōu)適應(yīng)度值Qibest和最優(yōu)位置Xibest。
第四步:通過薛定諤波動方程和式(6)更新粒子的位置。
第五步:計算該代種群的粒子適應(yīng)度值,找出每個粒子的自身最優(yōu)適應(yīng)度Qibetter和Xibetter,通過比較粒子之間的適應(yīng)度值,找出該代種群全局最優(yōu)適應(yīng)度值Qibest和全局最優(yōu)位置Xibest。
第六步:通過種群適應(yīng)度方差和平均粒距判斷種群是否陷入早熟,如果陷入早熟則執(zhí)行第七步,否則執(zhí)行第八步。
第七步:利用本文選用的混沌映射,產(chǎn)生一組混沌序列,然后利用這組序列去產(chǎn)生一組隨機(jī)的新粒子代替一些粒子,從而使種群跳出局部最優(yōu)。然后返回第四步,繼續(xù)執(zhí)行。
第八步:判斷是否滿足結(jié)束迭代尋優(yōu)的條件。即判斷是否已經(jīng)達(dá)到了設(shè)置的迭代次數(shù),或者判斷是否滿足了搜索精度的要求。如果滿足條件了,則結(jié)束尋優(yōu),得到最終的全局最優(yōu)位置Xibest。否則返回第四步,繼續(xù)執(zhí)行,直到滿足結(jié)束尋優(yōu)的條件為止。
2.3.4混沌量子粒子群算法的PID參數(shù)優(yōu)化及控制結(jié)構(gòu)
Kp、Ti、Td作為混沌量子粒子群算法的三個優(yōu)化參數(shù),這三個參數(shù)是每個粒子的自身屬性。每個粒子依據(jù)給定的優(yōu)化目標(biāo)函數(shù)作為標(biāo)準(zhǔn),每通過對應(yīng)的規(guī)則進(jìn)行尋優(yōu),不斷地改變自身的位置,直到找到最優(yōu)的位置。
一般的可作為優(yōu)化目標(biāo)函數(shù)的指標(biāo)有誤差積分IE、絕對誤差積分IAE、平方誤差積分ISE和絕對誤差乘積積分ITAE等幾種形式。本文選用的是ITAE形式作為目標(biāo)函數(shù)。其數(shù)學(xué)形式為:
(18)
其離散形式為:
(19)
其參數(shù)優(yōu)化的控制結(jié)構(gòu)如圖2所示。
圖2 CQPSO算法的PID控制結(jié)構(gòu)圖
標(biāo)準(zhǔn)粒子群算法與混沌量子粒子群算法的不同之處如圖3所示。
圖3 PSO和CQPSO算法原理分析圖
與標(biāo)準(zhǔn)粒子群算法相比,混沌量子粒子群算法有如下的優(yōu)點:
(1)具有量子行為特性的粒子能夠遍歷整個解空間,克服了PSO中粒子無法完全遍歷整個解空間的缺陷。
(2)收斂速度快,尋優(yōu)效率高,能夠有效地局部收斂、早熟的現(xiàn)象。
(3)粒子的移動僅有位移,而沒有速度控制,從而減小了參數(shù),使算法更易于實現(xiàn)。
3.1.1實例設(shè)置
本文首先選用的是利用4個常用的函數(shù)來進(jìn)行數(shù)值計算,通過計算結(jié)果對混沌量子粒子群算法的高效、先進(jìn)性進(jìn)行初步的了解。這4個函數(shù)分別是Sphere、Rosenbrock、Rastrigrin、Griewank。這4個函數(shù)可以分別從不同的角度對某一優(yōu)化算法的性能進(jìn)行評價。比如Sphere函數(shù)是一個簡單、連續(xù)的單模態(tài)函數(shù),可以用來分析算法的執(zhí)行性能;Rosenbrock函數(shù)的最優(yōu)點位于狹長、平滑拋物線形山谷內(nèi),這導(dǎo)致算法在進(jìn)行尋優(yōu)時的方向難以穩(wěn)定,進(jìn)而使算法很難得到該函數(shù)的全局最優(yōu)點,該函數(shù)一般常用來評價算法的執(zhí)行效率;Rastrigrin和Griewank函數(shù)屬于典型的非線性多模態(tài)函數(shù),其具有廣泛的搜索空間、較多的局部最優(yōu)點,是一種優(yōu)化算法難以處理的復(fù)雜多模態(tài)函數(shù)。4個函數(shù)的具體數(shù)學(xué)模型如下所示:
(1)Sphere函數(shù)模型
(2) Rosenbrock函數(shù)模型
[-100,100]
(3) Rastrigrin函數(shù)模型
[-10,10]
(4) Griewank函數(shù)模型
上面這4個函數(shù)的測試?yán)碚撝刀紴?,為了驗證分析改進(jìn)后的混沌量子粒子群算法的先進(jìn)性,分別使用PSO和CQPSO兩種算法的進(jìn)行函數(shù)的數(shù)值尋優(yōu),進(jìn)而將兩種算法的性能進(jìn)行對比。所有實驗中的種群規(guī)模分別是40和80,分別對應(yīng)的是表1和表2中數(shù)據(jù)。
3.1.2實例結(jié)果與分析
從表1和表2可以看出,混沌量子粒子群算法在處理單峰函數(shù)的效果比較好。在處理其他3個函數(shù)的時候也去得了不錯的效果。另外,從算法的迭代次數(shù)可以看出CQPSO算法在經(jīng)歷過PSO算法的一半后便有了比較好的尋優(yōu)結(jié)果,這說明CQPSO算法在收斂速度方面也有比較好的效果。
表1 測試結(jié)果1
表2 測試結(jié)果2
3.2.1實例設(shè)置
滿負(fù)荷運行這一工況進(jìn)行仿真,從該工況下的數(shù)學(xué)模型可以看出,該模型具有較大的延遲和慣性,在使用PID控制時不易整定出理想的參數(shù)。本文現(xiàn)根據(jù)文獻(xiàn)[10,11]的PID參數(shù)整定經(jīng)驗公式,初步整定出一個合適的初始PID參數(shù),然后在該初始參數(shù)上分別使用標(biāo)準(zhǔn)粒子群(PSO)和混沌量子粒子群(CQPSO)算法進(jìn)行參數(shù)的二次優(yōu)化,通過仿真證明了混沌量子粒子群(CQPSO)算法的實用性和可行性,同時也證實改進(jìn)后的算法要比標(biāo)準(zhǔn)粒子群(PSO)算法有更好的尋優(yōu)效果。
3.2.2實例結(jié)果與分析
由前面提到的PID經(jīng)驗公式得出初始控制參數(shù)[12],經(jīng)過仿真得出圖4控制曲線輸出結(jié)果。從圖4的輸出曲線可以看出,利用經(jīng)驗公式得出的控制參數(shù)可以得到較好的控制效果。在此基礎(chǔ)之上,分別利用PSO和CQPSO算法進(jìn)行參數(shù)優(yōu)化,經(jīng)過仿真得到圖5的輸出曲線,可以直觀地看出CQPSO有更好的優(yōu)化效果,在超調(diào)量以及調(diào)節(jié)時間上都有明顯的提升。
圖4 經(jīng)驗公式得到的PID曲線
圖5 控制曲線對比圖
從表3的數(shù)據(jù)對比來看,可以直接看出混沌量子粒子群算法具有較好的優(yōu)化效果,能夠優(yōu)化得出更好的控制參數(shù)。
表3 不同參數(shù)下的指標(biāo)對比
圖6 定值擾情況下的曲線對比圖
圖6是在系統(tǒng)過渡到穩(wěn)定后,改變系統(tǒng)的設(shè)定值產(chǎn)生定值擾的情況。從圖6的曲線中可以看出,當(dāng)系統(tǒng)出現(xiàn)定值擾動后,經(jīng)過混沌量子粒子群算法優(yōu)化的PID參數(shù)能夠比較快的再次過渡到穩(wěn)定的狀態(tài),其穩(wěn)定性、快速性和準(zhǔn)確性能夠充分地在仿真中體現(xiàn)出來。
工程中常規(guī)的Z-N法整定PID參數(shù)繁瑣,本文采用的是PID經(jīng)驗公式方法,通過該公式可以比較方便的得出一個合適的PID控制參數(shù)。PID初始參數(shù)的確定,實質(zhì)上可以縮小控制參數(shù)的尋優(yōu)范圍,進(jìn)而降低了運算的次數(shù),節(jié)約了尋優(yōu)時間。
混沌量子粒子群算法利用混沌特性可以有效地改善種群陷入局部最優(yōu)這一問題,同時利用粒子的量子特性增強(qiáng)了粒子群算法的全局尋優(yōu)能力。針對300 MW循環(huán)流化床滿負(fù)荷運行這一工況,通過PID經(jīng)驗公式首先獲得一個合適的初始參數(shù),在此基礎(chǔ)之上,混沌量子算法有效的優(yōu)化了PID控制器控制參數(shù),進(jìn)而使得整個控制效果得到改善,系統(tǒng)可以更加安全、穩(wěn)定的運行。
參考文獻(xiàn):
[1]趙鵬旭.基于粒子群的群智能理論在系統(tǒng)優(yōu)化中的應(yīng)用研究[D].保定:華北電力大學(xué),2015.
[2]劉明,王瑞.基于自適應(yīng)遺傳算法的改進(jìn)PID參數(shù)優(yōu)化[J].計算機(jī)測量與控制,2015,23(3):791-793.
[3]張家駿.基于粒子群算法的PID控制器參數(shù)優(yōu)化研究[J].計算機(jī)仿真,2010,27(10):191-193+222.
[4]韋根原,王兵樹,馬磊,等.基于粒子群算法的1000MW火電機(jī)組模型辨識[J].計算機(jī)仿真,2013,30(7):400-403.
[5]楊傳將,劉清,黃珍.一種量子粒子群算法的改進(jìn)方法[J].計算技術(shù)與自動化,2009,28(1):100-103.
[6]孟令民,常喜茂.粒子群算法在系統(tǒng)辨識中的應(yīng)用[J].數(shù)字技術(shù)與應(yīng)用,2017,(6):144-145+149.
[7]韓璞.智能控制理論及應(yīng)用[M].北京:中國電力出版社,2013.
[8]林星,馮斌,孫俊.混沌量子粒子群優(yōu)化算法[J].計算機(jī)工程與設(shè)計,2008,(10):2610-2612.
[9]劉軍民,高岳林.混沌粒子群優(yōu)化算法[J].計算機(jī)應(yīng)用,2008,2:322-325
[10]胡文斌,韓璞,孫明.熱工系統(tǒng)PID參數(shù)整定公式的仿真研究[J].計算機(jī)仿真,2014,31(10):132-136.
[11]韓璞,于浩,曹喜果,等.基于經(jīng)驗整定公式的自適應(yīng)PID控制算法研究[J].計算機(jī)仿真,2015,32(3):438-441.
[12]韓璞.控制系統(tǒng)數(shù)字仿真技術(shù)[M].北京:中國電力出版社,2007.