Kalmanfilter

Kalmanfilter är ett effektivt rekursivt filter eller algoritm, som utifrån en mängd inkompletta och brusiga mätningar uppskattar tillståndet hos ett dynamiskt system. Ett exempel på tillämpning kan vara att ta fram korrekt och kontinuerligt uppdaterad information om ett objekts position och hastighet utifrån en serie imperfekta observationer av objektets position vid tröghetsnavigering. Metoden används i många och vitt skilda tekniska tillämpningar från radar till datorseende.  Kalmanfiltrering är ett viktigt ämne i reglerteknik och utveckling av reglersystem.

Historik 
Filtret har uppkallats efter sin skapare, Rudolf E. Kálmán, trots att Peter Swerling redan tidigare utvecklat en liknande metod. Stanley Schmidt anses allmänt vara den som först implementerade ett Kalmanfilter. Vid ett besök Kalman gjorde vid NASA Ames Research Center insåg han att hans idéer kunde tillämpas för att beräkna banor i Apolloprogrammet, och metoden integrerades i Apollos navigeringsdator. Själva filtret utvecklades i publikationer av Swerling (1958), Kalman (1960) och Kalman & Bucy (1961).

Matematisk grund

Linjärt system i tillståndsrummet 
Vid diskret tid:

Betrakta ett system representerat i tillståndsrummet:

där  representerar en processtörning och är vitt brus med medelvärde lika med noll och med variansen  vid tillfället k.

 representerar en mätstörning och är vitt brus med medelvärde lika med noll och med variansen  vid ögonblicket k.

Kalmanfiltret estimerar tillståndet  utifrån tidigare mätningar av , , ,  och föregående skattat tillstånd .

Kontinuerlig tid:

Betrakta ett system representerat i tillståndsrummet:

där:
 representerar en processtörning och är vitt brus med medelvärde lika med noll och med variansen  i tidsintervallet t.

 representerar en mätstörning och är vitt brus med medelvärde lika med noll och med variansen  i tidsintervallet t.

Kalmanfiltret medger uppskattning av tillståndet  utifrån de tidigare mätningar av , , ,  och de föregående uppskattningarna av .

Algoritm för det diskreta Kalmanfiltret 
Kalmanfilter är en rekursiv algoritm där tillståndet  anses vara en Gaussisk slumpvariabel. Kalmanfiltret beskrivs i allmänhet i två steg: Prediktion och  Korrektion.

Senare varianter 
En uppsjö av Kalmanfilter har nu utvecklats, från Kalmans ursprungliga modell, som nu kallas enkelt Kalmanfilter, till Schmidts utökade filter, informationsfiltret, och ett antal kvadratrotfilter som utvecklats av bland andra Bierman, Thornton. Masreliez' teorem är ett exempel med robustifiering för att få fram ett mer tillförlitligt filter. 

Här finns ett samband med rekursiv Bayesisk uppskattning, där det sanna tillståndet antas vara en icke observerad Markovprocess och mätningarna är de observerade tillstånden i en dold Markovmodell. Kalmanfiltret kan anses vara ett av de enklaste fallen av ett dynamiskt Bayesiskt nätverk. Kalmanfiltret beräknar uppskattningar av de sanna mätvärdena rekursivt i tiden från inkommande data med hjälp av en matematisk modell. På samma sätt beräknar en "rekursiv Bayesisk uppskattning" utfallsuppskattningar hos en okänd sannolikhetsfördelning.

Tillämpningar 
Den vanligast förekommande typen av Kalmanfilter idag är förmodligen den faslåsta slingan (PLL) som nu förekommer i allehanda radioapparater, datorer och nästan alla andra sorters video- och kommunikationsutrustning. Bland andra tillämpningar kan nämnas:

 Autopilot
 Brain-machine interface
 Dynamisk positionering
 Global Navigation Satellite System
 Väderprognoser
 Robotik
 Talanalys

Se även 
 Stokastisk process

Referenser

Noter

Källor 
 [JU97] Julier, Simon J. and Jeffery K. Uhlmann. A New Extension of the Kalman Filter to nonlinear Systems. In The Proceedings of AeroSense: The 11th International Symposium on Aerospace/Defense Sensing,Simulation and Controls, Multi Sensor Fusion, Tracking and Resource Management II, SPIE, 1997.

Externa länkar 
Kalman Filters, thorough introduction to several types, together with applications to Robot Localization
The Kalman Filter
Kalman Filtering

Reglerteknik
Signalbehandling