Index-> contents reference index search external Previous Next Up-> ckbs utility ckbs_sumsq_obj ckbs-> license ckbs_t_general ckbs_nonlinear ckbs_L1_nonlinear ckbs_affine ckbs_affine_singular ckbs_L1_affine utility all_ok.m whatsnew wishlist bib utility-> ckbs_t_obj ckbs_t_grad ckbs_t_hess ckbs_diag_solve ckbs_bidiag_solve ckbs_bidiag_solve_t ckbs_blkbidiag_symm_mul ckbs_blkdiag_mul ckbs_blkdiag_mul_t ckbs_blkbidiag_mul_t ckbs_blkbidiag_mul ckbs_blktridiag_mul ckbs_sumsq_obj ckbs_L2L1_obj ckbs_sumsq_grad ckbs_process_grad ckbs_sumsq_hes ckbs_process_hes ckbs_tridiag_solve ckbs_tridiag_solve_b ckbs_tridiag_solve_pcg ckbs_newton_step ckbs_newton_step_L1 ckbs_kuhn_tucker ckbs_kuhn_tucker_L1 ckbs_sumsq_obj-> sumsq_obj_ok.m Headings-> Syntax Purpose Notation x z g h dg dh qinv rinv obj Example

Affine Residual Sum of Squares Objective

Syntax
[obj] = ckbs_sumsq_obj(       x, z, g, h, dg, dh, qinv, rinv)

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