Skip to main content
QUICK REVIEW

[논문 리뷰] Dojo: A Differentiable Physics Engine for Robotics

Taylor A. Howell, Simon Le Cleac’h|arXiv (Cornell University)|2022. 03. 02.
Model Reduction and Neural Networks인용 수 10
한 줄 요약

Dojo는 로봇 분야를 위한 미분 가능 물리 엔진으로, 비선형 보완문제(NCP)를 해결하기 위해 변분 적분기와 맞춤형 원-이중 내점법을 사용하여 딱딱한 접촉과 마찰을 안정적이고 정확하게 시뮬레이션할 수 있다. 은폐 미분을 통해 접촉 이벤트를 통한 매끄럽고 분석적인 기울기를 제공하여, 낮은 샘플 레이트(예: 65 Hz)에서도 최소한의 관통과 기어임 현상 없이 고정밀 시뮬레이션과 효율적인 최적화를 가능하게 한다. 이는 계획 수립, 정책 학습, 시스템 식별에 유리하다.

ABSTRACT

We present Dojo, a differentiable physics engine for robotics that prioritizes stable simulation, accurate contact physics, and differentiability with respect to states, actions, and system parameters. Dojo models hard contact and friction with a nonlinear complementarity problem with second-order cone constraints. We introduce a custom primal-dual interior-point method to solve the second order cone program for stable forward simulation over a broad range of sample rates. We obtain smooth gradient approximations with this solver through the implicit function theorem, giving gradients that are useful for downstream trajectory optimization, policy optimization, and system identification applications. Specifically, we propose to use the central path parameter threshold in the interior point solver as a user-tunable design parameter. A high value gives a smooth approximation to contact dynamics with smooth gradients for optimization and learning, while a low value gives precise simulation rollouts with hard contact. We demonstrate Dojo's differentiability in trajectory optimization, policy learning, and system identification examples. We also benchmark Dojo against MuJoCo, PyBullet, Drake, and Brax on a variety of robot models, and study the stability and simulation quality over a range of sample frequencies and accuracy tolerances. Finally, we evaluate the sim-to-real gap in hardware experiments with a Ufactory xArm 6 robot. Dojo is an open source project implemented in Julia with Python bindings, with code available at https://github.com/dojo-sim/Dojo.jl.

연구 동기 및 목표

  • 기존 물리 엔진이 겪는 한계를 해결하기 위해, 낮은 샘플 레이트에서의 불안정성, 관통, 기어임 현상, 접촉을 통한 비연속 기울기 문제를 해결한다.
  • 물리 및 최적화 중심 설계 접근법을 통해 딱딱한 접촉과 마찰 역학을 안정적이고 정확하게 시뮬레이션할 수 있도록 한다.
  • 접촉 이벤트를 통한 매끄럽고 분석적인 기울기를 제공하여, 로봇 응용 분야에서 효율적인 기울기 기반 최적화를 지원한다.
  • 시뮬레이션에서 실제 환경으로의 전이를 향상시키기 위해, 관통이나 기어임과 같은 시뮬레이션 아티팩트를 최소화하면서도 계산적 안정성을 유지한다.
  • 고정밀도를 유지하면서도 시스템 식별, 궤적 최적화, 정책 학습을 지원하는 미분 가능 물리 엔진을 개발한다.

제안 방법

  • 에너지와 운동량 보존을 보장하고 낮은 시간 간격(예: 65 Hz)에서도 안정성을 확보하기 위해 변분 적분기를 사용한다. 이로 인해 고주기 샘플링이 필요 없어진다.
  • 마찰을 위한 두차원 원뿔을 포함한 비선형 보완문제(NCP)를 통해 접촉 역학을 모델링하여 정확한 딱딱한 접촉과 충격 시뮬레이션을 가능하게 한다.
  • 다양한 시스템에 걸쳐 최소한의 하이퍼파rameter 조정으로도 신뢰성 있고 강력하게 NCP를 해결하기 위해 맞춤형 원-이중 내점법을 적용한다.
  • 내점법 솔버에 은폐 미분을 적용하여 시뮬레이션 상태의 상태, 동작, 시스템 파라미터에 대한 매끄럽고 분석적인 기울기를 계산한다.
  • 최대 좌표 상태 표현을 지원하고 원뿔 및 쿼aternion 제약 조건을 네이티브로 처리하여 로봇 시스템의 모델링 정밀도를 향상시킨다.
  • NCP의 은폐 해법에 체인 룰을 적용하여 효율적인 기울기 계산을 가능하게 하며, 유한차분 근사나 서기울기(subgradient)를 피한다.

실험 결과

연구 질문

  • RQ1낮은 샘플 레이트(예: 65 Hz)에서도 물리적 정확도를 유지하면서 관통 현상 없이 안정적인 시뮬레이션을 달성할 수 있는가?
  • RQ22차원 원뿔 마찰 모델을 포함한 비선형 보완문제(NCP)가 부드러운 접촉 또는 LCP 기반 솔버보다 더 정확한 접촉 역학을 제공할 수 있는가?
  • RQ3원-이중 내점법 솔버에 은폐 미분을 적용하면 접촉 이벤트를 통과할 때 매끄럽고 분석적인 기울기를 얻을 수 있으며, 이로 인해 로봇 분야의 최적화가 향상되는가?
  • RQ4기존 엔진과 비교해 Dojo는 시스템 식별 및 정책 학습에서 시뮬레이션에서 실제 환경으로의 전이를 어느 정도 향상시키는가?
  • RQ5Dojo는 관통이나 아티팩트가 최소한인 고정밀도 시뮬레이션과 최적화를 통해 복잡한 로봇 작업(예: 이동, 조작)을 수행할 수 있는가?

주요 결과

  • Dojo는 65 Hz에서 Atlas 낙하 실험에서 관통 없이 안정적인 시뮬레이션을 달성했으며, MuJoCo는 바닥과의 관통이 수 센티미터에 이르렀고 불안정성이 발생했다.
  • 실제 궤적 데이터에서 상자 기하학적 구조와 마찰 원뿔 파라미터를 학습하는 시스템 식별 작업에서 오차가 5% 미만이었다.
  • Dojo에서 학습된 시스템 파라미터는 참값과 매우 유사했으며, 시뮬레이션 궤적은 실제 궤적과 높은 정밀도로 일치했다(그림 10에 시각화됨).
  • Dojo의 기울기는 매끄럽고 분석적이어서 계획 수립 및 정책 학습에서 효율적이고 신뢰할 수 있는 최적화를 가능하게 하며, 서기울기나 유한차분 근사와는 다릅니다.
  • 내점법의 수치적 안정성 덕분에 다양한 시스템에 걸쳐 하이퍼파rameter 조정 없이도 강력한 성능을 보였다.
  • Dojo는 기계 정밀도 수준의 제약 조건을 통해 딱딱한 접촉을 정확하게 시뮬레이션하여, 미끄러짐 운동에서 기어임 아티팩트를 완전히 제거했다.

더 나은 연구,지금 바로 시작하세요

논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.

카드 등록 없음 · 무료 플랜 제공

이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.