楊 璞,王宇紅
(中國(guó)石油大學(xué)(華東)信息與控制工程學(xué)院,山東 青島 266580)
?
高效顯式模型預(yù)測(cè)控制在兩容水箱中的應(yīng)用
楊璞,王宇紅
(中國(guó)石油大學(xué)(華東)信息與控制工程學(xué)院,山東 青島266580)
針對(duì)一類具有分段仿射形式的混雜系統(tǒng)模型的控制方法問題,提出了一種高效顯式模型預(yù)測(cè)控制算法;該算法通過將最優(yōu)控制問題轉(zhuǎn)化為多參數(shù)規(guī)劃問題,離線求得具有分段仿射形式的顯式控制器;在線過程,應(yīng)用一種新的搜索算法,它能夠快速準(zhǔn)確地對(duì)系統(tǒng)狀態(tài)點(diǎn)進(jìn)行定位,確定其所屬的控制器分區(qū),再根據(jù)該分區(qū)所對(duì)應(yīng)的子控制率,進(jìn)行簡(jiǎn)單的線性運(yùn)算,即可得到系統(tǒng)的輸入;該控制方法避免了反復(fù)的在線優(yōu)化計(jì)算,大大減少了計(jì)算量,并且,在線計(jì)算的速度更快,控制的實(shí)時(shí)性更好;將該算法應(yīng)用到具有典型混雜特性的兩容水箱系統(tǒng)中,仿真結(jié)果表明:水箱的液位從初始液位能夠快速平穩(wěn)的達(dá)到期望的液位,且與其它的控制算法相比較,該算法更加高效。
分段仿射模型;顯式模型預(yù)測(cè)控制;在線計(jì)算;兩容水箱
混雜系統(tǒng)是指包含連續(xù)動(dòng)態(tài)和離散動(dòng)態(tài)兩種特性,并且兩種動(dòng)態(tài)相互作用的一類系統(tǒng),對(duì)該類系統(tǒng)的研究被IEEE控制協(xié)會(huì)稱為是具有廣泛應(yīng)用前景的研究。分段仿射(PWA)模型是一類重要的混雜系統(tǒng)模型,它不僅能夠很好的反應(yīng)系統(tǒng)的混雜特性,而且等價(jià)于多類混雜模型,如混合邏輯動(dòng)態(tài)模型(MLD),線性互補(bǔ)模型(LC),極大極小模型(MMPS)等[1]。
針對(duì)PWA模型的控制方法的研究也是研究的熱點(diǎn)。文獻(xiàn)[2]中,提出采用模型預(yù)測(cè)控制的方法,但是該方法需要不斷在線求解優(yōu)化問題,導(dǎo)致計(jì)算量過大,消耗了大量時(shí)間。文獻(xiàn)[3-4]中,提出采用顯式模型預(yù)測(cè)控制的方法,可以有效解決這一問題,它通過離線求解優(yōu)化問題,得到系統(tǒng)狀態(tài)與輸入的顯式關(guān)系,即顯式控制器,那么在線計(jì)算只需要先確定系統(tǒng)當(dāng)前狀態(tài)在控制器分區(qū)的位置,再進(jìn)行簡(jiǎn)單的線性運(yùn)算即可。
顯式模型預(yù)測(cè)控制中,在線計(jì)算過程需要不斷的對(duì)控制器的分區(qū)進(jìn)行搜索,以確定系統(tǒng)當(dāng)前狀態(tài)屬于哪個(gè)分區(qū),如果采用合適合理的搜索算法,則可以大大節(jié)省在線計(jì)算時(shí)間。文獻(xiàn)[5]中,通過對(duì)控制器分區(qū)進(jìn)行可達(dá)性分析,縮小了搜索范圍,節(jié)省了搜索時(shí)間;文獻(xiàn)[6-9]中,通過將分段仿射形式控制率表示為“樹”型結(jié)構(gòu),可以快速的完成在線計(jì)算;文獻(xiàn)[10-12]中,通過對(duì)控制器分區(qū)進(jìn)行簡(jiǎn)化,提高了搜索效率。但是這些算法大都需要復(fù)雜的數(shù)據(jù)預(yù)處理過程,本文提出了一種距離比較查找法,它不僅對(duì)控制器分區(qū)數(shù)據(jù)的預(yù)處理過程十分簡(jiǎn)單,而且可以大大提升在線計(jì)算速度。
本文首先介紹了PWA模型,然后對(duì)基于PWA模型的顯式模型預(yù)測(cè)控制的離線計(jì)算和在線計(jì)算過程進(jìn)行了詳細(xì)的研究,最后,將該控制方法應(yīng)用到具有典型混雜特性的水箱系統(tǒng)中。
PWA模型是一類典型的混雜系統(tǒng)模型,它包含有限個(gè)連續(xù)變量動(dòng)態(tài)子模型,隨著系統(tǒng)狀態(tài)的不斷演化,系統(tǒng)根據(jù)切換律在不同模態(tài)之間進(jìn)行切換,其表達(dá)式為:
y(k)=Cix(k)+Diu(k)+gi
針對(duì)PWA模型的顯式模型預(yù)測(cè)控制算法分為離線計(jì)算和在線計(jì)算兩個(gè)部分,其基本思想是將模型預(yù)測(cè)控制算法與多參數(shù)規(guī)劃理論相結(jié)合,通過離線求取顯式控制器,在線計(jì)算時(shí),只需根據(jù)求得的控制器,對(duì)狀態(tài)點(diǎn)進(jìn)行定位和簡(jiǎn)單的線性運(yùn)算即可。
2.1離線計(jì)算
考慮如下有限時(shí)域最優(yōu)控制(CFTOC)問題:
(1)
根據(jù)貝爾曼最優(yōu)化原理,問題(1)可以等價(jià)的表示為一個(gè)動(dòng)態(tài)規(guī)劃問題[4,15]:
(2)
subj.toCrr≤Cxx+Cc
其中:x∈Rnx是參數(shù)向量,r∈Rnr是決策向量,并且Cx∈Rnc×nx,Cr∈Rnc×nr,Cc∈Rnc,f∈Rnr。
根據(jù)文獻(xiàn)[4],通過對(duì)上述多參數(shù)線性規(guī)劃問題求解,可以得到分段仿射形式的顯式控制率:
2.2在線計(jì)算
在線計(jì)算時(shí),只需要先確定當(dāng)前時(shí)刻系統(tǒng)狀態(tài)在控制器分區(qū)的位置,再根據(jù)與該分區(qū)對(duì)應(yīng)的子控制率,進(jìn)行簡(jiǎn)單的線性運(yùn)算,即可得到當(dāng)前時(shí)刻的輸入。不難看出,在線計(jì)算的關(guān)鍵是是否能夠快速準(zhǔn)確的確定系統(tǒng)狀態(tài)在控制器分區(qū)的位置,這實(shí)質(zhì)上是一個(gè)“點(diǎn)定位”問題。
解決“點(diǎn)定位”問題最直接的方法是采用順序查找法,即從控制器中編號(hào)為1的分區(qū)開始查找,根據(jù)分區(qū)表達(dá)式,確定當(dāng)前系統(tǒng)狀態(tài)是否屬于該分區(qū),直到找到該狀態(tài)點(diǎn)所屬的分區(qū)或判斷完最后一個(gè)分區(qū)為止。順序查找法的具體過程如算法1所示,這里假設(shè)顯式控制器有N個(gè)狀態(tài)分區(qū),第i(i≤N)個(gè)狀態(tài)分區(qū)表達(dá)式為Ri={x|Hix≤Ki},Hi、Ki分別為nRi×nx、nRi×1維的矩陣,其中nRi表示組成該分區(qū)的超平面?zhèn)€數(shù)。
算法1:
1)檢測(cè)當(dāng)前時(shí)刻系統(tǒng)狀態(tài)x(k)。
2)依次查找第i(i=1,…,N)個(gè)分區(qū),若滿足Hix≤Ki,則x(k)∈Ri,否則,繼續(xù)查找。
順序查找法最壞的情況需要對(duì)每一個(gè)分區(qū)進(jìn)行查找,對(duì)于控制器存在大量分區(qū)的情形,是十分不利的。本文根據(jù)2.1節(jié)求得的顯式控制器分區(qū)是由若干個(gè)凸多面體組成,并且它們互不相交的特點(diǎn),提出了一種距離比較查找法,可以更高效的解決“點(diǎn)定位”問題。
如圖1表示一個(gè)二維的凸多面體,如果一個(gè)圓心為c,半徑為r的圓包含于該多面體內(nèi),并且,在多面體的所有點(diǎn)中,距離c最遠(yuǎn)的點(diǎn)與c的距離為d,那么,只要與c的距離小于r的點(diǎn),一定屬于該多面體,只要與c的距離大于d的點(diǎn),一定不屬于該多面體。
圖1 二維凸多面體
根據(jù)上述思想,運(yùn)用距離比較查找法時(shí),首先需要在n維控制器的每個(gè)狀態(tài)分區(qū)中,尋找一個(gè)包含于該分區(qū)的最大的球體。這里仍然用Ri={x|Hix≤Ki}表示控制器的第i(i≤N)個(gè)多面體分區(qū),在該分區(qū)中,假設(shè)需要尋找的球體的圓心為xci,半徑為ri,考慮下式中的優(yōu)化問題:
(3)
以上運(yùn)算均可以離線完成,那么在線查找時(shí),只需要依次求取系統(tǒng)當(dāng)前時(shí)刻狀態(tài)x(k)與控制器第i個(gè)分區(qū)的球心之間的距離ci,同時(shí),比較ci與ri的大小,當(dāng)ci≤ri時(shí),說明x(k)∈Ri,查找結(jié)束;當(dāng)ci>ri時(shí),需要再比較ci與di的大小,當(dāng)ci>di時(shí),說明x(k)不在該分區(qū)中,需要繼續(xù)查找下一個(gè)分區(qū),當(dāng)ci≤di時(shí),則說明x(k)可能在該分區(qū)中,存儲(chǔ)該分區(qū)。當(dāng)查找完最后一個(gè)分區(qū)仍未找到x(k)所屬的分區(qū)時(shí),則在之前存儲(chǔ)的分區(qū)中,再采用順序查找法查找。距離比較查找法的具體過程如算法2所示。
算法2:
1)離線求取B(xci,ri)和di(i=1,…,N)。
2)檢測(cè)當(dāng)前時(shí)刻系統(tǒng)狀態(tài)x(k)。
3)當(dāng)i=1時(shí),求取x(k)與xc1之間的距離c1。若c1≤r1,則x(k)∈R1,跳轉(zhuǎn)到步驟5;否則,若d1 4)若i 5)若查找結(jié)果為x(k)∈Ri,則根據(jù)該分區(qū)所對(duì)應(yīng)的子控制率u*(k)=Fix(k)+Gi,即可計(jì)算出系統(tǒng)的輸入。否則,該狀態(tài)不在控制器分區(qū)內(nèi)。 對(duì)于顯式模型預(yù)測(cè)控制在線計(jì)算過程,如果控制器的分區(qū)數(shù)為N,組成第i個(gè)分區(qū)的超平面的數(shù)量為n(i),運(yùn)用算法2解決“點(diǎn)定位”問題,若只考慮在線查找過程,一般情況下,只需要在每個(gè)分區(qū)中進(jìn)行1次范數(shù)運(yùn)算,2次比較運(yùn)算即可;在最差的情況下,需要進(jìn)行1次范數(shù)運(yùn)算,2+n(i)次比較運(yùn)算,然而,當(dāng)控制器存在大量分區(qū)時(shí),發(fā)生這種情況的分區(qū)的比例是較小的。而運(yùn)用算法1則需要在每個(gè)分區(qū)中進(jìn)行n(i)次矩陣運(yùn)算,n(i)次比較運(yùn)算,特別的,當(dāng)控制器的維數(shù)較高時(shí),n(i)≥2。 從這方面來說,算法2能夠減少在線計(jì)算量,從而使控制更高效。 3.1兩容水箱的PWA模型 對(duì)水箱系統(tǒng)的研究,已經(jīng)作為一個(gè)研究的標(biāo)準(zhǔn)問題(BenmarkProblem),被廣泛的應(yīng)用于混雜系統(tǒng)研究成果的驗(yàn)證中。兩容水箱是一類重要的水箱系統(tǒng),如圖2所示,在實(shí)際對(duì)象中,各參數(shù)的意義和具體數(shù)值見表1。 圖2 兩容水箱 它由水箱1和水箱2兩個(gè)水箱組成,流經(jīng)它們之間的液體通過V1、V2兩個(gè)閥門進(jìn)行控制,流出水箱的液體可以通過V3、V4兩個(gè)閥門進(jìn)行控制,V1、V2、V3、V4均為開關(guān)型閥門,水箱1有連續(xù)輸入泵P1,輸入量記為QP1(0≤QP1≤Qmax)。若將閥V3常閉,閥V4常開,則可得到系統(tǒng)的模型為: 表1 兩容水箱參數(shù) 其中:各流量表達(dá)式分別為: Q1=V1·az·S1·sign(max{h1,hv}-max{h2,hv})· 再將該線性連續(xù)模型離散化,令 得到: 若選擇h1、h2作為系統(tǒng)的狀態(tài)變量x(k)∈[0,0.62]×[0,0.62],Qp1、V1、V2作為系統(tǒng)的輸入U(xiǎn)(k),并將參數(shù)值代入,那么即可得到兩容水箱的PWA模型,它共有16子系統(tǒng)模型組成。 3.2仿真結(jié)果與分析 本文的控制目標(biāo)是使水箱從初始液位狀態(tài)x(k)=[00],在系統(tǒng)輸入U(xiǎn)(k)的作用下,能夠達(dá)到期望的液位狀態(tài)x(k)=[0.10.5]。采用顯式模型預(yù)測(cè)控制算法對(duì)系統(tǒng)進(jìn)行控制,通過離線計(jì)算得到的顯式控制器如圖3所示。 圖3 顯式模型預(yù)測(cè)控制器 圖中,(a)表示控制器的分區(qū),它共有29個(gè)不同的子控制率分布在371個(gè)狀態(tài)分區(qū)上,(b)、(c)、(d)表示系統(tǒng)輸入Qp1、V1、V2分別在控制器分區(qū)上對(duì)應(yīng)的線性連續(xù)控制率。根據(jù)得到的顯式控制器,在線計(jì)算分別采用算法1、可達(dá)分區(qū)算法[5]、二叉樹算法[6]、算法2求取系統(tǒng)最優(yōu)輸入值,若選取K=60(表示60個(gè)采樣時(shí)間),4種算法對(duì)比見表2。 表2 在線計(jì)算算法對(duì)比 表2中,可達(dá)分區(qū)算法、二叉樹算法和算法2均需要對(duì)分區(qū)數(shù)據(jù)進(jìn)行離線預(yù)處理,算法2用時(shí)分別是其他兩種算法的0.18%和0.065%;完成在線計(jì)算過程,算法2用時(shí)比算法1用時(shí)減少了430.001ms,與可達(dá)分區(qū)算法用時(shí)相當(dāng),但是比二叉樹算法用時(shí)長(zhǎng)。需要指出的是二叉樹算法雖然在線計(jì)算用時(shí)最短,但是,該算法預(yù)處理時(shí)間過長(zhǎng),當(dāng)控制器存在大量分區(qū)時(shí),可能使預(yù)處理過程變?yōu)镹P-hard問題;算法1雖然不需要預(yù)處理過程,但是,在線計(jì)算用時(shí)過長(zhǎng);綜合考慮,這里選擇算法2作為在線計(jì)算算法。得到系統(tǒng)的狀態(tài)和輸入隨時(shí)間的演變過程曲線如圖4,圖5所示。 圖4 系統(tǒng)狀態(tài)演變曲線 圖5 系統(tǒng)的控制輸入演變曲線 圖中,水箱的液位在控制輸入的作用下,能夠快速平穩(wěn)的達(dá)到設(shè)定的液位,并在該液位附近微小波動(dòng),這是由于兩容水箱在該穩(wěn)態(tài)存在極限環(huán)所導(dǎo)致的。 本文介紹了基于PWA模型的顯式模型預(yù)測(cè)控制算法,針對(duì)該算法的在線計(jì)算過程,提出了一種距離比較查找法,并且應(yīng)用到了對(duì)兩容水箱控制的研究中。仿真結(jié)果表明,水箱液位從初始液位,能夠快速平穩(wěn)的達(dá)到期望的液位,并且在線計(jì)算過程中,采用距離比較查找法比其它3種算法能夠更高效的得到系統(tǒng)輸入值。 [1]HeemelsWPMH,SchutterBD,BemporadA.Equivalenceofhybriddynamicalmodels[J].Automatica,2001,37(7):1085-1091. [2]BemporadA,MorariM.Controlofsystemsintegratinglogic,dynamics,andconstraints[J].Automatica,1998,35(98):407-427. [3]BemporadA,MorariM,DuaV,etal.Theexplicitlinearquadraticregulatorforconstrainedsystems[J].Automatica,2002,38(1):3-20. [4]BaoticM,ChristophersenFJ,MorariM.Anewalgorithmforconstrainedfinitetimeoptimalcontrolofhybridsystemswithalinearperformanceindex[A].ProceedingsofEuropeControlConference[C].Cambridge,UnitedKingdom,2003:3335-3340. [5]SpjotvoldJ,RakovicSV,TondelP,etal.UtilizingReachabilityAnalysisinPointLocationProblems[A].ProceedingsofIEEEConferenceonDecisionandControl[C].SanDiego,USA,2006:4568-4569. [6]T?ndelP,JohansenTA,BemporadA.EvaluationofPiecewiseAffineControlviaBinarySearchTree[J].Automatica,2002,39(5):945-950. [7]ChristophersenFJ,KvasnicaM,JonesCN,etal.Efficientevaluationofpiecewisecontrollawsdefinedoveralargenumberofpolyhedra[A].ProceedingsoftheEuropeanControlConference[C].Kos,Greece,2007:2360-2367. [8]M?nnigmannM,KastsianM.Fastexplicitmodelpredictivecontrolwithmultiwaytrees[A].Proceedingsof18thIFACWorldCongress[C].Milano,Italy,2011: 1356-1361. [9]BayatF,JohansenTA,JalaliAA.FlexiblePiecewiseFunctionEvaluationMethodsBasedonTruncatedBinarySearchTreesandLatticeRepresentationinExplicitMPC[J].IEEETransactionsonControlSystemsTechnology,2012,20(3):632-640. [10]GeyerT,TorrisiFD,MorariM.Optimalcomplexityreductionofpolyhedralpiecewiseaffinesystems[J].Automatica,2008,44(7): 1728-1740. [11]KvasnicaM,FikarM.Clipping-BasedComplexityReductioninExplicitMPC[J].IEEETransactionsonAutomaticControl,2012,57(7):1878-1883. [12]StevekJ,KvasnicaM,FikarM.Towardsadominant-polytopecomplexityreductioninexplicitMPC[A].ProceedingsofInternationalConferenceonProcessControl[C].strbsképleso,SlovakRepublic,2013:124-129. [13]FuchsAN,JonesCN,MorariM.Optimizeddecisiontreesforpointlocationinpolytopicdatasets-applicationtoexplicitMPC[A].ProceedingsofAmericanControlConference[C].Baltimore,USA,2010:5507-5512. [14] 席裕庚,李德偉,林姝. 模型預(yù)測(cè)控制——現(xiàn)狀與挑戰(zhàn) [J]. 自動(dòng)化學(xué)報(bào),2013,39(3):222-236. [15]Bertsekas,DP.DynamicProgrammingandOptimalControl[M],Massachusetts:AthenaScientific,1996. [16] 王琳,張根寶. 自抗擾控制器在雙容水箱中的應(yīng)用[J]. 計(jì)算機(jī)測(cè)量與控制,2013,21(3):775-778. Application of Efficient Explicit Model Predictive Control in Two Tank System Yang Pu,Wang Yuhong (College of Information and Control Engineering,China University of Petroleum (East China),Qingdao266580,China) An efficient explicit model predictive control algorithm is proposed for a class of hybrid systems based on piecewise affine (PWA) model. The algorithm solves the optimization problem off line by transforming it into an equivalent multi-parameter programming problem and therefore obtains an explicit controller with piecewise affine form. For on-line process,a new search method is used to determine the position of the system state in the partitions of the controller and gets the optimal input according to the control law corresponding to the partition via evaluating a simple linear function. The algorithm greatly reduces the computation complexity. Moreover,it leads to higher computation speed and better real-time performance. Finally,an application case study on two tank system is given to illustrate this method and the simulation results show that it is more efficient comparing with other algorithms. PWA model;explicit model predictive control;online computation;two tank system 1671-4598(2016)04-0071-04DOI:10.16526/j.cnki.11-4762/tp.2016.04.022 TP273 A 2015-09-24; 2015-11-02。 國(guó)家自然科學(xué)基金資助項(xiàng)目(61403420);山東省自然科學(xué)基金資助項(xiàng)目(2013ZRE28089)。 楊璞(1989-),男,河北涿州人,碩士研究生,主要從事先進(jìn)控制理論與技術(shù)的研究。 王宇紅(1970-),男,河北新樂人,教授,碩士研究生導(dǎo)師,主要從事預(yù)測(cè)控制、化工自動(dòng)化的研究。3 仿真實(shí)例
4 結(jié)論