Quadruped-PyMPC
그래디언트 및 샘플링 제어를 갖춘 사족 보행용 Python MPC 프레임워크
라이선스
BSD-3-Clause
개요
Quadruped-PyMPC는 IIT의 Dynamic Legged Systems Lab에서 개발한 사족 로봇 보행을 위한 Python 기반 모델 예측 제어 프레임워크입니다. 단일 강체 모델을 두 가지 상호 보완적 접근법으로 구현합니다: acados를 통한 그래디언트 기반 최적화(CPU에서 5ms 미만)와 JAX를 통한 대규모 병렬 샘플링 기반 제어(GPU에서 10,000회 롤아웃 2ms 미만). IROS 2024와 IEEE RAL 2025에서 발표되었으며, 실제 Unitree 로봇에서 검증되었습니다.
Quadruped-PyMPC는 acados를 통한 그래디언트 기반 최적화(CPU에서 5ms 미만)와 JAX를 통한 대규모 병렬 샘플링 기반 제어(GPU에서 10,000회 롤아웃 2ms 미만)를 제공하는 사족 보행용 Python MPC 프레임워크입니다. 다양한 보행 패턴, 발 위치 최적화, Unitree 로봇에서의 실제 하드웨어 배포를 지원합니다.
중요한 이유
이 프로젝트는 최첨단 사족 보행 제어를 Python에서 접근 가능하게 만들며, IROS 2024와 IEEE RAL 2025에서의 발표 성과가 있습니다. IIT의 Dynamic Legged Systems Lab의 이중 그래디언트/샘플링 접근법과 실제 하드웨어 검증은 이를 가치 있는 연구 플랫폼으로 만듭니다.
해결하는 문제
사족 보행을 위한 모델 예측 제어 구현은 복잡한 최적화, 접촉 스케줄링, 실시간 제약을 포함합니다. 이 프레임워크는 그래디언트와 샘플링 두 가지 접근법 모두에서 실시간 성능을 달성하는 깔끔한 Python 구현을 제공합니다.
핵심 요점
- 이중 MPC: 그래디언트 기반(acados, <5ms) 및 샘플링 기반(JAX, 10K 롤아웃 <2ms)
- 트롯, 페이스, 바운드 보행 패턴과 발 위치 최적화 지원
- Unitree 사족 로봇에서 실환경 검증
- 하드웨어 배포를 위한 ROS2 통합
대상
- 사족 제어를 연구하는 다리 로봇 연구자
- C++ 최적화 코드 없이 Python 기반 MPC를 원하는 엔지니어
- Unitree 사족 로봇에 MPC 컨트롤러를 배포하는 팀
한계
- 단일 강체 모델 기반 — 전체 동역학의 단순화
- 실환경 배포에는 Unitree 로봇과 해당 SDK가 필요
- GPU 기반 샘플링에는 JAX CUDA를 지원하는 NVIDIA 하드웨어가 필요