Wann sollte EKF und wann Kalman Filter angewendet werden?

13

Ich lerne jetzt seit einer Woche Kalman Filter. Ich habe gerade herausgefunden, dass EKF (Extended Kalman Filter) für meinen Fall besser geeignet ist.

Angenommen, ich wende KF / EKF für ein Variometer an (das Gerät, das Flugzeugen und Fallschirmspringern mitteilt, wie hoch ihre vertikale Position und Geschwindigkeit ist). In meinem Fall habe ich einige Beispieldaten generiert: Die ersten Sekunden, in denen er (zum Beispiel der Fallschirmspringer) fällt (die Geschwindigkeit ist positiv), steigt er (die Geschwindigkeit ist negativ).

Soweit ich das beurteilen kann, ist dieses System linear. Soll ich KF oder EKF verwenden?

Primož Kralj
quelle
Ich möchte über die Msckf im Detail wissen? Ich mache ein Projekt darauf?
Sushanth Kalva

Antworten:

16

Die Antwort ist einfach: Wenn Ihr System linear ist, reicht ein (regulärer) Kalman-Filter völlig aus. Eine sehr kurze Zusammenfassung der Unterschiede zwischen den beiden:

Das erweiterte Kalman-Filter (EKF) ist eine Erweiterung, die auf nichtlineare Systeme angewendet werden kann. Die Forderung nach linearen Gleichungen für die Mess- und Zustandsübergangsmodelle wird gelockert; Stattdessen können die Modelle nichtlinear sein und müssen nur differenzierbar sein.

Die EKF transformiert die nichtlinearen Modelle zu jedem Zeitpunkt in linearisierte Gleichungssysteme. In einem Modell mit einer Variablen würden Sie dies unter Verwendung des aktuellen Modellwerts und seiner Ableitung tun. Die Verallgemeinerung für mehrere Variablen und Gleichungen ist die Jacobi-Matrix. Die linearisierten Gleichungen werden dann auf ähnliche Weise wie das Standard-Kalman-Filter verwendet.

Wie in vielen Fällen, in denen Sie ein nichtlineares System mit einem linearen Modell approximieren, gibt es Fälle, in denen die EKF keine gute Leistung erbringt. Wenn Sie eine schlechte anfängliche Einschätzung des zugrunde liegenden Systemzustands haben, könnten Sie Müll rausholen. Im Gegensatz zum Standard-Kalman-Filter für lineare Systeme hat sich der EKF in keiner Weise als optimal erwiesen. Es ist lediglich eine Erweiterung der linearen Systemtechnik auf eine größere Klasse von Problemen.

Jason R
quelle
Vielen Dank. Können Sie ein oder zwei Beispiele aus der Praxis nennen, bei denen man EKF verwenden sollte?
Primož Kralj
2
Betrachten Sie das Beispiel eines Radars, das ein Ziel verfolgt, das sich frei im 3D-Raum bewegen kann. Das Radar kann die Höhe und den Azimutwinkel zwischen ihm und dem Ziel sowie die Entfernung zum Ziel messen. Dies ist ein sphärisches Koordinatensystem. Die Dynamik des Ziels (Position, Geschwindigkeit, Beschleunigung) wird jedoch am besten in kartesischen Koordinaten ausgedrückt, sodass Sie den Status des Trackingsystems möglicherweise als kartesische Position des Ziels ausdrücken können. Somit besteht eine nichtlineare Beziehung zwischen den Messungen und dem Systemzustand, was die Verwendung eines erweiterten Kalman-Filters nahe legen würde.
Jason R
Der KF oder EKF hat also nichts mit dem Rauschen zu tun, oder? Die Vorstellung, dass man KF nur anwenden kann, wenn das Rauschen normal ist, ist falsch, oder?
Sibbs Gambling
@ perfectionm1ng: Eine der Hauptannahmen des gesamten Kalman-Filter-Frameworks ist, dass es sich um Gaußsche Rauschprozesse handelt. Wenn dies jedoch nicht zutrifft, ist es möglicherweise immer noch "gut genug" für Ihre Anwendung. Die Unterscheidung zwischen EKF und KF ist die oben beschriebene lineare und nichtlineare Beziehung zwischen Messungen und Zustand.
Jason R
@JasonR Oh! Aha. Könnten Sie uns bitte bei diesen beiden Fragen behilflich sein? robotics.stackexchange.com/questions/1767/… und dsp.stackexchange.com/questions/10387/…
Sibbs Gambling
6

Meine Antwort lautet: Wenn es sich um ein lineares System handelt, sollten Sie KF verwenden. Wenn es sich um ein nichtlineares System mit schwacher Nichtlinearität handelt, sollten Sie EKF verwenden. Wenn es sich um ein nichtlineares System mit hoher Nichtlinearität handelt, können Sie die bekannte UKF in Betracht ziehen. Ich zeichne ein Diagramm dafür, hoffentlich ist es nützlich. Bildbeschreibung hier eingeben

Wayne
quelle
5

Eine schnelle Literaturrecherche zeigt mir, dass der EKF häufig in GPS, Ortungs- / Navigationssystemen und auch in unbemannten Luftfahrzeugen eingesetzt wird. [Siehe zum Beispiel "Anwendung des erweiterten Kalman-Filters zur UAV-Identifizierung", Abhijit G. Kallapur, Shaaban S. Ali und Sreenatha G. Anavatti, Springer (2007)].

Wenn Sie Grund zu der Annahme haben, dass eine lineare Annäherung an die Nichtlinearität in Ihrem System nicht zu nachteilig ist, liefert EKF möglicherweise bessere Ergebnisse als ein KF. Es gibt jedoch keine theoretischen Garantien für die Optimalität.

Atul Ingle
quelle
Vielen Dank. Ich arbeite mit Luftfahrtsystemen, aber mir wurde der aktuelle Fall noch nicht vorgestellt - ich möchte nur die Dinge vorher klären.
Primož Kralj