Automating the implementation of Kalman filter algorithms

Jon Whittle, Johann Schumann

Research output: Contribution to journalArticleResearchpeer-review

27 Citations (Scopus)


AUTOFILTER is a tool that generates implementations that solve state estimation problems using Kalman filters. From a high-level, mathematics-based description of a state estimation problem, AUTOFILTER automatically generates code that computes a statistically optimal estimate using one or more of a number of well-known variants of the Kalman filter algorithm. The problem description may be given in terms of continuous or discrete, linear or nonlinear process and measurement dynamics. From this description, AUTOFILTER automates many common solution methods (e.g., linearization, discretization) and generates C or Matlab code fully automatically. AUTOFILTER surpasses toolkit-based programming approaches for Kalman filters because it requires no low-level programming skills (e.g., to "glue" together library function calls). AUTOFILTER raises the level of discourse to the mathematics of the problem at hand rather than the details of what algorithms, data structures, optimizations and so on are required to implement it. An overview of AUTOFILTER is given along with an example of its practical application to deep space attitude estimation.

Original languageEnglish
Pages (from-to)434-453
Number of pages20
JournalACM Transactions on Mathematical Software
Issue number4
Publication statusPublished - 1 Dec 2004
Externally publishedYes


  • Automatic programming
  • Code generation
  • Kalman filters
  • State estimation

Cite this