MAP estimation of a diagonal linear state transition matrix with bounded support

92 Views Asked by At

I have a stochastic linear dynamical system:

$x_{t} = A x_{t-1} + w_t,$

where $x_{t}$ is a latent state vector, $A$ is a linear state transition matrix and $w_t$ is a process noise vector drawn from $\mathcal{N}(0,Q)$ with diagonal covariance matrix $Q$.

At each point in time, I obtain an observation:

$y_{t} = C x_{t} + v_t,$

where $C$ is an observation matrix and $v_t$ is a measurement noise vector drawn from $\mathcal{N}(0,R)$.

The true value of the matrix $A$ is unknown to me. I want to learn this matrix from data. Specifically, given a sequence of observations $y_{1:T}$, I want to infer the maximum a posteriori estimate of the matrix $A$. However, for reasons of identifiability/interpretability/numerical stability, I want to constrain the values of certain elements of $A$. Specifically:

  1. I want the off-diagonal elements of $A$ to be zero (i.e., I want $A$ to be diagonal).
  2. I want the diagonal elements of $A$ to lie within (0,1).

I am doing the following:

  • I put a multivariate normal prior on the column vector containing the diagonal elements of $A$:

    $\textrm{diag}(A) \sim \mathcal{N}(\mu,\Sigma)$

    where $\Sigma$ is a diagonal covariance matrix; by only doing inference on the diagonal elements of $A$, I assume the off diagonal elements are known to be zero.

  • To achieve a bounded support, I use a truncated multivariate normal prior on $\textrm{diag}(A)$ with support (0,1). The use of a truncated multivariate normal prior is convenient (from the perspective of conjugacy) as the likelihood is multivariate normal due to the Gaussian nature of the process noise. Finding the mode of a truncated multivariate normal posterior distribution (the MAP estimate) is a quadratic programming problem, I believe. However, in my case, because the covariance matrix of the untruncated multivariate normal posterior distribution of $\textrm{diag}(A)$ is diagonal (due to the diagonal nature of both $\Sigma$ and $Q$), it is trivial to find the mode of the truncated multivariate normal posterior distribution - I simply set any terms in the mode of the untruncated multivariate normal posterior distribution to 0 (if < 0) or 1 (if > 1).

Is this the appropriate way to do this? Should I use a prior other than a truncated multivariate normal distribution?

Many thanks in advance