IEKF e ISPKF

Il filtro di Kalman esteso fa uso dello Jacobiano della funzione di osservazione $h$ centrato in $\hat{ \mathbf{x} }^{-}$, stato a priori e, grazie alla conoscenza dell'osservazione, permette di ottenere la stima dello stato a posteriori.

Di fatto questo procedimento è esattamente una singola iterazione del metodo di Gauss-Newton.

È possibile aumentare le iterazioni in modo da ottenere la classe dei filtri di Kalman iterativi, i quali normalmente mostrano prestazioni nettamente migliori della loro controparte non iterativa.

L'unica differenza rispetto ai rispettivi filtri non iterativi è nella parte di osservazione (cfr. equazione (2.119)), sostituita da iterazioni nella forma:

\begin{displaymath}
\mathbf{x}_{i+1} = \hat{ \mathbf{x} } + \mathbf{K}(\mathbf{...
...thbf{x}_i) - \mathbf{H}_i( \hat{ \mathbf{x} } - \mathbf{x}_i))
\end{displaymath} (2.125)

con il guadagno $\mathbf{K}$ calcolato in maniera iterativa come
\begin{displaymath}
\mathbf{K} = \mathbf{P} \mathbf{H}_i^\top (\mathbf{H}_i \mathbf{P} \mathbf{H}_i^\top + \mathbf{R})^{-1}
\end{displaymath} (2.126)

e usando come valore iniziale per la minimizzazione, il valore $\mathbf{x}_0 = \hat{ \mathbf{x} }^{-}$.

Il valore di $\mathbf{K}$, associato all'ultima iterazione, viene infine usato per aggiornare la matrice di covarianza di processo.

Lo stesso procedimento si può applicare al filtro SPKF per ottenere l'Iterated Sigma Point Kalman Filter (SSM06), dove l'iterazione per calcolare lo stato è nella forma

\begin{displaymath}
\mathbf{x}_{i+1} = \hat{ \mathbf{x} } + \mathbf{K} \left(\m...
...} \mathbf{P}^{-1} ( \hat{ \mathbf{x} } - \mathbf{x}_i) \right)
\end{displaymath} (2.127)

Paolo medici
2025-03-12