Quadruped-PyMPC
Python-MPC-Framework für Vierbeinerlokomotion mit Gradienten- und Sampling-Steuerung
Lizenz
BSD-3-Clause
Überblick
Quadruped-PyMPC ist ein Python-basiertes Model-Predictive-Control-Framework für Vierbeinerlokomotion vom Dynamic Legged Systems Lab des IIT. Es implementiert das Single-Rigid-Body-Modell mit zwei komplementären Ansätzen: gradientenbasierte Optimierung über acados (unter 5ms auf CPU) und massiv parallele sampling-basierte Steuerung über JAX (10.000 Rollouts in unter 2ms auf GPU). Veröffentlicht auf IROS 2024 und IEEE RAL 2025, validiert auf echten Unitree-Robotern.
Quadruped-PyMPC ist ein Python-MPC-Framework für Vierbeinerlokomotion, das gradientenbasierte Optimierung über acados (unter 5ms auf CPU) und massiv parallele sampling-basierte Steuerung über JAX (10.000 Rollouts in unter 2ms auf GPU) bietet. Es unterstützt mehrere Gangarten, Fußpunktoptimierung und reale Hardware-Bereitstellung auf Unitree-Robotern.
Warum es wichtig ist
Dieses Projekt macht modernste Vierbeinerlokomotionssteuerung in Python zugänglich, mit veröffentlichten Ergebnissen auf IROS 2024 und IEEE RAL 2025. Der duale Gradienten-/Sampling-Ansatz und die reale Hardware-Validierung vom Dynamic Legged Systems Lab des IIT machen es zu einer wertvollen Forschungsplattform.
Welches Problem es löst
Die Implementierung von Model Predictive Control für Vierbeinerlokomotion umfasst komplexe Optimierung, Kontaktplanung und Echtzeitanforderungen. Dieses Framework bietet eine saubere Python-Implementierung mit sowohl Gradienten- als auch Sampling-Ansätzen, die Echtzeit-Performance erreichen.
Wichtigste Punkte
- Duales MPC: gradientenbasiert (acados, <5ms) und sampling-basiert (JAX, 10K Rollouts <2ms)
- Unterstützt Trab, Pass, Galopp-Gangarten mit Fußpunktoptimierung
- Real validiert auf Unitree-Vierbeinerrobotern
- ROS2-Integration für Hardware-Bereitstellung
Für wen
- Forscher für Laufroboter, die an Vierbeinersteuerung arbeiten
- Ingenieure, die Python-basiertes MPC ohne C++-Optimierungscode wünschen
- Teams, die MPC-Regler auf Unitree-Vierbeinerrobotern einsetzen
Einschränkungen
- Basiert auf dem Single-Rigid-Body-Modell — eine Vereinfachung der vollständigen Dynamik
- Realer Einsatz erfordert Unitree-Roboter und deren SDK
- GPU-basiertes Sampling erfordert NVIDIA-Hardware mit JAX-CUDA-Unterstützung