劉芳芳,任曉明
(1.國網(wǎng)河南省電力公司技能培訓(xùn)中心,河南 鄭州 450051;2.中電科信息產(chǎn)業(yè)有限公司,河南 鄭州 450050)
最小二乘遞推算法(recursive least square,RLS)是為解決傳統(tǒng)最小二乘算法計算量大且不能在線辨識而產(chǎn)生的。其具有易于在線辨識,計算量小且簡單易用的優(yōu)點,備受學(xué)者和工程師的關(guān)注[1-2]。在線性系統(tǒng)和非線性系統(tǒng)的參數(shù)辨識中是應(yīng)用較多的一種辨識算法。文獻[3]利用一階線性濾波技術(shù)對系統(tǒng)輸入輸出數(shù)據(jù)進行濾波,獲得有效的辨識數(shù)據(jù)。通過采用遞歸最小二乘算法,辨識偽線性ARMA系統(tǒng)的各個參數(shù)。仿真結(jié)果表明了算法的有效性。文獻[4]利用輔助模型設(shè)計了變遞推間隔分解最小二乘算法。對比仿真結(jié)果證明了提出算法明顯優(yōu)于目前存在的一些算法。文獻[5]針對輸出誤差模型辨識過程中計算負擔(dān)大的缺點,利用分解技術(shù)將多變量系統(tǒng)分解為多個子系統(tǒng)辨識模型,然后通過對三個子系統(tǒng)分別設(shè)計遞推最小二乘算法辨識各個子系統(tǒng)的參數(shù)。文獻[6]提出的算法與常規(guī)的辨識模型不同,它利用裝置瞬時能量狀態(tài)而不是電荷狀態(tài)作為燃料表的狀態(tài),然后構(gòu)建辨識模型,利用遞歸最小二乘算法辨識超級電容器的電容和電阻值。試驗驗證了提出算法的合理性和有用性。
從上述文獻可知,由于遞推最小二乘法在每次參數(shù)更新時僅僅利用當前的系統(tǒng)信息,導(dǎo)致辨識精度較低和收斂速度慢,且遞歸最小二乘法應(yīng)用于線性系統(tǒng)的辨識居多,用于非線性系統(tǒng)的辨識文獻有限。因為遞歸最小二乘法(auxiliary model based least squares algorithm,AM-RLS)是根據(jù)線性系統(tǒng)的線性回歸形式發(fā)展而來的,所以適用于處理線性系統(tǒng)。為此,多新息最小二乘法(multi-innovation least squares,MILS)通過利用p組數(shù)據(jù)改善了遞推最小二乘的辨識性能。將多新息最小二乘算法嘗試用于處理含輸入非線性項的非線性系統(tǒng)辨識。在該算法中,利用關(guān)鍵項分離技術(shù)獲得線性分離的辨識模型,減少了冗余的參數(shù)估計和計算負擔(dān)。利用建立輔助模型解決內(nèi)部變量未知問題,提高了辨識的精度。
非線性系統(tǒng)結(jié)構(gòu)如圖1所示。圖1中:f(·) 為多項式非線性子環(huán)節(jié);L(·)為動態(tài)線性子系統(tǒng);v(t)為系統(tǒng)外加的噪聲項;u(t)、y(t)為系統(tǒng)的輸入、輸出量;x(t)為中間變量。
這類組合系統(tǒng)以能夠刻畫一大類實際非線性系統(tǒng)
特性而受到研究者的關(guān)注[7-9]。
圖1 非線性系統(tǒng)結(jié)構(gòu)圖
圖1中,各個部分表達式為:
(1)
(2)
為了建立辨識模型,需要將非線性項代入線性子系統(tǒng)。如果直接代入,將導(dǎo)致辨識模型對各個參數(shù)是復(fù)合的,增加多余的參數(shù)估計。為此,當非線性項代入到線性項時,利用關(guān)鍵項分離技術(shù)[7-10]可以減少冗余的參數(shù)估計數(shù)量,同時減少了算法的計算負擔(dān)。為獲得唯一的辨識模型,一般設(shè)b1=1。
將式(1)代入式(2),結(jié)合關(guān)鍵項分離技術(shù),可得:
y(t)=b1f1x(t-1)+b1f2x(t-1)2+…+b1fmx(t-1)m+b2x(t-2)+b3x(t-3)+…+bnbx(t-nb)-
a1y(t-1)-a2y(t-2)-…-anay(t-na)+v(t)
(3)
將式(3)化為緊湊的形式,表達式為:
y(t)=φT(t)θ+v(t)
(4)
其中,系統(tǒng)信息向量φ(t)的表達式為:
φ(t)={x[t-1,x(t-1)2,…,x(t-1)m,x(t-2),x(t-3),…,x(t-nb),-y(t-1),
-y(t-2),…,y(t-na)]}T
(5)
被估計參數(shù)向量θ為:
θ=[b1f1,b1,f2,…,f1fm,b2,b3,…,bnb,a1,a2,…,ana]T
(6)
(7)
(8)
P-1(t)=P-1(t-1)+φ(t)φT(t)P(0)=p0I
(9)
在RLS算法中,e(t)為單新息。參數(shù)更新時僅僅利用了當前系統(tǒng)信息,這使得參數(shù)辨識性能不夠理想。為了提高RLS的辨識性能,利用p組數(shù)據(jù)構(gòu)造多新息向量。為此,定義:
φ(p,t)=[φ(t),φ(t-1),…,φ(t-p+1)]T
(10)
y(p,t)=[y(t),y(t-1),…,y(t-p+1)]T
(11)
則多新息向量E(p,t)可以表示為:
(12)
當p≥2 時,MILS算法表述為:
(13)
(14)
P-1(t)=P-1(t-1)+φ(p,t)φT(p,t)
(15)
為了避免求矩陣的協(xié)方差矩陣,結(jié)合矩陣求逆原理和式(13)~式(15),可以獲得下式的多新息最小二乘法算法:
(16)
由于信息矩陣中含有未知的變量x(t),會使得辨識算法無法實施。為此,利用輔助模型辨識思想[11],構(gòu)造如下的輔助模型。利用輔助模型的輸出替代未知的變量,使辨識算法可順利實施。輔助模型的表達式為:
(17)
為便于后續(xù)仿真對比,將提出的算法稱為基于輔助模型的多新息最小二乘辨識算法(auxiliary model based multi innovation least squares algorithm,AM-MILS)。
當新息長度p=1時,MILS簡化為最小二乘的形式,即:
(18)
為了驗證提出算法的優(yōu)勢,將基于輔助模型的AM-RLS[12]作為對比仿真。
考慮系統(tǒng)為:
x(t)=0.5u(t)+0.2u2(t)+0.1u3(t)
y(t)=u(t-1)+0.2u(t-2)-0.6y(t-1)-0.45y(t-2)
此系統(tǒng)中真實的參數(shù)為f1=0.5,f2=0.2,f3=0.1,b1=1,b2=0.2,a1=0.6,a2=0.45。本文的目標是利用可測的輸入輸出數(shù)據(jù),設(shè)計辨識算法,以辨識這些真實的參數(shù)值,并驗證辨識算的有效性。
AM-MILS的初始參數(shù)為:p0=106,θ(0)=[0.001,0.001,0.001,0.001,0.001,0.001]T,N=2 000,p=4,噪聲為白噪聲,輸入幅值為1的隨機序列。對比算法AM-RLS的初始值參數(shù)和AM-MILS 一樣。不同算法多項式參數(shù)估計曲線、不同算法線性子系統(tǒng)系數(shù)參數(shù)估計曲線如圖2、圖3所示。
圖2 不同算法多項式參數(shù)估計曲線
從圖2、圖3可以看出,在參數(shù)估計的初始階段,兩種辨識算法的估計曲線都快速向真實值靠攏,在參數(shù)估計的后期階段,隨著數(shù)據(jù)的增加,被估計的參數(shù)能夠收斂于真實值或其附近值。這說明兩種辨識算法對這類非線性系統(tǒng)是有效的。但是從圖2、圖3中也可以看出,AM-RLS 參數(shù)估計結(jié)果有明顯的震蕩,且收斂速度明顯低于AM-MILS算法,這主要得益于AM-MILS通過利用p組系統(tǒng)信息,不僅利用了當前的數(shù)據(jù)而且利用過去的信息,提高了辨識的性能。
圖3 不同算法線性子系統(tǒng)參數(shù)估計曲線
圖4是AM-RLS模型驗證結(jié)果,圖5是AM-MILS 算法模型驗證結(jié)果。
圖4 AM-RLS模型驗證結(jié)果
圖5 AM-MILS模型驗證結(jié)果
從圖4和圖5可知,基于兩種辨識的算法建立的估計模型都能有效地跟蹤實際模型的輸出。這說明辨識結(jié)果是正確的、有效的。基于AM-MILS算法的模型相對于AM-RLS算法而言能夠以較小的輸出誤差跟蹤實際模型的輸出,這說明AM-MILS的辨識性能高于AM-RLS算法,這和參數(shù)估計結(jié)果圖2、圖3是一致的。
參數(shù)估計誤差曲線[11-13]如圖6所示。圖6顯示兩種辨識算法的參數(shù)估計結(jié)果都是隨著數(shù)據(jù)的增加而逐漸減少的,最后趨向于一個較小的平穩(wěn)值。但是圖6也反映了AM-MILS算法比AM-RLS 算法有更高的估計精度和收斂速度,側(cè)面證明了AM-MILS的優(yōu)勢。
圖6 參數(shù)估計誤差曲線
從圖6可以得出一個結(jié)論:AM-MILS因為引入了多新息長度,使得辨識性能高于AM-RLS算法。
本文針對含輸入非線性項的非線性系統(tǒng)辨識問題,將多新息長度引入到單新息中,設(shè)計多新息向量。基于多新息最小二乘法,實現(xiàn)考慮系統(tǒng)的參數(shù)辨識。構(gòu)造的辨識模型對參數(shù)向量是線性的,有效避免了多余的參數(shù)估計并減少了計算量;輔助模型的建立解決了未知的中間變量問題,提高了參數(shù)辨識的精度。對比結(jié)果表明,相比于基于輔助模型的遞推最小二乘算法,基于多新息最小二乘算法的辨識結(jié)果更接近真實值,更能描述實際模型的輸出非線性特性。這證明了加入多新息后,設(shè)計的辨識算法的辨識性能變得更加優(yōu)異。