State Space Models

Matthieu Bloch

Tuesday October 04, 2022

Today in ECE 6555

  • Don't forget
    • Midterm Exam coming up on Thursday October 6, 2022
      • In class - 75 minutes
      • Open notes (your notes, slides, problem set solutions - no textbook)
      • Up to but not including innovation processes
      • Make sure you understand the various results that we have derived
      • You need to know foundational probability (Bayes' rule, law of total probability, using PDFs)
      • DL students: schedule within one week (official instruction through GTPE)
    • Problem Set 3 due Thursday October 13, 2022 on Gradescope
      • Only 3 problems
      • Make sure you start homework early and don't spend 30 hours
  • Last time
    • State space model
  • Today's plan
    • Kalman filtering
  • Questions?

Standard state space model

  • The standard state space model is of the form \[ \vecx_{i+1} = \matF_i\vecx_i + \matG_i\vecu_i\qquad \vecy_i = \matH_i \vecx_i + \vecv_i \] with known matrices \(\set{\matF_i,\matG_i,\matH_i}\) and \[ \dotp{\left[\begin{array}{c}\vecx_0\\\vecu_i\\\vecv_i\end{array}\right]}{\left[\begin{array}{c}\vecx_0\\\vecu_j\\\vecv_j\\1\end{array}\right]} \eqdef \left[\begin{array}{cccc}\Pi_0&0&0&0\\0&\matQ_i\delta_{ij}&\matS_i\delta_{ij}&0\\0&\matS_i^T\delta_{ij}&\matR_i\delta_{ij}&0\end{array}\right] \]
    • \(u_i\) is called the process noise, \(v_i\) is called the measurement noise
    • By convention, \(\vecx_i\in\bbR^n\), \(\vecy_i\in\bbR^m\), \(\matF_i\in\bbR^{n\times n}\), \(\matH_i\in\bbR^{m\times n}\), \(\matG_i\in\bbR^{n\times p}\)
  • State space models ofen appear "naturally" from physics (more on this later) and differential equations
  • They provide a very useful description that can be exploited for estimation

Standard state-space model: Properties

    • For \(i\geq j\) \(\dotp{\vecu_i}{\vecx_j}=0\) and \(\dotp{\vecv_i}{\vecx_j}=0\)
    • For \(i> j\) \(\dotp{\vecu_i}{\vecy_j}=0\) and \(\dotp{\vecv_i}{\vecy_j}=0\)
    • For \(i=j\) \(\dotp{\vecu_i}{\vecy_j}=\matS_i\) and \(\dotp{\vecv_i}{\vecy_j}=\matR_i\)
    • If \(\matF_i\) non singular, \(\dotp{\vecu_i}{\vecx_0}=0\) if and only if \(\forall i\geq 0\) \(\dotp{\vecu_i}{\vecx_i}=0\)
  • Let \(\dotp{\vecx_i}{\vecx_i}=\Pi_i\). Then \[ \forall i\geq 0\qquad \Pi_{i+1} = \matF_i\Pi_i\matF_i^T + \matG_i\matQ_i\matG_i^T \] Let \(\Phi(i,j)\eqdef \prod_{\ell=i-1}^j\matF_\ell\) for \(i>j\) and \(\Phi(i,i)=\matI\). Then \[ \dotp{\vecx_i}{\vecx_j} = \begin{cases}\Phi(i,j)\Pi_j\text{ for }i\geq j\\\Pi_i\Phi(j,i)^T\text{ for }i\leq j\end{cases} \] \[ \dotp{\vecy_i}{\vecy_j} = \begin{cases}\matH_i\Phi(i,j+1)\matN_j\text{ for }i> j\text{ with }\matN_i=\matF_i\Pi_i\matH_i^T+\matG_i\matS_i\\ \matR_i+\matH_i\Pi_i\matH_i^T\text{ for }i= j\\ \matN_i^T\Phi(j,i+1)^T\matH)j^T\text{ for }i< j\end{cases} \]

Recursion for innovation process

  • Objective: come up with a computationally efficient way of performing estimation

  • The innovation \(\vece_i\) is \[ \vece_i = \vecy_i - \matH_i\hat{\vecx}_{i|i-1} \]

  • The one step predition \(\hat{\vecx}_{i|i-1}\) can be computed as \[ \hat{\vecx}_{i+1|1} = \matF_i\hat{\vecx}_{i|i-1}+\matK_{p,i}\vece_i\quad\textsf{where } \matK_{p,i} = \dotp{\vecx_{i+1}}{\vece_i}\norm{\vece_i}^{-2} \]

  • Set \(\hat{\vecx}_i\eqdef\hat{\vecx}_{i|i-1}\), \(\tilde{\vecx}_i=\vecx_i-\hat{\vecx}_{i}\) and \(\matP_i \eqdef \dotp{\tilde{\vecx}_{i}}{\tilde{\vecx}_{i}}\) \[ \norm{\vece_i}^{2} = \matH_i\matP_i\matH_i^T+\matR_i \] \[ \matK_{p,i} = (\matF_i\matP_i\matH_i^T+\matG_i\matS_i)\norm{\vece_i}^{-2} \]

Recursion for innovation process

  • Recursion for \(\matP_i\): \[ \matP_{i+1} = \matF_i\matP_i\matF_i^T + \matG_i\matQ_i\matG_i^T - \matK_{p,i}\norm{\vece_i}^{2}\matK_{p,i}^T \]

  • Since \(\tilde{\vecx}_0=\vecx_0\), we have \(\matP_0=\Pi_0\)