Jump to content
Main menu
Main menu
move to sidebar
hide
Navigation
Main page
Recent changes
Random page
Help about MediaWiki
Special pages
Niidae Wiki
Search
Search
Appearance
Create account
Log in
Personal tools
Create account
Log in
Pages for logged out editors
learn more
Contributions
Talk
Editing
Kalman filter
(section)
Page
Discussion
English
Read
Edit
View history
Tools
Tools
move to sidebar
hide
Actions
Read
Edit
View history
General
What links here
Related changes
Page information
Appearance
move to sidebar
hide
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
== Underlying dynamic system model == Kalman filtering is based on [[linear dynamic system]]s discretized in the time domain. They are modeled on a [[Markov chain]] built on [[linear operator]]s perturbed by errors that may include [[normal distribution|Gaussian]] [[noise (physics)|noise]]. The [[state space (controls)|state]] of the target system refers to the ground truth (yet hidden) system configuration of interest, which is represented as a [[vector space|vector]] of [[real number]]s. At each [[discrete time]] increment, a linear operator is applied to the state to generate the new state, with some noise mixed in, and optionally some information from the controls on the system if they are known. Then, another linear operator mixed with more noise generates the measurable outputs (i.e., observation) from the true ("hidden") state. The Kalman filter may be regarded as analogous to the hidden Markov model, with the difference that the hidden state variables have values in a continuous space as opposed to a discrete state space as for the hidden Markov model. There is a strong analogy between the equations of a Kalman Filter and those of the hidden Markov model. A review of this and other models is given in Roweis and [[Zoubin Ghahramani|Ghahramani]] (1999)<ref name="roweisghahramani1999">{{cite journal|doi=10.1162/089976699300016674|pmid= 9950734|year= 1999|last1= Roweis|first1= S|title= A unifying review of linear gaussian models|journal= Neural Computation|volume= 11|issue= 2|pages= 305β45|last2= Ghahramani|first2= Z|s2cid= 2590898|url= https://authors.library.caltech.edu/13697/1/ROWnc99.pdf}}</ref> and Hamilton (1994), Chapter 13.<ref name="hamilton">Hamilton, J. (1994), ''Time Series Analysis'', Princeton University Press. Chapter 13, 'The Kalman Filter'</ref> In order to use the Kalman filter to estimate the internal state of a process given only a sequence of noisy observations, one must model the process in accordance with the following framework. This means specifying the matrices, for each time-step ''<math>k</math>'', following: * <math>\mathbf{F}_k</math>, the state-transition model; * <math>\mathbf{H}_k</math>, the observation model; * <math>\mathbf{Q}_k</math>, the [[covariance]] of the process noise; * <math>\mathbf{R}_k</math>, the [[covariance]] of the observation noise; * and sometimes <math>\mathbf{B}_k</math>, the control-input model as described below; if <math>\mathbf{B}_k</math> is included, then there is also * <math>\mathbf{u}_k</math>, the control vector, representing the controlling input into control-input model. As seen below, it is common in many applications that the matrices <math>\mathbf{F}</math>, <math>\mathbf{H}</math>, <math>\mathbf{Q}</math>, <math>\mathbf{R}</math>, and <math>\mathbf{B}</math> are constant across time, in which case their <math>k</math> index may be dropped. [[File:Kalman filter model 2.svg|class=skin-invert-image|center|thumb|631px|Model underlying the Kalman filter. Squares represent matrices. Ellipses represent [[multivariate normal distribution]]s (with the mean and covariance matrix enclosed). Unenclosed values are [[vector space|vectors]]. For the simple case, the various matrices are constant with time, and thus the subscripts are not used, but Kalman filtering allows any of them to change each time step.]] The Kalman filter model assumes the true state at time <math>k</math> is evolved from the state at <math>k-1</math> according to :<math> \mathbf{x}_k = \mathbf{F}_k \mathbf{x}_{k-1} +\mathbf{B}_k \mathbf{u}_{k} + \mathbf{w}_k </math> where * <math>\mathbf{F}_k</math> is the state transition model which is applied to the previous state '''x'''<sub>''k''β1</sub>; * <math>\mathbf{B}_k</math> is the control-input model which is applied to the control vector <math>\mathbf{u}_k</math>; * <math>\mathbf{w}_k</math> is the process noise, which is assumed to be drawn from a zero mean [[multivariate normal distribution]], <math>\mathcal{N}</math>, with [[covariance matrix|covariance]], <math>\mathbf{Q}_k</math>: <math>\mathbf{w}_k \sim \mathcal{N}\left(0, \mathbf{Q}_k\right) </math>. If <math>\mathbf{Q}</math> is independent of time, one may, following Roweis and Ghahramani,<ref name="roweisghahramani1999" />{{Rp|page=307}} write <math>\mathbf{w}_\bull</math> instead of <math>\mathbf{w}_k</math> to emphasize that the noise has no explicit knowledge of time. At time <math>k</math> an observation (or measurement) <math>\mathbf{z}_k</math>of the true state <math>\mathbf{x}_k</math> is made according to :<math>\mathbf{z}_k = \mathbf{H}_k \mathbf{x}_k + \mathbf{v}_k</math> where * <math>\mathbf{H}_k</math> is the observation model, which maps the true state space into the observed space and * <math>\mathbf{v}_k</math> is the observation noise, which is assumed to be zero mean Gaussian [[white noise]] with covariance <math>\mathbf{R}_k</math>: <math>\mathbf{v}_k \sim \mathcal{N}\left(0, \mathbf{R}_k\right) </math>. Analogously to the situation for <math>\mathbf{w}_k</math>, one may write <math>\mathbf{v}_\bull</math> instead of <math>\mathbf{v}_k</math> if <math>\mathbf{R}</math> is independent of time. The initial state, and the noise vectors at each step <math>\{ \mathbf{x}_0, \mathbf{w}_1, \dots, \mathbf{w}_k, \mathbf{v}_1, \dots, \mathbf{v}_k \} </math> are all assumed to be mutually [[statistical independence|independent]]. Many real-time dynamic systems do not exactly conform to this model. In fact, unmodeled dynamics can seriously degrade the filter performance, even when it was supposed to work with unknown stochastic signals as inputs. The reason for this is that the effect of unmodeled dynamics depends on the input, and, therefore, can bring the estimation algorithm to instability (it diverges). On the other hand, independent white noise signals will not make the algorithm diverge. The problem of distinguishing between measurement noise and unmodeled dynamics is a difficult one and is treated as a problem of control theory using [[robust control]].<ref name="ishihara06">{{cite journal |doi=10.1109/TAC.2006.878741|title=Robust Kalman Filter for Descriptor Systems|journal=IEEE Transactions on Automatic Control|volume=51|issue=8|page=1354|year=2006|last1=Ishihara|first1=J.Y.|last2=Terra|first2=M.H.|last3=Campos|first3=J.C.T.|s2cid=12741796}}</ref><ref name="terra14">{{cite journal |doi=10.1109/TAC.2014.2309282|title=Optimal Robust Linear Quadratic Regulator for Systems Subject to Uncertainties|journal=IEEE Transactions on Automatic Control|volume=59|issue=9|pages=2586β2591|year=2014|last1=Terra|first1=Marco H.|last2=Cerri|first2=Joao P.|last3=Ishihara|first3=Joao Y.|s2cid=8810105}}</ref>
Summary:
Please note that all contributions to Niidae Wiki may be edited, altered, or removed by other contributors. If you do not want your writing to be edited mercilessly, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource (see
Encyclopedia:Copyrights
for details).
Do not submit copyrighted work without permission!
Cancel
Editing help
(opens in new window)
Search
Search
Editing
Kalman filter
(section)
Add topic