卡爾曼濾波:卡爾曼濾波器
卡爾曼濾波的過程可以概括為3個(gè)步驟:預(yù)測(cè)(prediction),觀測(cè)(observation),協(xié)調(diào)或修正(correction)。
預(yù)測(cè)即根據(jù)系統(tǒng)當(dāng)前的狀態(tài)預(yù)測(cè)系統(tǒng)下一個(gè)狀態(tài),并且評(píng)估預(yù)測(cè)誤差。
接下來,我們?cè)诮?jīng)過一定時(shí)間后讀取或者說觀測(cè)系統(tǒng)的狀態(tài)(系統(tǒng)現(xiàn)在轉(zhuǎn)換到了新狀態(tài))?;跀?shù)學(xué)模型,把讀取的信息轉(zhuǎn)換為系統(tǒng)狀態(tài)。同樣,我們要評(píng)估觀測(cè)誤差。
下一步是協(xié)調(diào)兩個(gè)狀態(tài)估計(jì)(即預(yù)測(cè)狀態(tài)和觀測(cè)狀態(tài)),并且要考慮兩個(gè)相關(guān)誤差的大小。即預(yù)測(cè)的估計(jì)值要根據(jù)觀測(cè)值進(jìn)行修正。因此,這被稱為修正步驟。來自修正步驟的系統(tǒng)狀態(tài)的協(xié)調(diào)估計(jì)是當(dāng)前系統(tǒng)狀態(tài)的最終估計(jì)。
這樣,我們?nèi)サ较乱粋€(gè)系統(tǒng)狀態(tài)。然后,重復(fù)以上三個(gè)步驟繼續(xù)估計(jì)下下個(gè)系統(tǒng)狀態(tài)。卡爾曼濾波就是這樣一個(gè)重復(fù)“預(yù)測(cè)-->修正”的方法。如下圖:

那么是如何修正預(yù)測(cè)值得的呢?我們可以把對(duì)下一個(gè)狀態(tài)的預(yù)測(cè)值理解為期望的觀測(cè)值,把這這稱為預(yù)測(cè)觀測(cè)值(predicted observation)。修正狀態(tài)在卡爾曼濾波器中表示為:

式子中,實(shí)際觀測(cè)值(actual observation)和預(yù)測(cè)觀測(cè)值(predcited observation)的差距稱為observation innovation。稱為Kalman gain??柭鼮V波方法規(guī)定了
為使得修正狀態(tài)具有最小的誤差方差的值。
卡爾曼還證明了在狀態(tài)值和觀測(cè)值的數(shù)學(xué)模型都是線性的,并且誤差來自獨(dú)立的高斯分布的情況下,該過程是最優(yōu)的。
接下來看一下卡爾曼濾波步驟的正式規(guī)定:
表示在時(shí)間
的狀態(tài)。注意,狀態(tài)可以是一個(gè)向量,說明這個(gè)狀態(tài)是多維的。在卡爾曼濾波器中,用于預(yù)測(cè)時(shí)間
的狀態(tài)的數(shù)學(xué)模型是:

是一個(gè)矩陣,
,
分別表示在時(shí)間
和時(shí)間
的狀態(tài)向量,
是誤差向量表示模型的不準(zhǔn)確性。
表示在時(shí)間
的觀測(cè)值(即觀測(cè)到的狀態(tài))。表示為:

在這種情況下,矩陣和
是已知的。起初,根據(jù)到時(shí)間
為止的狀態(tài)信息,我們對(duì)時(shí)間
的狀態(tài)做一個(gè)預(yù)測(cè),表示為
。預(yù)測(cè)誤差在一維狀態(tài)的情況下表示為方差,在多維狀態(tài)的情況中表示為協(xié)方差矩陣,用符號(hào)
表示。類似地,觀測(cè)誤差在一維狀態(tài)的情況下表示為方差,在多維狀態(tài)的情況中表示為協(xié)方差矩陣,觀測(cè)誤差用
表示。
這樣卡爾曼濾波步驟的正式規(guī)定為:

這些步驟會(huì)在下一個(gè)時(shí)間點(diǎn)重復(fù)執(zhí)行。