Open Source Robotics

Eine kuratierte Sammlung hochwertiger Open-Source-Robotikprojekte, Werkzeuge und Software für die Robotik-Community.

Moving horizon estimation

  • Auch genannt: MHE, receding horizon estimation
  • Kategorie: State estimation & navigation › Localisation
  • Schlagwörter: state-estimation, optimization, parameter-estimation, sensor-fusion, model-predictive-control

Ein optimierungsbasierter Zustandsschätzer, der ein Dynamikmodell an die Messungen in einem gleitenden Fenster der jüngsten Zeitschritte anpasst, in jedem Schritt neu löst und Nebenbedingungen erzwingen kann.

Definition

Moving-Horizon-Schätzung (Moving horizon estimation, MHE) schätzt den aktuellen Zustand eines Systems und optional unbekannte Parameter oder Störungen, indem sie ein Optimierungsproblem über ein Fenster der N jüngsten Messungen löst. Die Entscheidungsvariablen sind die Zustände über das Fenster hinweg oder, gleichwertig, der erste Zustand plus das Prozessrauschen in jedem Schritt. Die Kosten bestrafen die Abweichung zwischen vorhergesagten und gemessenen Ausgängen, die Größe des Prozessrauschens, das zur Erklärung der Daten nötig ist, und die Abweichung des ersten Zustands im Fenster von einer A-priori-Schätzung. Im nächsten Zeitschritt rückt das Fenster um einen Abtastwert vor, die älteste Messung fällt weg, und das Problem wird erneut gelöst.

Der Term, der den ersten Zustand des Fensters verankert, heißt Ankunftskosten (arrival cost). Er steht stellvertretend für alle Messungen, die das Fenster bereits verlassen haben. Mit einem linearen Modell, gaußschem Rauschen, ohne Nebenbedingungen und mit exakten Ankunftskosten liefert MHE dieselbe Schätzung wie das Kalman-Filter. In der Praxis werden die Ankunftskosten genähert, oft mit einer Kovarianzaktualisierung eines erweiterten Kalman-Filters oder einem festen quadratischen Gewicht, und die Fensterlänge wird so gewählt, dass Schätzgüte und Rechenaufwand im Gleichgewicht stehen.

MHE wird oft als das Gegenstück der modellprädiktiven Regelung auf der Schätzseite beschrieben: MPC optimiert über einen zukünftigen Horizont, um Steuergrößen zu wählen, während MHE über einen vergangenen Horizont optimiert, um Messungen zu erklären. Ihre Vorteile gegenüber rekursiven Filtern sind, dass sie harte Nebenbedingungen erzwingen kann, etwa positive Massen, Gelenkgrenzen oder Kontaktkräfte innerhalb der Reibungskegel, und dass sie bei jeder Lösung das gesamte Fenster neu linearisiert, statt sich pro Schritt auf eine Linearisierung festzulegen, was bei stark nichtlinearen Modellen hilft. Der Preis ist ein nichtlineares Kleinste-Quadrate-Problem in jedem Zeitschritt, daher stützen sich Echtzeitimplementierungen auf strukturausnutzende Löser, Warmstarts und eine begrenzte Zahl von Iterationen pro Schritt. Nimmt man Modellparameter in den geschätzten Zustand auf, wird MHE zu einem Werkzeug der Online-Systemidentifikation; so verwendet sie das Paper zu Parameterized DDP.

Warum es wichtig ist

Viele Schätzprobleme in der Robotik enthalten Nebenbedingungen und Nichtlinearitäten, mit denen rekursive Filter schlecht umgehen. MHE liegt zwischen einem Filter und einem vollständigen Batch-Glätter: Sie nutzt ein Datenfenster und einen Optimierer, hält den Rechenaufwand aber begrenzt. Das macht sie praktikabel, um Zustände und Parameter zu schätzen, die in einen modellprädiktiven Regler einfließen.

Wichtige Anwendungen

  • Online-Schätzung von Nutzlastmasse, Reibung und anderen Parametern für MPC
  • Zustandsschätzung mit Nebenbedingungen für Laufroboter im Kontakt
  • Zustands- und Störungsschätzung für Fahrzeuge und Drohnen
  • Sensorfusion mit verzögerten oder unregelmäßigen Messungen
  • Fehler- und Anomalieerkennung aus Modellresiduen

In der Praxis

Ein Team, das einen fliegenden Manipulator baut, will Masse und Schwerpunkt einer unbekannten Nutzlast schätzen, nachdem es sie gegriffen hat. Es nimmt diese Parameter in den Zustand eines MHE-Problems auf, das IMU-, Motordrehzahl- und Posendaten aus dem letzten Bruchteil einer Sekunde verwendet, mit Nebenbedingungen, die die Masse positiv und den Schwerpunkt innerhalb der Reichweite des Greifers halten. In jedem Regelzyklus wird der Löser aus dem vorherigen, um einen Abtastwert verschobenen Fenster warmgestartet und führt in einem codegenerierten Löser wie acados einige Gauß-Newton-Iterationen aus; die Schätzungen gehen an die Flug-MPC. Die Abstimmung des Gewichts der Ankunftskosten ist der wichtigste Zielkonflikt: zu niedrig, und die Schätzungen sind verrauscht; zu hoch, und sie reagieren langsam, wenn sich die Nutzlast ändert.

Häufige Missverständnisse

  • MHE ist ein Kalman-Filter mit Datenpuffer — sie löst in jedem Schritt eine Optimierung über das gesamte Fenster, kann Nebenbedingungen erzwingen und linearisiert das ganze Fenster neu
  • Information außerhalb des Fensters geht einfach verloren — die Ankunftskosten tragen sie weiter, wenn auch nur näherungsweise
  • Ein längeres Fenster ist immer besser — längere Fenster kosten mehr Rechenzeit und können die Reaktion auf echte Änderungen verlangsamen, besonders wenn Parameter als konstant modelliert sind

Wer das wissen sollte

  • Ingenieure für Zustandsschätzung
  • Ingenieure für modellprädiktive Regelung
  • Entwickler von Flug- und Laufrobotern
  • Forschende in der Online-Systemidentifikation

Verwandte Technologien

  • acados
  • CasADi
  • Kalman-Filter (Kalman Filter)
  • Faktorgraph-Glättung (Factor Graph Smoothing)
  • Gauß-Newton-Verfahren (Gauss-Newton Method)

Verwandte Begriffe

  • Extended Kalman Filter
  • Model Predictive Control
  • Pose Graph Optimization
  • Sensor Fusion
  • Differential dynamic programming
  • System Identification

Verwandte Projekte

  • FAST-LIVO2: Fast, direct LiDAR-inertial-visual odometry from HKU-MARS, published in IEEE T-RO
  • Drake: MIT robotics toolbox for model-based dynamics, optimization, and control system design
  • GTSAM: Factor-graph optimization library powering many modern SLAM backends
  • OpenVINS: The reference open platform for visual-inertial state estimation research
  • manif: Header-only C++ Lie theory library for robotics state estimation
  • MuJoCo MPC: DeepMind's interactive real-time model predictive control framework for MuJoCo

Videos

  • Moving Horizon Estimation in MATLAB, Python, and Simulink: APMonitor.com

Diese Website benötigt JavaScript. Bitte aktivieren Sie JavaScript, um unsere Open-Source-Robotikprojekte zu erkunden.