張 勇, 陳瑞陽, 顧 亞, 楊 溢
(1.內(nèi)蒙古科技大學(xué)信息工程學(xué)院,內(nèi)蒙古 包頭 014010; 2.常熟理工學(xué)院電氣與自動化工程學(xué)院,江蘇 蘇州 215100)
建模是控制系統(tǒng)設(shè)計與研究中很重要的一個環(huán)節(jié)[1-2]。一般來說,在根據(jù)復(fù)雜工業(yè)現(xiàn)場的實際操作變量與可測量數(shù)據(jù)建立數(shù)學(xué)模型的方法分為兩類:基于模型參數(shù)估計的系統(tǒng)辨識和無模型的神經(jīng)網(wǎng)絡(luò)。系統(tǒng)辨識是一種灰箱建模方法,需要在機理分析的基礎(chǔ)上給出系統(tǒng)模型的結(jié)構(gòu)和階次,進而借著過程數(shù)據(jù)辨識相應(yīng)的模型參數(shù)。BP神經(jīng)網(wǎng)絡(luò)建模方法則不然,這種方法不需要了解系統(tǒng)太多的先驗知識,只需要獲知系統(tǒng)的輸入輸出數(shù)據(jù)就可以對復(fù)雜系統(tǒng)進行模型構(gòu)建。
對于復(fù)雜時滯控制系統(tǒng)的辨識問題,Ding和Chen[3]提出了一種基于輔助模型的雙速率采樣數(shù)據(jù)系統(tǒng)遞推最小二乘算法;Chen等[4]提出了基于輔助模型的多新息多變量非線性系統(tǒng)的算法;Han等[5]討論了基于最小二乘法的多速率多輸入系統(tǒng)的輔助模型辨識方法;顧亞[6]針對單步遲延狀態(tài)空間模型提出了一種處理未知中間變量的輔助模型遞推最小二辨識算法。
近年來,學(xué)者們對神經(jīng)網(wǎng)絡(luò)的研究主要有以下幾個方面:通過對附加動量因子和自適應(yīng)學(xué)習(xí)率的改進來改善神經(jīng)網(wǎng)絡(luò);Elman神經(jīng)網(wǎng)絡(luò)結(jié)合粒子群優(yōu)化算法分析神經(jīng)網(wǎng)絡(luò)穩(wěn)定性;隨機神經(jīng)網(wǎng)絡(luò)的指數(shù)穩(wěn)定性的問題。
上述研究成果都是假設(shè)系統(tǒng)輸入是平穩(wěn)的,然而在實際的工業(yè)過程監(jiān)控與優(yōu)化中,工況變化時有發(fā)生,并體現(xiàn)在實際現(xiàn)場基于數(shù)據(jù)驅(qū)動的神經(jīng)網(wǎng)絡(luò)方法的預(yù)測結(jié)果不能如實地跟隨系統(tǒng)工況的變化。高爐冶煉過程中,入爐礦石配比結(jié)構(gòu)發(fā)生變化時,整個現(xiàn)場的操作環(huán)境和操作變量都會隨之變化[7-8],而此時的數(shù)據(jù)驅(qū)動模型給出的爐溫和高爐鐵水質(zhì)量等預(yù)測結(jié)果往往誤差很大[9],煤化工氣化爐入爐水煤漿的成分發(fā)生變化,相關(guān)操作參數(shù)也跟隨變化,而此時預(yù)測的產(chǎn)氣量也往往會有誤差。
時滯是高爐冶煉、煤化工以及其他復(fù)雜工業(yè)過程的主要特征之一。在高爐冶煉和煤化工的連續(xù)實際工業(yè)生產(chǎn)過程中,每一位工程技術(shù)人員對于參數(shù)變量的操作不可能完全相同且無差錯,這就給工業(yè)控制系統(tǒng)的建模分析增加了難度。因此,本文給出了時序數(shù)列的平穩(wěn)性數(shù)學(xué)描述來模擬實際現(xiàn)場操作參數(shù)的這一變化。由于復(fù)雜工業(yè)過程變工況數(shù)據(jù)缺少真實標(biāo)準(zhǔn),同時又難以獲取,本文以單步遲延狀態(tài)空間模型為復(fù)雜工業(yè)過程模擬對象,研究非平穩(wěn)假設(shè)和變工況條件下,參數(shù)估計方法與神經(jīng)網(wǎng)絡(luò)方法的各自適應(yīng)性。
一類遲延系統(tǒng)可表述為:
式中:u(t)∈R1和y(t)∈R1——遲延系統(tǒng)的輸入和輸出;
x(t)∈Rn——遲延系統(tǒng)的狀態(tài)變量;
v(t)∈R1——白噪聲;
A∈ Rn×n,B∈ Rn×n,f∈ Rn×1和c∈ R1×n——遲延系統(tǒng)參數(shù)。
在輸入輸出采集數(shù)據(jù)集 {u(t),y(t)}的基礎(chǔ)上估計遲延系統(tǒng)中未知參數(shù)的辨識方法,以及以遲延系統(tǒng)輸入輸出數(shù)據(jù)為訓(xùn)練樣本,運用BP神經(jīng)網(wǎng)絡(luò)方法逼近系統(tǒng)輸出的建模方法均可以構(gòu)建系統(tǒng)過程模型。系統(tǒng)辨識和神經(jīng)網(wǎng)絡(luò)建模方法均已在工業(yè)過程建模領(lǐng)域得到了廣泛的應(yīng)用。如圖1所示,針對工業(yè)現(xiàn)場中工況變化時有發(fā)生的問題,本文以遲延系統(tǒng)為研究對象,在系統(tǒng)輸入 {u(t)}平穩(wěn)狀態(tài)和非平穩(wěn)狀態(tài)下分別研究和分析這兩類方法的優(yōu)劣。
圖1 基于數(shù)據(jù)的復(fù)雜系統(tǒng)建模結(jié)構(gòu)圖
平穩(wěn)工況在數(shù)學(xué)上表示為特定時間序列的平穩(wěn)性。在實際工業(yè)生產(chǎn)中,時間序列數(shù)據(jù)很難滿足嚴(yán)格意義上的均值、方差以及方差函數(shù)為恒定值的平穩(wěn)性要求,張勇等[10]研究了適合一般工程意義的寬平穩(wěn)特征下的無偏參數(shù)估計。以本文所研究的遲延系統(tǒng)為例,適用于工程領(lǐng)域的寬平穩(wěn)時間序列近似平穩(wěn)的條件是時間序列的二階平穩(wěn)。
對于描述復(fù)雜工業(yè)過程的遲延系統(tǒng)(1),常規(guī)狀態(tài)下會一直運行在平穩(wěn)工況下,其輸入采樣序列滿足如下3個條件則認(rèn)為該系統(tǒng)運行在平穩(wěn)工況下,若則:
1){u(t)}是一個有限方差過程,即當(dāng)t→T,任取
2){u(t)}的均值函數(shù)E(ut)= μu(t)= μu是一個常數(shù)且當(dāng)t→T時,該均值不隨時間t的變化而變化。這是一個嚴(yán)格的平穩(wěn)過程。而在實際的生產(chǎn)生活中,μu的 值允許有小范圍的波動,即任取m≤T,有
3) {u(t)}的自相關(guān)函數(shù) co v(s,t)=γ(s,t),只取決于|t-s|,令t=s+τ,其中 τ代表時滯或滯后;在實際的工業(yè)現(xiàn)場,一組時間序列的自相關(guān)函數(shù)值一般近似相等:
當(dāng)遲延系統(tǒng)的輸入滿足平穩(wěn)工況條件時,系統(tǒng)輸入輸出均滿足平穩(wěn)工況的條件,這時可以應(yīng)用傳統(tǒng)的辨識方法對遲延系統(tǒng)的參數(shù)進行辨識從而獲取其辨識模型。
式(3)可以寫成如下形式:
用e(t)替代式(4)中的 α (z)v(t)可得:
其中z-1為單位移位算子定義如下多項式:
定義參數(shù)向量 θ和信息向量 φ (t):
所以式(5)可以寫成:
將上式展開并作移項處理可以寫成向量的形式:
所以可以得到遲延系統(tǒng)的辨識表達式:
由式(12)系統(tǒng)辨識表達式定義并極小化準(zhǔn)則函數(shù):
其中為t時刻的LS估計,ARX模型LS估計的已被證明的收斂條件為模型中的噪聲項為白噪聲時間序列,若不滿足該條件,則最小二乘參數(shù)估計是有偏的。很明顯,式(14)中的噪聲項e(t)不滿足該收斂條件。
由上文可知,由于噪聲項e(t)中含有多項式 α (z),因此要獲得該單步遲延狀態(tài)空間模型的最小二乘估計表達式需要定義一個新的噪聲向量 φv(t)和參數(shù)向量:
根據(jù)辨識模型對該遲延系統(tǒng)進行參數(shù)估計,參數(shù)向量 θ為需要辨識的目標(biāo),由遲延系統(tǒng)的辨識模型表達式可知,噪聲項不滿足收斂條件中噪聲項為白噪聲序列的要求。由最小二乘表達式(18)可知,該遲延系統(tǒng)的遞推最小二乘參數(shù)估計是有偏的,所以很難獲得系統(tǒng)精度很高的辨識模型。
在實際工業(yè)過程中,操作條件和操作環(huán)境的變換時有發(fā)生,系統(tǒng)工況隨之發(fā)生變化。這種變化在數(shù)學(xué)上表述為系統(tǒng)的輸入 {u(t)}隨著時間的推移而發(fā)生跳變,因而就會產(chǎn)生不滿足平穩(wěn)工況要求的現(xiàn)象。
當(dāng)系統(tǒng)的輸入數(shù)據(jù)發(fā)生變化,輸入數(shù)據(jù)時間序列的統(tǒng)計特性將隨之發(fā)生變化,將不再滿足平穩(wěn)時間序列的要求。輸入數(shù)據(jù)時間序列的統(tǒng)計特性(均值、方差、協(xié)方差)中的一個或者多個會隨著時間的變化而變化。假設(shè) ,若H>T非平穩(wěn)時間序列的統(tǒng)計特性有如下特征:
1)對 于 {u(h)}的方 差 函數(shù) ,任取m≤H,有
2) {u(h)}的均值函數(shù)E(uh)= μu(h)= μu, μu是一個常數(shù),且當(dāng)h→H時 μu隨著時間h的變化而變化,任取
3) {u(h)}的自相關(guān)函數(shù)cov(s,h)≠ γ(s,h)。
當(dāng)一組時間序列滿足以上一個或者多個統(tǒng)計特征時,該時間序列是非平穩(wěn)的,其可以表征實際工業(yè)現(xiàn)場的工況變化現(xiàn)象。
在文獻[10]中,張勇給出了輸出誤差系統(tǒng)最小二乘估計協(xié)方差矩陣在平穩(wěn)信號和非平穩(wěn)信號下應(yīng)該滿足的要求,仿真結(jié)果證明了平穩(wěn)信號下最小二乘參數(shù)估計的精度高于非平穩(wěn)信號下的參數(shù)估計,該論文研究了非平穩(wěn)信號寬平穩(wěn)情況下的參數(shù)估計問題。本文的輸入數(shù)據(jù)信號集會發(fā)生比較大的跳變,比文獻[10]所要研究的問題更為復(fù)雜,且更具有現(xiàn)實的工程意義。
對于常規(guī)的參數(shù)辨識來說,通常都是研究在某一種特定工況下參數(shù)辨識的精度問題或者是改變系統(tǒng)噪聲方差以獲得不同隨機噪聲來對特定方法的辨識精度作對比分析;神經(jīng)網(wǎng)絡(luò)建模一般也是基于某種特定工況下相關(guān)數(shù)據(jù)的建模分析。
本文利用遲延系統(tǒng)平穩(wěn)工況和非平穩(wěn)工況下的辨識模型輸出與神經(jīng)網(wǎng)絡(luò)模型輸出作對比。研究最小二乘方法、輔助模型最小二乘方法和神經(jīng)網(wǎng)絡(luò)建模方法在變工況條件對于單步遲延狀態(tài)空間模型建模的優(yōu)劣。
式(1)的輔助模型最小二乘參數(shù)估計,首先定義一個中間變量:
定義參數(shù)向量φ(t):
綜合式(6)~式(8)和式(20)可得:
所以,可得遲延系統(tǒng)的辨識模型:
給出如下準(zhǔn)則函數(shù)并極小化:
所以有
輔助模型算法原理結(jié)構(gòu)圖如圖2所示。
圖2 輔助模型算法原理結(jié)構(gòu)圖
因此式(1)參數(shù)向量θ的輔助模型遞推最小二乘辨識算法如下:
通過移位算子的性質(zhì),將具有時滯的狀態(tài)空間模型轉(zhuǎn)換為輸入輸出表示,然后基于輔助模型識別技術(shù)識別輸入輸出表示的參數(shù)。該方法具有處理信息向量中未測量變量的優(yōu)點。
BP(back propagation)神經(jīng)網(wǎng)絡(luò)算法是構(gòu)建復(fù)雜系統(tǒng)的一類典型方法[11-13],它可以有效解決連續(xù)有界非線性函數(shù)的逼近問題,尤其是經(jīng)典的三層BP神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)對于任意精度的非線性函數(shù)逼近效果顯著。
應(yīng)用BP神經(jīng)網(wǎng)絡(luò)算法逼近單步遲延狀態(tài)空間模型,網(wǎng)絡(luò)結(jié)構(gòu)為多輸入單輸出結(jié)構(gòu)。在允許誤差范圍內(nèi)通過對隱含層節(jié)點數(shù)和學(xué)習(xí)訓(xùn)練函數(shù)等參數(shù)的合理設(shè)置可以得到合適的網(wǎng)絡(luò)模型。由于輸入輸出變量間的強關(guān)聯(lián)性,為了更好地反映遲延系統(tǒng)的動態(tài)特性并將輸入輸出變量時序數(shù)據(jù)的時滯關(guān)系考慮在神經(jīng)網(wǎng)絡(luò)模型中,將單步遲延狀態(tài)空間模型式(1)的BP神經(jīng)網(wǎng)絡(luò)逼近模型表示為:
對于單隱層的BP神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu),假設(shè)該系統(tǒng)模型有M組樣本數(shù)據(jù)(ui,yi):
隱含層的節(jié)點數(shù)為P,激活函數(shù)為f(x)的單隱層神經(jīng)網(wǎng)絡(luò)表達式為:
神經(jīng)網(wǎng)絡(luò)期望輸出Y與神經(jīng)網(wǎng)絡(luò)輸出O的誤差表達式為:
BP神經(jīng)網(wǎng)絡(luò)權(quán)值的迭代修正公式設(shè)計方法即神經(jīng)網(wǎng)絡(luò)的訓(xùn)練調(diào)優(yōu)方法選擇負(fù)梯度下降方法。隱含層節(jié)點數(shù)的選取以神經(jīng)網(wǎng)絡(luò)模型獲得的命中率最高為最優(yōu)。隱含層節(jié)點數(shù)選取的經(jīng)驗公式如下:
式中:N——隱含層節(jié)點數(shù);
n——輸入層節(jié)點數(shù);
m——輸出層節(jié)點數(shù)。
其中,a一 般選取 [0 ,10]內(nèi)的整數(shù)。
較高的命中率和最小的平均相對誤差是隱含層節(jié)點數(shù)選取的前提。依據(jù)公式(35)確定隱含層節(jié)點數(shù)的理想范圍是 [2 .2,12.2]。
設(shè)定迭代誤差即迭代終止條件:ΔJ(e)=J(e)t+1-所以可以將隱含層的節(jié)點數(shù)范圍擴大到 [2 ,13]。經(jīng)過不斷調(diào)試,最終隱含層節(jié)點數(shù)確定為13。BP神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)圖如圖3所示。
圖3 BP神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)圖
例1:神經(jīng)網(wǎng)絡(luò)逼近拋物函數(shù)
設(shè)拋物線系統(tǒng):
拋物線系統(tǒng)遞推最小二乘方法辨識模型參數(shù)θ1=[0.88,1.85,2.80]T,輔助模型最小二乘方法辨識模型參數(shù)θ2=[0.95,1.98,2.96]T。拋物線系統(tǒng)辨識模型輸出曲線如圖4所示。
圖4 模型輸出y 隨時間t變化曲線(例1)
以0.1為步長,將拋物線系統(tǒng)在集合[ 0 ,7]和[-2,9]之間的輸入輸出數(shù)據(jù)集分別作為BP神經(jīng)網(wǎng)絡(luò)訓(xùn)練集和測試集,拋物線系統(tǒng)BP神經(jīng)網(wǎng)絡(luò)建模輸出曲線如圖4所示。
取數(shù)據(jù)長度t=23,3種方法模型輸出誤差如圖5所示。
圖5 模型輸出誤差隨時間t變化曲線(例1)
由仿真曲線可以得出:當(dāng)測試數(shù)據(jù)超出訓(xùn)練數(shù)據(jù)的界限范圍,拋物線系統(tǒng)神經(jīng)網(wǎng)絡(luò)模型的輸出結(jié)果跟隨性很差,對輸入變化的適應(yīng)性很差,輸出會發(fā)生震蕩。根據(jù)誤差曲線的變化,可以得出拋物線系統(tǒng)輔助模型最小二乘辨識模型比遞推最小二乘辨識模型和神經(jīng)網(wǎng)絡(luò)模型的輸出誤差要小。
例2:單步遲延二階仿真系統(tǒng):
對該二階仿真系統(tǒng)運用輔助模型遞推最小二乘辨識算法估計系統(tǒng)的參數(shù)。當(dāng)噪聲方差 σ2=0.12,遺忘因子 F F=1.0時,系統(tǒng)的噪信比 δns=5.62%。
由仿真結(jié)果可得出該系統(tǒng)的輸入輸出函數(shù)為:
選取單步遲延狀態(tài)空間模型式(1)噪聲方差為0.1時的2 950組數(shù)據(jù)作為訓(xùn)練集,50組數(shù)據(jù)作為測試集。
1)兩次改變輸入數(shù)據(jù)的邊界條件來模擬工況的變化,并分別選取原模型50組數(shù)據(jù)作為測試集。
2)選取一組理想的最小二乘辨識參數(shù)作為模型參數(shù),獲得相應(yīng)輸入數(shù)據(jù)下的最小二乘辨識模型輸出。
3)選取一組理想輔助模型最小二乘辨識參數(shù)作為模型參數(shù),獲得相應(yīng)輸入數(shù)據(jù)下的輔助模型最小二乘辨識模型輸出,仿真曲線如圖6~圖7所示。
圖6 模型輸出y 隨時間t變化曲線(例2)
圖7 模型輸出誤差隨時間t變化曲線(例2)
由仿真曲線可以得出:就輸出誤差來看,運用輔助模型最小二乘方法獲得的模型輸出誤差最小,誤差范圍為 [- 1,1]。當(dāng)工況發(fā)生變化時,運用輔助模型最小二乘方法獲得的模型輸出誤差最平穩(wěn),對系統(tǒng)工況變化的適應(yīng)性最好,而神經(jīng)網(wǎng)絡(luò)建模方法獲得的模型輸出誤差越來越大,對系統(tǒng)工況變化的適應(yīng)性最差。
3 種經(jīng)典方法均可以對模型結(jié)構(gòu)和階次已知的系統(tǒng)來進行建模分析。對于遲延系統(tǒng)的建模而言,在平穩(wěn)工況下,神經(jīng)網(wǎng)絡(luò)建模因其強大的非線性函數(shù)逼近能力可以獲得較好的模型輸出和較小的輸出誤差。當(dāng)工況發(fā)生變化時,遲延狀態(tài)空間系統(tǒng)輔助模型最小二乘辨識模型輸出誤差最小,對系統(tǒng)工況變化的適應(yīng)性最好,而神經(jīng)網(wǎng)絡(luò)由于進入再學(xué)習(xí)狀態(tài),其模型的輸出誤差相對較大,對系統(tǒng)工況變化的適應(yīng)性相對較差。