劉淑波 張 園 初俊博 史新鵬 鄧加川
(海軍大連艦艇學院基礎部 大連 116018)
在實際應用中,大量問題都屬于強非線性和非高斯分布的情況。粒子濾波是一種新型的被廣泛適用于非線性、非高斯隨機系統的濾波估計算法,相對于其他非線性濾波算法,它的實用性更強[1~4]。
但是基本粒子濾波隨著濾波時間的增加避免不了會出現大量計算浪費在對估計不起任何作用的微小粒子上,為了解決這種問題,引入重采樣來去除那些權值小的粒子,保留并復制那些權值較大的粒子。重采樣帶來的負面作用是具有較大權值的粒子被多次選取,從而損失了粒子的多樣性。
針對非線性觀測條件下的機動目標跟蹤問題,在基本的粒子濾波算法中引入模糊遺傳算法,得到一種改進的粒子濾波算法——模糊遺傳粒子濾波(FGA-PF)算法,以減小估計誤差,然后將該算法用于二維仿真環境中的機動目標跟蹤問題。仿真中,將其與基本的粒子濾波算法和基于重要密度函數選擇的改進粒子濾波算法UPF算法進行比較,證明了算法的有效性和優越性。
考慮雷達觀測在極坐標下進行,這時系統的狀態方程和觀測方程分別如式(1)和(2)所示[4]。
由先驗概率p(x0)產生初始粒子,并令其權值為1N。
利用狀態方程預測下一時刻的粒子:
在k時刻計算粒子權值,k=1,2,…,N
并且歸一化:
3.5.1 選擇運算
3.5.2 交叉運算
其中,η~N(0,σ),α~U(0,1)。
3.5.3 變異運算
采用算法3 模糊推理系統分別算出變異概率pm,產生隨機數u~U(0,1)。若u<pm,從粒子庫中隨機選擇一枚粒子,按下式進行變異運算:
狀態估計:
協方差估計:
本文設計兩套模糊推理系統,分別推理得到輸出變量交叉概率pc和變異概率pm。
定義兩套模糊推理系統的輸入量分別為ΔE,Δfc以及ΔE和Δfm。其中,ΔE為相鄰兩代群體適應度均方差的改變量,定義為
其中,f(xi)為個體i的適應度,為平均適應度。
Δfc為待交叉個體適應度較大者的適應度與最佳適應度之差。
Δfm為待變異個體的適應度與最佳適應度之差。
模糊推理系統輸入變量ΔE,Δfc和Δfm的模糊子集均為S(?。?、M(中)、B(大)。選定模糊子集的隸屬函數為高斯型函數,如圖1所示。
圖1 各輸入變量的隸屬函數
輸出變量為交叉概率pc和變異概率pm。定義輸出變量交叉概率pc的模糊子集S(?。?、M(中)、B(大),另一輸出變量變異概率pm的模糊子集S(?。?、M(中)、B(大)、HB(很大),也采用高斯型函數作為隸屬函數,如圖2所示。
圖2 輸出變量的隸屬函數
則根據模糊推理系統的推理特征,有如下一些關于交叉概率和變異概率的模糊規則存在。
交叉概率和變異概率的模糊規則均為27 條,具體如下:
其中,i=1,2,…,27,Ai、Bi、Ci、Di和Ei是定義在ΔE、Δfc、Δfm、pc和pm論域上的模糊集。
根據這些模糊規則,由模糊推理系統可以得到k時刻的交叉和變異概率。
由于本文研究的是非線性濾波算法,因此,仿真場景選擇了典型的非線性軌跡,即轉圈運動[11-12]。選擇[3 0000m,0m] 為其初始位置,[4 00m/s,0m/s]為其初始速度,a0=30m/s2為其初始切向加速度,仿真時間為80s。
仿真中,設量測噪聲為零均值的高斯噪聲,其標準差為diag[150m 0.3°]。其它參數選擇如下:amax=80m/s2,采樣周期T=1s。
為了驗證本算法的性能,將其與基本PF 算法和UPF算法進行比較。
分別對各算法進行Matlab仿真,可以分別計算出其位置、速度均方根誤差(其結果如表1 所示,x方向、y方向的仿真曲線如圖3和4所示)和平均計算時間(如表2所示)。
圖3 x方向位置均方根誤差曲線
圖4 y方向位置均方根誤差曲線
表1 100次蒙特卡羅仿真結果
表2 100次蒙特卡羅仿真平均計算時間
由仿真曲線和結果可以看出,與基本PF 算法相比,FGA-PF算法的跟蹤精度大幅提高。
與UPF算法相比,本算法能夠提高位置和速度跟蹤精度的同時,伴隨著計算復雜度和計算時間大幅降低。其平均計算時間只有UPF算法的1%。
該算法與基本的PF 算法相比,跟蹤精度大幅提高;與基于重要密度函數選擇的改進粒子濾波算法——UPF算法相比,提高跟蹤精度伴隨著大幅縮減計算時間。因此,FGA-PF 算法是一種非常實用的非線性濾波方法,具有較高的跟蹤精度和較低的計算成本,同時也為粒子濾波的其它智能優化改進提供了工程支持。