The basic idea of the Kalman filter principle (c)

  In the basic idea of the principles of the Kalman filter (B) , a complete analysis of the basic ideas and the derivation process, analyze problems at issue here would take some time and the last remnants of actual use encounter do. Here in the blog directly to take the above conclusions, if it looks more difficult, you can go to familiarize yourself with. Directly to the first major steps in the Kalman filter to take over:

\[\begin{array}{l}
 {\bf{G}}(n) = {\bf{F}}(n + 1,n){\bf{K}}(n,n - 1){{\bf{C}}^H}(n){[{\bf{C}}(n){\bf{K}}(n,n - 1){{\bf{C}}^H}(n) + {{\bf{Q}}_2}(n)]^{ - 1}} \\
 \alpha (n) = y(n) - {\bf{C}}(n)\hat x(n|{{\bf{y}}_{n - 1}}) \\
 \hat x(n + 1|{{\bf{y}}_n}) = {\bf{F}}(n + 1,n)\hat x(n|{{\bf{y}}_{n - 1}}) + {\bf{G}}(n)\alpha (n) \\
 {\bf{K}}(n) = {\bf{K}}(n,n - 1) - {\bf{F}}(n,n + 1){\bf{G}}(n){\bf{C}}(n){\bf{K}}(n,n - 1) \\
 {\bf{K}}(n + 1,n) = {\bf{F}}(n + 1,n){\bf{K}}(n){{\bf{F}}^H}(n + 1,n) + {{\bf{Q}}_1}(n) \\
 \end{array}\]

  Still looks a little too complicated, then the recursive Riccati equation changes a little bit here, are summarized as follows:

\[\begin{array}{l}
{\bf{K}}(n + 1,n) = {\bf{F}}(n + 1,n){\bf{K}}(n){{\bf{F}}^H}(n + 1,n) + {{\bf{Q}}_1}(n) \\
{\bf{G}}(n) = {\bf{F}}(n + 1,n){\bf{K}}(n,n - 1){{\bf{C}}^H}(n){[{\bf{C}}(n){\bf{K}}(n,n - 1){{\bf{C}}^H}(n) + {{\bf{Q}}_2}(n)]^{ - 1}} \\
\alpha (n) = y(n) - {\bf{C}}(n)\hat x(n|{{\bf{y}}_{n - 1}}) \\
\hat x(n + 1|{{\bf{y}}_n}) = {\bf{F}}(n + 1,n)\hat x(n|{{\bf{y}}_{n - 1}}) + {\bf{G}}(n)\alpha (n) \\
{\bf{K}}(n) = [{\bf{I}} - {{\bf{G}}_n}{{\bf{C}}_n}]{{\bf{K}}_{n - 1}} \\
 \end{array}\]

  Further, there is a problem, problems related to the state of the initial modeling equations, assuming the current state of the system because only the previous state and the process noise about $ x (n + 1) = {\ bf {F}} (n + 1, n) x (n) + {v_1} (n) $, in many cases, this is not realistic, and usually also the current state of the current system state input related to $ x (n + 1) = {\ bf {F}} (n + 1, n) x (n) + {\ bf {B}} u (n) + {v_1} (n) $, where $ u (n) $ represents the input current status of an affected system factor, now take a look at when considering the state of the system input, what changes state covariance equation. Of the desired new state takes sides of the equation.

\[E\left[ {x(n + 1)} \right] = {\bf{F}}(n + 1,n)E\left[ {x(n)} \right] + {\bf{B}}u(n)\]

  So, a new state covariance can be expressed as

\[\begin{array}{l}
{\bf{K}}(n + 1,n) = \left[ {x(n + 1) - E\left[ {x(n + 1)} \right]} \right]{\left[ {x(n + 1) - E\left[ {x(n + 1)} \right]} \right]^T} \\
= \left[ {{\bf{F}}(n + 1,n)x(n) + {\bf{B}}u(n) + {v_1}(n) - E\left[ {x(n + 1)} \right]} \right]{\left[ {{\bf{F}}(n + 1,n)x(n) + {\bf{B}}u(n) + {v_1}(n) - E\left[ {x(n + 1)} \right] - E\left[ {x(n + 1)} \right]} \right]^T} \\
= \left[ {{\bf{F}}(n + 1,n)\left( {x(n) - E\left[ {x(n)} \right]} \right) + {v_1}(n)} \right]{\left[ {{\bf{F}}(n + 1,n)\left( {x(n) - E\left[ {x(n)} \right]} \right) + {v_1}(n)} \right]^T} \\
= {\bf{F}}(n + 1,n)\left( {x(n) - E\left[ {x(n)} \right]} \right){\left( {x(n) - E\left[ {x(n)} \right]} \right)^T}{\bf{F}}{(n + 1,n)^T} + {{\bf{Q}}_1}(n) + {\bf{F}}(n + 1,n)\left( {x(n) - E\left[ {x(n)} \right]} \right){v_1}{(n)^T} + {v_1}(n){\left[ {{\bf{F}}(n + 1,n)\left( {x(n) - E\left[ {x(n)} \right]} \right)} \right]^T} \\
= {\bf{F}}(n + 1,n){\bf{K}}(n){{\bf{F}}^H}(n + 1,n) + {{\bf{Q}}_1}(n) \\
\end{array}\]

   In other words, even if the impact of the current state of the input signal, when its covariance with no input signal is still the same, this equation is also known as Lyapunov equation, learned the system control may be more familiar with some friends. Therefore, when considering the system input, rearrange the Kalman filter update process

\[\begin{array}{l}
{\bf{K}}(n + 1,n) = {\bf{F}}(n + 1,n){\bf{K}}(n){{\bf{F}}^H}(n + 1,n) + {{\bf{Q}}_1}(n) \\
{\bf{G}}(n) = {\bf{F}}(n + 1,n){\bf{K}}(n,n - 1){{\bf{C}}^H}(n){[{\bf{C}}(n){\bf{K}}(n,n - 1){{\bf{C}}^H}(n) + {{\bf{Q}}_2}(n)]^{ - 1}} \\
\alpha (n) = y(n) - {\bf{C}}(n)\hat x(n|{{\bf{y}}_{n - 1}}) \\
\hat x(n + 1|{{\bf{y}}_n}) = {\bf{F}}(n + 1,n)\hat x(n|{{\bf{y}}_{n - 1}}) + {\bf{B}}u(n) + {\bf{G}}(n)\alpha (n) \\
{\bf{K}}(n) = [{\bf{I}} - {{\bf{G}}_n}{{\bf{C}}_n}]{{\bf{K}}_{n - 1}} \\
\end{array}\]

   Above is the kalman filter replacement formula, here basically to analysis of the principles can be ended. Further, there was found a book or some different symbols expression kalman filter network update procedure, are listed up here, easy to do comparison (different symbolic representations consistent meaning)

\[\begin{array}{l}
{x_k} = {F_{k - 1}}{x_{k - 1}} + {G_{k - 1}}{u_{k - 1}} + {w_{k - 1}}\\
{y_k} = {H_k}{x_k} + {v_k}
\end{array}\]

 

\[\begin{array}{l}
P_k^ - = {F_{k - 1}}P_{k - 1}^ + F_{k - 1}^T + {Q_{k - 1}}\\
{K_k} = P_k^ - H_k^T{\left( {{H_k}P_k^ - H_k^T + {R_k}} \right)^{ - 1}}\\
\hat x_k^ - = {F_{k - 1}}\hat x_k^ + + {G_{k - 1}}{u_{k - 1}}\\
\hat x_k^ + = \hat x_k^ - + {K_k}\left( {y - {H_k}\hat x_k^ - } \right)\\
P_k^ + = \left( {I - {K_k}{H_k}} \right)P_k^ - {\left( {I - {K_k}{H_k}} \right)^T} + {K_k}{R_k}K_k^T\\
= (I - {K_k}{H_k})P_k^ - \\
= {\left[ {{{\left( {P_k^ - } \right)}^{ - 1}} + H_k^TR_k^{ - 1}{K_k}} \right]^{ - 1}}
\end{array}\]

 

Guess you like

Origin www.cnblogs.com/icoolmedia/p/kalman_filter_analyze3.html