Previous Next

Affine Residual Sum of Squares Objective

Syntax
[obj] = ckbs_sumsq_obj(
      x
zghdgdhqinvrinv)


Purpose
This routine computes the value of the affine Kalman-Bucy smoother residual sum of squares objective function.

Notation
The affine Kalman-Bucy smoother residual sum of squares is defined by  \[
\begin{array}{rcl}
S ( x_1 , \ldots , x_N ) & = & \sum_{k=1}^N S_k ( x_k , x_{k-1} ) \\
S_k ( x_k , x_{k-1} )    & = &
\frac{1}{2}
( z_k - h_k - H_k * x_k )^\R{T} * R_k^{-1} * ( z_k - h_k - H_k * x_k )
\\
& + &
\frac{1}{2}
( x_k - g_k - G_k * x_{k-1} )^\R{T} * Q_k^{-1} * ( x_k - g_k - G_k * x_{k-1} )
\\
\end{array}
\] 
where the matrices  R_k and  Q_k are symmetric positive definite and  x_0 is the constant zero.

x
The argument x is a two dimensional array, for  k = 1 , \ldots , N  \[
      x_k = x(:, k)
\]
and x has size  n \times N .

z
The argument z is a two dimensional array, for  k = 1 , \ldots , N  \[
      z_k = z(:, k)
\]
and z has size  m \times N .

g
The argument g is a two dimensional array, for  k = 1 , \ldots , N  \[
      g_k = g(:, k)
\]
and g has size  n \times N .

h
The argument h is a two dimensional array, for  k = 1 , \ldots , N  \[
      h_k = h(:, k)
\]
and h has size  m \times N .

dg
The argument dg is a three dimensional array, for  k = 1 , \ldots , N  \[
      G_k = dg(:,:,k)
\]
and dg has size  n \times n \times N .

dh
The argument dh is a three dimensional array, for  k = 1 , \ldots , N  \[
      H_k = dh(:,:,k)
\]
and dh has size  m \times n \times N .

qinv
The argument qinv is a three dimensional array, for  k = 1 , \ldots , N  \[
      Q_k^{-1} = qinv(:,:, k)
\]
and qinv has size  n \times n \times N .

rinv
The argument rinv is a three dimensional array, for  k = 1 , \ldots , N  \[
      R_k^{-1} = rinv(:,:, k)
\]
and rinv has size  m \times m \times N .

obj
The result obj is a scalar given by  \[
      obj = S ( x_1 , \ldots , x_N )
\] 


Example
The file sumsq_obj_ok.m contains an example and test of ckbs_sumsq_obj. It returns true if ckbs_sumsq_obj passes the test and false otherwise.
Input File: src/ckbs_sumsq_obj.m