許大星 王海倫,2
1(衢州學院電氣與信息工程學院 浙江 衢州 324000)2(上海海事大學物流工程學院 上海 201306)
未知狀態模型下基于高階容積卡爾曼濾波和神經網絡的狀態估計算法
許大星1王海倫1,2
1(衢州學院電氣與信息工程學院 浙江 衢州 324000)2(上海海事大學物流工程學院 上海 201306)
針對非線性系統狀態模型未知的情形,提出一種基于高階容積卡爾曼濾波和神經網絡的狀態估計算法,解決了未知非線性系統模型的狀態估計問題。在算法的實現過程中,首先利用神經網絡對非線性系統建立狀態空間模型,然后把神經網絡的權重和系統的狀態變量組合在一起作為新的狀態變量,并采用高階容積卡爾曼濾波對新的狀態進行實時更新,從而達到神經網絡對非線性系統模型的真實逼近以及對狀態值的精確估計。最后的目標跟蹤仿真表明,該算法具有更高的估計精度。
非線性系統 未知模型 高階容積卡爾曼濾波 神經網絡
根據連接的拓撲結構,神經網絡模型可分為前向神經網絡和后向神經網絡。20世紀80年代,Rumelhard等基于前向神經網絡提出誤差反向傳播算法,因其算法結構簡單,易于實現且具有很強的非線性映射能力,已廣泛應用在航空航天、智能交通、模式識別以及醫學工程等領域中[1]。
當系統模型未知時,采用神經網絡對模型進行非線性近似是一種簡單而有效的方法。神經網絡根據實際數據集確定網絡逼近的非線性函數,然而,當實際系統的狀態變量不完全可測時,單獨采用神經網絡將無法建立過程的模型。狀態空間模型法對系統的內部狀態和外部可觀測輸出變量之間的變化關系進行描述。由于該方法可以對系統內部復雜的狀態進行估計和預測,因此已經被廣泛地應用在動態系統的處理當中。對系統的狀態空間模型建立完成之后,就需要利用合適的方法對系統的狀態進行估計。濾波方法在狀態空間中利用系統輸入輸出觀測數據,對系統狀態進行最優估計[2]。這種濾波的方法不僅可以對狀態進行估計,還可以對神經網絡系統參數進行辨識。
非線性濾波算法在參數估計中得到了長足的發展,特別是在神經網絡的參數辨識方面,其將網絡的權系數參數看作特殊的狀態進行估計。文獻[3]首先利用神經網絡建立狀態空間模型,將網絡權系數作為系統的狀態變量,進而基于擴展卡爾曼濾波算法對狀態變量進行實時更新。仿真實驗表明,其效果明顯優于傳統的誤差反向傳播算法,特別是存在明顯噪聲的干擾下更能取得較高的估計精度。擴展卡爾曼濾波是目前應用最為廣泛的一種非線性濾波方法,然而當系統的非線性程度較高,一階近似會帶來非常大的截斷誤差,擴展卡爾曼濾波算法的估計性能將隨之大大下降,甚至發散[4]。由于擴展卡爾曼濾波穩定性差、精度低等缺點,Julier等提出了無跡卡爾曼濾波,使用無跡變換來處理均值和方差的非線性傳遞[5]。已經有不少學者利用無跡卡爾曼濾波和神經網絡來解決未知系統模型的非線性系統狀態估計問題。文獻[6]提出了應用無跡卡爾曼濾波算法對神經網絡權系數進行在線估計。文獻[7]對基于擴展卡爾曼濾波和無跡卡爾曼濾波的神經網絡算法進行了實驗對比,結果表明,基于無跡卡爾曼濾波算法的神經網絡算法明顯優于基于擴展卡爾曼濾波算法的神經網絡算法。然而無跡卡爾曼濾波的精度仍然有限,當系統維數較高時,其估計性能明顯降低。為了進一步提高狀態的估計精度,文獻[8]提出了一種基于任意階容積規則的高階容積卡爾曼濾波,分別使用Genz積分方法和矩匹配法推導出任意階的球面規則和相徑規則,從而構造高階球面-相徑容積規則來計算高斯型積分,并建立高階容積卡爾曼濾波算法。文獻[9]對無跡卡爾曼濾波算法和高階容積卡爾曼濾波算法的精度和適用范圍進行了對比,結果表明,高階容積卡爾曼濾波算法對高維系統適用性更強,估計誤差更小。
基于此,本文針對未知狀態模型的非線性系統,首先利用神經網絡建立狀態空間模型,將網絡的權系數和系統的狀態組合一起為增廣的狀態變量。然后采用高階容積卡爾曼濾波算法對神經網絡系統狀態進行估計預測,從而實現網絡權系數的自適應調整和狀態的實時更新。
神經網絡的結構模型一般可分為前饋神經網絡模型、反饋神經網絡模型以及隨機神經網絡模型等。目前在各個行業領域中前饋神經網絡模型應用最為廣泛,其狀態空間的模型結構如圖1所示。

圖1 神經網絡的模型結構
圖1中,x1,x2,…,xn用來表示輸入的樣本節點,y1,y2,…,ym用來表示輸出樣本節點,θ1,θ2,…,θq表示權重系數。該神經網絡模型結構共有三個節點層,分別為輸入層、隱層和輸出層,各個層之間通過權系數進行連接,輸入輸出層在兩端,中間隱含層的節點數根據實際要求進行選取。
首先考慮如下離散非線性系統:
xk=f(xk-1)+wk
(1)
zk=h(xk)+vk
(2)
其中,xk為n維的狀態向量;zk為m維的觀測向量;函數f,h為已知的非線性函數;{wk}與{vk}均為獨立的零均值高斯白噪聲。
對于一般的非線性系統,在高斯假設下可將貝葉斯估計基本理論與任意階容積規則相結合,從而推導出高階的容積卡爾曼濾波。與無跡卡爾曼濾波結構相同,同樣分為狀態預測(時間更新)和測量更新兩個步驟,主要是高階容積卡爾曼濾波利用容積點逼近狀態的后驗分布。該算法具有精度高、穩定性強、參數選取簡單的優點。文獻[9]對比了UKF算法和CKF算法的精度和適用范圍,表明CKF算法效率更高,尤其是對高維系統的適用性更強。高階容積規則滿足:
(3)

(4)
(5)

(6)
(7)

(8)
當系統的模型未知時,采用神經網絡對系統模型進行建模逼近,那么就需要求解最優的網絡節點權系數,同時狀態也是未知的。然而,狀態與權系數是彼此聯系的,因此,本文將系統的狀態和權系數組合在一起作為新的狀態空間,將原來的系統方程和權系數方程的增廣方程作為新的系統模型,進而利用高階容積卡爾曼濾波算法對狀態和權系數實時估計,具體的系統原理如圖2所示。

圖2 狀態估計系統
圖2中,在k-1時刻,原系統的狀態xk-1與權系數Wk-1組合成新的增廣狀態向量[xk-1Wk-1],輸入到神經
網絡中,進而高階容積卡爾曼濾波根據增廣狀態和神經網絡的輸出結果進行時間更新步驟。最后高階容積卡爾曼濾波結合時間更新的結果和測量的輸出結構進行時間更新得到k時刻的系統增廣狀態值[xkWk],并作為下次系統的輸入狀態。具體算法如下:
首先將系統的狀態與神經網絡的權系數組合起來,形成增廣狀態xa=[xW]T,則可建立如下所示的非線性系統:
(9)
(10)
其中,fj(xk)為神經網絡對非線性系統建立的數學模型:
(11)
g(x)為神經網絡Sigmod核函數,Wk為神經網絡的權系數,新系統的過程噪聲wk和觀測噪聲vk均為獨立的零均值高斯白噪聲,并且對應的協方差矩陣分別為Qk、Rk。
然后對狀態進行時間更新:
1) 在時刻k,假設k-1時刻的誤差協方差已知且為Pk-1|k-1,分解因數:
(12)
其中,向量Sk-1|k-1為Pk-1|k-1的Cholesky分解。
2) 計算容積點:
(13)
其中m=2n,向量ξi為:
(14)

(15)
3) 計算狀態方程傳播后的容積點(i=1,2,…,m):
(16)
4) 計算一步狀態預測:
(17)
其中,權值wi分別為:
(18)
5) 計算一步預測誤差協方差矩陣:
(19)
最后進行測量更新:
1) 分解因數:
(20)
2) 計算更新后的狀態容積點:
(21)
3) 計算測量方程傳播后的容積點:
(22)
4) 計算k時刻一步量測預測:
(23)
5) 計算新息協方差矩陣:
(24)
6) 計算一步預測互協方差矩陣:
(25)
7) 計算增益矩陣:
(26)
8) 計算更新狀態:
(27)
9) 計算協方差矩陣:
(28)

考慮如下非線性目標跟蹤系統離散模型[10]:
(29)
y(k)=x1(k)+x2(k)+v(k)
(30)

為了對比方便,本文對算法進行如下簡單標記:
算法1:基于高階容積卡爾曼濾波和神經網絡的估計算法;
算法2:基于無跡卡爾曼濾波和神經網絡的估計算法。
仿真結果如圖3-圖6及表1所示。

圖3 狀態1的估計曲線

圖4 狀態2的估計曲線

圖5 狀態1的估計誤差曲線

圖6 狀態2的估計誤差曲線

表1 估計誤差對比
從圖3和圖4的估計曲線來看,算法1和算法2都能對原始狀態進行較好的跟蹤估計,說明兩種算法都是有效的。從圖4和圖5的估計誤差曲線來看,兩種算法的誤差很快趨于穩定,且算法1的誤差明顯要小于算法2的誤差。從表1的統計數據來看,算法1的狀態估計精度大大高于算法2,特別是在對狀態2的估計精度上,算法2的估計誤差是算法1估計誤差的兩倍多。這主要是因為高階容積卡爾曼濾波算法的估計精度高于無跡卡爾曼濾波算法,從而說明了基于高階容積卡爾曼濾波和神經網絡的估計算法的有效性。
本文針對狀態模型未知的非線性系統,提出了一種基于高階容積卡爾曼濾波算法和神經網絡的狀態估計算法,解決了現有的基于非線性濾波和神經網絡的算法對狀態估計的精度受限的缺陷問題。首先利用神經網絡對系統狀態進行建模,并利用高階容積卡爾曼濾波算法對系統狀態和神經網絡權重組合成的新狀態變量進行實時更新估計。所提算法彌補了現有算法的不足,提高了基于神經網絡的狀態估計精度,仿真實驗表明了本文所提算法的有效性。本文所解決的是模型未知且輸出為狀態的線性組合的情況下, 非線性系統的狀態估計問題相對于估計狀態為可測量對象的系統,更具有現實意義。但是對于輸出為狀態的非線性關系的狀態估計問題,由于非線性函數中狀態與狀態的分離和狀態的可觀性難以確定,是一個更復雜的問題還需進一步的研究。
[1] 彭玉青,趙翠翠,高晴晴.基于RBF神經網絡的集成增量學習算法[J].計算機應用與軟件,2016,33(6):246-250.
[2] 南敬昌,桑百行,高明明.新穎的神經網絡逆建模方法及其應用[J].計算機應用與軟件,2016,33(1):147-150.
[3]SinghalS,WuL.TrainingmultilayerperceptionswiththeextendedKalmanalgorithm[M]//AdvanceinNeuralInformationProcessingSystems.California:MorganKaufmannPublisherInc,1989,1:133-140.
[4] 王英博,閆吉府,李仲學.遺傳算法優化徑向基神經網絡的尾礦庫安全預測[J].計算機應用與軟件,2015,32(3):182-184.
[5] 高憲軍,翟林培.GPS/INS組合導航系統的研究[J].光學精密工程,2004,12(2):146-150.
[6]ZhaF,XuJN.IUKFneuralnetworkmodelingforFOGtemperaturedrift[J].IEEETransonSystemsEngineeringandElectronics,2013,24(5):838-844.
[7]WuXD,WangYN.ExtendedandUnscentedKalmanfilteringbasedfeedforwardneuralnetworksfortimeseriesprediction[J].AppliedMathematicalModelling,2012,36(3):1123-1131.
[8]JiaB,XinM,ChengY.High-degreecubatureKalmanfilter[J].Automatica,2013,49(2):510-518.
[9] 張龍,崔乃剛,楊峰,等.高階容積卡爾曼濾波及其在目標跟蹤中的應用[J].哈爾濱工程大學學報,2016,37(4):573-578.
[10]XiongK,ZhangHY,ChanCW.PerformanceevaluationofUKF-basednonlinearfiltering[J].Automatica,2014,42(2):261-270.
STATE ESTIMATION ALGORITHM BASED ON HIGH ORDER CUBATURE KALMAN FILTER AND NEURAL NETWORK WITH UNKNOWN STATE MODEL
Xu Daxing1Wang Hailun1,2
1(CollegeofElectricalandInformationEngineering,QuzhouUniversity,Quzhou324000,Zhejiang,China)2(LogisticsEngineeringCollege,ShanghaiMaritimeUniversity,Shanghai201306,China)
In view of the nonlinear state model of the system is unknown, this paper presents a state estimation algorithm based on high order cubature Kalman filter and neural network to solve the problem of state estimation of unknown nonlinear system model. The neural network is used to establish the state space model for the nonlinear system. Then, the weight of the neural network and the state of the system variables together are combines as the new state variables. And the new state is updated in real time by high order cubature Kalman filter, so as to achieve the neural network on the nonlinear system model of the real approximation and accurate estimation of the state value. The final target tracking simulation shows that the algorithm has higher estimation accuracy.
Nonlinear system Unknown model High order cubature Kalman filter Neural network
2017-01-06。國家自然科學基金項目(61403229);浙江省科技廳公益項目(2015C33230)。許大星,助教,主研領域:狀態估計,非線性濾波。王海倫,副教授。
TP18
A
10.3969/j.issn.1000-386x.2017.06.046