Kalman-Filter

Kalman-Filter #

Der Kalman-Filter ist ein mathematisches Verfahren zur iterativen Schätzung von Systemzuständen auf der Basis von fehlerbehafteten Messungen. Beispielsweise misst ein GPS-Empfänger die Zeitdifferenz eines Satellitensignals (Beobachtung) und leitet daraus Position und Beschleunigung aus (Zustand).

Die Messung ist vielen externen Faktoren ausgesetzt wie thermischen Rauschen, Wetter, Präzision der Uhr usw.

Mit dem Kalman Filter kann nun geschätzt werden, wie der wahre Messwert sein sollte. Daraus lässt sich dann auch vorhersagen, wie ein “System”-Zustand sein wird. Im Beispiel eines GPS-Empfängers ist das System beispielsweise das GPS-Gerät und der Boden. Mathematisch ausgedrückt dann die Koordinaten und Beschleunigung. Mit den newtonschen Gesetzen kann dann die zukünftige Position (Zustand des Systems) berechnet werden.

Vereinfacht ausgedrückt ist der Kalman-Filter ein Schätzalgorithmus. Er produziert genauere Parameter aufgrund fehlerbehafteten Messwerten.

Arithmetischer Mittelwert und Erwartungswert #

Der arithmetische Mittelwert ist die Summe der Werte, geteilt durch die Anzahl. Es gibt also keine versteckte Information.

Der Erwartungswert wird mit μ abgekürzt. Er ergibt sich zum Beispiel bei unbegrenzter Wiederholung des zugrunde liegenden Experiments als arithmetischer Durchschnitt der Ergebnisse.

Beispiel Münze #

Der arithmetische Mittelwert von den Münzen CHF 1, CHF 2, CHF 3 ist CHF 2.

Der Erwartungswert hängt immer mit einer Wahrscheinlichkeit zusammen. Bei einem Würfelwurf ist die Wahrscheinlichkeit \(\frac{1}{6}\) , dass eine bestimmte Zahl geworfen wird. Es gibt aber auch Beispiele, wo die Wahrscheinlichkeit nicht immer gleich ist (z. B. Wartezeit auf den Zug).

Der Erwartungswert wird berechnet mit:

\(E = n_1 * P_1() + n_2 * P_2 [...] + n_6 * P_6\)

\(n_x\) ist die Anzahl gewürfelter “x” und \(P_x\) die Wahrscheinlichkeit. Wenn man nur lange genug würfelt, erwarten wir eine 3.5.

Beispiel Waage #

Angenommen, eine Person misst sich 5 Mal. Die Ergebnisse sind wie folgt:

79.8 kg, 80 kg, 80.1 kg, 79.8 kg, 80.2 kg.

Wir definieren die Person mit Waage als System und das Gewicht der Person ist ein Zustand des Systems. Wir wissen das wahre Gewicht (versteckter Zustand) nicht, da jede Messung eine gewisse Ungenauigkeit hat.

Je öfters wir uns messen, desto genauer erwarten wir das Resultat und wird irgendwo bei 79.98 kg sein.

Standardabweichung und Varianz #

Die Standardabweichung und Varianz lassen sich nur sehr eng an der Berechnung definieren. Es ist ein Mass, wie weit die einzelnen Messwerte streuen. Eine Varianz von 0 bedeutet, dass alle Messwerte dem Mittelwert entsprechen, sich also gar nicht unterscheiden. Eine grosse Varianz bedeutet, dass es Messwerte gibt, die sich weit weg vom Mittelwert befinden.

\[ \sigma^2 = \frac{1}{n}\sum_{i=1}^{n}(x_i - \mu)^2 \]

μ ist der Mittelwert und im Gewichtsbeispiel 79.98 kg. Die x Werte entsprechen den einzelnen Messwerten.

Beispiel Kalman-Filter Gewicht von Gold #

Das System sind die Goldbarren mit Waage. Der System-Zustand ist das Gewicht des Goldbarrens. Das Modell des Systems ist konstant, da wir davon ausgehen können, dass sich das Gewicht vom Gold nicht verändert.

Wir benötigen wieder den Mittelwert, um das Gewicht zum Zeitpunkt n zu bestimmen. Des Weiteren benötigen wir eine Funktion, um von diesem Zustand in den nächsten Zustand zu wechseln.

\[ x_{n,n} = x_{n,n-1} + \frac{1}{n}(z_n - x_{n,n-1}) \]
  • \(x_{n,n−1}\) ist der Mittelwert zum Zeitpunkt n-1
  • \(\frac{1}{n}\) wird als Informationsgewinn bezeichnet. Jede Iteration bringt weniger Erkenntnis
  • \(z_n\) ist die Messung zum Zeitpunkt n
  • \((z_n - x_{n,n-1})\) wird auch Innovation genannt

Numerisches Beispiel #

  • Unsere erste Schätzung \(x_{0,0}\) vom Goldbarren ist 1000g (Stempel auf dem Goldbarren).
  • Die erste Messung \(z_1\) ergibt 1030g.
  • Der Informationsgewinn ist 1.
  • Die Innovation ist 30g (1030g - 1000g).
  • Unser neuer Zustand \(x_{1,1}\) ist 1030g.
  • Unsere zweite Messung \(z_2\) ergibt 980g.
  • Die Innovation ist nun -41g
  • Der neue Zustand \(x_{2,2} = 1030g + 1/2 (989g - 1030g) = 1009.5g\)
Calendar November 12, 2022