陳 穎 趙朋程 賈紅霞 楊 麗 馬 健
石家莊學(xué)院機(jī)電學(xué)院 河北石家莊 050035
實(shí)際工業(yè)控制系統(tǒng)中,許多控制對(duì)象都是多變量系統(tǒng),具有非線(xiàn)性、時(shí)滯性和不確定性。多數(shù)的控制算法對(duì)模型精度具有較大的依賴(lài)性,建模技術(shù)在現(xiàn)代的工業(yè)生產(chǎn)中起著極其重要的作用。另外,工業(yè)流程控制過(guò)程中存在許多不確定性干擾因素,導(dǎo)致控制算法的控制精度較低。
經(jīng)過(guò)眾多學(xué)者的改進(jìn)研究,模型預(yù)測(cè)控制(Model Predictive Control,MPC)[1]技術(shù)對(duì)實(shí)際工業(yè)過(guò)程控制產(chǎn)生了巨大影響,并且已經(jīng)在工業(yè)過(guò)程多個(gè)領(lǐng)域中獲得了成功應(yīng)用,如網(wǎng)絡(luò)化多智能體[2]、永磁同步機(jī)[3]、硅單晶直徑生成控制[4]、直升機(jī)軌跡跟蹤控制[5]等。在模型預(yù)測(cè)控制算法研究中,建立控制系統(tǒng)的預(yù)測(cè)模型精度決定了后續(xù)預(yù)測(cè)控制的效果。因此,相關(guān)學(xué)者采用組合模型建模的思想建立被控系統(tǒng)的模型,進(jìn)而實(shí)現(xiàn)預(yù)測(cè)控制的研究。如Chen等[6]提出了一種自適應(yīng)多層非線(xiàn)性組合模型預(yù)測(cè)控制算法,并將其應(yīng)用于水泥熟料燒成過(guò)程篦冷機(jī)系統(tǒng)的控制仿真中;Yin等[7]將連續(xù)攪拌釜反應(yīng)器作為被控對(duì)象,提出了一種基于映射數(shù)值組合模型的預(yù)測(cè)控制算法;Xiao等[8]結(jié)合多目標(biāo)蝙蝠優(yōu)化算法構(gòu)建了組合預(yù)測(cè)模型,并在風(fēng)電預(yù)測(cè)中實(shí)驗(yàn)應(yīng)用;楊劍鋒等[9]提出一種自適應(yīng)并聯(lián)組合模型預(yù)測(cè)控制算法,在化工酸堿中和反應(yīng)過(guò)程中進(jìn)行了仿真實(shí)驗(yàn);郝曉辰等[10]提出了一種BP-ARX組合模型預(yù)測(cè)控制算法,并成功應(yīng)用于水泥分解爐溫度多變量控制中。
Huang等提出了極限學(xué)習(xí)機(jī)(Extreme Learning Machine,ELM)建模方法[11-12],ELM是一種單隱含層前饋神經(jīng)網(wǎng)絡(luò),訓(xùn)練速度快,有優(yōu)良的泛化性能,避免了如BP神經(jīng)網(wǎng)絡(luò)容易陷入局部最小值、訓(xùn)練速度緩慢等問(wèn)題,在各個(gè)領(lǐng)域得到了廣泛應(yīng)用。如數(shù)據(jù)函數(shù)辨識(shí)[13]、光伏發(fā)電量預(yù)測(cè)模型[14]、齒輪故障診斷[15]、太陽(yáng)輻射率模型[16]、自適應(yīng)控制模型[17]等。因此,將ELM應(yīng)用到預(yù)測(cè)控制系統(tǒng)建模中是可行的。
因此,本文首先采用ELM算法建立控制系統(tǒng)的穩(wěn)態(tài)非線(xiàn)性模型,利用具有外界輸入的自回歸算法(Auto Regressive with eXogenous inputs,ARX)[18]建立控制系統(tǒng)的動(dòng)態(tài)線(xiàn)性模型,構(gòu)建控制系統(tǒng)的ELM-ARX組合模型;其次,推導(dǎo)預(yù)測(cè)步數(shù)內(nèi)控制系統(tǒng)的被控變量預(yù)測(cè)輸出值,提出基于ELM-ARX組合模型的預(yù)測(cè)控制算法;最后,通過(guò)Matlab數(shù)據(jù)仿真實(shí)驗(yàn)以及水箱控制應(yīng)用實(shí)驗(yàn),驗(yàn)證提出的預(yù)測(cè)控制算法有效性和可行性。
極限學(xué)習(xí)機(jī)通過(guò)對(duì)輸入層到隱含層權(quán)重與隱含層的閾值的隨機(jī)賦值,將單隱含層前饋神經(jīng)網(wǎng)絡(luò)的參數(shù)訓(xùn)練轉(zhuǎn)化為求解線(xiàn)型方程組。根據(jù)Moore-Penrose廣義逆求解的到方程組的最小范數(shù)最小二乘解作為隱含層到輸出層的權(quán)重,即完成了極限學(xué)習(xí)機(jī)的訓(xùn)練。極限學(xué)習(xí)機(jī)網(wǎng)絡(luò)結(jié)構(gòu)如圖1所示。
圖1 極限學(xué)習(xí)機(jī)網(wǎng)絡(luò)結(jié)構(gòu)圖Fig.1 Network structure diagram of Extreme Learning Machine
(1)
控制系統(tǒng)非線(xiàn)性穩(wěn)態(tài)模型可表達(dá)為如式(2)所示的矩陣形式:
Y=Hβ
(2)
式中,隱層輸出矩陣H=[hkj],hkj=g(ωkuj+bk),輸出層權(quán)值矩陣β=[β1,β2,…βk,…,βm]T,輸出矩陣Y=[y1,y2,…yj,…,yN]T。
(3)
式中,H+為隱層輸出矩陣H的摩爾彭德羅斯廣義逆。
ARX模型是一種黑箱模型,由操作變量、被控變量和系統(tǒng)噪聲干擾量組成的,能表示系統(tǒng)特性的線(xiàn)性數(shù)學(xué)模型,利用最小二乘法即可直接獲得控制系統(tǒng)的動(dòng)態(tài)線(xiàn)性模型。
設(shè)被控系統(tǒng)的動(dòng)態(tài)線(xiàn)性特性可用如下ARX模型來(lái)近似描述:
A(q)y(k)=B(q)u(k)+e(k)
(4)
式中,A(q)=1+a1q-1+…+anq-n,B(q)=b1q-1+b2q-2+…+bmq-m,q-1為后移算子,e(k)是白噪聲。
用獲得的nu個(gè)輸入的偽隨機(jī)二進(jìn)制(PRBS)信號(hào)激勵(lì)系統(tǒng),測(cè)得對(duì)應(yīng)的ny個(gè)輸出變量的值,用最小二乘法辨識(shí)得到如下描述系統(tǒng)增量關(guān)系的2階ARX動(dòng)態(tài)線(xiàn)性模型:
Δy(k)=A1Δy(k-1)+A2Δy(k-2)+B1Δu(k-1)+B2Δu(k-2)
(5)
式中,A1、A2、B1、B2為動(dòng)態(tài)模型參數(shù),A1,A2∈Rny×ny,B1,,B2∈Rny×nu;Δy(k)=y(k)-ys(k),Δu(k)=u(k)-us(k);ys(k),us(k)分別是系統(tǒng)穩(wěn)態(tài)輸出輸入。
用線(xiàn)性ARX模型來(lái)描述非線(xiàn)性控制系統(tǒng)的動(dòng)態(tài)特性,用偽隨機(jī)二進(jìn)制信號(hào)來(lái)測(cè)試控制對(duì)象。令:
A0=I-A1-A2
(6)
則控制系統(tǒng)動(dòng)態(tài)線(xiàn)性模型的穩(wěn)態(tài)增益矩陣K∈Rny×nu可表示為:
(7)
式(7)的穩(wěn)態(tài)增益就是ARX模型的動(dòng)態(tài)增益。保持A1、A2不變,令:
(8)
將式(8)代入式(5),控制系統(tǒng)的非線(xiàn)性特性可描述為:
(9)
可求得輸入變量ui(k)對(duì)應(yīng)于輸出變量yj(k)的動(dòng)態(tài)增益為:
(10)
由此,可求得任意輸入u(k)所對(duì)應(yīng)的動(dòng)態(tài)增益矩陣Ks。對(duì)于非線(xiàn)性控制系統(tǒng)來(lái)說(shuō),用當(dāng)前時(shí)刻的實(shí)際輸出值所對(duì)應(yīng)的動(dòng)態(tài)增益Kc和下一個(gè)輸出設(shè)定值所對(duì)應(yīng)的動(dòng)態(tài)增益Kn的線(xiàn)性外推插值來(lái)表示未來(lái)預(yù)測(cè)時(shí)域內(nèi)的實(shí)際動(dòng)態(tài)增益,將會(huì)具有較高的預(yù)測(cè)精度。所以在未來(lái)預(yù)測(cè)時(shí)域內(nèi)的輸入u(k+p)所對(duì)應(yīng)的動(dòng)態(tài)增益,可用下式表示:
(11)
式中,Kn、Kc分別是穩(wěn)態(tài)輸入向量us(k),us(k+1)對(duì)應(yīng)的動(dòng)態(tài)增益矩陣。
(12)
綜上所述,建立的ELM-ARX組合模型結(jié)構(gòu)如圖2所示。通過(guò)系統(tǒng)實(shí)際的動(dòng)態(tài)增益將系統(tǒng)的ELM穩(wěn)態(tài)模型和ARX動(dòng)態(tài)模型有機(jī)地結(jié)合在一起,推導(dǎo)出了包含系統(tǒng)穩(wěn)態(tài)特性和動(dòng)態(tài)特性的ELM-ARX組合模型,該組合模型可以完全反映出控制系統(tǒng)的特性。
圖2 ELM-ARX組合模型結(jié)構(gòu)圖Fig.2 Structure diagram of ELM-ARX combined model
取預(yù)測(cè)時(shí)域?yàn)镻,控制時(shí)域?yàn)镸(且P≥M),推導(dǎo)ELM-ARX組合模型的輸出預(yù)測(cè)值計(jì)算表達(dá)式。為使模型輸出與實(shí)際輸出數(shù)據(jù)的誤差最小,即按式(13)求取一組適當(dāng)?shù)哪P蛥?shù)使得取得最小值。
(13)
對(duì)式(13)求導(dǎo),即可求得模型的最優(yōu)辨識(shí)參數(shù)A1、A2、B1、B2。令:
(14)
式中,n=2,3,…,P+1,S∈Rny×ny,T∈Rny×nu,Tg∈Rny×nu。
寫(xiě)成矢量形式,多步輸出預(yù)測(cè)增量值的表示式為:
G22Δu2(k-1)+F1Δy(k)+F2Δy(k-1)
(15)
根據(jù)式(19)求得的未來(lái)預(yù)測(cè)時(shí)域內(nèi)輸出增量值,預(yù)測(cè)輸出經(jīng)位移矩陣進(jìn)行轉(zhuǎn)換,從而可得到預(yù)測(cè)輸出:
(16)
為了消除諸多因素引起的預(yù)測(cè)值的誤差,采用滾動(dòng)誤差修正法對(duì)其修正,利用k時(shí)刻的預(yù)測(cè)誤差:
(17)
(18)
取參考軌跡為:
(19)
則控制系統(tǒng)帶約束的最優(yōu)化目標(biāo)函數(shù)及其約束條件可表示如下式所示:
(20)
式中,Q=qI、R=rI分別是輸出誤差和控制增量的加權(quán)矩陣,I是單位矩陣。
得到最優(yōu)控制增量后,取第一組最優(yōu)控制增量Δu(k),通過(guò)插值法即可得當(dāng)前時(shí)刻的最優(yōu)控制輸入:
u(k)=u(k-1)+Δu(k)
(21)
當(dāng)求得的當(dāng)前時(shí)刻的控制輸入u(k)作用到控制系統(tǒng)中去,再進(jìn)行下一步的優(yōu)化求解,如此循環(huán)執(zhí)行下去即完成了預(yù)測(cè)控制的滾動(dòng)修正問(wèn)題。將每一步所求得的最優(yōu)輸入量值作用到系統(tǒng)中,得到當(dāng)前時(shí)刻的實(shí)際系統(tǒng)輸出,循環(huán)遞推即可完成對(duì)整個(gè)控制系統(tǒng)的預(yù)測(cè)控制。
為了驗(yàn)證提出的基于ELM-ARX組合模型預(yù)測(cè)控制算法的性能,從數(shù)據(jù)仿真驗(yàn)證實(shí)驗(yàn)和水箱實(shí)際控制實(shí)驗(yàn)應(yīng)用兩個(gè)方面進(jìn)行驗(yàn)證。數(shù)據(jù)仿真驗(yàn)證實(shí)驗(yàn)方面主要是針對(duì)兩輸入兩輸出模型數(shù)據(jù),進(jìn)行Matlab軟件仿真控制驗(yàn)證實(shí)驗(yàn),驗(yàn)證提出的基于ELM-ARX組合模型預(yù)測(cè)控制算法的有效性;水箱實(shí)際控制實(shí)驗(yàn)應(yīng)用方面,本文基于Visual Studio編程軟件開(kāi)發(fā)了基于ELM-ARX組合模型預(yù)測(cè)控制算法的控制軟件系統(tǒng),并將其應(yīng)用于雙容水箱過(guò)程控制系統(tǒng)上,完成預(yù)測(cè)控制算法測(cè)試實(shí)驗(yàn)應(yīng)用研究,測(cè)試算法對(duì)工業(yè)過(guò)程進(jìn)行控制的可行性。
為了驗(yàn)證提出的ELM-ARX組合模型預(yù)測(cè)控制算法的性能,選取BP-ARX組合模型[10]作為對(duì)比。針對(duì)如式(22)兩輸入兩輸出模型非線(xiàn)性系統(tǒng)[19]進(jìn)行數(shù)據(jù)模型辨識(shí)與Matlab仿真控制實(shí)驗(yàn)。
(22)
建立上述兩入兩出系統(tǒng)的ELM-ARX模型與BP-ARX模型,分別采用兩個(gè)模型進(jìn)行預(yù)測(cè)控制仿真實(shí)驗(yàn),進(jìn)行400步預(yù)測(cè)控制,ELM-ARX組合模型預(yù)測(cè)控制算法與BP-ARX組合模型預(yù)測(cè)控制算法對(duì)比控制效果如圖3到圖6所示。
(a)被控變量輸出值y1 (b)被控變量輸出值y2
(c)操作變量輸出值u1 (d)操作變量輸出值u2
由圖3數(shù)據(jù)仿真實(shí)驗(yàn)控制效果可知,采用本文提出的ELM-ARX模型與BP-ARX模型均可以使被控變量y1、y2較為平穩(wěn)控制在設(shè)定值附近,但是基于本為提出的ELM-ARX模型進(jìn)行的預(yù)測(cè)控制,非線(xiàn)性系統(tǒng)y1、y2超調(diào)量較小,表明本文提出的基于ELM-ARX組合模型預(yù)測(cè)控制算法的控制精度較高,可以獲得更優(yōu)的控制效果。
在第100步數(shù)時(shí),圖3(a)中被控變量y1設(shè)定值由1.0調(diào)整為0.5,圖3(b)中被控變量實(shí)際值y2有一定波動(dòng),通過(guò)操作變量輸入值和的調(diào)整,使得被控變量y1、y2快速穩(wěn)定在設(shè)定值附件,并且基于ELM-ARX模型相比較BP-ARX模型使得被控變量實(shí)際值y2波動(dòng)較小,體現(xiàn)出本文提出的基于ELM-ARX組合模型預(yù)測(cè)控制算法具有較強(qiáng)的干擾能力。
另外,在仿真控制程序運(yùn)算時(shí)間方面,ELM-ARX模型運(yùn)行時(shí)間為16.2541s,BP-ARX模型運(yùn)行時(shí)間為65.5285s??芍捎肊LM-ARX模型的預(yù)測(cè)控制程序運(yùn)算時(shí)間大大縮短,表明基于ELM-ARX的組合模型占用計(jì)算機(jī)資源小,這對(duì)于控制程序的長(zhǎng)期在線(xiàn)運(yùn)行是非常有利的。
為了進(jìn)一步測(cè)試提出的基于ELM-ARX組合模型預(yù)測(cè)控制算法對(duì)工業(yè)過(guò)程進(jìn)行控制的可行性,基于本文提出的理論算法,研發(fā)了模型辨識(shí)及預(yù)測(cè)控制軟件系統(tǒng)。該軟件系統(tǒng)與雙容水箱控制平臺(tái)通過(guò)OPC通信協(xié)議進(jìn)行數(shù)據(jù)傳輸,可以完成對(duì)水箱平臺(tái)數(shù)據(jù)的讀取、存儲(chǔ)、模型辨識(shí)以及控制變量操作值寫(xiě)入。
在水箱系統(tǒng)平臺(tái)實(shí)驗(yàn)中,為了驗(yàn)證本文提出的基于ELM-ARX組合模型預(yù)測(cè)控制算法多入多出控制系統(tǒng)的可行性,選取上水箱和下水箱電動(dòng)調(diào)節(jié)閥閥門(mén)開(kāi)度作為操作變量,上水箱和下水箱液位高度作為被控變量,上水箱和下水箱連接處的進(jìn)水閥門(mén)開(kāi)度作為干擾變量。同時(shí),由于水箱控制平臺(tái)上水箱和下水箱通過(guò)連接處的閥門(mén)進(jìn)行連接,此處閥門(mén)開(kāi)度的大小對(duì)上水箱液位和下水箱液位均有影響,因此,連接處的閥門(mén)開(kāi)度也是水箱控制平臺(tái)實(shí)驗(yàn)兩入兩出模型的耦合變量。
基于水箱平臺(tái)上水箱和下水箱電動(dòng)調(diào)節(jié)閥不同的閥門(mén)開(kāi)度階躍響應(yīng),采集上水箱和下水箱液位高度多組數(shù)據(jù)。采用ELM-ARX組合模型辨識(shí)軟件系統(tǒng)辨識(shí)水箱平臺(tái)兩入兩出組合模型。將建立好的水箱控制兩入兩出平臺(tái)組合模型參數(shù)載入預(yù)測(cè)控制軟件中,設(shè)定預(yù)測(cè)控制軟件系統(tǒng)相關(guān)參數(shù),將水箱控制平臺(tái)中被控變量水箱液位當(dāng)前值和設(shè)定值通過(guò)OPC數(shù)據(jù)通信模塊傳入預(yù)測(cè)控制軟件系統(tǒng)中,經(jīng)過(guò)預(yù)測(cè)控制軟件系統(tǒng)進(jìn)行計(jì)算處理,給出當(dāng)前操作變量水箱電動(dòng)調(diào)節(jié)閥閥門(mén)開(kāi)度的調(diào)整量,再通過(guò)OPC數(shù)據(jù)通信模塊將電動(dòng)調(diào)節(jié)閥閥門(mén)開(kāi)度的調(diào)整量寫(xiě)入水箱控制平臺(tái),之后循環(huán)將水箱液位當(dāng)前值傳入預(yù)測(cè)控制軟件系統(tǒng)中,直到水箱液位當(dāng)前值趨近水箱液位設(shè)定值附近,即可完成水箱控制平臺(tái)預(yù)測(cè)控制應(yīng)用實(shí)驗(yàn)。水箱平臺(tái)應(yīng)用實(shí)驗(yàn)控制效果如圖4所示。
(a)上水箱被控變量液位高度 (b)下水箱被控變量液位高度
(c)上水箱操作變量閥門(mén)開(kāi)度 (d)下水箱操作變量閥門(mén)開(kāi)度
由圖4水箱平臺(tái)控制效果總體可知,基于ELM-ARX組合模型預(yù)測(cè)控制算法預(yù)測(cè)出的上下液位高度預(yù)測(cè)值與實(shí)際值偏差不大,當(dāng)上下水箱液位高度在達(dá)到設(shè)定值之前,通過(guò)上下水箱閥門(mén)開(kāi)度的預(yù)測(cè)調(diào)節(jié),上下水箱液位高度穩(wěn)定在設(shè)定值附近,達(dá)到預(yù)期控制預(yù)期效果。
在第1分鐘左右,圖4(b)中水箱平臺(tái)控制效果下水箱液位設(shè)定值由37cm提高為43cm,圖4(d)中下水箱閥門(mén)開(kāi)度設(shè)定值小幅度提高。另外,由于有上下水箱連接處閥門(mén)開(kāi)度耦合變量的存在,上水箱中的水通過(guò)連接處閥門(mén)流到下水箱中,使得上水箱液位高度實(shí)際值下降,通過(guò)預(yù)測(cè)控制軟件系統(tǒng)算法計(jì)算,小幅度提高圖4(c)中上水箱閥門(mén)開(kāi)度。通過(guò)上述調(diào)整,使得上下水箱液位實(shí)際值均穩(wěn)步貼近于液位高度設(shè)定值,未出現(xiàn)過(guò)大的超調(diào)。
第2.5分鐘左右,圖4(a)中上水箱液位高度設(shè)定值由48cm設(shè)定為36cm時(shí),為了進(jìn)一步驗(yàn)證本文提出基于ELM-ARX組合模型預(yù)測(cè)控制算法的多變量耦合控制的先進(jìn)性,本水箱平臺(tái)應(yīng)用實(shí)驗(yàn)分別增大上下水箱連接處耦合閥門(mén)開(kāi)度以及下水箱出水閥門(mén)開(kāi)度,使得第2.5分鐘左右圖4(b)中下水箱液位高度實(shí)際值變大。為了穩(wěn)定上下水箱液位高度,圖4(c)中上水箱閥門(mén)開(kāi)度大幅度降低,圖4(d)中下水箱閥門(mén)開(kāi)度小幅度提高。經(jīng)計(jì)算,上下水箱液位高度最大超調(diào)量基本上均在9%左右浮動(dòng),甚至更小,控制效果明顯。這充分體現(xiàn)出ELM-ARX組合模型進(jìn)行過(guò)程控制的先進(jìn)性和穩(wěn)定性。
綜上所述,基于ELM-ARX組合模型預(yù)測(cè)控制算法,將設(shè)計(jì)的預(yù)測(cè)控制軟件系統(tǒng)應(yīng)用于水箱控制平臺(tái),可穩(wěn)定控制水箱液位,驗(yàn)證了本文提出的算法應(yīng)用于工業(yè)過(guò)程控制的可行性。
本文通過(guò)調(diào)節(jié)增益的方法實(shí)現(xiàn)了穩(wěn)態(tài)模型和動(dòng)態(tài)模型的有機(jī)結(jié)合,構(gòu)建了控制系統(tǒng)的ELM-ARX組合模型;推導(dǎo)了預(yù)測(cè)步數(shù)內(nèi)控制系統(tǒng)的被控變量預(yù)測(cè)輸出值,提出了基于ELM-ARX組合模型的預(yù)測(cè)控制算法。Matlab數(shù)據(jù)仿真實(shí)驗(yàn)結(jié)果表明,采用ELM-ARX組合模型可以建立多入多出非線(xiàn)性系統(tǒng)控制模型,并取得較優(yōu)的預(yù)測(cè)控制效果;基于本文提出的算法,研發(fā)了基于ELM-ARX組合模型的預(yù)測(cè)控制軟件系統(tǒng),進(jìn)行了雙容水箱平臺(tái)應(yīng)用實(shí)驗(yàn),應(yīng)用實(shí)驗(yàn)結(jié)果表明,設(shè)計(jì)的預(yù)測(cè)控制軟件系統(tǒng)實(shí)現(xiàn)了雙容水箱的精準(zhǔn)控制以及多變量耦合控制,表明本文提出的基于ELM-ARX組合模型的預(yù)測(cè)控制算法具有較強(qiáng)的穩(wěn)定性。提出的ELM-ARX組合模型預(yù)測(cè)控制算法以及研發(fā)的預(yù)測(cè)控制軟件系統(tǒng),不僅奠定了預(yù)測(cè)控制算法理論基礎(chǔ),也對(duì)實(shí)現(xiàn)工業(yè)流程精細(xì)化控制具有重要的實(shí)際意義和應(yīng)用價(jià)值。