Spiegazione dei filtri Kalman nei modelli dello spazio degli stati


10

Quali sono i passaggi coinvolti nell'uso dei filtri Kalman nei modelli dello spazio degli stati?

Ho visto un paio di formulazioni diverse , ma non sono sicuro dei dettagli. Ad esempio, Cowpertwait inizia con questo insieme di equazioni:

θt=Gtθt-1+wt

yt=Ftθt+vt
θt=Gtθt1+wt

dove e , sono le nostre stime sconosciute e sono i valori osservati.w tN ( 0 , W t ) θ t y tθ0N(m0,C0),vtN(0,Vt)wtN(0,Wt)θtyt

Cowpertwait definisce le distribuzioni coinvolte (rispettivamente prima, verosimiglianza e distribuzione posteriore):

y t | θ tN ( F

θt|Dt1N(at,Rt)
θt| DtN(mt,Ct)
yt|θtN(Ftθt,Vt)
θt|DtN(mt,Ct)

con

at=Gtmt1,Rt=GtCt1Gt+Wtet=ytft,mt=at+Atetft=Ftat,Qt=FtRtFt+VtAt=RtFtQt1,Ct=RtAtQtAt

A proposito, indica la distribuzione di dati i valori osservati fino a . Una notazione più semplice è ma rimarrò fedele alla notazione di Cowpertwait.θt|Dt1θtyt1θt|t1

L'autore descrive anche la previsione per in termini di aspettative:yt+1|Dt

E[yt+1|Dt]=E[Ft+1θt+1+vt+1|Dt]=Ft+1E[θt+1|Dt]=Ft+1at+1=ft+1

Per quanto ho capito, questi sono i passaggi, tuttavia, per favore fatemi sapere se c'è un errore o un'imprecisione:

  1. Iniziamo con , , ovvero indoviniamo un valore per le nostre stime .m0C0θ0
  2. Prevediamo un valore per . Dovrebbe essere uguale a che è . è noto poiché .y1|D0f1F1a1a1a1=G1m0
  3. Una volta che abbiamo la nostra previsione per , calcoliamo l'errore .y1|D0e1=y1f1
  4. L'errore viene utilizzato per calcolare la distribuzione posteriore che richiede e . è dato come somma ponderata della media precedente e dell'errore: . θ 1 | D 1 m 1 C 1 m 1 a 1 + A 1 e 1e1θ1|D1m1C1m1a1+A1e1
  5. Nella seguente iterazione, iniziamo prevedendo come nel passaggio 1. In questo caso, . Poiché e è l'aspettativa di che abbiamo già calcolato nel passaggio precedente, possiamo procedere con il calcolo dell'errore e la media della distribuzione posteriore come prima. f 2 = Fy2|D1a2=G2m1m1θ1| D1e2θ2| D2f2=F2a2a2=G2m1m1θ1|D1e2θ2|D2

Penso che il calcolo della distribuzione posteriore sia ciò che alcune persone chiamano il passo di aggiornamento e l'uso dell'aspettativa di è il passo di predizione. y t + 1 | D tθt|Dtyt+1|Dt

Per brevità, ho omesso i passaggi per calcolare le matrici di covarianza.

Mi sono perso qualcosa? Conosci un modo migliore per spiegarlo? Penso che sia ancora un po 'disordinato, quindi forse c'è un approccio più chiaro.

Risposte:


3

Penso che quello che dici sia corretto e non penso che sia disordinato. Un modo di formulare sarebbe dire che il filtro Kalman è un algoritmo di correzione degli errori, che modifica le previsioni alla luce delle discrepanze con le osservazioni attuali. Questa correzione viene eseguita nel passaggio 4) utilizzando la matrice di guadagno .At


La ringrazio per la risposta. Forse è corretto, ma mi piacerebbe leggere una spiegazione più dettagliata (e naturale) di questo. Ho letto le descrizioni in libri e diapositive, ma la maggior parte di loro non è molto chiara e ci sono lievi differenze.
Robert Smith,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.