Kalman-Filter
aus Wikipedia, der freien Enzyklopädie
Das Kálmán-Filter ist ein stochastischer Zustandsschätzer für dynamische Systeme. Es wurde 1960 von Rudolf Kálmán erstmals für zeitdiskrete, lineare Systeme entwickelt und wird dafür verwendet, Zustände oder Parameter des Systems aufgrund von teils redundanten Messungen, die von Rauschen überlagert sind, zu schätzen. Dabei wird der mittlere quadratische Fehler minimiert.
Der entscheidende Vorteil des Kálmán-Filters gegenüber anderen stochastischen Schätzverfahren ist seine iterative Struktur, die es für den Einsatz in Echtzeitanwendungen prädestiniert.
Das Filter besitzt eine sog. Prädiktor-Korrektor-Struktur, d.h. zunächst wird auf Basis der Systemeingangsdaten der wahrscheinlichste Ausgangswert vorhergesagt (prädiziert) und dieser dann mit dem tatsächlich gemessenen Ausgangswert verglichen. Die Differenz der beiden Werte wird linear gewichtet und dient der Verbesserung (Korrektur) des aktuellen Zustandes.
Inhaltsverzeichnis |
[Bearbeiten] Varianten
- Die wohl wichtigste Variante des Kalman-Filters ist das erweiterte Kálmán-Filter (oder engl. extended Kálmán filter) (EKF), mit dem es möglich ist, auch Zustände nichtlinearer Systeme zu schätzen. Das EKF beruht auf einer Taylor-Näherung erster Ordnung der Systemgleichungen und ist daher nur für kleine Abtastintervalle ein verlässlicher Schätzer.
- Um eine genauere Approximation der Wahrscheinlichkeitsdichte des Zustands bei nichtlinearem System zu ermöglichen, als es beim EKF der Fall ist, besteht die Möglichkeit anstelle einer einzelnen Gaußdichte eine Summe von Gaußdichten (Gaussian Mixture) zu verwenden. Als Konsequenz ergibt sich das sog. Gaussian Sum Filter.
- Das Filter wurde auch auf zeitkontinuierliche Systeme erweitert: Kálmán-Bucy-Filter.
- Die nichtkausale Erweiterung des Filters ist der Rauch-Tung-Striebel-Glätter.
- Neueste Varianten versuchen, den durch die Linearisierung des EKF entstehenden Informationsverlust zu verkleinern, indem bei der Prädiktion mehrere repräsentative Punkte im Zustandsraum zur Vorhersage des Ausgangswertes herangezogen werden: Sigmapunkt-Kálmán-Filter (SPKF), unscented Kálmán filter (UKF), central difference Kálmán filter (CDKF), Partikelfilter.
- Um Beschränkungen der einzelnen Zustände einzuhalten, gibt es auch den sogenannten Constraint Extended Kálmán Filter (CEKF). Hierbei werden die Zustände auf bekannte Intervalle beschränkt. Dies ist teilweise notwendig, da der Kálmán Filter eventuell Zustände schätzt, welche physikalisch nicht sinnvoll sind (z.B negative Konzentrationen).
[Bearbeiten] Beispielanwendungen
Das Kálmán-Filter ist heute der wohl am weitesten verbreitete Algorithmus zur Zustandsschätzung linearer und nichtlinearer Systeme.
- Weite Verbreitung gefunden hat das Kálmán-Filter in der Inertialnavigation beispielsweise von Flugzeugen: Während des Flugs werden Beschleunigungen und Drehraten des Flugzeugs von einer sog. inertialen Messeinheit mit hohen Frequenzen gemessen um eine Kurzzeit-Navigation zu ermöglichen. Weitere Sensoren, insbesondere satellitengestützte Positionsbestimmung (z.B. GPS) liefern Stützdaten. Diese verschiedenen Messungen müssen fusioniert werden, um eine möglichst optimale Schätzung der aktuellen Position und Orientierung zu gewährleisten.
- Zunehmend spielen Trackingverfahren und somit das Kálmán-Filter als typischer Vertreter eines Trackingfilters eine Rolle im Automobilbereich. Sicherheits- oder Komfortanwendungen, die auf umfelderkennenden Systemen basieren, sind auf verlässliche Informationen (z.B. Position, Geschwindigkeit) bezüglich der Objekte in ihrem Umfeld angewiesen.
- Eine ebenfalls oft verwendete Art eines Kálmán-Filters, das PLL-Filter, hat heute weite Verbreitung gefunden in Radios, Funkgeräten, Computern und in fast allen anderen Arten von Video- und Kommunikationsgeräten.
[Bearbeiten] Algorithmus
Der folgende Abschnitt beschreibt den Ablauf eines einfachen linearen Kálmán-Filters als Gauss-Markov-Modell:
Ein Zustand wird mithilfe des geschätzten Zustandes
aus dem vorherigen Zyklus k - 1, der Zustandsübergangsmatrix A und eines Regeleingriffes Buk (oft nicht vorhanden) prädiziert (a priori-Schätzung):
Der für diese Prädiktion erwartete Fehler errechnet sich aus:
Hier fließt neben der Zustandsübergangsmatrix A auch der Modellfehler Q ein, der die Abweichung des Modellverhaltens von der Realität beschreibt.
Für den Innovationsschritt wird eine in jedem Zyklus durchgeführte Messung
- yk benötigt, die mit dem echten Zustand xk
des Systems folgendermaßen zusammenhängt:
- yk = Cxk + vk.
Hierbei erfasst C die Abhängigkeit zwischen
- xk und yk
bei einer fehlerfreien Messung. Messfehler werden durch vk beschrieben und typischerweise mit der sogenannten Messfehlerkovarianzmatrix R spezifiziert.
Die Zuordnung der Messwerte zu den prädizierten Werten geschieht oft unter Verwendung eines Suchbereiches, welcher sich von dem erwarteten Prädiktionsfehler ableitet. Die Gewichtung der Messung gegenüber der Prädiktion bestimmt der sogenannte Kalman-Gain entsprechend der Prädiktionsfehlerkovarianzmatrix
und der Messfehlerkovarianzmatrix R:
.
Der Innovationsschritt verknüpft nun die Messung yk und die Prädiktion gewichtet zu einer neuen (a posteriori-) Schätzung:
.
Die dieser Schätzung zugehörige Fehlerkovarianzmatrix
gibt den Fehler dieser Schätzung an (I ist die Einheitsmatrix). Beide Werte bilden nun die Grundlage für einen erneuten Durchlauf zur Schätzung des nächsten Systemzustands und der Ablauf beginnt von vorn.
Bei nichtlinearen Modell ist der funktionale Zusammenhang in A durch Linearisierung (Ableitung am aktuellen Zustandsvektor) herzustellen.
Das Kálmán-Filter kann auch als Gauss-Helmert-Modell implementiert werden. Die Formeln insbesondere für die Fehlerfortpflanzung sind ein wenig komplizierter.
[Bearbeiten] Siehe auch
Adaptive Filter, ARMA, Tracking
[Bearbeiten] Literatur
- R.E. Kalman: A new Approach to Linear Filtering and Prediction Problems, 1960
- B.D.O. Anderson and J.B. Moore: Optimal Filtering, Englewood Cliffs, 1979
- D.L. Aspach and H.W. Sorenson, Nonlinear Bayesian Estimation using Gaussian Sum Approximation, 1972
- Julier, Uhlmann: Unscented Filtering and Nonlinear Estimation, 2004
- Julier, Uhlmann: Corrections to "Unscented Filtering and Nonlinear Estimation", 2004