Il filtro di Kalman [34] cerca di stimare in presenza di disturbi lo stato interno
, non accessibile, di un sistema tempo discreto, la cui conoscenza del modello è completa.
Di fatto il filtro di Kalman è lo stimatore ricorsivo ottimo: se il rumore del problema è gaussiano, il filtro di Kalman fornisce la stima ai minimi quadrati dello stato interno del sistema.
Il processo di trovare la miglior stima dello stato interno viene chiamato "`filtraggio"' in quanto è un metodo per filtrare via il rumore.
Seguendo la teoria dei sistemi lineari, la dinamica di un sistema è rappresentata da una equazione differenziale del tipo
| (2.41) |
| (2.42) |
Il filtro di Kalman a tempo discreto viene in aiuto dei sistemi reali dove il mondo viene campionato a intervalli discreti, trasformando il sistema lineare in un sistema del tipo
Le variabili
e
rappresentano rispettivamente il rumore di processo e di osservazione, valor medio nullo
e varianza rispettiva
e
conosciute (si suppone rumore gaussiano bianco), e solitamente ottenere la stima di
risulta molto più difficile che ottenere la stima di
.
Le due variabili di rumore devono essere scorrelate tra di loro.
è una matrice
di transizione dello stato,
è una matrice
che collega
l'ingresso di controllo opzionale
con lo stato
e infine
è una matrice
che collega lo stato con la misura
.
Tutte queste matrici devono essere conosciute.
Il filtro di Kalman è un filtro di stima ricorsivo e richiede a ogni iterazione la conoscenza dello stato stimato dal passo precedente
e la corrente osservazione
del sistema.
Definiamo
la stima a priori dello stato del sistema, basata sulla stima ottenute al tempo
e dalla dinamica del problema, e
la stima dello stato del problema a posteriori basato anche sull'osservazione
.
In particolare da quest'ultima affermazione è possibile definire l'errore della stima a priori e a a posteriori come
![]() |
(2.44) |
![]() |
(2.45) |
L'obiettivo del filtro di Kalman è minimizzare la covarianza dell'errore a posteriori
e fornire un metodo per ottenere la stima di
data la stima a priori
e l'osservazione
.
Il filtro di Kalman fornisce una stima dello stato a posteriori attraverso una combinazione lineare della stima dello stato precedente e dell'errore di osservazione:
Il filtro di Kalman viene normalmente presentato in due fasi: aggiornamento del tempo (fase di predizione) e aggiornamento della misura (fase di osservazione).
Nella prima fase si ottiene la stima a priori sia di
che della covarianza
.
La stima a priori
viene dalla buona conoscenza della dinamica del sistema 2.43:
| (2.48) |
Queste sono le miglior stime dello stato e della covarianza dell'istante
ottenibili a priori dell'osservazione del sistema.
Nella seconda fare viene calcolato il guadagno
| (2.49) |
Infine, grazie al guadagno appena ricavato, viene calcolata la stima a posteriori della matrice di covarianza:
| (2.50) |
Come si può facilmente notare la matrice di covarianza e il guadagno di kalman non dipendono minimamente dallo stato ne dalle osservazioni ne tantomeno dal residuo, e hanno una storia indipendente.
Il valore iniziale dello stato deve essere il più simile possibile al valore vero e la somiglianza a questo valore va inserita nella matrice di covarianza iniziale.
Paolo Medici 2012-02-08