  Kalman filtering is a classic state estimation technique used in application
areas such as signal processing and autonomous control of vehicles. It is now
being used to solve problems in computer systems such as controlling the
voltage and frequency of processors.
  Although there are many presentations of Kalman filtering in the literature,
they usually deal with particular systems like autonomous robots or linear
systems with Gaussian noise, which makes it difficult to understand the general
principles behind Kalman filtering. In this paper, we first present the
abstract ideas behind Kalman filtering at a level accessible to anyone with a
basic knowledge of probability theory and calculus, and then show how these
concepts can be applied to the particular problem of state estimation in linear
systems. This separation of concepts from applications should make it easier to
understand Kalman filtering and to apply it to other problems in computer
systems.
