aboutsummaryrefslogtreecommitdiffstats
path: root/buch/papers/erdbeben/teil1.tex
diff options
context:
space:
mode:
Diffstat (limited to 'buch/papers/erdbeben/teil1.tex')
-rw-r--r--buch/papers/erdbeben/teil1.tex341
1 files changed, 172 insertions, 169 deletions
diff --git a/buch/papers/erdbeben/teil1.tex b/buch/papers/erdbeben/teil1.tex
index 014b53e..1a893dd 100644
--- a/buch/papers/erdbeben/teil1.tex
+++ b/buch/papers/erdbeben/teil1.tex
@@ -9,187 +9,213 @@
% (c) 2020 Prof Dr Andreas Müller, Hochschule Rapperswil
%%
-
-
\rhead{Kalman-Filter}
-
\section{Kalman-Filter}
-Die interessante Grösse ist also das Integral der Überlagerung zweier Kräfte.
-Wir brauchen also die zweite Ableitung der Messung, ohne deren Eigendynamik.
-Da wir die äussere Kraft nicht direkt messen können, benötigen wir ein Werkzeug, welches aus der gemessenen Position, die Krafteinwirkung auf unsere System schätzt.
-Dies ist eine typische Anwendung für das Kalman-Filter.
-
-Das Filter schätzt den Zustand eines Systems anhand von Messungen und kann den nächsten Zustand errechnen und aus dieser Schätzung auch eine erwartete Messung herleiten.
-Die für das Filter relevante Grösse ist dann nicht mehr die eigentliche Messung, sondern die Differenz aus Messung und Erwartung, da diese Differenz, die Innovation, eine Aussage über die nicht-deterministischen, externen Einflüsse auf das System ermöglicht.
-Das Filter berücksichtigt dazu nicht nur die Messung und den Zustand, sondern auch die Unsicherheiten dieser beiden Grössen, welche als Parameter in das Modell des Systems einfliessen.
-
-Unser Ziel ist es, anhand der Messung die eigentlich interessante Grösse $f$ zu bestimmen.
-Dabei wird durch eine deterministische Vorhersage, in dem der Zustand mit der Eigendynamik des Systems multipliziert wird.
-Die Idee dahinter ist, dass das Kalman-Filter die nicht-deterministische Grösse $f$ anhand der Messung und der Vorhersage zu bestimmen.
-
-Für mehrere Dimensionen (x,y,z) würde der Satz von Pythagoras für das System benötigt.
-Da sich der Pythagoras bekanntlich nicht linear verhält, kann kein lineares Kalman-Filter implementiert werden.
-Da das Kalman-Filter besonders effektiv und einfach für lineare Abläufe geeignet ist, würde eine zweidimensionale Betrachtung den Rahmen dieser Arbeit sprengen.
-Einfachheitshalber beschränken wir uns auf den linearen Fall, da dadurch die wesentlichen Punkte bereits aufgezeigt werden.
-Für ein nicht-lineares System werden Extended Kalman-Filter benötigt, bei denen die System-Matrix (A) durch die Jacobi-Matrix des System ersetzt wird.
-
-\subsection{Geschichte}
-Das Kalman-Filter wurde 1960 von Rudolf Emil Kalman entdeckt und direkt von der NASA für die Appollo Mission benutzt.
-Das Filter kommt mit wenig Rechenleistung aus und war somit dafür geeignet die Rakete bei der Navigation zu unterstützen. Eine typische Anwendungen des Kalman-Filters ist Glättung von verrauschten Daten und die Schätzung von Parametern. Dies kommt heutzutage in jedem Satellit, Navigationssystem, Smartphones und Videospielen vor.
-
-\subsection{Wahrscheinlichkeit}
-Das Kalman-Filter schätzt den wahrscheinlichsten Wert zwischen Normalverteilungen.
-Dies bedeutet, das Filter schätzt nicht nur den Mittelwert, sondern auch die Standartabweichung.
-Da Normalverteilungen dadurch vollständig definiert sind, schätzt ein Kalman-Filter die gesamte Verteilungsfunktion des Zustandes.
-In der Abbildung~\ref{erdbeben: Zwei Normalverteilungen} sind zwei Funktionen dargestellt.
-Die eine Funktion zeigt die errechnete Vorhersage des Zustands, bzw. deren Normalverteilung.
-Die andere Funktion zeigt die verrauschte Messung des nächsten Zustand, bzw. deren Normalverteilung.
-Wie man am Beispiel der Gauss-Verteilungen in Abblidung~\ref{erdbeben: Zwei Normalverteilungen} sehen kann, ist sowohl der geschätzte Zustand als auch der gemessene Zustand normalverteilt und haben dementsprechend unterschiedliche Standardabweichungen $\sigma$ und Erwartungswerte $\mu$. Dies wird in~\cite{erdbeben:aragher_understanding_2012}beschrieben.
+Im letzten Abschnitt haben wir Gleichungen für unser System gefunden.
+Als nächstes brauchen wir also ein Werkzeug,
+um aus der Messung der Position $s(t)$ den gesammten Zustand $x(t)$ zu schätzen.
+Das ist genau das, was Kalman-Filter tun: Ahand von Messungen den Zustand eines Systems schätzen.
+
+Kalman-Filter wurde 1960 von Rudolf Emil Kalman erfunden und direkt von der NASA für die Appollo Mission benutzt.
+Diese Filter kommen mit wenig Rechenleistung aus und waren somit geeignet, die Rakete bei der Navigation zu unterstützen.
+Heutige, typische Anwendungen von Kalman-Filtern sind die Glättung verrauschter Daten und die Schätzung von Parametern.
+Dies kommt heutzutage in jedem Satellit, Navigationssystem, Smartphones und Videospielen vor.
+
+Kalman-Filter funktionieren nach folgendem Zwei-Schritt-Verfahren:
+Zuerst wird,
+ausgehend von der aktuellen Schätzung des Zustands und der Eigendynamik des Systzems,
+eine Vorhersage berechnet.
+Daraus lässt sich eine erwartete Messung ableiten.
+Anschliessend wird diese Vorhersage korrigiert,
+wobei die Korrektur abhänging von der Differenz zwischen erwarteter und effektiver Messung ist.
+
+Dabei sind sowohl die Vorhersage als auch die Messung nur Schätzungen und unweigerlich fehlerbehaftet.
+Unter der Annahme, dass die Fehler normalverteilt sind,
+lassen sich beide Schätzungen zu einer neuen, optimalen Schätzung kombinieren.
+Die genaue Herleitung des Kalman-Filters ist relativ aufwendig
+und kann unter Anderem in \cite{erdbeben:skript:wrstat} nachgelesen werden.
+
+\subsection{Exkurs Wahrscheinlichkeit}
+\label{erdbeben:Wahrscheindlichkeit}
+Das Kalman-Filter schätzt also den wahrscheinlichsten Wert zwischen zwei Normalverteilungen,
+genauer gesagt zwischen einer Messung und einer Vorhersage.
+In diesem Abschnitt wollen wir auffrischen, wie dies genau passiert.
+
+Das Folgende wird in \cite{erdbeben:aragher_understanding_2012} beschrieben.
+Wir haben eine Vorhersage aus der Systemdynamik und eine Messung des Zustandes.
+Diese widersprechen sich im Allgemeinen.
+Jedoch kennen wir auch die Wahrscheinlichkeiten der beiden Aussagen.
+
\begin{figure}
\begin{center}
- \includegraphics[width=5cm]{papers/erdbeben/Gausskurve2.pdf}
- \caption{Zwei Normalerteilungen; Die eine Funktion zeigt die Vorhersage, die andere die Messung}
- \label{erdbeben: Zwei Normalverteilungen}
+ \includegraphics[width=5cm]{papers/erdbeben/Gausskurve3.pdf}
+ \caption{
+ Seien blau und orange zwei normalverteilte Schätzungen eines Zustandes, etwa eine Vorhersage und eine Messung.
+ Dann ist die rote Kurve die optimale Schätzung.
+ Sie entspricht bis auf Normierung dem Produkt von blau und orange.}
+ \label{erdbeben:Gauss3}
\end{center}
\end{figure}
-Wir haben eine Vorhersage aus der Systemdynamik und eine Messung des Zustandes.
-Diese widersprechen sich im Allgemeinen.
-Jedoch wissen wir die Wahrscheinlichkeiten der beiden Aussagen.
+Abbildung~\ref{erdbeben:Gauss3} zeigt in blau und rot zwei Normalverteilungen,
+je eine für die Vorhersage und eine für die Messung.
+Diese unterscheiden sich sowohl in ihren Mittelwerten $\mu_{1,2}$, als auch in ihren Standardabweichungen $\sigma_{1,2}$.
Um eine genauere Schätzung des Zustandes zu machen, wird nun ein Wert zwischen den beiden Verteilungen berechnet.
-Nun wird eine Eigenschaft der Normalverteilung ausgenutzt. Durch das Multiplizieren zweier Normalverteilungen entsteht eine neue Normalverteilung.
-Wir haben eine Normalverteilung der Vorhersage:
+Nun wird eine Eigenschaft der Normalverteilung ausgenutzt:
+Durch das Multiplizieren zweier Normalverteilungen entsteht eine neue Normalverteilung.
+
+Wir haben also eine Normalverteilung der Vorhersage
\[
{y_1}(x;{\mu_1},{\sigma_1})=\frac{1}{\sqrt{2\pi\sigma_1^2}}\quad e^{-\frac{(x-{\mu_1})^2}{2{\sigma_1}^2}}
\]
-und der Messung:
+und der Messung
\[
{y_2}(x;{\mu_2},{\sigma_2})=\frac{1}{\sqrt{2\pi\sigma_2^2}}\quad e^{-\frac{(x-{\mu_2})^2}{2{\sigma_2}^2}}.
\]
-Diesen werden nun multipliziert und durch deren Fläche geteilt um sie wieder zu normieren, $\odot$ beschreibt dabei die Multiplikation und die Normierung auf den Flächeninhalt eins :
+Diesen werden nun multipliziert und durch deren Fläche geteilt,
+um sie wieder zu normieren.
+$\odot$ beschreibt dabei die Multiplikation und die Normierung auf den Flächeninhalt eins:
\begin{align*}
- {y_f}(x; {\mu_f}, {\sigma_f}) = {y_1}(x;{ \mu_1},{ \sigma_1}) \odot {y_2}(x; {\mu_2}, {\sigma_2})
+ {y_f}(x; {\mu_f}, {\sigma_f})
+ &=
+ {y_1}(x;{ \mu_1},{ \sigma_1}) \odot {y_2}(x; {\mu_2}, {\sigma_2})
+ \\
&=
\frac{1}{\sqrt{2\pi\sigma_1^2}}\quad e^{-\frac{(x-{\mu_1})^2}{2{\sigma_1}^2}} \odot \frac{1}{\sqrt{2\pi\sigma_2^2}}\quad e^{-\frac{(x-{\mu_2})^2}{2{\sigma_2}^2}}
\\
&=
\frac{ \frac{1}{\sqrt{2\pi\sigma_1^2}}e^{-\frac{(x-{\mu_1})^2}{2{\sigma_1}^2}} \cdot \frac{1}{\sqrt{2\pi\sigma_2^2}}e^{-\frac{(x-{\mu_2})^2}{2{\sigma_2}^2}}}{\int {y_1} {y_2} dx}.
\end{align*}
-Diese Kombination der beiden Verteilungen resultiert wiederum in einer Normalverteilung
-mit Erwartungswert
+Die genaue Berechnung ist nicht schwierig aber aufwendig und wird hier deshalb ausgelassen.
+Nach einigem Rechnen findet man die Ausdrücke
\[ \mu_f = \frac{\mu_1\sigma_2^2 + \mu_2 \sigma_1^2}{\sigma_1^2 + \sigma_2^2} \]
-und Varianz
+für den neuen Mittelwert und
\[
\sigma_f^2 = \frac{\sigma_1^2 \sigma_2^2}{\sigma_1^2 + \sigma_2^2}.
\]
-Dadurch gleicht sich die neue Kurve den anderen an. Interessant daran ist, dass die fusionierte Kurve sich der genauere Normal-Verteilung anpasst.
-Ist ${\sigma_2}$ klein und ${\sigma_1}$ gross, so wird sich die fusionierte Kurve näher an ${y_2}(x;{\mu_2},{\sigma_2})$ begeben.
-Somit ist $\mu_f$ ist das gewichtete Mittel der beiden $\mu_{1,2}$, und die Varianzen sind die Gewichte!
-Die neue Funktion ist die best mögliche Schätzung für zwei Verteilungen, welche den selben Zustand beschreiben.
-Dies ist in der Abbildung~\ref{erdbeben:Gauss3} anhand der rote Funktion ersichtlich.
-\begin{figure}
- \begin{center}
- \includegraphics[width=5cm]{papers/erdbeben/Gausskurve3.pdf}
- \caption{Durch das Multiplizieren der blauen und der orangen Verteilung entsteht die die rote, optimale Funktion}
- \label{erdbeben:Gauss3}
- \end{center}
-\end{figure}
+für die Varianz.
+
+Interessant daran ist, dass sich die fusionierte Kurve der genauere Normal-Verteilung anpasst.
+Ist ${\sigma_2}$ klein und ${\sigma_1}$ gross,
+so wird sich die fusionierte Kurve näher an ${y_2}(x;{\mu_2},{\sigma_2})$ begeben.
+$\mu_f$ ist das gewichtete Mittel der beiden $\mu_{1,2}$, und die Varianzen $\sigma_{1,2}$ sind die Gewichte.
+Das Interessante an $\mu_{f}$ ist, dass ${\mu_2}$ das Gewicht für ${\sigma_1}$ ist.
+Somit ist die Unsicherheit der Messung das Gewicht der Vorhersage und umgekehrt.
+Diese neue Funktion ist die best mögliche Schätzung für zwei Verteilungen, welche den selben Zustand beschreiben.
+Dies ist in der Abbildung~\ref{erdbeben:Gauss3} anhand der roten Funktion ersichtlich.
+
Was in zwei Dimensionen erklärt wurde, funktioniert auch in mehreren Dimensionen.
Dieses Prinzip mach sich das Kalman Filter zu nutze, und wird von uns für die Erdbeben Berechnung genutzt.
-\section{Filter-Matrizen}
-Da wir nun ein Werkzeug besitzen, dass die Beschleunigung, welche auf das Gehäuse wirkt, ermitteln kann, wird dieses nun Schritt für Schritt erklärt.
-Um den Kalman Filter zu starten, müssen gewisse Bedingungen definiert werden.
+\subsection{Filter-Matrizen}
+Da wir nun ein Werkzeug besitzen, dass die Beschleunigung, welche auf das Gehäuse wirkt, ermitteln kann,
+wird dieses nun Schritt für Schritt erklärt.
+Um das Kalman Filter zu starten, müssen gewisse Bedingungen definiert werden.
In diesem Abschnitt werden die einzelnen Parameter und Matrizen erklärt und erläutert, wofür sie nützlich sind.
-\subsection{Fiter-Agorithmus}
-Nachdem alle Parameter aufgestellt sind, wird das Filter initialisiert.
-Zuerst wird der nächste Zustand der Masse vorhergesagt, danach wird die Messung präzisiert und laufend aktualisiert.
-Das Filter berechnet aufgrund der aktuellen Schätzung eine Vorhersage.
-Diese wird, sobald verfügbar, mit der Messung verglichen.
-Aus dieser Differenz und den Unsicherheiten des Prozesses ($Q$) und der Messung ($R$) wird der wahrscheinlichste, neue Zustand geschätzt.
-Dabei muss genau auf den Index geachtet werden. Nach dem Artikel~\cite{erdbeben:wikipedia} ist die Indexierung so genormt:
-Der Zeitschritt wird mit $k$ definiert, $k-1$ ist somit ein Zeitschritt vor $k$.
-Auf der linken Seite von | wird der aktuelle Zustand verlangt, bzw. ausgegeben, auf der rechten Seiten den bisherigen Zustand.
-Dies bedeutet, dass die Notation $x_{n|m}$ die Schätzung von $x$ zum Zeitpunkt $n$ bis und mit zur Zeitpunkt $m \leq \ n$ präsentiert.
+Dabei muss genau auf den Index geachtet werden.
+Wir verwenden die Standard-Notation, wie sie auch im Artikel~\cite{erdbeben:wikipedia} zu finden ist.
+Sie ist an die Notation der bedingten Wahrscheinlichkeiten angelehnt.
+Hierbei steht der betrachtete Zeitschritt links und der gegenwärtige rechts eines Vertikalstrichs.
+Dies bedeutet, dass die Notation $x_{n|m}$ die Schätzung von $x$ zum Zeitpunkt $n$
+aufgrund des Wissens bis zum und mit dem Zeitpunkt $m$ repräsentiert.
\subsubsection*{Vorhersage}
-Im Filterschritt Vorhersage wird der nächste Zustand anhand des Anfangszustand und der Systemmatrix berechnet.
-Dies funktioniert mit dem Rechenschritt:
+Im Filterschritt Vorhersage wird anhand des aktuellen Zustands und der Systemmatrix eine Schätzung für den nächsten Zustand berechnet.
+Die Systemmatrix $A$ aus Gleichung~\eqref{erdbeben:systemmatrix} beschreibt ein kontinuierliches System $\dot x = Ax$.
+Wir benötigen jedoch ein Zeit-diskretes System $x_{k+1} = \Phi x_k$.
+
+Die Exponentialfunktion $\exp(At)$ beschreibt die Entwicklung eine Zustandes im Laufe der Zeit.
+Die Übergangs-Matrix $\Phi$ erhalten wir folglich aus der Systemdynamikmatrix $A$ durch die Exponentialfunktion
+\[\Phi = \exp(A\Delta t). \]
+Die Matrix $\Phi$ beschreibt die Übergänge zwischen zeitlich aufeinanderfolgenden Zuständen $x_{k-1}$ und $x_{k}$ anhand folgender Gleichung:
\[
{x_{k|k-1}}=\Phi{x_{k-1|k-1}}= \exp(A\Delta t){x_{k-1|k-1}}.
\]
-Die Kovarianz $P_{k|k-1}$ wird ebenfalls neu berechnet. Zudem kommt noch die Prozessunsicherheit $Q$ dazu, so dass die Unsicherheit des Anfangsfehlers $P$ laufend verändert.
-Dies funktioniert durch multiplizieren der Systemmatrix mit dem aktualisierten Anfangsfehler.
-Dazu wird noch die Prozessunsicherheit addiert, somit entsteht die Gleichung
+Damit haben wir die Systemdynamik nun in der für unser Kalman-Filter notwendigen Form und können Vorhersagen berechnen.
+
+Als nächstes benötigen wir die Unsicherheit der Vorhersage.
+Im Abschnitt ~\ref{erdbeben:Wahrscheindlichkeit} haben wir dafür die Varianzen der Normalverteilungen verwendet.
+Im mehrdimensionalen Fall übernimmt dies die Kovarinanzmatrix $P$.
+Sie wird in jedem Schritt aktualisiert.
+Hinzu kommt die Prozessunsicherheit $Q$, welche als Parameter in unser Modell einfliesst.
+$Q$ beschreibt Unsicherheiten im Modell,
+wie etwa unsere Annahme, dass die Kraft sich nicht ändert,
+aber auch nicht-modellierbare Einflüsse wie Vibrationen.
+$P$ wird dabei laufend aktuallisiert.
+Die optimale Gleichung lautet
\[
{P_{k|k-1}}=\Phi {P_{k-1|k-1}} {\Phi _{k}}^T + {Q_{k-1}}.
\]
-Es vergeht genau $\Delta t$ Zeit, und dieser Vorgang wird wiederholt.
-Das hochgestellte T bezeichnet die transponierte Matrix.
-Dabei wird in den späteren Schritten überprüft, wie genau die letzte Anpassung von $P$ zur Messung stimmt.
-Ist der Unterschied klein, wird die Kovarianz $P$ kleiner, ist der Unterschied gross, wird auch die Kovarianz grösser.
+Es vergeht genau $\Delta t$ Zeit, und dieser Vorgang wird wiederholt.
Das Filter passt sich selber an und korrigiert sich bei grosser Abweichung.
\subsubsection*{Messen}
-Der Sensor wurde noch nicht benutz, doch genau der liefert Werte für das Filter.
-Die aktuellen Messwerte $z$ werden die Innovation $w$ mit dem Zustandsvektor $x$ und der Messmatrix $H$ zusammengerechnet.
-Hier bei wird lediglich die Messung mit dem Fehler behaftet, und die Messmatrix $H$ mit der Vorhersage multipliziert.
+Der Sensor wurde noch nicht benutz, doch genau der liefert die Messwerte $z_k$ für unser Filter.
+Aus der Vorhersage des Zustandes $x_{k|k-1}$ und der Messmatrix $H$ erhalten wird eine Vorhersage der Messung.
+Die Innovation
\[
-{w_{k}}={z_{k}}-{H}{x_{k|k-1}}.
+{w_{k}}={z_{k}}-{H}{x_{k|k-1}}
\]
-Die Innovation ist der Teil der Messung, die nicht durch die Systemdynamik erklärt werden kann.
-Die Hilfsgröße Innovation beschreibt, wie genau die Vorhersage den aktuellen Messwert mittels der Systemmatrix $\Phi$ beschreiben kann.
+beschreibt, wie genau die Vorhersage $x_{k|k-1}$ zur aktuellen Messung $z_k$ passt.
+Die Innovation ist also derjenige Teil der Messung, der nicht im Modell erfasst ist.
+Dies leuchtet ein, eine Innovation von $0$ bedeutet, dass die Messung nichts Neues hervorbrachte.
Für eine schlechte Vorhersage wird die dazugehörige Innovation gross, für eine genaue Vorhersage dagegen klein sein.
-Entsprechende Korrekturen müssen dann gross bzw. nur gering ausfallen.
-Innovation = Messung - Vorhersage. Dies leuchtet ein, eine Innovation von 0 bedeutet, dass die Messung nichts Neues hervorbrachte.
-
-Im nächsten Schritt wir analysiert, mit welcher Kovarianz weiter gerechnet wird.
-Hierbei wird die Unsicherheit $P$, die Messmatrix $H$ und die Messunsicherheit $R$ miteinander verrechnet.
-\[
-{S_{k}}={H}{P_{k|k-1}}{H}^T+{R_{k}}
-\]
+Entsprechende Korrekturen werden dann gross bzw. nur gering ausfallen.
\subsubsection*{Aktualisieren}
-Im nächsten Schritt kommt nun die Wahrscheinlichkeit dazu.
-\[{K_{k}}= {P_{k|k-1}} {H^T}{S_{k}^{-1}}\]
-Die Grösse $K$ wird Kalman-Gain genannt.
-Das Kalman-Gain gibt dem Zustand die Gewichtung, bzw. wie die Vorhersage auf den Zustand passt.
-Vereinfacht gesagt: Es wird das das Verhältnis zwischen der Unsicherheit der Vorhersage $P_k$ zu der zugehörigen Messunsicherheit $R_k$ gebildet.
-In unserem Fall wird werden die Elemente der Kalman-Matrix vorweg berechnet, da das Kalman-Gain ohne Messungen auskommt.
-
-Anhand der Informationen aus der Innovation wird das Kalman-Gain $K$ gebildet. Dabei beschreibt das Kalman-Gain die Wirkung der Innovation auf den geschätzten Zustand. So wird das System aktualisiert.
+
+Für eine optimale Schätzung des Zustandes muss die Vorhersage entsprechend der Innovation korrigiert werden.
+In der Literatur findet man für eine optimales Korrektur die Gleichungen
+\begin{align*}
+{S_{k}} &={H}{P_{k|k-1}}{H}^T+{R_{k}}
+\\
+{K_{k}} &= {P_{k|k-1}} {H^T}{S_{k}^{-1}}
+\end{align*}
+Dabei ist $K$ das Kalman-Gain.
+$K$ beschreibt, wie die Vorhersage korrigiert werden muss.
+Die optimale Schätzung des neuen Zustandes wird dann zu
\[
-{x_{k|k}}={x_{k|k-1}}+{K_{k}}{w_{k}}
+{x_{k|k}}={x_{k|k-1}}+{K_{k}}{w_{k}}.
\]
-Dabei wird der Unterschied zwischen dem erwarteten, errechneten, Zustand und dem gemessenen Zustand berechnet.
-
-Dazu kommt eine neue Kovarianz für den nächste Vorhersageschritt:
+Dazu kommt eine neue Kovarianz $P$ für den nächste Vorhersageschritt:
\[
-{P_{k|k}}=(I-{K_{k}}{H}){P_{k|k-1}}
+{P_{k|k}}=(I-{K_{k}}{H}){P_{k|k-1}}.
\]
-Der ganze Algorithmus und beginnt wieder mit der Vorhersage
+Der ganze Algorithmus ist nun vollständig und beginnt wieder mit der Vorhersage
\[
-{x_{k|k-1}}=\Phi{x_{k-1|k-1}}= \exp(A\Delta t){x_{k|k-1}}.
+{x_{k+1|k}}=\Phi{x_{k|k}}= \exp(A\Delta t){x_{k|k}}.
\]
-\subsection{Anfangsbedingungen}
+\subsection{Parameter und Anfangsbedingungen}
+Die Grössen $P$, $Q$, $R$ und $\Phi$ können grundsätzlich in jedem Zeitschritt ändern.
+Für die meisten Anwendungen sind sie jedoch konstant und fliessen als Parameter ins Modell ein.
+Aufgrund der iterativen Arbeitsweise von Kalman-Filtern benötigen wir zudem ein paar Anfangswerte.
+
\subsubsection*{Anfangszustand $x$}
-Das Filter benötigt eine Anfangsbedingung.
+Für die erste Vorhersage benötigt das Filter einen Anfangszustand.
In unserem Fall ist es die Ruhelage, die Masse bewegt sich nicht.
Zudem erfährt die Apparatur keine äussere Kraft.
\[ {x_0 }= \left( \begin{array}{c} {s_0}\\ {v_0}\\{f_0}\end{array}\right) = \left( \begin{array}{c} 0\\ 0\\ 0\end{array}\right) \]
+\subsubsection*{Systemmatrix $A$ und $\Phi$}
+Für unseren Seismographen haben wir die entsprechende Matrixdarstellung
+in Gleichung~\eqref{erdbeben:systemmatrix} bereits gefunden.
+Zudem haben wir weiter oben bereits beschrieben,
+wie wir mittels Exponentialfunktion zu einer zeitdiskreten Beschreibung für das Kalman-Filter kommen.
+Es gilt
+\[ \Phi = \exp(A \Delta t) .\]
+
\subsubsection*{Anfangsfehler / Kovarianzmatrix $P$}
-Da auch der Anfangszustand fehlerhaft sein kann, wird für das Filter ein Anfangsfehler verwendet.
+Da auch der Anfangszustand fehlerhaft sein kann, wird für das Filter eine Anfangsunsicherheit verwendet.
Auf der Diagonalen werden die Varianzen eingesetzt, in den restlichen Felder stehen die Kovarianzen.
-Zur Erinnerung: Die Varianz ist ein Mass für die Streuung eines Wertes, die Kovarianz hingegen beschreibt die Abhängigkeit der Streuungen zweier Werte.
-
-Kovarianz: Cov(x, y) und Varianz: Var(x) = Cov(x, x)
+Für einen gut bekannten Zustandsvektor können kleine Werte eingesetzt werden, für ungenaue Anfangsbedingungen sollten grosse Werte verwendet werden.
+Grosse Werte ermöglichen dem Filter sich schnell einzupendeln.
In unserem Fall ist der Anfangszustand gut bekannt.
-Wir gehen davon aus, dass das System in Ruhe und in Abwesenheit eines Erdbeben startet, somit kann die Matrix mit Nullen bestückt werden.
-Als Initialwert für die Kovarianzmatrix ergibt sich
+Wir gehen davon aus,
+dass das System in Ruhe und in Abwesenheit eines Erdbeben startet.
+Somit kann die Matrix mit Nullen bestückt werden und wir starten mit
\[
{P_0 }=
\left(
@@ -200,35 +226,13 @@ Als Initialwert für die Kovarianzmatrix ergibt sich
\end{array}
\right).
\]
-Diese Matrix beschreibt die Unsicherheit des geschätzten Zustandes und wird sowohl für die Vorhersage als auch die Korrektur benötigt.
-Sie wird nach jeder Schätzung aktualisiert.
-Für einen gut bekannten Zustandsvektor können kleine Werte eingesetzt werden, für ungenaue Anfangsbedingungen sollten grosse Werte verwendet werden.
-Grosse Werte ermöglichen dem Filter sich schnell einzupendeln.
-\subsubsection*{Dynamikmatrix $A$}
-Das Kalman-Filter benötigt für die Vorhersage des nächsten Zustandes eine Beschreibung der Systemdynamik.
-Die Dynamikmatrix bildet den Kern des Filters. Diese wurde weiter oben bereits beschrieben.
-Dabei wollen wird die äussere Kraft des Systems ermitteln.
-Da nichts über die äussere Kraft bekannt ist, müssen wir annehmen das deren Ableitung 0 ist.
-Die System-Matrix lautet daher:
-\[
-A = \left(
- \begin{array}{ccc}
-0 & 1& 0 \\
-- \frac{D}{m} &-\frac{2k}{m} & \frac{1} {m}\\
-0 & 0& 0\\
-\end{array}\right)
- \]
-Dabei soll der Kalman-Filter in diskreten Zeitschritten $\Delta t$ arbeiten.
-$A$ beschreibt ein kontinuierliches System ($\dot x = Ax$), wir benötigen jedoch ein Zeit-diskretes System $x_{k+1} = \Phi x_k$.
-Die Übergangs-Matrix erhalten wir aus der Systemdynamikmatrix mittels Exponentialfunktion:
-\[\Phi = \exp(A\Delta t). \]
-Die Matrix $\Phi$ beschreibt die Übergänge zwischen zeitlich aufeinanderfolgenden Zuständen $x_{k-1}$ und $x_{k}$
\subsubsection*{Prozessrauschkovarianzmatrix $Q$}
Die Prozessrauschmatrix teilt dem Filter mit, wie sich der Prozess verändert.
Die Matrix $Q$ beschreibt die Unsicherheit, die der Prozess mit sich bringt.
-Bei unserem Modell könnte das beispielsweise ein Windstoss an die Masse sein oder auch die Ungenauigkeiten im Modell, wie die Annahme das dich die Kraft nicht ändert.
+Bei unserem Modell könnte das beispielsweise ein Windstoss an die Masse sein
+oder auch Ungenauigkeiten im Modell, wie die Annahme, dass sich die Kraft nicht ändert.
Für uns wäre dies:
\[
Q = \left(
@@ -241,9 +245,9 @@ Q = \left(
Die Standabweichungen müssten statistisch ermittelt werden, da der Fehler nicht vom Sensor kommt und somit nicht vom Hersteller gegeben ist.
\subsubsection*{Messmatrix $H$}
-Die Messmatrix gibt an, welche Parameter gemessen werden.
-$H$ ist die Matrix für die Vorhersage der Messung.
-In unserem Falle ist es die Position der Massen.
+Die Messmatrix gibt an, welche Zustände gemessen werden.
+$H$ ist die Matrix, welche aus der Vorhersage des Zustand eine Vorhersage der Messung erzeugt.
+In unserem Falle messen wir nur die Position der Massen und verwenden deshalb
\[
H = (1, 0, 0)
\]
@@ -252,49 +256,48 @@ H = (1, 0, 0)
Die Messrauschkovarianzmatrix beinhaltet, wie der Name schon sagt, das Rauschen der Messung.
In unserem Fall wird nur die Position der Masse gemessen. Da wir keine anderen Sensoren haben ist $R$ lediglich:
\[
-R= ({\sigma_\mathrm{sensor}}^2).
+R= (\sigma_\mathrm{sensor}^2).
\]
Diese Messrauchen wird meistens vom Sensorhersteller angegeben.
-Für unsere theoretische Apparatur wird hier ein kleiner Fehler eingesetzt da heutige Sensoren sehr genau messen können.
+Für unsere theoretische Apparatur wird hier ein kleiner Fehler eingesetzt,
+da heutige Sensoren sehr genau messen können.
+\clearpage
\subsection{Zusammenfassung }
-Zusammenfassend kann das Kalman-Filter in offizieller Typus dargestellt werden.
-Dabei beginnt das Filter mit dem Anfangszustand für $k=0$
-
-1. Nächster Zustand vorhersagen
+Das Filter beginnt mit dem Anfangszustand für $k=0$.
+Anschliessend werden folgende Schritte iterativ ausgeführt:
+\begin{enumerate}
+\item Nächster Zustand vorhersagen
\[
-{x_{k|k-1}}=\Phi{x_{k-1|k-1}}= \exp(A\Delta t){x_{k-1|k-1}}.
+{x_{k|k-1}}=\Phi{x_{k-1|k-1}}= \exp(A\Delta t){x_{k-1|k-1}}
\]
-2. Nächste Fehlerkovarianz vorhersagen
+ \item Nächste Fehlerkovarianz vorhersagen
\[
-{P_{k|k-1}}=\Phi {P_{k-1|k-1}} {\Phi _{k}}^T + {Q_{k-1}}.
+{P_{k|k-1}}=\Phi {P_{k-1|k-1}} {\Phi _{k}}^T + {Q_{k-1}}
\]
-3. Zustand wird gemessen
+\item Innovation (= Messung - Vorhersage)
\[
-{w_{k}}={z_{k}}-{H}{x_{k|k-1}}.
+{w_{k}}={z_{k}}-{H}{x_{k|k-1}}
\]
-4. Innovation (= Messung - Vorhersage)
-\[
-{S_{k}}={H}{P_{k|k-1}}{H}^T+{R_{k}}
-\]
-
-5. Das Kalman Filter anwenden
-\[
-{K_{k}}= {P_{k|k-1}} {H^T}{S_{k}^{-1}}
-\]
+\item Optimales Kalman-Gain berechnen
+\begin{align*}
+{S_{k}} &={H}{P_{k|k-1}}{H}^T+{R_{k}}\\
+{K_{k}} &= {P_{k|k-1}} {H^T}{S_{k}^{-1}}
+\end{align*}
-6. Schätzung aktualisieren
+\item Schätzung aktualisieren
\[
{x_{k|k}}={x_{k|k-1}}+{K_{k}}{w_{k}}
\]
-7. Fehlerkovarianz aktualisieren
+\item Fehlerkovarianz aktualisieren
\[
{P_{k|k}}=(I-{K_{k}}{H}){P_{k|k-1}}
\]
-8. Die Outputs von $k$ werden die Inputs für ${k-1}$ und werden wieder im Schritt 1 verwendet
+\end{enumerate}
+Die Outputs von $k$ werden die Inputs für ${k+1}$ und werden wieder in Schritt 1 verwendet.