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