付秋峰, 肖 軍, 李書臣, 張勇強(qiáng), 劉 威
(遼寧石油化工大學(xué)信息與控制工程學(xué)院,遼寧撫順 113001)
基于微粒群優(yōu)化和模擬退火的約束廣義預(yù)測(cè)控制算法
付秋峰, 肖 軍, 李書臣, 張勇強(qiáng), 劉 威
(遼寧石油化工大學(xué)信息與控制工程學(xué)院,遼寧撫順 113001)
提出一種基于微粒群優(yōu)化和模擬退火的約束廣義預(yù)測(cè)控制算法,將微粒群優(yōu)化和模擬退火引入到廣義預(yù)測(cè)控制的滾動(dòng)尋優(yōu)過程中,增強(qiáng)對(duì)約束邊界的搜索能力,并將約束條件構(gòu)成約束違反度函數(shù)和適應(yīng)度函數(shù)一起判斷最優(yōu)解的優(yōu)劣,該算法可以有效地提高廣義預(yù)測(cè)控制處理約束的能力。通過對(duì)一個(gè)工業(yè)對(duì)象的仿真,驗(yàn)證了該算法的可行性和有效性。
廣義預(yù)測(cè)控制; 約束; 微粒群優(yōu)化; 模擬退火
廣義預(yù)測(cè)控制是在自適應(yīng)控制研究中發(fā)展起來的一種典型的預(yù)測(cè)控制算法[1]。在廣義預(yù)測(cè)控制中,如果被控過程是線性無約束的,則可以按照梯度尋優(yōu)法求得一個(gè)解析的線性控制器。但是實(shí)際工業(yè)過程中存在很多的系統(tǒng)約束,使用帶約束的二次規(guī)劃求解時(shí),有時(shí)會(huì)是一個(gè)非凸規(guī)劃[2]。而對(duì)于約束優(yōu)化問題常用的罰函數(shù)法[3],對(duì)函數(shù)和約束的特性要求較高,不易應(yīng)用于復(fù)雜的約束優(yōu)化問題。為提高廣義預(yù)測(cè)控制的性能與應(yīng)用范圍,需要尋找更有效的解決優(yōu)化問題的方法。
微粒群優(yōu)化算法(PSO),實(shí)現(xiàn)簡(jiǎn)單、不要求目標(biāo)函數(shù)和約束條件可微,目前已在許多優(yōu)化問題中得到成功應(yīng)用,但PSO的全局搜索能力較差[4]。模擬退火算法(SA)是一種隨機(jī)搜索技術(shù)[5],主要用于概率突跳,在搜索時(shí)接受優(yōu)化解及惡化解,有較強(qiáng)的全局搜索能力。因此,將PSO和SA有機(jī)結(jié)合起來,應(yīng)用到帶約束的廣義預(yù)測(cè)控制中去,增強(qiáng)該算法在約束空間內(nèi)的搜索能力,并將約束條件構(gòu)成約束違反度函數(shù),可以方便有效地評(píng)價(jià)求得的優(yōu)化解。最后,通過一個(gè)仿真實(shí)例對(duì)該算法進(jìn)行了說明。
在約束GPC中,采用受控自回歸積分滑動(dòng)平均(CARIMA)模型來描述受到隨機(jī)干擾的對(duì)象。式中,A、B、C都是后移算子q-1的多項(xiàng)式(為簡(jiǎn)化計(jì)算,假設(shè)C(q-1)=1),u(t)、y(t)為過程的輸入、輸出量;d為滯后步數(shù);Δ=1-q-1為差分算子;ξ(t)是一個(gè)不相關(guān)的隨機(jī)序列。
引入丟番圖方程1=Ej(q-1)A(q-1)Δ+q-j(q-1),可推導(dǎo)出預(yù)測(cè)時(shí)域?yàn)镹控制時(shí)域?yàn)镹u的預(yù)測(cè)值為:式中,^Y=[^y(t+1|t),…,^y(t+N|t)]T;Δ→U=[Δu (t),Δu(t+1),…,Δu(t+Nu-1)]T
在t時(shí)刻的優(yōu)化性能指標(biāo)采用以下形式:式中,N1和N2分別為優(yōu)化時(shí)域的始值和終值;Nu為控制時(shí)域;yr(t+j)=αjyr(t)+(1-αj)yd為參考軌跡,α為柔化系數(shù),yd為給定值;qj、λj為加權(quán)系數(shù)。
由文獻(xiàn)[6]可知預(yù)測(cè)控制中的系統(tǒng)約束存在等式約束及不等式約束,在此僅考慮不等式約束,引入工業(yè)系統(tǒng)常用的不等式約束,即控制量約束、輸出約束、控制增量約束[7]。
控制增量約束:
控制量約束:
輸出約束:
其中
因此,具有約束的GPC的滾動(dòng)優(yōu)化就是,在滿足約束式(4)、(5)、(6)的情況下使性能指標(biāo)式(3)最小,求得t時(shí)刻的最優(yōu)輸入序列Δ=[Δu(t),Δu(t+ 1),…,Δu(t+Nu-1)]T。
對(duì)于上述約束GPC問題,采用微粒群算法結(jié)合模擬退火算法來求取最優(yōu)解。在該算法中,將約束GPC的二次性能指標(biāo)作為微粒群的適應(yīng)度函數(shù)進(jìn)行滾動(dòng)尋優(yōu),為克服微粒群算法在后期易收斂到局部極小值的缺點(diǎn),引入模擬退火算法幫助其跳出局部極小值,擴(kuò)大其在解空間中的搜索能力,并給出了微粒更新時(shí)遵循的可行性規(guī)則。該算法在處理約束時(shí),把GPC的約束條件統(tǒng)一為Δ的表達(dá)式構(gòu)成約束違反度函數(shù),使其和適應(yīng)度函數(shù)一起判斷滾動(dòng)優(yōu)化求得的最優(yōu)解的優(yōu)劣。最后,給出了該算法的求解步驟。
2.1 微粒群優(yōu)化(PSO)
假設(shè)在一個(gè)N維解空間中,由m個(gè)微粒組成的種群,其中第i個(gè)粒子在N維空間的位置表示為=(xi1,xi2,…,xiN),飛行速度表示為=(vi1, vi2,…,viN),每個(gè)粒子都有一個(gè)由性能指標(biāo)決定的適應(yīng)值,并且知道自己到目前為止所發(fā)現(xiàn)的最好位置Pi和群體所發(fā)現(xiàn)的最好位置pg。每個(gè)粒子的速度和位置按(7)式、(8)式進(jìn)行變化[8]。
在該算法中,需要對(duì)GPC的被控變量Δ→U進(jìn)行尋優(yōu),因此令微粒群的搜索空間維數(shù)為Nu,這樣第i個(gè)微粒的位置就可表示成一個(gè)Nu維向量xi=[Δui(k),Δui(k+1),…,Δui(k+Nu-1)],并將GPC的二次性能指標(biāo)式(3)作為微粒群優(yōu)化的適應(yīng)度函數(shù),即:fit(xi)=J(t),利用該適應(yīng)度函數(shù)對(duì)xi進(jìn)行迭代更新。
2.2 模擬退火(SA)
模擬退火算法是模擬物理系統(tǒng)徐徐退火過程的一種隨機(jī)搜索技術(shù),主要用于概率突跳,有效避免搜索過程陷入局部極小。其計(jì)算的執(zhí)行過程是“產(chǎn)生新解—判斷—接受/舍棄”的過程。在接受新解時(shí),對(duì)優(yōu)化解均接受,對(duì)惡化解則按照exp(-ΔE/T)>rand(0,1)的概率接受,其中ΔE為新舊解的適應(yīng)度函數(shù)值之差,T為退火溫度。
為防止微粒群優(yōu)化求得的全局最優(yōu)解pg陷入局部極小,對(duì)其進(jìn)行模擬退火操作。以pg為初始狀態(tài)產(chǎn)生一個(gè)新解:=pg+η×(xmax-xmin)×N(0, 1),其中,η為搜索步長(zhǎng)(取為0.001),N(0,1)為服從均值為0方差為1的高斯分布隨機(jī)數(shù),xmax和xmin為變量的上、下界。并計(jì)算適應(yīng)度的變化值ΔE= fit()-fit(pg),將其作為是否接受該新解的一個(gè)指標(biāo)。退溫時(shí),按照T(k+1)=λ′T(k)(0<λ′<1)進(jìn)行退溫。
2.3 構(gòu)造約束違反度函數(shù)
在處理GPC的約束時(shí),區(qū)別于罰函數(shù)將目標(biāo)函數(shù)和約束結(jié)合到一個(gè)函數(shù)的做法,采用GPC的二次性能指標(biāo)與約束條件分離的辦法。將約束式(4)、(5)、(6)轉(zhuǎn)化為關(guān)于Δ的統(tǒng)一表達(dá)式:
故可將以上3種約束統(tǒng)一為:由文獻(xiàn)[5]可將式(9)轉(zhuǎn)化為不等式約束:
其中xi=[Δui(k),Δui(k+1),…,Δui(k+ Nu-1)]即為微粒群搜索到的優(yōu)化解,該函數(shù)值反映了每個(gè)粒子與邊界的接近程度,以此判斷滾動(dòng)優(yōu)化解是否可行,約束違反度值和適應(yīng)度值一起構(gòu)成微粒更新的指標(biāo)。
2.4 微粒更新的可行性規(guī)則
按照如下的可行性規(guī)則來更新微粒的歷史最優(yōu)位置和種群的全局最優(yōu)位置,假設(shè)為種群中第i個(gè)微粒在第t代時(shí)的歷史最優(yōu)位置,表示該微粒在第t+1代時(shí)所在的位置,若以下任意一種情況發(fā)生,就執(zhí)行=,否則=xti。
2.5 基于PSO-SA的約束GPC算法流程
基于PSO-SA的約束廣義預(yù)測(cè)控制算法流程如圖1所示。
Fig.1 Algorithm flow chart圖1 算法流程圖
取某加熱爐溫度控制系統(tǒng)中的被控對(duì)象作為仿真研究對(duì)象,通過模型辨識(shí)可知其傳遞函數(shù)模型為:設(shè)采樣時(shí)間為5 s。離散化后為:
約束條件為:-1.5≤u(k)≤1.5;-0.2≤Δu (k)≤0.2;-2≤y(k)≤2
設(shè)噪聲為[-0.05,0.05]的均勻分布的白噪聲。仿真過程中預(yù)測(cè)步長(zhǎng)N2為6,控制步長(zhǎng)Nu為2,加權(quán)系數(shù)q=1、λ=0.8,柔化系數(shù)α=0.25,微粒數(shù)m為50,最大迭代次數(shù)M=500,慣性權(quán)重ω=0.8,學(xué)習(xí)因子c1、c2均為2,退火常數(shù)λ′為0.5。仿真結(jié)果如下圖2所示,由圖2可以看出在系統(tǒng)存在約束時(shí),使用基于PSO-SA的約束GPC算法,可以達(dá)到很好的控制效果。對(duì)比無約束時(shí)的仿真曲線(見圖3),無約束時(shí)的輸出比有約束時(shí)跟蹤快,但控制量變化大,使輸出有超調(diào),而有約束的控制量變化比較平穩(wěn),輸出無超調(diào)。圖4為有約束時(shí)種群最優(yōu)解的目標(biāo)值隨進(jìn)化代數(shù)變化的曲線,由該曲線可以看出種群經(jīng)過100次迭代就得出了最優(yōu)解,收斂速度很快。
Fig.2 Simulation curves with constraints圖2 有約束時(shí)仿真曲線
將PSO-SA融入到約束GPC的滾動(dòng)優(yōu)化過程中,既保持了微粒群算法簡(jiǎn)單容易實(shí)現(xiàn)的特點(diǎn),又增強(qiáng)了全局搜索能力,因此具有更強(qiáng)的約束空間搜索能力。在處理約束時(shí),將約束條件構(gòu)成約束違反度函數(shù),對(duì)滾動(dòng)優(yōu)化求得的最優(yōu)解以約束違反度值和適應(yīng)度值的大小來判斷其優(yōu)劣,可以方便有效地處理約束。仿真結(jié)果顯示該算法可以有效地提高廣義預(yù)測(cè)控制的性能,為GPC的更廣泛應(yīng)用提供了便利。但如何證明算法的收斂性以及進(jìn)一步提高算法的運(yùn)行速度,是今后需要研究的問題。
Fig.3 Simulation curves without constraints圖3 無約束時(shí)仿真曲線
Fig.4 Changing curve of f itness value圖4 適應(yīng)度值變化曲線
[1] 錢積新,趙均,徐祖華.預(yù)測(cè)控制[M].北京:化學(xué)工業(yè)出版社,2007.
[2] 鄒濤,王昕,李少遠(yuǎn).基于混合邏輯的非線性系統(tǒng)多模型預(yù)測(cè)控制[J].自動(dòng)化學(xué)報(bào),2007,33(2):188-192.
[3] DEB K,AGRAWAL S.A niched-penalty app roach for constraint handing in genetic algorithm s[C]//Proceedingsof the international conference in Portoroz Slovenia,artificial neural nets and genetic algorithms.New Yo rk:Sp ringer verlag, 1999:235-243.
[4] 劉華鎣,林玉娥,王淑云.粒子群算法的改進(jìn)及其在求解約束優(yōu)化問題中的應(yīng)用[J].吉林大學(xué)學(xué)報(bào):理學(xué)版,2005,43(4): 472-473.
[5] Bandyopadhyay S.Simulated annealing using a reversible jump markov chain monte carlo algorithm fo r fuzzy clustering [J].IEEE trans know ledge data eng.,2005,17(4):479-790.
[6] 李少遠(yuǎn),席裕庚.具有模糊約束的廣義預(yù)測(cè)控制[J].儀器儀表學(xué)報(bào),2001,22(2):159-160.
[7] Guzman J L,Berenguel M,Dormido S.Interactive teaching of constrained generalized p redictive control[J].Control systemsmagazine,IEEE(S0272-1708),2005,25(2):52-66.
[8] 蘇成利,劉曉琴,李平,等.基于PSO與LM I優(yōu)化的非線性模型預(yù)測(cè)控制[J].遼寧石油化工大學(xué)學(xué)報(bào),2007,27(1):86-87.
(Ed.:W YX,Z)
A lgo rithm of Constrained Generalized Predictive Control Based on PSO-SA
FU Qiu-feng,X IAO Jun,L IShu-chen,ZHANG Yong-qiang,L IU Wei
(School of Inform ation and Control Engineering,L iaoning Shihua Univercity,Fushun L iaoning 113001,P.R.China)
28 September 2009;revised 15 M arch 2010;accepted 20 M arch 2010
An algo rithm of constrained generalized p redictive controlwas p roposed based on partical swarm op timization(PSO) and simulated annealing(SA).PSO and SA were used fo r iterrative op timization to enhance the search capabilities for constraint boundary.Meanw hile,a violation function was constructed by constraints.This function and fitness function determined the op timal solution better o r not.Constraint handling perfo rmance of GPC can be effectively imp roved by this algorithm.Its feasibility and efectiveness are verified via sim ulation study fo r an industrial object.
Generalized p redictive control;Constraint;Particle swarm op timization;Simulated annealing
.Tel.:+86-413-6860879;fax:+86-413-6860879;e-mail:haoxinqing6398@163.com
TP13
A
10.3696/j.issn.1006-396X.2010.02.024
1006-396X(2010)02-0089-04
2009-09-28
付秋峰(1980-),男,河南汝南縣,在讀碩士。
遼寧省教育廳科學(xué)研究計(jì)劃資助(2004D031)。