宋婉娟 ,張 劍
(1.湖北第二師范學(xué)院計算機學(xué)院,湖北 武漢 430205 ;2.武漢體育學(xué)院體育工程與信息技術(shù)學(xué)院,湖北 武漢 430070)
非線性系統(tǒng)狀態(tài)估計問題是工程應(yīng)用中的難點和瓶頸,備受研究人員關(guān)注[1-3],但是由于該類系統(tǒng)參量的未知性,很難建立精確的數(shù)學(xué)模型,目前常用的解決方法主要是采用濾波估計,數(shù)值逼近的思路解決。例如,擴展卡爾曼濾波(Extended Kalman Filter,EKF)[4-7],通過對非線性系統(tǒng)進行一階泰勒近似,將非線性系統(tǒng)進行局部線性近似處理,雖簡單易行,但存在明顯的截斷誤差,噪聲敏感性強;無跡卡爾曼濾波(Unscented Kalman Filter, UKF)[8-10],通過對模型統(tǒng)計參量的非線性變換,實現(xiàn)系統(tǒng)的高階近似,但是其估計精度嚴重依賴于系統(tǒng)初值和觀測噪聲,當(dāng)噪聲參量時變情況下跟蹤精度會降低;粒子濾波(Particle Filter, PF)[11-15]通過粒子加權(quán)求和的方法對系統(tǒng)積分進行擬合,在粒子數(shù)足夠多的情況下是可以無限逼近系統(tǒng)真實狀態(tài)的,但是該方法的濾波精度和實時性之間的矛盾至今尚未有效解決,限制了其工程應(yīng)用。針對這些問題,文獻[16]采用高階球面積分傳播容積點的思想提出了容積卡爾曼濾波(Cubature Kalman Filter, CKF)方法,對狀態(tài)的均值和協(xié)方差進行非線性傳播,同EKF、UKF以及PF等非線性濾波方法相比,不僅提升了濾波精度,計算的復(fù)雜性也大大降低,在目標跟蹤、狀態(tài)估計等領(lǐng)域得到了廣泛的應(yīng)用。但是標準CKF方法嚴重依賴于精確的狀態(tài)模型和噪聲統(tǒng)計特性[17-19],而在實際的工程應(yīng)用中很難滿足,特別是觀測噪聲方差,具有較強的時變特性,很難滿足噪聲方差統(tǒng)計特性精確已知的要求[20],限制了其在工程中的推廣應(yīng)用。
針對觀測噪聲方差時變情況下,非線性系統(tǒng)狀態(tài)估計精度不高的問題,本文借鑒計算機視覺領(lǐng)域的變分貝葉斯方法[21-24],將其引入到CKF的框架內(nèi),并應(yīng)用于非線性系統(tǒng)估計。首先,基于變分貝葉斯進行模型參量和噪聲統(tǒng)計特性的實時估計,并將估計結(jié)果引入到CKF的濾波過程,進行非線性系統(tǒng)的在線預(yù)測和估計。由于實現(xiàn)了模型參量和噪聲特性的在線動態(tài)更新和估計,能夠很好地適應(yīng)無法預(yù)先精確獲取信息時變系統(tǒng),有效擴展了CKF的應(yīng)用范圍。最后,基于計算機仿真對本文方法進行了詳細的性能分析。
常用的非線性系統(tǒng)狀態(tài)方程可以表示為:
(1)
式(1)中,f(xk-1)和h(xk)分別表示狀態(tài)過程和觀測過程的非線性函數(shù),wk~N(0,qk)和vk~N(0,rk)分別表示狀態(tài)噪聲和觀測噪聲,二者均假設(shè)服從高斯分布,其中,qk和rk分別表示過程噪聲和觀測噪聲的協(xié)方差矩陣。因此,可進一步將將式(1)的非線性系統(tǒng)模型表示為:
(2)
因xk符合均值為mk,方差為Pk的高斯分布,即xk~N(mk,Pk),則k-1時刻的先驗概率為:
p(xk|z1:k)=N(mk,Pk)
針對式(2)描述的非線性系統(tǒng)方程,可將標準CKF的算法概括為預(yù)測和更新兩個過程,具體的實現(xiàn)描述為[25]:
預(yù)測:
(3)
(4)
(5)
(6)
更新:
(7)
(8)
其中,h(·)為式(1)中所示的觀測過程非線性傳遞函數(shù),[1]=[I,-I],I為單位矩陣。
(9)
(10)
(11)
(12)
獲取觀測信息Z以后,可以將狀態(tài)變量x的后驗密度按照貝葉斯準則表示為:
(13)
其核心是計算邊緣似然函數(shù)p(Z),線性條件下可以通過解析計算的形式獲取,但是在非線性情況下,很難獲取解析解,文獻[25]提出采用變分貝葉斯思想,通過引入近似分布函數(shù)q(x),將式(13)重新表示為:
(14)
且:
(15)
(16)
通過偏導(dǎo)計算,可將F(q(x))的極值計算為:
(17)
因此,可以將這種參量估計方法理解為在給定先驗觀測信息的條件下,聯(lián)合初始條件對F(q(x))進行迭代估計,計算極值的過程。
從標準CKF的計算過程中可以看出,其觀測噪聲是已知且不變的,這一點的假設(shè)不符合實際的工程應(yīng)用環(huán)境。因此,本文主要針對觀測噪聲時變情況下的濾波問題進行分析,本文的主要改進思想是對觀測噪聲特性和系統(tǒng)狀態(tài)變量進行聯(lián)合在線估計,同現(xiàn)有的方法相比,主要有以下兩點創(chuàng)新:
1) 在預(yù)測步驟中對噪聲的方差進行動態(tài)建模,并采用變分貝葉斯方法在更新步驟中迭代地估計觀測噪聲的方差;
2) 將估計的噪聲統(tǒng)計特性和狀態(tài)參量引入到CKF濾波框架,實現(xiàn)了非線性系統(tǒng)的精確濾波和估計。
假設(shè)獲取k-1觀測后,可將兩者的聯(lián)合概率分布函數(shù)表示為:
(18)
k時刻觀測信息獲取后,可表示為:
(19)
為了快速簡潔的計算積分,采用變分貝葉斯的方法進行次優(yōu)逼近,根據(jù)文獻[26]的研究,可將式(19)表示為:
p(xk,rk|z1:k-1)=p(xk|z1:k-1)p(rk|z1:k-1)=
(20)
根據(jù)式(14)—式(17)的分析,引入q(xk,rk|z1:k)近似p(xk,rk|z1:k),在兩者獨立的情況下,可將聯(lián)合概率表示為:
q(xk,rk|z1:k)=q(xk|z1:k)q(rk|z1:k)
(21)
則可將狀態(tài)變量表示為:
(22)
系統(tǒng)觀測噪聲方差表示為:
(23)
假設(shè)參數(shù)服從高斯分布,則可表示為[27]:
q(xk|z1:k)=N(xk|mk,Pk)
(24)
(25)
(26)
(27)
(28)
假設(shè)參量服從逆Gamma分布,則可表示為:
(29)
(30)
(31)
則
(32)
根據(jù)CKF的采樣原理,則期望的計算可以展開為:
Exk[((zk-hk(xk))i)2]=
(33)
為驗證本文方法的性能,采用振動系統(tǒng)中常用的非線性系統(tǒng)方程,其離散形式的狀態(tài)模型和觀測模型如式(34)所示[28]:
(34)
(35)
(36)
實驗中為便于分析具體效果,將估計結(jié)果同傳統(tǒng)的CK方法進行比較,具體的估計結(jié)果如圖1、圖2和圖3所示,分別展示了在不同的觀測噪聲情況下的跟蹤結(jié)果,并給出了估計誤差。其中,圖(a)的橫軸表示具體的運行時間,縱軸為狀態(tài)的幅值,圖(b)的橫軸表示具體的運行時間,縱軸為狀態(tài)估計的相對誤差幅值。
圖1 rk=1時跟蹤結(jié)果Fig.1 Estimation results when rk=1
圖2 過程噪聲固定觀測噪聲時變的跟蹤結(jié)果Fig.2 Estimation results when the process noise is constant and the observation noise is time-varying
圖3 rk=5時跟蹤結(jié)果Fig.3 Estimation results when rk=5
從圖中可以看出,隨著觀測噪聲的增加,傳統(tǒng)CK濾波估計方法的估計精度逐漸降低,估計誤差明顯增加,但是本文方法仍然保持了較好的估計精度。其主要原因是因為傳統(tǒng)CK方法缺少系統(tǒng)觀測噪聲的實時信息,隨著迭代估計的時間遞推,出現(xiàn)了估計誤差的累計效應(yīng)。這一點從各個誤差曲線的幅值分布狀態(tài)均可以明顯看出。而本文方法由于采用了狀態(tài)和觀測噪聲統(tǒng)計特性的聯(lián)合估計方法,獲取了觀測噪聲的實時信息,保證了較高的估計精度。但是隨著觀測噪聲方差的逐步增加,本文方法的估計精度也有所降低,這一點主要是因為觀測噪聲增加,引起了觀測參量模型的漂移,至于觀測模型漂移問題對估計精度的影響,作者在后續(xù)的研究中會進一步分析,在本文中就不詳細分析。
針對噪聲動態(tài)時變情況下的非線性系統(tǒng)狀態(tài)估計問題,本文提出了一種觀測噪聲方差變化條件下系統(tǒng)狀態(tài)估計方法。該方法采用變分貝葉斯濾波對系統(tǒng)的狀態(tài)和觀測噪聲進行在線實時估計,保證了最新觀測信息對參量的修正作用,通過將估計的結(jié)果引入到傳統(tǒng)容積卡爾曼濾波框架內(nèi)實現(xiàn)非線性系統(tǒng)狀態(tài)的迭代估計。仿真結(jié)果表明,本文方法較好地改善了噪聲統(tǒng)計特性時變情況下的估計精度,有效擴展了容積卡爾曼濾波在非線性系統(tǒng)狀態(tài)估計方法中的應(yīng)用范圍。