Inertial Sensor Fusion - Exam.pdf

Inertial Sensor Fusion - Exam
Inertial Sensor Fusion - Exam Aufgabe 1) Du bist Teil eines Teams, das einen Algorithmus zur Sensorfusion entwickelt. Deine Aufgabe ist es, mehrere Inertialsensoren zu kombinieren, um präzise Bewegungsdaten für eine Drohne zu erhalten. Die Drohne ist mit einem Beschleunigungssensor, einem Gyroskop und einem Magnetometer ausgestattet. Dein Ziel ist es, die Bewegungs- und Positionsdaten der Drohne m...

© StudySmarter 2024, all rights reserved.

Inertial Sensor Fusion - Exam

Aufgabe 1)

Du bist Teil eines Teams, das einen Algorithmus zur Sensorfusion entwickelt. Deine Aufgabe ist es, mehrere Inertialsensoren zu kombinieren, um präzise Bewegungsdaten für eine Drohne zu erhalten. Die Drohne ist mit einem Beschleunigungssensor, einem Gyroskop und einem Magnetometer ausgestattet. Dein Ziel ist es, die Bewegungs- und Positionsdaten der Drohne möglichst genau zu ermitteln und eine robuste Sensorfusion durchzuführen.

a)

Beschreibe detailliert die Funktionsweise eines Beschleunigungssensors, eines Gyroskops und eines Magnetometers in Bezug auf die Drohnenanwendung. Erkläre auch, wie diese Sensoren einzeln genutzt werden können, um die Bewegungs- und Positionsdaten der Drohne zu bestimmen.

Lösung:

  • Beschleunigungssensor: Ein Beschleunigungssensor misst die lineare Beschleunigung entlang mehrerer Achsen, typischerweise entlang der x-, y- und z-Achse. In einer Drohnenanwendung erfasst der Beschleunigungssensor die Änderungen der Geschwindigkeit der Drohne und kann somit Informationen über die Momentanbeschleunigung und die Richtung geben.
    • Funktionsweise: Der Sensor besteht aus mikromechanischen Strukturen, die durch die Trägheit der Masse bei Beschleunigung bewegt werden. Diese Bewegung wird in elektrische Signale umgewandelt, die dann verarbeitet werden können.
    • Nutzung: Mit den Daten eines Beschleunigungssensors kann man die momentan wirkenden Kräfte auf die Drohne analysieren und ihre Bewegung in Relation zur Erdanziehungskraft berechnen. Dies ermöglicht die Bestimmung der aktuellen Geschwindigkeit und Positionsänderungen über die Zeit.
  • Gyroskop: Ein Gyroskop misst die Winkelgeschwindigkeit, also die Geschwindigkeit, mit der sich die Drohne um ihre Achsen dreht (Roll-, Nick-, und Gierachse). Diese Informationen sind entscheidend für die Stabilisierung und Steuerung der Drohne.
    • Funktionsweise: Moderne Gyroskope verwenden das Coriolis-Prinzip. Sie haben oszillierende Strukturen, deren Bewegung durch Drehungen beeinflusst wird. Die resultierenden Kräfte werden in elektrische Signale umgewandelt.
    • Nutzung: Die Winkelgeschwindigkeitsdaten helfen dabei, die Ausrichtung der Drohne zu verfolgen. Dies ist besonders wichtig für die Stabilisierung, um die Drohne in einer bestimmten Position oder Flugbahn zu halten.
  • Magnetometer: Ein Magnetometer misst das Magnetfeld der Erde entlang der drei Raumachsen und wird oft verwendet, um die absolute Orientierung relativ zum Erdmagnetfeld zu ermitteln.
    • Funktionsweise: Der Sensor besteht aus Materialien, deren Eigenschaften sich unter Einfluss des Magnetfeldes ändern. Diese Änderungen werden in elektrische Signale umgewandelt.
    • Nutzung: Ein Magnetometer kann die Ausrichtung der Drohne relativ zu den magnetischen Himmelsrichtungen bestimmen. Zusammen mit den Daten des Gyroskops hilft es, die genaue Orientierung der Drohne zu ermitteln.
  • Kombination der Sensoren:Durch die Fusion der Daten aus Beschleunigungssensor, Gyroskop und Magnetometer kann eine präzise Bestimmung der Bewegung und Position der Drohne erreicht werden.
    • Kalman-Filter: Diese Algorithmen können genutzt werden, um die Messungen der verschiedenen Sensoren zu kombinieren und Rauschen zu reduzieren, was zu einer genaueren Bestimmung der Bewegungsdaten führt.
    • Dead Reckoning: Durch die Integration von Beschleunigungs- und Gyroskopdaten über die Zeit kann der Bewegungsweg der Drohne auch zwischen den Magnetometer-Messungen aufrechterhalten werden.

b)

Angenommen, der Beschleunigungssensor liefert die Beschleunigungsdaten \(a_x, a_y, a_z\), das Gyroskop die Winkelgeschwindigkeiten \(\omega_x, \omega_y, \omega_z\) und das Magnetometer die Messungen des Magnetfelds \(B_x, B_y, B_z\). Schreibe die mathematischen Gleichungen auf, die erforderlich sind, um die lineare Beschleunigung und die Winkelgeschwindigkeit zu berechnen. Erkläre den Zusammenhang zwischen diesen Größen und der tatsächlichen Bewegung der Drohne.

Lösung:

  • Mathematische Gleichungen:
    • Lineare Beschleunigung: Die lineare Beschleunigung der Drohne kann direkt aus den Beschleunigungsdaten \(a_x, a_y, a_z\) des Beschleunigungssensors abgelesen werden. Die Gleichungen für die Beschleunigungen entlang der drei Achsen lauten:
      • x-Achse: \[ a_x \]
      • y-Achse: \[ a_y \]
      • z-Achse: \[ a_z \]
    • Winkelgeschwindigkeit: Die Winkelgeschwindigkeiten der Drohne können direkt aus den Winkelgeschwindigkeiten des Gyroskops \( \omega_x, \omega_y, \omega_z \) ermittelt werden. Die Gleichungen für die Winkelgeschwindigkeiten um die drei Achsen lauten:
      • Rollbewegung um die x-Achse: \[ \omega_x \]
      • Nickbewegung um die y-Achse: \[ \omega_y \]
      • Gierbewegung um die z-Achse: \[ \omega_z \]
    • Magnetfeldmessungen: Die Magnetometer-Messungen \( B_x, B_y, B_z \) können verwendet werden, um die absolute Orientierung der Drohne relativ zum Erdmagnetfeld zu bestimmen. Die Messungen sind:
      • x-Achse: \[ B_x \]
      • y-Achse: \[ B_y \]
      • z-Achse: \[ B_z \]
  • Zusammenhang zwischen diesen Größen und der tatsächlichen Bewegung der Drohne: Die Kombination der Daten der verschiedenen Sensoren erlaubt eine präzise Bestimmung der Bewegung und Position der Drohne:
    • Beschleunigungsdaten: Die Beschleunigungsdaten \( a_x, a_y, a_z \) liefern Informationen über die linearen Kräfte, die auf die Drohne entlang der jeweiligen Achsen wirken. Diese können durch zweimalige Integration über die Zeit zu Geschwindigkeit und Position führen, wobei die anfänglichen Bedingungen bekannt sein müssen.
    • Winkelgeschwindigkeiten: Die Winkelgeschwindigkeiten \( \omega_x, \omega_y, \omega_z \) geben an, wie schnell sich die Drohne um ihre drei Achsen dreht. Durch Integration dieser Winkelgeschwindigkeiten kann man die aktuelle Orientierung der Drohne bestimmen. Hierbei verwendet man häufig Euler-Winkel oder Quaternionen, um die Änderungen in der Orientierung zu berechnen.
    • Magnetfeldmessungen: Die Magnetometer-Daten \( B_x, B_y, B_z \) liefern Informationen über die absolute Richtung der Drohne relativ zum Erdmagnetfeld. Diese Daten können verwendet werden, um die Orientierung zu kalibrieren, die durch die Integration der Gyroskopdaten möglicherweise driftet.
    • Sensorfusion: Die Daten aller Sensoren werden in einem Algorithmus zur Sensorfusion, wie beispielsweise dem Kalman-Filter, kombiniert, um die genauesten Bewegungsdaten zu erhalten.
      • Die Beschleunigungs- und Gyroskopdaten liefern eine kontinuierliche Schätzung der Drohnenbewegung und -position.
      • Die Magnetometer-Daten helfen dabei, absolute Bezugspunkte für die Orientierung zu liefern und Drift zu korrigieren.
      Diese Sensorfusion ermöglicht es, eine detaillierte und präzise Beschreibung der Position und Ausrichtung der Drohne zu erhalten, was für ihre Steuerung und Stabilität entscheidend ist.

c)

Beschreibe die Vorteile der Sensorfusion in diesem Kontext und erläutere einen möglichen Algorithmus oder Filter (z.B. den Kalman-Filter), den Du verwenden könntest, um die Sensordaten zu fusionieren. Gehe dabei auf die Funktionsweise des Filters ein und erläutere die einzelnen Schritte des Algorithmus gründlich.

Lösung:

  • Vorteile der Sensorfusion in diesem Kontext:
    • Genaue Bewegungs- und Positionsbestimmung: Durch die Kombination der Daten aus verschiedenen Sensoren können präzisere Informationen über die Bewegung und Position der Drohne erzielt werden. Jeder Sensor für sich genommen hat seine eigenen Stärken und Schwächen, doch durch die sensorbasierte Fusion können die einzelnen Nachteile kompensiert werden.
      • Zum Beispiel können Gyroskope Driftfehler aufweisen, welche durch die absoluten Orientierungsdaten des Magnetometers korrigiert werden können.
      • Ein Beschleunigungssensor kann hohe Frequenzen und kleine Bewegungen gut erfassen, während er andererseits durch niedrige Frequenzen und konstante Bewegungen Schwierigkeiten haben könnte.
    • Robustheit und Zuverlässigkeit: Sensorfusion erhöht die Robustheit des Systems gegenüber Ausfällen eines einzelnen Sensors. Falls ein Sensor ausfällt oder ungenaue Daten liefert, können die anderen Sensoren weiterhin zuverlässige Informationen liefern.
    • Rauschunterdrückung: Durch die Kombination der Daten können Rauschkomponenten reduziert werden. Dies führt zu saubereren und stabileren Signalen und somit zu genaueren Auswertungen.
    • Stabilisierung und Navigation: Präzise Bewegungs- und Positionsdaten sind für die Stabilisierung und Navigation der Drohne entscheidend. Ein stabilisierter Flug erhöht die Effizienz und Sicherheit.
  • Möglicher Algorithmus: Der Kalman-Filter Der Kalman-Filter ist ein effizienter rekursiver Algorithmus zur Schätzung des Zustands eines dynamischen Systems aus einer Reihe von unvollständigen und verrauschten Messungen. In der Sensorfusion für Drohnen wird der Kalman-Filter oft verwendet, um die Bewegungsdaten zu filtern und zu kombinieren. Funktionsweise des Kalman-Filters: Der Kalman-Filter besteht aus zwei Hauptschritten: Vorhersage und Aktualisierung.
    • Vorhersageschritt: Dies ist der Schritt, in dem der Filter den zukünftigen Zustand des Systems basierend auf dem aktuellen Zustand und dem Modell des Systems vorhersagt.
      • Zustandsschätzung: \( \hat{x}_{k|k-1} = F_k \hat{x}_{k-1|k-1} + B_k u_k \)
      • Kovarianzmatrix: \( P_{k|k-1} = F_k P_{k-1|k-1} F_k^T + Q_k \)
    • Aktualisierungsschritt: Dies ist der Schritt, in dem der Filter die Messungen verwendet, um die Vorhersage zu korrigieren.
      • Kalman-Verstärkung: \( K_k = P_{k|k-1} H_k^T (H_k P_{k|k-1} H_k^T + R_k)^{-1} \)
      • Zustandsschätzung: \( \hat{x}_{k|k} = \hat{x}_{k|k-1} + K_k (z_k - H_k \hat{x}_{k|k-1}) \)
      • Kovarianzmatrix: \( P_{k|k} = (I - K_k H_k) P_{k|k-1} \)
    • Einzelne Schritte des Kalman-Filter-Algorithmus:
      • Initialisierung: Werte für den Anfangszustand \( \hat{x}_0 \) und die Anfangs-Kovarianzmatrix \( P_0 \) festlegen.
      • Vorhersageschritt:
        • Den vorhergesagten Zustand \( \hat{x}_{k|k-1} \) berechnen.
        • Die vorhergesagte Kovarianzmatrix \( P_{k|k-1} \) berechnen.
      • Aktualisierungsschritt:
        • Kalman-Verstärkung \( K_k \) berechnen.
        • Den aktualisierten Zustandsschätzer \( \hat{x}_{k|k} \) berechnen.
        • Die aktualisierte Kovarianzmatrix \( P_{k|k} \) berechnen.
      • Wiederhole die Schritte 2 und 3 für jede neue Messung.
    • Durch diese rekursiven Schritte ermöglicht der Kalman-Filter eine kontinuierliche Schätzung der Drohnenposition und -geschwindigkeit, indem er die Unsicherheiten in den Messungen und den Modellvorhersagen berücksichtigt und minimiert. Dieser Algorithmus ist besonders nützlich in Echtzeitanwendungen wie der Steuerung und Navigation von Drohnen.

Aufgabe 2)

Du hast ein System, dessen Zustand mit einem Kalman-Filter geschätzt werden soll. Das Systemmodell ist ein lineares Zeit-invariantes Modell:

  • Systemzustand: \(\boldsymbol{x}_k\)
  • Funktionale Form der Zustandsvorhersage: \(\boldsymbol{x}_{k|k-1} = \boldsymbol{A} \boldsymbol{x}_{k-1} + \boldsymbol{B} \boldsymbol{u}_{k-1}\)
  • Messmodell: \(\boldsymbol{z}_k = \boldsymbol{H} \boldsymbol{x}_k + \boldsymbol{v}_k\)
  • Rauschkovarianzmatrizen: \(\boldsymbol{Q}\rightarrow\text{Prozessrauschkovarianz}, \boldsymbol{R}\rightarrow\text{Messrauschkovarianz}\)

a)

Leite die Kalman-Filter Update-Gleichungen für das System her. Zeige die Schritte für die Ableitungen der Gleichungen für \( \boldsymbol{K}_k \), \( \boldsymbol{x}_k \) und \( \boldsymbol{P}_k \).

Lösung:

Kalman-Filter Update-Gleichungen

Hier ist die Schritt-für-Schritt-Herleitung der Kalman-Filter Update-Gleichungen für das gegebene System:

1. Bestimmen der Kalman-Verstärkung (Kalman Gain) \boldsymbol{K}_k

Die Formel für die Kalman-Verstärkung lautet:

  • \( \boldsymbol{K}_k = \boldsymbol{P}_{k|k-1} \boldsymbol{H}^T (\boldsymbol{H} \boldsymbol{P}_{k|k-1} \boldsymbol{H}^T + \boldsymbol{R})^{-1} \)

2. Aktualisierung des Systemzustands \boldsymbol{x}_k

Die Formel zur Aktualisierung des Systemzustands unter Berücksichtigung der neuen Messung lautet:

  • \( \boldsymbol{x}_k = \boldsymbol{x}_{k|k-1} + \boldsymbol{K}_k (\boldsymbol{z}_k - \boldsymbol{H} \boldsymbol{x}_{k|k-1}) \)

3. Aktualisierung der Fehlerkovarianz \boldsymbol{P}_k

Die Formel zur Aktualisierung der Fehlerkovarianz lautet:

  • \( \boldsymbol{P}_k = (\boldsymbol{I} - \boldsymbol{K}_k \boldsymbol{H}) \boldsymbol{P}_{k|k-1} \)

Zusammenfassend sind hier alle Schritte der Kalman-Filter Update-Gleichungen:

  1. Berechnung der Kalman-Verstärkung \( \boldsymbol{K}_k \)
  2. Aktualisierung des Systemzustands \( \boldsymbol{x}_k \)
  3. Aktualisierung der Fehlerkovarianz \( \boldsymbol{P}_k \)

Diese Schritte sorgen dafür, dass der Kalman-Filter die Systemzustände basierend auf neuen Messungen kontinuierlich aktualisiert und verfeinert.

b)

Angenommen, dass \( \boldsymbol{A} \) die Identitätsmatrix ist und \( \boldsymbol{B} \) eine Nullmatrix ist, was sagt diese Annahme im physikalischen Sinne über das System aus? Berechne mit diesen Annahmen die Kalman-Filter Vorhersage- und Update-Schritte für einen beliebigen Zustand \( \boldsymbol{x}_0 \).

Lösung:

Kalman-Filter: Vorhersage- und Update-Schritte unter spezifischen Annahmen

Angenommen, dass \( \boldsymbol{A} \) die Identitätsmatrix ist und \( \boldsymbol{B} \) eine Nullmatrix ist, interpretiere folgende Annahmen im physikalischen Sinne und berechne die Vorhersage- und Update-Schritte des Kalman-Filters.

Physikalische Bedeutung der Annahmen

  • \( \boldsymbol{A} \) ist die Identitätsmatrix: Dies bedeutet, dass der aktuelle Zustand des Systems direkt identisch mit dem vorherigen Zustand ist, ohne irgendwelche Übergangsänderungen. Das System behält seinen Zustand konstant über die Zeit.
  • \( \boldsymbol{B} \) ist eine Nullmatrix: Dies impliziert, dass keine Kontrolleingaben den Zustand des Systems beeinflussen. Der Systemzustand wird nicht durch externe Eingaben verändert.

Kalman-Filter Vorhersage-Schritt (Prediction Step)

Unter diesen Annahmen wird der vorhergesagte Zustand berechnet durch:

  • \( \boldsymbol{x}_{k|k-1} = \boldsymbol{A} \boldsymbol{x}_{k-1} + \boldsymbol{B} \boldsymbol{u}_{k-1} \)

Da \( \boldsymbol{A} = \boldsymbol{I} \) und \( \boldsymbol{B} = \boldsymbol{0} \), vereinfacht sich dies zu:

  • \( \boldsymbol{x}_{k|k-1} = \boldsymbol{I} \boldsymbol{x}_{k-1} + \boldsymbol{0} \boldsymbol{u}_{k-1} = \boldsymbol{x}_{k-1} \)

Die Prädiktion der Fehlerkovarianz berechnet sich wie folgt:

  • \( \boldsymbol{P}_{k|k-1} = \boldsymbol{A} \boldsymbol{P}_{k-1} \boldsymbol{A}^T + \boldsymbol{Q} \)

Da \( \boldsymbol{A} = \boldsymbol{I} \), vereinfacht sich dies zu:

  • \( \boldsymbol{P}_{k|k-1} = \boldsymbol{I} \boldsymbol{P}_{k-1} \boldsymbol{I}^T + \boldsymbol{Q} = \boldsymbol{P}_{k-1} + \boldsymbol{Q} \)

Kalman-Filter Update-Schritt (Update Step)

  1. Kalman-Verstärkung:
    \( \boldsymbol{K}_k = \boldsymbol{P}_{k|k-1} \boldsymbol{H}^T (\boldsymbol{H} \boldsymbol{P}_{k|k-1} \boldsymbol{H}^T + \boldsymbol{R})^{-1} \)
  2. Aktualisierung des Systemzustands:
    \( \boldsymbol{x}_k = \boldsymbol{x}_{k|k-1} + \boldsymbol{K}_k (\boldsymbol{z}_k - \boldsymbol{H} \boldsymbol{x}_{k|k-1}) \)
  3. Aktualisierung der Fehlerkovarianz:
    \( \boldsymbol{P}_k = (\boldsymbol{I} - \boldsymbol{K}_k \boldsymbol{H}) \boldsymbol{P}_{k|k-1} \)

Beispielberechnung mit einem beliebigen Anfangszustand \( \boldsymbol{x}_0 \)

Angenommen, wir starten mit einem Anfangszustand \( \boldsymbol{x}_0 \) und Anfangsfehlerkovarianz \( \boldsymbol{P}_0 \).

  • Vorhersage-Schritte:\( \boldsymbol{x}_{1|0} = \boldsymbol{x}_0 \)\( \boldsymbol{P}_{1|0} = \boldsymbol{P}_0 + \boldsymbol{Q} \)
  • Update-Schritte sollen auf Daten basieren, zum Beispiel, einer wahren Messung \( \boldsymbol{z}_k \) zum Zeitpunkt k:Berechne die Kalman-Verstärkung \( \boldsymbol{K}_1 \):
    \( \boldsymbol{K}_1 = \boldsymbol{P}_{1|0} \boldsymbol{H}^T (\boldsymbol{H} \boldsymbol{P}_{1|0} \boldsymbol{H}^T + \boldsymbol{R})^{-1} \)
    Aktualisiere den Systemzustand \( \boldsymbol{x}_1 \):
    \( \boldsymbol{x}_1 = \boldsymbol{x}_{1|0} + \boldsymbol{K}_1 (\boldsymbol{z}_1 - \boldsymbol{H} \boldsymbol{x}_{1|0}) \)
    Aktualisiere die Fehlerkovarianz \( \boldsymbol{P}_1 \):
    \( \boldsymbol{P}_1 = (\boldsymbol{I} - \boldsymbol{K}_1 \boldsymbol{H}) \boldsymbol{P}_{1|0} \)

Diese Schritte werden für jedes Zeitschritt \( k \) wiederholt, wobei die vorhergesagten Zustände und Kovarianzen entsprechend aktualisiert werden.

c)

Erkläre, warum der Kalman-Filter beim Vorliegen nichtlinearer Systemgleichungen durch den Erweiterten Kalman-Filter (EKF) ersetzt werden muss. Welche Modifikationen sind notwendig, um aus einem Kalman-Filter einen EKF für ein solches nichtlineares System zu machen? Zeige explizit die Linearisation der Zustands- und Messvorhersage.

Lösung:

Erweiterter Kalman-Filter (EKF) für nichtlineare Systeme

Der Kalman-Filter geht davon aus, dass das System linear ist. Das bedeutet, dass sowohl das Systemmodell als auch das Messmodell linear sind. In der Realität sind jedoch viele Systeme nichtlinear, und daher reicht der Kalman-Filter in diesen Fällen nicht aus. Hier kommt der Erweiterte Kalman-Filter (EKF) ins Spiel.

Der EKF ist eine Erweiterung des klassischen Kalman-Filters, die für nichtlineare Systeme geeignet ist. Er basiert auf der Idee, nichtlineare Funktionen zu linearisieren und dann die Kalman-Filter Gleichungen anzuwenden.

Grund für die Notwendigkeit des EKF

Ein nichtlineares System kann durch folgende Gleichungen beschrieben werden:

  • Systemzustand: \( \boldsymbol{x}_k \)
  • Funktionale Form der Zustandsvorhersage: \( \boldsymbol{x}_{k|k-1} = f(\boldsymbol{x}_{k-1}, \boldsymbol{u}_{k-1}) \)
  • Messmodell: \( \boldsymbol{z}_k = h(\boldsymbol{x}_k) + \boldsymbol{v}_k \)

Hierbei sind \( f \) und \( h \) nichtlineare Funktionen. Der Kalman-Filter kann diese nicht verarbeiten, da er lineare Matrizen \( \boldsymbol{A} \) und \( \boldsymbol{H} \) voraussetzt.

Modifikationen für den EKF

Um den Kalman-Filter für nichtlineare Systeme anzupassen, sind folgende Modifikationen notwendig:

  1. Linearisation der Zustands- und MessvorhersageDie nichtlinearen Funktionen müssen an jedem Zeitschritt lokal linearisiert werden. Dies geschieht durch die Berechnung der Jacobian-Matrizen.
  2. Jacobian-MatrizenDie Jacobians von \( f \) und \( h \) sind:
  • Jacobian der Zustandsvorhersage (\( \boldsymbol{F} \)):
    \( \boldsymbol{F} = \left. \frac{\partial f}{\partial \boldsymbol{x}} \right|_{\boldsymbol{x} = \boldsymbol{x}_{k-1}, \boldsymbol{u} = \boldsymbol{u}_{k-1}} \)
  • Jacobian des Messmodells (\( \boldsymbol{H} \)):
    \( \boldsymbol{H} = \left. \frac{\partial h}{\partial \boldsymbol{x}} \right|_{\boldsymbol{x} = \boldsymbol{x}_{k|k-1}} \)

EKF-Schritte

  1. Vorhersage-Schritt:Berechne die Vorhersage des Zustandvektors und der Fehlerkovarianz:
    • \( \boldsymbol{x}_{k|k-1} = f(\boldsymbol{x}_{k-1}, \boldsymbol{u}_{k-1}) \)
    • \( \boldsymbol{P}_{k|k-1} = \boldsymbol{F}_{k-1} \boldsymbol{P}_{k-1} \boldsymbol{F}_{k-1}^T + \boldsymbol{Q} \)
  2. Update-Schritt:Berechne die Kalman-Verstärkung, aktualisiere den Zustand und die Fehlerkovarianz:
    • \( \boldsymbol{K}_k = \boldsymbol{P}_{k|k-1} \boldsymbol{H}_k^T (\boldsymbol{H}_k \boldsymbol{P}_{k|k-1} \boldsymbol{H}_k^T + \boldsymbol{R})^{-1} \)
    • \( \boldsymbol{x}_k = \boldsymbol{x}_{k|k-1} + \boldsymbol{K}_k (\boldsymbol{z}_k - h(\boldsymbol{x}_{k|k-1})) \)
    • \( \boldsymbol{P}_k = (\boldsymbol{I} - \boldsymbol{K}_k \boldsymbol{H}_k) \boldsymbol{P}_{k|k-1} \)

Durch diese Linearisation und Anwendung der Kalman-Filter Gleichungen auf die linearisierte Version des nichtlinearen Systems kann der EKF die Zustände auch in nichtlinearen Systemen schätzen.

Aufgabe 3)

Du sollst einen Partikelfilter zur Zustandsabschätzung eines mobilen Roboters implementieren. Der Roboter misst seine Position mit einem GPS-Sensor, wobei die Messungen verrauscht sind und durch probabilistische Ansätze verbessert werden müssen. Der Roboter bewegt sich in einer zweidimensionalen Ebene und seine Bewegung folgt einem nichtlinearen Modell, beschrieben durch die Zustandsvariablen \(x, y, \theta\), wobei \(x\) und \(y\) die Position und \(\theta\) die Orientierung des Roboters darstellen.

a)

Beschreibe die Grundidee des Partikelfilters und erläutere, wie er im Kontext der Zustandsabschätzung für einen mobilen Roboter verwendet wird.

Lösung:

Grundidee des Partikelfilters:Ein Partikelfilter ist ein sequentielles Monte-Carlo-Verfahren, das zur Zustandsabschätzung in stochastischen Systemen verwendet wird. Es basiert auf der Idee, dass der Zustand eines Systems durch eine Menge von Partikeln repräsentiert wird, die jeweils einen möglichen Zustand des Systems darstellt. Diese Partikel werden zufällig initialisiert und im Laufe der Zeit basierend auf dem Bewegungsmodell des Systems und den eingehenden Messungen aktualisiert.

  • Jeder Partikel hat ein Gewicht, das seine Wahrscheinlichkeit repräsentiert.
  • Die Partikel werden anhand der Messungen neu gewichtet.
  • Die Partikel mit höheren Gewichten haben eine höhere Wahrscheinlichkeit, beibehalten zu werden, während Partikel mit geringeren Gewichten eher entfernt werden.
  • Durch Resampling werden neue Partikel generiert, um die besten Schätzungen beizubehalten und die schlechten zu eliminieren.
Verwendung des Partikelfilters zur Zustandsabschätzung für einen mobilen Roboter:Im Kontext der Zustandsabschätzung für einen mobilen Roboter, der sich in einer zweidimensionalen Ebene bewegt und seine Position mittels verrauschter GPS-Messungen bestimmt, kann der Partikelfilter wie folgt angewendet werden:
  • Initialisierung: Die Partikel werden zufällig um eine anfängliche Schätzung der Roboternposition verteilt, basierend auf dem anfänglichen Wissen oder der ersten GPS-Messung.
  • Vorhersage: Die Position jedes Partikels wird basierend auf dem Bewegungsmodell des Roboters aktualisiert. Dies beinhaltet die Anwendung der Steuereingaben (z.B. Geschwindigkeit, Drehwinkel) auf die Zustandsvariablen \(x, y, \theta\).
  • Gewichtung: Jeder Partikel wird basierend auf der Wahrscheinlichkeit, dass die GPS-Messung gegebenen die Position des Partikels korrekt ist, gewichtet. Dies bedeutet, dass Partikel, die näher an der tatsächlichen GPS-Messung liegen, ein höheres Gewicht erhalten.
  • Resampling: Dieser Schritt beinhaltet das Ziehen von Partikeln aus der aktuellen Menge basierend auf ihren Gewichten. Partikel mit höheren Gewichten haben eine höhere Wahrscheinlichkeit, ausgewählt und vervielfältigt zu werden, während solche mit niedrigeren Gewichten eher entfernt werden.
  • Schätzung: Die geschätzte Position des Roboters ergibt sich aus dem gewichteten Durchschnitt der Partikelpositionen. Dies führt zu einer robusteren Schätzung, die Anzahl der Partikel hilft dabei, den Einfluss von Rauschen zu minimieren.
Durch diese Art der Berechnung ermöglicht der Partikelfilter eine genaue und robuste Schätzung der Position und Orientierung des Roboters, selbst bei verrauschten Messungen und nichtlinearen Bewegungsmodellen.

b)

Gegeben sei das folgende Bewegungsgleichung des Roboters: \[\begin{cases} x_{k+1} = x_k + u \, \text{cos}(\theta_k) \, \tau + w_{x, k} \ y_{k+1} = y_k + u \, \text{sin}(\theta_k) \, \tau + w_{y, k} \ \theta_{k+1} = \theta_k + \frac{u}{L} \, \text{tan}(\beta) \, \tau + w_{\theta, k} \ \end{cases}\] wobei \(u\) die Geschwindigkeit des Roboters, \(\tau\) der Zeitschritt, \(\beta\) der Lenkwinkel und \(L\) die Radbasis ist. Die Variablen \(w_{x, k}, w_{y, k}, w_{\theta, k}\) sind die Modellierungsfehler. Formuliere den Algorithmus des Partikelfilters unter Anwendung dieser Bewegungsgleichung.

Lösung:

Algorithmus des Partikelfilters unter Anwendung der gegebenen Bewegungsgleichungen:Hier ist eine Schritt-für-Schritt-Formulierung des Partikelfilters zur Zustandsabschätzung eines mobilen Roboters unter Anwendung der gegebenen Bewegungsgleichungen.

  • Initialisierung:Erzeuge eine Menge von N Partikeln, die die Zustandsgrößen \(x, y, \theta\) repräsentieren. Diese Partikel können zufällig um eine anfängliche Schätzung der Roboterposition verteilt werden.
  • Algorithmus-Schritte:
    • 1. Vorhersage:Aktualisiere die Zustände der Partikel basierend auf den Bewegungsmodellen und den Steuerkommandos (z.B. Geschwindigkeit \(u\), Zeitschritt \(\tau\), Lenkwinkel \(\beta\)):
      foreach Particle in Particles:    x_{k+1} = x_k + u * cos(\theta_k) * \tau + w_{x, k}    y_{k+1} = y_k + u * sin(\theta_k) * \tau + w_{y, k}    \theta_{k+1} = \theta_k + (u / L) * tan(\beta) * \tau + w_{\theta, k}end
      Hierbei sind \(w_{x, k}\), \(w_{y, k}\) und \(w_{\theta, k}\) additive Modellierungsfehler, die typischerweise aus einer Normalverteilung gezogen werden.
    • 2. Gewichtung:Berechne für jedes Partikel ein Gewicht basierend auf der Wahrscheinlichkeit der aktuellen Messung \(z_k\) (z.B. GPS-Wert) gegeben den Zustand des Partikels. Ein gängiger Ansatz ist die Verwendung einer Gaußschen Verteilung:
      foreach Particle in Particles:    Gewicht = P(z_k | x_{k+1}, y_{k+1})end
      Diese Funktion bewertet, wie wahrscheinlich es ist, die Messung \(z_k\) zu bekommen, wenn der Roboter sich tatsächlich am Ort \((x_{k+1}, y_{k+1})\) befindet.
    • 3. Resampling:Wähle Partikel mit einer Wahrscheinlichkeit proportional zu ihren Gewichten aus, um eine neue Menge von N Partikeln zu erzeugen. Dies ermöglicht es, gute Schätzungen (mit höheren Gewichten) zu behalten und schlechte Schätzungen (mit niedrigeren Gewichten) zu eliminieren:
      NewParticles = Resample(Particles, Weights)
    • 4. Schätzung:Ermittle die geschätzte Position und Orientierung des Roboters durch Berechnung des gewichteten Mittelwerts der Partikelzustände:
      \hat{x} = \sum_{i=1}^{N} (x_i * Gewicht_i)\hat{y} = \sum_{i=1}^{N} (y_i * Gewicht_i)\hat{\theta} = \sum_{i=1}^{N} (\theta_i * Gewicht_i)
    • 5. Iteration:Wiederhole die Schritte 1-4 in jedem Zeitschritt \(\tau\).
Dies ist der grundlegende Algorithmus eines Partikelfilters unter Berücksichtigung der genannten Bewegungsgleichungen. Diese Methode ermöglicht es, die Position und Orientierung des Roboters präzise zu schätzen, auch bei verrauschten Messungen und nichtlinearen Bewegungsmodellen.

c)

Implementiere in Python den Resampling-Schritt des Partikelfilters, um die Gewichtung der Partikel zu aktualisieren. Nutze hierfür das systematische Resampling-Verfahren.

Lösung:

Implementierung des systematischen Resampling-Schritts für den Partikelfilter in Python:Das systematische Resampling ist ein Verfahren, bei dem Partikel proportional zu ihren Gewichten neu gezogen werden. Hier ist eine einfache Implementierung in Python:

import numpy as npdef systematic_resample(weights):    N = len(weights)    positions = (np.arange(N) + np.random.uniform(0, 1)) / N    indexes = np.zeros(N, 'i')    cumulative_sum = np.cumsum(weights)    i, j = 0, 0    while i < N:        if positions[i] < cumulative_sum[j]:            indexes[i] = j            i += 1        else:            j += 1    return indexesdef resample_from_index(particles, indexes):    N = len(indexes)    resampled_particles = [particles[i] for i in indexes]    return resampled_particles
  • Erklärung der Funktion systematic_resample:
    • Die Funktion nimmt die Gewichte der Partikel als Eingabe.
    • Ein Array 'positions' wird erzeugt, indem gleichmäßig verteilte Zufallszahlen addiert zu den steigenden Indizes (0, 1, 2,..., N-1) durch die Anzahl der Partikel (N) geteilt werden.
    • Ein Array 'indexes' wird erstellt, um die Indexe der ausgewählten Partikel zu speichern.
    • Ein kumulativer Summenvektor 'cumulative_sum' der Gewichte wird berechnet.
    • Für jeden Index in 'positions' wird der entsprechende Index in 'cumulative_sum' gefunden, der größer ist als die aktuelle Position.
    • Die Indizes werden dann in 'indexes' gespeichert und für die Auswahl der Partikel verwendet.
  • Erklärung der Funktion resample_from_index:
    • Die Funktion nimmt die Partikel und die durch 'systematic_resample' ermittelten Indexe als Eingabe.
    • Ein neues Array 'resampled_particles' wird erzeugt, indem nach den ermittelten Indexen neu gesampelt wird.
Verwendung der Funktionen:
particles = [{'x': 1, 'y': 2, 'theta': 0.1},             {'x': 2, 'y': 3, 'theta': 0.2},             {'x': 3, 'y': 1, 'theta': 0.3},             {'x': 4, 'y': 4, 'theta': 0.4}]weights = [0.1, 0.2, 0.3, 0.4]indexes = systematic_resample(weights)resampled_particles = resample_from_index(particles, indexes)print(resampled_particles)
Diese Implementierung sorgt dafür, dass Partikel mit höheren Gewichten öfter in den neu gesampelten Partikeln auftauchen, was zu einer besseren Schätzung des Zustands führt.

d)

Gegeben seien die Gewichtungen der Partikel \(w_k^i\) und die Zustände der Partikel \(x_k^i\). Nach einer gewissen Anzahl von Iterationen kann es zu einer Partikelerdegradation kommen. Erkläre dieses Phänomen und erläutere, wie der Resampling-Schritt hilft, dieses Problem zu lösen.

Lösung:

Phänomen der Partikelerdegradation:Unter Partikelerdegradation versteht man in einem Partikelfilter das Phänomen, dass nach mehreren Iterationen einige Partikel stark dominieren, während andere Partikel sehr kleine oder sogar null Gewichtungen haben. Dies führt zu einer ineffizienten Nutzung der Partikel, da viele Partikel keine signifikante Rolle mehr bei der Zustandsabschätzung spielen. Die Hauptursachen für die Partikelerdegradation sind:

  • Ungünstige initiale Platzierung der Partikel: Wenn die anfänglichen Partikel schlecht platziert sind, haben einige Partikel wenig oder keine Verbindung zur tatsächlichen Trajektorie des Roboters.
  • Verrauschte Messungen: Schlecht platzierte Partikel können trotz der regelmäßigen Gewichtsaktualisierung wenig Gewicht haben, was zu deren „Degradation“ führt.
  • Langsame Partikelbewegung: Auch wenn das Bewegungsmodell korrekt ist, können Partikel, die sich nicht schnell genug gemäß den Steuerkommandos bewegen, eine niedrige Gewichtung erhalten.
Wirkung des Resampling-Schritts:Der Resampling-Schritt ist entscheidend dafür, das Problem der Partikelerdegradation zu lösen. Hier sind die wichtigsten Funktionen und Vorteile des Resampling-Schritts:
  • Erhöht die Vielfalt der Partikel: Beim Resampling werden Partikel proportional zu ihren Gewichten ausgewählt. Partikel mit höheren Gewichten haben eine höhere Wahrscheinlichkeit, ausgewählt und vervielfältigt zu werden. Dies sorgt dafür, dass auch gut gewichtete Partikel häufiger vorkommen und schlecht gewichtete Partikel eliminiert werden.
  • Effizientere Nutzung der Partikel: Durch Wiederverwendung der besten Partikel werden Ressourcen effizienter genutzt, indem sie sich auf relevantere Bereiche des Zustandsraums konzentrieren. Dies führt zu einer verbesserten Zustandsabschätzung.
  • Reduzierung der Varianz: Das Resampling reduziert die Varianz der Partikelgewichte, indem es gleichmäßigere Gewichte unter den ausgewählten Partikeln produziert. Dadurch wird eine robustere Mittelwertbildung über den Partikelraum ermöglicht.
Fazit: Der Resampling-Schritt ist ein wesentlicher Bestandteil des Partikelfilters, der die Probleme der Partikelerdegradation mindert und die Effizienz und Genauigkeit der Zustandsabschätzung verbessert. Durch das regelmäßige Resampling werden schlecht gewichtete Partikel entfernt, und die verbleibenden Partikel repräsentieren besser den tatsächlichen Zustand des Systems.

Aufgabe 4)

In dieser Übung betrachten wir die Anwendung von maschinellen Lernverfahren zur Sensorfusion. Maschinelle Lernmodelle wie neuronale Netze und Entscheidungsbäume können verwendet werden, um Präzision und Robustheit der integrierten Sensordaten zu verbessern. Wichtige Aspekte dabei sind die Qualität des Trainingsdatensatzes sowie die Generalisierbarkeit des Modells. Typische Anwendungsbereiche umfassen die Robotik, autonome Fahrzeuge und mobile Geräte.

a)

Beschreibe, wie ein neuronales Netz zur Kombination von Sensordaten beitragen kann. Gib Beispiele für die Struktur eines solchen Netzwerks und erkläre, wie die verschiedenen Sensordaten als Eingaben genutzt werden könnten.

Lösung:

Ein neuronales Netz kann erheblich zur Kombination von Sensordaten beitragen, indem es in der Lage ist, komplexe Muster und Zusammenhänge in den Daten zu erkennen und zu verarbeiten. Neuronale Netze bestehen aus mehreren Schichten von Neuronen (auch Knoten genannt), die miteinander verbunden sind. Diese Schichten umfassen normalerweise eine Eingangsschicht, mehrere versteckte Schichten und eine Ausgangsschicht.

  • Beispiel für die Struktur eines neuronalen Netzes zur Sensorfusion:
    • Eingangsschicht: Diese Schicht nimmt die verschiedenen Sensordaten als Eingaben auf. Zum Beispiel könnten die Sensordaten von Beschleunigungsmessern, Gyroskopen, Magnetometern und GPS in diese Schicht eingespeist werden. Jeder dieser Sensoren könnte mehrere Eingabeneuronen darstellen (zum Beispiel drei Neuronen für die x-, y- und z-Achsen eines Beschleunigungsmessers).
    • Versteckte Schichten: Diese Schichten sind verantwortlich für die Extraktion und Kombination von Merkmalen aus den Sensordaten. Je nach Komplexität der Aufgabe können mehrere versteckte Schichten verwendet werden, wobei jede Schicht aus mehreren Neuronen besteht. Verschiedene Aktivierungsfunktionen wie ReLU (Rectified Linear Unit) oder Sigmoid können hier verwendet werden, um nicht-lineare Beziehungen zwischen den Daten zu modellieren.
    • Ausgangsschicht: Diese Schicht liefert schließlich die kombinierte Ausgabe, wie zum Beispiel die geschätzte Position oder Orientierung eines Geräts. Die Anzahl der Neuronen in der Ausgangsschicht hängt von der Art der Vorhersage ab (zum Beispiel drei Neuronen für die x-, y- und z-Koordinaten einer 3D-Position).

Um die verschiedenen Sensordaten als Eingaben zu nutzen, können sie in einem Vorverarbeitungsschritt normalisiert und in einer geeigneten Form aufbereitet werden. Hier sind einige Schritte, wie das in einem neuronalen Netz umgesetzt werden könnte:

  • Sensordaten normalisieren: Die Rohdaten von verschiedenen Sensoren können unterschiedliche Wertebereiche haben. Daher ist es wichtig, diese Daten zu normalisieren, damit sie in das neuronale Netz eingespeist werden können.
  • Datenfusion: Die normalisierten Sensordaten werden dann in die Eingangsschicht des Netzwerks eingespeist. Zum Beispiel könnten die Daten aus einem Beschleunigungsmesser (x, y, z), einem Gyroskop (x, y, z), und einem Magnetometer (x, y, z) kombiniert werden, sodass jeder Datenpunkt eine Eingabeverkettung von neun Werten hat.
  • Training des Netzwerks: Das neuronale Netz wird mit einem großen Datensatz aus gekennzeichneten Sensordaten trainiert, um die optimalen Gewichtungen und Biases zu lernen. Dies kann mithilfe von Techniken wie Backpropagation und Gradientenabstieg erfolgen.

Zusammengefasst ermöglicht ein neuronales Netz die Kombination und Verarbeitung von vielfältigen Sensordaten, um aussagekräftige und präzise Vorhersagen oder Messergebnisse zu liefern. Dank der Fähigkeit des Netzwerks, komplexe Muster in Sensordaten zu erkennen, kann es zu einer erheblichen Verbesserung der Präzision und Robustheit der Datenfusion beitragen.

b)

Angenommen, Du hast einen Trainingsdatensatz, der aus den Sensordaten eines autonomen Fahrzeugs stammt. Diese Daten umfassen GPS-Daten, Beschleunigungssensoren und Kamerabilder. Beschreibe einen möglichen Preprocessing-Schritt für jeden Sensortyp und erläutere, warum dieser Schritt notwendig ist.

Lösung:

Beim maschinellen Lernen ist die Vorverarbeitung (Preprocessing) der Sensordaten ein wichtiger Schritt, um die Qualität des Trainingsdatensatzes zu gewährleisten und das maschinelle Lernmodell zu optimieren. Angenommen, wir haben einen Trainingsdatensatz aus GPS-Daten, Beschleunigungssensoren und Kamerabildern eines autonomen Fahrzeugs, können die Preprocessing-Schritte für jeden Sensortyp wie folgt aussehen:

  • GPS-Daten:
    • Preprocessing-Schritt: Die GPS-Daten sollten normalisiert und gefiltert werden. Auch eine Transformation der rohen Längen- und Breitengradkoordinaten in ein kartesisches Koordinatensystem kann sinnvoll sein. Datenbereinigung, z.B. durch Entfernen von Ausreißern, kann ebenfalls ein wichtiger Schritt sein.
    • Notwendigkeit: GPS-Daten können Rauschen und Ungenauigkeiten enthalten, die durch Umwelteinflüsse oder Signalstörungen verursacht werden. Normalisierung hilft, die Daten in einen einheitlichen Wertebereich zu bringen, um die Verarbeitung im Modell zu vereinfachen. Die Bereinigung von Ausreißern trägt dazu bei, die Generalisierbarkeit des Modells zu verbessern.
  • Beschleunigungssensoren:
    • Preprocessing-Schritt: Rohdaten von Beschleunigungssensoren sollten gefiltert (z.B. durch einen Tiefpassfilter zur Entfernung hochfrequenter Rauschkomponenten), normalisiert und in eine geeignete Form umgewandelt werden. Integration der Beschleunigungsdaten kann notwendig sein, um Geschwindigkeit und Position abzuleiten.
    • Notwendigkeit: Rohdaten von Beschleunigungssensoren enthalten oft Rauschen, das die Modellleistung beeinträchtigen kann. Filterung und Normalisierung stellen sicher, dass das Modell nur relevante und einheitlich skalierte Informationen erhält. Die Integration der Daten ermöglicht die Ableitung höherer Ordnungsgrößen, die für die präzise Bewegungsvorhersage notwendig sind.
  • Kamerabilder:
    • Preprocessing-Schritt: Die Kamerabilder sollten zunächst normalisiert (z.B. durch Skalierung der Pixelwerte), in Graustufen konvertiert (sofern Farbuntreue keine Rolle spielt), und dann durch Merkmalsextraktion (z.B. Kantendetektion, Histogramm der orientierten Gradienten, usw.) verarbeitet werden. Eine Reduzierung der Auflösung oder das Zuschneiden auf relevante Bildbereiche kann ebenfalls notwendig sein.
    • Notwendigkeit: Die Normalisierung der Pixelwerte hilft, Kontrasteffekte zu vermindern und die Bilddaten vergleichbar zu machen. Durch die Konvertierung in Graustufen kann die Rechenlast reduziert werden, ohne wesentliche Informationen zu verlieren. Merkmalsextraktion hilft, die wesentlichen Informationen aus den Bilddaten zu gewinnen, die für das Modell wichtig sind. Das Reduzieren der Auflösung oder das Zuschneiden auf relevante Bereiche spart Speicher und Rechenressourcen, wodurch die Verarbeitung effizienter wird.

Zusammenfassend stellt die Vorverarbeitung sicher, dass die Sensordaten in einer konsistenten und nutzbaren Form vorliegen. Dies verbessert die Effizienz und Genauigkeit des maschinellen Lernmodells bei der Verarbeitung und Vorhersage auf Basis der integrierten Sensordaten.

c)

Entwickle eine Entscheidungsbaumstruktur für die Klassifikation von Hindernissen basierend auf verschiedenen Sensordaten (z.B. Entfernungsmessungen, Beschleunigungsdaten, Bilddaten). Zeige den Aufbau des Baumes und welche Entscheidungen in den Knoten gefällt werden könnten.

Lösung:

Ein Entscheidungsbaum ist ein einfaches, aber wirksames Modell, das verwendet werden kann, um Entscheidungen basierend auf verschiedenen Eingaben zu treffen. Um Hindernisse basierend auf verschiedenen Sensordaten wie Entfernungsmessungen, Beschleunigungsdaten und Bilddaten zu klassifizieren, könnte eine Struktur für einen Entscheidungsbaum wie folgt aussehen:

  • Wurzelknoten:
    • Entscheidungskriterium: Entfernungsmessungen Mögliche Fragen: Ist die gemessene Entfernung < 1 Meter? (Diese Schwelle kann angepasst werden, basierend auf der spezifischen Anwendung und Umgebung.)
  • Interner Knoten 1:
    • Bedingen: Entfernung < 1 MeterEntscheidungskriterium: Beschleunigungsdaten Mögliche Fragen: Gibt es signifikante Beschleunigungsänderungen?- Ja: Der Gegenstand könnte ein bewegliches Hindernis sein (z. B. ein Fußgänger oder ein anderes Fahrzeug).- Nein: Der Gegenstand könnte ein statisches Hindernis sein (z. B. ein Bordstein oder ein Bollwerk).
  • Interner Knoten 2:
    • Bedingen: Entfernung ≥ 1 MeterEntscheidungskriterium: Bilddaten Mögliche Fragen: Kann das Objekt anhand eines vorab trainierten Bildklassifizierungsmoduls als Hindernis kategorisiert werden?- Ja: Der Gegenstand ist wahrscheinlich ein Hindernis wie ein Baum, ein geparktes Auto oder ein großes Objekt.- Nein: Der Gegenstand kann als sicher oder irrelevant eingestuft werden (z. B. Schatten oder kleine Objekte).
  • Blätter:
    • Kategorien:- Bewegliches Hindernis- Statisches Hindernis- Hindernis in Entfernung- Kein Hindernis/Sicher

Zusammengefasst könnte eine Entscheidungsbaumstruktur zur Klassifikation von Hindernissen wie folgt dargestellt werden:

Abstand < 1 Meter?|--- Ja: Signifikante Beschleunigungsänderungen?|       | --- Ja: Bewegliches Hindernis|       | --- Nein: Statisches Hindernis|--- Nein: Bilddaten-Klassifizierung als Hindernis?|       | --- Ja: Hindernis in Entfernung|       | --- Nein: Kein Hindernis/Sicher

Diese Struktur zeigt eine grundlegende Entscheidungslogik, die durch zusätzliche Merkmale und komplexere Entscheidungsregeln erweitert werden kann, um die Genauigkeit weiter zu verbessern.

d)

Berechne die Genauigkeit eines maschinellen Lernmodells zur Sensorfusion, wenn der Trainingsdatensatz aus 1000 Einträgen besteht, von denen das Modell 850 korrekt klassifiziert. Zeige die Berechnungsschritte.

 Genauigkeit = (Anzahl der korrekt klassifizierten Einträge) / (Gesamtzahl der Einträge) 

Lösung:

Um die Genauigkeit eines maschinellen Lernmodells zur Sensorfusion zu berechnen, müssen wir die Anzahl der korrekt klassifizierten Einträge durch die Gesamtzahl der Einträge im Trainingsdatensatz teilen. Die Genauigkeit wird dann als Bruchteil oder Prozentwert ausgedrückt.

Gegeben:

  • Anzahl der korrekt klassifizierten Einträge: 850
  • Gesamtzahl der Einträge: 1000

Formel für die Genauigkeit:

 Genauigkeit = (Anzahl der korrekt klassifizierten Einträge) / (Gesamtzahl der Einträge) 

Einsetzen der gegebenen Werte in die Formel:

 Genauigkeit = 850 / 1000 

Berechnung:

 Genauigkeit = 0.85 

Um die Genauigkeit in Prozent auszudrücken, multiplizieren wir den Bruch mit 100:

 Genauigkeit in Prozent = 0.85 * 100 = 85% 

Die Genauigkeit des maschinellen Lernmodells zur Sensorfusion beträgt somit 85%.

Sign Up

Melde dich kostenlos an, um Zugriff auf das vollständige Dokument zu erhalten

Mit unserer kostenlosen Lernplattform erhältst du Zugang zu Millionen von Dokumenten, Karteikarten und Unterlagen.

Kostenloses Konto erstellen

Du hast bereits ein Konto? Anmelden