冀云彪,張鵬飛,趙永娟,王智偉,郭偉峰
(1.中北大學(xué) 機電工程學(xué)院,山西 太原 030051;2.中北大學(xué) 智能武器研究院,山西 太原 030051)
脫靶量指遭遇過程中射彈與目標(biāo)的最小矢量距離,是自行高炮武器系統(tǒng)的重要性能指標(biāo)。一方面可以鑒定和評估自行高炮武器系統(tǒng)的作戰(zhàn)能力,另一方面是閉環(huán)校射環(huán)節(jié)中重要的測量值。閉環(huán)校射是利用脫靶量測量值預(yù)先估計出脫靶量未來值實現(xiàn)對射擊過程的反饋控制,從而提高其射擊精度。閉環(huán)校射作為改善自行高炮武器系統(tǒng)射擊精度的重要手段,自被提出以來一直是自行高炮武器系統(tǒng)領(lǐng)域研究的熱點問題[1-2]。
在閉環(huán)校射流程中,首先,車載檢測裝置獲得目標(biāo)位置信息;其次,通過火控計算機估算其運動參數(shù),建立目標(biāo)運動模型,求解未來命中點,進(jìn)而確定對應(yīng)的射擊諸元;最后,根據(jù)測量的脫靶量信息,結(jié)合脫靶量數(shù)學(xué)模型,利用某種預(yù)測方法獲得預(yù)測修正量,進(jìn)行射擊諸元校正。重復(fù)此循環(huán),實現(xiàn)閉環(huán)校射。由此可見脫靶量預(yù)測是閉環(huán)校射的核心,是提高閉環(huán)校射精度的重要一環(huán)。
傳統(tǒng)卡爾曼濾波已應(yīng)用在高炮系統(tǒng)閉環(huán)校射中脫靶量的預(yù)測并且具有較好的預(yù)測精度[3]。該方法是當(dāng)線性系統(tǒng)狀態(tài)方程中過程噪聲和測量噪聲的統(tǒng)計特性精確的情況下,通過系統(tǒng)輸入輸出觀測數(shù)據(jù),對系統(tǒng)狀態(tài)進(jìn)行最優(yōu)估計的算法[4]。但實際過程中,觀測數(shù)據(jù)中過程噪聲和干擾的影響無法精確表示,導(dǎo)致傳統(tǒng)卡爾曼的預(yù)測精度不高。目前國內(nèi)外學(xué)者提出一系列基于傳統(tǒng)卡爾曼濾波的改進(jìn)算法來解決這些問題。
周晶等提出一種對Sage-Husa自適應(yīng)卡爾曼濾波算法的改進(jìn)方法,通過收斂判據(jù)來選擇濾波方法,保證信息融合的精度和穩(wěn)定性[5]。魯平等提出了一種Sage-Husa自適應(yīng)濾波算法,該算法通過協(xié)方差匹配技術(shù)實現(xiàn)在線估計噪聲統(tǒng)計特性[6]。楊麗君等提出建立基于自適應(yīng)新息卡爾曼濾波算法的彈丸脫靶量預(yù)測模型,利用新息序列計算獲得系統(tǒng)噪聲矩陣和量測噪聲協(xié)方差矩陣構(gòu)建新息卡爾曼預(yù)測模型[7]。以上文獻(xiàn)研究結(jié)果表明,自適應(yīng)卡爾曼濾波算法關(guān)鍵在于進(jìn)行濾波的同時,利用觀測數(shù)據(jù)進(jìn)行實時的估計和修正過程噪聲參數(shù)、測量噪聲統(tǒng)計特性提高濾波精度,其可以應(yīng)用在離散脫靶量數(shù)據(jù)的預(yù)測中。因此,筆者設(shè)計了一種改進(jìn)濾波算法對脫靶量進(jìn)行預(yù)測,在簡化的自適應(yīng)濾波算法基礎(chǔ)上,引入漸消因子和濾波收斂性判據(jù),通過優(yōu)化噪聲統(tǒng)計特性提高濾波收斂性和穩(wěn)定性,從而提高其預(yù)測精度。解決了傳統(tǒng)卡爾曼濾波算法非線性時精度不高的問題,為脫靶量的預(yù)測提供一種新的思路。
自行高炮武器系統(tǒng)的脫靶量是由多個誤差源耦合而成的,如射表處理誤差、未來命中點解算誤差、氣象條件誤差、彈丸散布誤差、目標(biāo)運動假定誤差等誤差。為了更好地預(yù)測并校正誤差,需要根據(jù)射擊誤差的統(tǒng)計特性將脫靶量誤差進(jìn)行分解。將脫靶量誤差具體分為系統(tǒng)誤差和隨機誤差兩大類,其中隨機誤差按時間的相關(guān)性分為強相關(guān)誤差、弱相關(guān)誤差和不相關(guān)誤差[8]。
筆者采用二維脫靶量進(jìn)行預(yù)測修正,二維脫靶量以方位角脫靶量和高低角脫靶量作為表征。具體的脫靶量在方位角和高低角兩個方向上的分量相互獨立,針對任意方向上脫靶量的序列,其數(shù)學(xué)模型為
x(k)={ax+xq(k)+xr(k)+xb(k)},k=1,2,…
(1)
1)ax表示系統(tǒng)誤差,表達(dá)式為
(2)
此誤差即射擊誤差的均值,可以為常數(shù),也可以是函數(shù)。對射擊誤差而言,它是射擊開始前的已知量,因而其方差、相關(guān)系數(shù)皆為零。構(gòu)成系統(tǒng)誤差的誤差源是射表處理誤差和未來命中點解算誤差。
2)xq(k)表示強相關(guān)誤差,表達(dá)式為
(3)
此誤差對兩個不同時刻是線性相關(guān),其特征是相關(guān)系數(shù)為1。構(gòu)成強相關(guān)誤差的誤差源有氣象條件誤差等誤差。
3)xr(k)表示弱相關(guān)誤差,表達(dá)式為
(4)
(5)
4)xb(k)表示不相關(guān)誤差,表達(dá)式為
(6)
此誤差隨時間無相關(guān)關(guān)系,其特征是相關(guān)系數(shù)為0。構(gòu)成不相關(guān)誤差的誤差源有彈丸散布誤差等誤差。
在閉環(huán)校射中,不相關(guān)誤差是不可預(yù)測和校正的,而強相關(guān)誤差和弱相關(guān)誤差,掌握其統(tǒng)計特性和特征參數(shù),可以對其預(yù)測并校正[8]。因此,依據(jù)不相關(guān)、弱相關(guān)和強相關(guān)3種特性建立可預(yù)測的脫靶量數(shù)學(xué)模型[9-10]:
(7)
式中:k表示脫靶量測量時刻;v(k)表示脫靶量的測量誤差,var(v(k))=R2,表示測量裝置精度方差;ω(k)表示脫靶量模型誤差;var(ω(k))=R1,表示狀態(tài)過程方差,即脫靶量序列方差;x(k)表示脫靶量測量值;φ表示狀態(tài)轉(zhuǎn)移系數(shù);Γ表示模型誤差系數(shù)。
隨著現(xiàn)代高炮武器系統(tǒng)射頻的提高,射擊過程中前一發(fā)彈藥的脫靶量對其后各發(fā)都有影響,因而每次發(fā)射彈藥對脫靶量的影響都是有差別的。為了提高預(yù)測的準(zhǔn)確性,采用三階模型即利用脫靶量序列中前3次的脫靶量測量值預(yù)測第4發(fā),因此基于時間序列的相關(guān)關(guān)系,分別構(gòu)建φ和Γ隨著階數(shù)N變化的脫靶量數(shù)學(xué)模型,是不同階數(shù)時脫靶量預(yù)測的前提。
對時間序列建模,其中相關(guān)系數(shù)r1,r2,r3計算方法如下:假設(shè)構(gòu)成時間序列的每一個值xt,xt-1,…,xt-k之間存在一定的相關(guān)關(guān)系,用自相關(guān)系數(shù)rk度量,測量值xt與xt-k之間存在xt-1,xt-2,…,xt-k+1,這k-1個中間變量會影響到兩者之間的相關(guān)性,xt與xt-k之間的自相關(guān)系數(shù)表示為
(8)
基于時間序列所獲得的相關(guān)系數(shù)建立脫靶量階數(shù)與φ、Γ的脫靶量數(shù)學(xué)模型如下:
1)N=1時,脫靶量的一階預(yù)測模型,表示k時刻脫靶量只與前一個時刻相關(guān):
(9)
2)N=2時,脫靶量的二階預(yù)測模型,表示k時刻脫靶量只與前兩個時刻相關(guān):
(10)
3)N=3時,脫靶量的三階預(yù)測模型,表示k時刻脫靶量只與前3個時刻相關(guān):
(11)
傳統(tǒng)卡爾曼濾波可分為連續(xù)型和離散型兩種,基于脫靶量數(shù)學(xué)模型構(gòu)建的系統(tǒng)方程和量測方程都是離散型,因此脫靶量的預(yù)測采用離散型卡爾曼濾波。離散卡爾曼濾波基本原理可參考文獻(xiàn)[10-11],本文不作詳細(xì)描述。
設(shè)目標(biāo)狀態(tài)方程和傳感器測量方程如下:
(12)
式中:Xk為被估計量;φ(k/k-1)為狀態(tài)轉(zhuǎn)移矩陣,Γk為系統(tǒng)噪聲矩陣;ωk-1為k時刻系統(tǒng)噪聲矩陣;Vk為k時刻測量噪聲;Hk為觀測矩陣;Zk為k時刻量測向量。
離散卡爾曼濾波算法工作原理如圖1所示。從離散卡爾曼濾波算法工作原理中的增益計算回路可看出:增益計算回路是一個獨立的計算回路,其值的迭代與計算更新完全得益于預(yù)測誤差Q與觀測誤差R,因此這兩個參數(shù)的選取和精確測量將直接影響到卡爾曼濾波器的效果。但在實際工程應(yīng)用中Q和R很難確定,需要采用默認(rèn)值或經(jīng)驗值。當(dāng)Q和R精度不高時,會導(dǎo)致預(yù)測精度的降低。
筆者在傳統(tǒng)卡爾曼濾波算法的基礎(chǔ)上,提出一種改進(jìn)自適應(yīng)卡爾曼濾波算法[12-16],通過次優(yōu)漸消因子λ(k)和在濾波過程中由濾波收斂性判斷當(dāng)前濾波是否收斂,若滿足條件說明當(dāng)前濾波收斂,不需要更新;若不滿足則說明此時系統(tǒng)模型已不適應(yīng)當(dāng)前狀態(tài),需實時調(diào)整Q和R對系統(tǒng)狀態(tài)和狀態(tài)協(xié)方差進(jìn)行更新,對歷史數(shù)據(jù)進(jìn)行漸消,降低舊數(shù)據(jù)對當(dāng)前濾波值的影響程度,提高對脫靶量預(yù)測的精度,具體算法流程如下:
1)離散狀態(tài)預(yù)測:
X(k+1/k)=φ(K)X(k/k),
(13)
式中:X(k/k)為k時刻的狀態(tài)估計值;X(k+1/k)為k+1時刻的狀態(tài)預(yù)測值。
2)協(xié)方差預(yù)測:
(14)
離散卡爾曼濾波由量測信息與預(yù)測信息更新狀態(tài)信息,基于最小方差原則實現(xiàn)狀態(tài)更新。R1表示狀態(tài)過程方差,即脫靶量序列方差。
3)計算濾波增益矩陣:
(15)
K(k+1)為k+1時刻基于最小方差原則獲得的增益矩陣,其中R=R2。
4)殘差計算。殘差為觀測值與狀態(tài)估計值的差:
εk=Zk-H(k)X(k+1/k).
(16)
5)計算k+1時刻狀態(tài)估計:
X(k+1/k+1)=X(k+1/k)+K(k+1)εk,
(17)
式中,X(k+1/k+1)為k+1時刻更新后的狀態(tài)值。
6)計算k+1時刻估計誤差方差:
P(k+1/k+1)=[I-K(k+1)H(k)]P(k+1/k),
(18)
式中:P(k+1/k)為k+1時刻更新后的狀態(tài)協(xié)方差;I為單位矩陣。由式(17)、(18)對系統(tǒng)狀態(tài)值和狀態(tài)協(xié)方差進(jìn)行更新,為下一次循環(huán)使用。
7)加入收斂性判據(jù):
(19)
在濾波過程中,由濾波收斂性判斷當(dāng)前濾波是否收斂,若滿足條件說明當(dāng)前濾波收斂,不需要更新;若不滿足則說明此時系統(tǒng)模型已不適應(yīng)當(dāng)前狀態(tài),需要更新Q和R。
8)加入漸消因子λk。漸消因子是經(jīng)驗值,是根據(jù)實際運用在0.80~0.85之間取的任意一個數(shù),并用改進(jìn)后的自適應(yīng)卡爾曼濾波對Q和R進(jìn)行更新:
(20)
式中,bk為加權(quán)系數(shù)。
利用上述兩個更新方程,調(diào)整Q和R達(dá)到實時對系統(tǒng)狀態(tài)和狀態(tài)協(xié)方差進(jìn)行更新的目的,降低舊數(shù)據(jù)對當(dāng)前濾波值的影響程度。
通過以上改進(jìn)自適應(yīng)卡爾曼濾波公式的迭代計算,在一定程度上可解決噪聲統(tǒng)計問題,提高脫靶量預(yù)測精度。筆者設(shè)計的基于改進(jìn)自適應(yīng)卡爾曼濾波的流程圖如圖2所示??芍?導(dǎo)入脫靶量序列后,基于脫靶量數(shù)學(xué)模型建立改進(jìn)自適應(yīng)卡爾曼濾波狀態(tài)方程,并進(jìn)行賦值,經(jīng)過迭代更新獲得脫靶量的預(yù)測序列。其中,改進(jìn)自適應(yīng)卡爾曼濾波流程中重點在于通過改進(jìn)自適應(yīng)更新Q、R的循環(huán)迭代解決噪聲統(tǒng)計問題。
首先通過自擬軟件對目標(biāo)以7 m/s速度水平運動,載體以11 m/s速度水平運動時的脫靶量測量序列進(jìn)行仿真,然后將仿真得到的脫靶量測量序列分別帶入傳統(tǒng)卡爾曼濾波算法和改進(jìn)自適應(yīng)卡爾曼濾波算法進(jìn)行仿真預(yù)測和閉環(huán)校正。其中預(yù)測遞推步數(shù)取1,一階預(yù)測模型以前151發(fā)為初始數(shù)據(jù),對152~200發(fā)數(shù)據(jù)進(jìn)行預(yù)測修正;二階預(yù)測模型以前152發(fā)為初始數(shù)據(jù),對153~200發(fā)數(shù)據(jù)進(jìn)行預(yù)測修正;三階預(yù)測模型以前153發(fā)為初始數(shù)據(jù),對154~200發(fā)數(shù)據(jù)進(jìn)行預(yù)測修正。
在第3.1節(jié)仿真條件的基礎(chǔ)上得到方位角均值為2.610 0 mrad、高低角均值為5.163 4 mrad的未校正脫靶量序列,兩種預(yù)測方法分別基于脫靶量數(shù)學(xué)模型中一階模型、二階模型、三階模型的預(yù)測結(jié)果如圖3~5所示。通過比較k+1時刻兩種方法對k時刻脫靶量序列預(yù)測獲得的預(yù)測值,可以直觀地看出,隨著階數(shù)升高改進(jìn),自適應(yīng)卡爾曼濾波比傳統(tǒng)卡爾曼濾波的預(yù)測趨勢能更好地穩(wěn)定在脫靶量序列的均值處,能達(dá)到更好的預(yù)測。
為了獲得一階到三階脫靶量預(yù)測模型的閉環(huán)脫靶量精度,將脫靶量預(yù)測值修正到射擊諸元中完成閉環(huán)校射,并且對比分析閉環(huán)修正后的脫靶量數(shù)據(jù)能更直觀看出兩種方法的預(yù)測效果。一階到三階修正圖如圖6~8所示。
由圖6~8可以直觀地看出,將改進(jìn)自適應(yīng)卡爾曼和傳統(tǒng)卡爾曼濾波方法獲得的預(yù)測值修正到射擊諸元中,完成閉環(huán)校射后,改進(jìn)自適應(yīng)卡爾曼比傳統(tǒng)卡爾曼濾波方法修正精度更高,證明改進(jìn)自適應(yīng)卡爾曼能更好地提高閉環(huán)修正精度。
脫靶量序列在不同階數(shù)下,脫靶量修正遞推模型的統(tǒng)計特性,如表1所示。
表1 脫靶量修正模型精度統(tǒng)計表
從上述的仿真結(jié)果對比圖以及定量統(tǒng)計分析中,可以總結(jié)出以下結(jié)論:
1)在預(yù)測過程中,相比傳統(tǒng)卡爾曼濾波所預(yù)測的脫靶量結(jié)果,基于改進(jìn)自適應(yīng)的卡爾曼濾波所預(yù)測的脫靶量結(jié)果更接近脫靶量數(shù)據(jù)且穩(wěn)定在脫靶量數(shù)據(jù)的均值處,這是由于改進(jìn)卡爾曼濾波對噪聲矩陣和量測矩陣的更新可以自適應(yīng)修正,使預(yù)測結(jié)果更加準(zhǔn)確。
2)基于傳統(tǒng)卡爾曼濾波模型得到的一階方位角脫靶量預(yù)測修正均值為1.011 1 mrad,比未校正脫靶量序列的均值精度提高81%以上(二階、三階修正效果均比一階較好,下同);一階高低角脫靶量預(yù)測修正均值為-0.461 2 mrad,比未校正脫靶量序列的均值精度提高76%以上。而改進(jìn)自適應(yīng)卡爾曼濾波模型得到的一階方位角脫靶量預(yù)測修正均值為0.215 8 mrad,比未校正脫靶量序列的均值精度提高96%以上;一階高低角脫靶量預(yù)測修正均值為-0.368 8 mrad,比未校正脫靶量序列的均值精度提高81%以上。改進(jìn)自適應(yīng)卡爾曼濾波一階模型比傳統(tǒng)卡爾曼濾波一階模型的均值精度,在方位角預(yù)測修正后提高70%以上,在高低角預(yù)測修正后提高30%以上。
3)隨著脫靶量預(yù)測模型階數(shù)的增大,預(yù)測修正誤差均值減小且精度提高較大,均方差的變化不大且趨于平穩(wěn)。由此可見, 時刻脫靶量與前3個時刻的相關(guān)性較前一個和前兩個時刻相關(guān)性有所增加。
為了提高火控計算機閉環(huán)校射彈丸脫靶量預(yù)測的精度,結(jié)合基于改進(jìn)自適應(yīng)卡爾曼濾波的算法,建立脫靶量的預(yù)測模型。該模型在進(jìn)行濾波計算的同時,利用噪聲統(tǒng)計特性進(jìn)行實時估計和修正,具有應(yīng)對噪聲變化的自適應(yīng)能力。仿真結(jié)果表明筆者所建立的3種脫靶量模型即一階、二階和三階模型,其中隨著模型的階數(shù)增大,脫靶量數(shù)學(xué)模型的相關(guān)性隨之增強,其預(yù)測精度也有所提高?;诟倪M(jìn)自適應(yīng)卡爾曼濾波的預(yù)測精度和穩(wěn)定性相較于傳統(tǒng)卡爾曼濾波方法顯著提高,適用于對閉環(huán)校射彈丸脫靶量的預(yù)測修正。