The Kalman filter was orginally developed to estimate time-varying
quantities (state variables) from a set of noisy measurements
(signals). The set of state variables is usually represented by a
vector denoted as . For example, we could define the
state of a satellite to be its position in Cartesian coordinates
relative to the center of the earth. In this case, the state vector
would look like the following:
where the (x y z) triplet represents the time-varying
coordinates of the satellite's position (note the distinction between
, the state vector, and x, the x-component of
the state vector).
In general, it is not possible to determine
through direct measurements the precise state of such a system.
Instead, we must rely on measurements that provide information about
the state variables. In this example, we may have to rely on external
radar signals or telemetry signals sent by the satellite itself. In
other words, we must infer the state of the system based on the set of
measurements we have about the system. In an ideal world, the state
of the system can be determined precisely given an appropriate set of
measurements. In practice, this is difficult because these
measurements are corrupted by noise. In this example, if we had an
onboard instrument that could measure the satellite's (x,y,z)
coordinates in Cartesian using a gyroscopic system, the relationship
between the state vector
and the measurement vector
can be written as
where is the measured position vector and
is the noise vector associated with the measurement. The matrix
H is referred to as the transfer function because it
transfers the input, which is the actual state, to the output, which
is the set of measurements. Equation
expresses the measurement vector as a function of the state vector.
What we really need is the state vector expressed as a function of the
measurement vector. If we know the value of
, this would
reduce to a simple matrix inversion (
).
However, the addition of the unknown
term implies
that we can no longer determine
precisely. Instead, we must
find an estimate of
based on our knowledge of how
the state variables are correlated to one another, and on the prior
distribution of
. A Kalman filter is a function that
provides an optimal estimate of the state vector x given
such knowledge. This is an example of a linear dynamic system
because the input and output are described by a linear equation.