Kalman filter
Algorithm for estimating unknown variables from noisy measurements over time.
Kalman filtering, also known as linear quadratic estimation, is an algorithm that uses a series of measurements observed over time, including statistical noise and other inaccuracies, to produce estimates of unknown variables that tend to be more accurate than those based on a single measurement. It is named after Hungarian émigré Rudolf E. Kálmán, though Thorvald Nicolai Thiele and Peter Swerling developed a similar algorithm earlier. The filter is constructed as a mean squared error minimiser and relates to maximum likelihood statistics.
- Field
- Statistics and control theory
- Known for
- Kalman filtering (linear quadratic estimation)
- Named after
- Rudolf E. Kálmán
- Related developers
- Thorvald Nicolai Thiele, Peter Swerling, Richard S. Bucy, Stanley F. Schmidt, Ruslan Stratonovich
Lore & Background
The filtering method is named for Hungarian émigré Rudolf E. Kálmán, although Thorvald Nicolai Thiele and Peter Swerling developed a similar algorithm earlier. Richard S. Bucy of the Johns Hopkins Applied Physics Laboratory contributed to the theory, causing it to be known sometimes as Kalman–Bucy filtering. Kalman was inspired to derive the Kalman filter by applying state variables to the Wiener filtering problem. Stanley F. Schmidt is generally credited with developing the first implementation of a Kalman filter. He realized that the filter could be divided into two distinct parts, with one part for time periods between sensor outputs and another part for incorporating measurements. It was during a visit by Kálmán to the NASA Ames Research Center that Schmidt saw the applicability of Kálmán's ideas to the nonlinear problem of trajectory estimation for the Apollo program resulting in its incorporation in the Apollo navigation computer. This digital filter is sometimes termed the Stratonovich–Kalman–Bucy filter because it is a special case of a more general, nonlinear filter developed by the Soviet mathematician Ruslan Stratonovich. In fact, some of the special case linear filter's equations appeared in papers by Stratonovich that were published before the summer of 1961, when Kalman met with Stratonovich during a conference in Moscow.
Reader's Guide
Kalman filtering has numerous technological applications. A common application is for guidance, navigation, and control of vehicles, particularly aircraft, spacecraft and ships positioned dynamically. It is also applied in time series analysis tasks such as signal processing and econometrics, and is important for robotic motion planning and control, trajectory optimization, and modeling the central nervous system's control of movement. The algorithm works via a two-phase process: a prediction phase and an update phase. It is recursive and can operate in real time, using only the present input measurements and the state calculated previously and its uncertainty matrix. Optimality of Kalman filtering assumes that errors have a zero mean normal (Gaussian) distribution, but if the process and measurement covariances are known and mean is zero, then the Kalman filter is the best possible linear estimator in the minimum mean-square-error sense. Extensions such as the extended Kalman filter and unscented Kalman filter work on nonlinear systems. Kalman filters have been vital in the navigation systems of U.S. Navy nuclear ballistic missile submarines, cruise missiles, reusable launch vehicles, and spacecraft docking at the International Space Station. The Apollo computer used 2k of magnetic core RAM and 36k wire rope, with a clock speed under 100 kHz, and the fact that MIT engineers were able to pack such good software (one of the very first applications of the Kalman filter) into such a tiny computer is truly remarkable.
Frequently Asked Questions
Who is the Kalman filter named after?
The algorithm carries the name of Rudolf E. Kálmán, a Hungarian-born mathematician who emigrated to the United States. His 1960s work formalized the recursive estimation procedure that gave the method its lasting identity.
What exactly does the Kalman filter do?
It ingests a time-ordered stream of noisy, imperfect measurements and outputs a running estimate of hidden variables that outperforms any single reading taken in isolation. Under the hood it functions as a mean-squared-error minimizer closely linked to maximum-likelihood statistics.
Did a Hungarian really invent the Kalman filter?
Kálmán is the namesake, but the concept did not spring from a single mind. Thorvald Nicolai Thiele and Peter Swerling had independently worked out closely related estimation ideas before Kálmán's publication, and contributors such as Richard S. Bucy, Stanley F. Schmidt, and Ruslan Stratonovich also shaped the lineage.
Which academic field does the Kalman filter belong to?
It lives at the crossroads of statistics and control theory, specifically under the banner of linear quadratic estimation. Its recursive architecture makes it a go-to tool wherever a system must track or predict a state from uncertain sensor data.
Why is the Kalman filter still regarded as a landmark Hungarian contribution?
Because it wove a scatter of earlier partial ideas into one unified, practically implementable recursive algorithm. That elegance and broad applicability have kept it a standard reference in estimation theory well beyond Kálmán's original paper.
More in Hungarian inventions 1-24
Spotted an error? Know more?
Reader corrections go straight into our review queue. Suggest an edit · How this site is sourced
