← 최신 논문
💻 computer science

frax: Fast Robot Kinematics and Dynamics in JAX

본 논문은 최적화 기반 제어 및 학습을 위한 자동 미분을 지원하면서 저지연 CPU 실행과 대규모 GPU 병렬화를 제공하는 로봇 운동학 및 역학을 위한 고성능 순수 Python JAX 라이브러리인 frax를 소개합니다.

원저자: Daniel Morton, Marco Pavone

게시일 2026-05-18
📖 3 분 읽기☕ 가벼운 읽기

원저자: Daniel Morton, Marco Pavone

원본 논문은 CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/) 라이선스로 제공됩니다. ✨ 이것은 아래 논문에 대한 AI 생성 설명입니다. 저자가 작성하거나 승인한 것이 아닙니다. 기술적 정확성을 위해서는 원본 논문을 참조하세요. 전체 면책 조항 읽기

로봇의 팔을 움직이거나 걷거나 공을 잡는 법을 가르치려 한다고 상상해 보세요. 이를 위해서는 팔의 무게, 흔들리는 속도, 그리고 멈추거나 방향을 바꾸는 데 필요한 정확한 힘과 같은 물리 법칙을 즉시 계산할 수 있는 '두뇌'가 필요합니다. 이를 로봇 동역학이라고 합니다.

오랫동안 엔지니어들이 이 계산을 위해 사용할 수 있었던 도구는 두 가지 유형의 계산기를 가진 것과 같았습니다:

  1. "빠른" 계산기: 매우 빨랐지만 특정 유형의 컴퓨터 칩(CPU)에서만 작동했습니다. 최신 그래픽 카드(GPU)에서 사용하려고 하면 작동하지 않았습니다.
  2. "대량 생산" 계산기: 한 번에 수천 개의 계산을 수행하는 데 탁월했습니다(예: 1,000 개의 로봇을 동시에 시뮬레이션). 하지만 단일 로봇을 제어하고 싶을 때는 느리고 번거로웠습니다.

이 논문은 로봇 물리학을 위한 보편적 번역기 역할을 하는 새로운 도구인 frax를 소개합니다. frax 는 JAX라는 기술을 기반으로 구축되어 단순한 Python 코드로 작성되지만 고성능 C++ 코드의 원시적인 속도로 실행될 수 있습니다.

frax 가 어떻게 작동하는지 일상적인 비유를 들어 설명해 보겠습니다:

1. "조립 라인" 대 "팀 회의"

대부분의 기존 로봇 라이브러리는 한 사람이 회의를 진행하는 것처럼 물리를 계산합니다. 그들은 이렇게 묻습니다: "좋아, 관절 1 이 움직이면 관절 2 가 움직이고, 그 결과 관절 3 이 움직이지..." 그들은 하나씩 순차적으로 이를 수행합니다. 이는 한 대의 로봇에게는 빠르지만, 1,000 대의 로봇에 대해 시도하면 라인이 막히게 됩니다.

frax는 게임을 바꿉니다. 회의 대신 거대하고 동기화된 조립 라인처럼 작동합니다. 이는 모든 로봇의 모든 관절의 움직임을 정확히 동시에 계산합니다.

  • 비법: 어떤 관절이 다른 관절에 영향을 미치는지 파악하기 위해 "마스크"(디지털 필터) 를 사용하여 컴퓨터가 모든 수학을 병렬로 수행할 수 있게 합니다.
  • 결과: 단일 컴퓨터에서는 실시간으로 로봇을 제어할 수 있을 만큼 빠릅니다(초당 수천 번). 강력한 그래픽 카드에서는 1 초당 1 억 개의 로봇 움직임을 시뮬레이션할 수 있습니다.

2. "마법 거울"(자동 미분)

로봇 학습에서 가장 어려운 부분 중 하나는 로봇의 움직임을 어떻게 개선할지 파악하는 것입니다. 보통은 작은 변화를 전체 시스템에 어떻게 영향을 미치는지 보기 위해 복잡한 수학 공식을 수동으로 작성해야 합니다.

frax 에는 내장된 **"마법 거울"**이 있습니다. JAX 를 기반으로 구축되었기 때문에 로봇의 움직임을 자동으로 분석하여 더 나은 결과를 얻기 위해 어떻게 조정해야 하는지 즉시 알려줍니다. 이러한 공식을 유도하기 위해 수학 천재일 필요는 없습니다. 라이브러리가 어려운 작업을 대신 수행해 줍니다. 이는 학습하고 적응할 수 있는 로봇을 설계하는 것을 훨씬 쉽게 만들어 줍니다.

3. 속도와 유연성

저자들은 Franka Panda(로봇 팔) 와 Unitree G1(휴머노이드 로봇) 두 대의 실제 로봇에서 frax 를 테스트했습니다.

  • 일반 컴퓨터(CPU) 에서: frax 는 다른 인기 있는 Python 도구보다 2 배에서 5 배 더 빠를 정도로 매우 빠릅니다. 복잡한 C++ 코드로 작성된 최상의 도구와 거의 동일한 속도를 내지만, C++ 를 작성하는 두통은 없습니다.
  • 그래픽 카드(GPU) 에서: 그래픽 카드를 위해 특별히 설계된 최고의 도구만큼 잘 수행되지만, 시작 및 컴파일이 훨씬 빨라 엔지니어들이 새로운 아이디어를 테스트할 때 시간을 절약해 줍니다.

결론

frax는 엔지니어들이 간단한 Python 으로 로봇 제어 소프트웨어를 작성할 수 있게 해주는 새로운 오픈 소스 라이브러리입니다. 이는 표준 노트북에서 단일 로봇을 실시간으로 제어할 만큼 빠르면서도, 슈퍼컴퓨터에서 수천 대의 로봇을 동시에 시뮬레이션할 만큼 강력합니다. 이는 "사용하기 쉬움"과 "매우 빠름" 사이의 간극을 메워주어, 움직이고 학습하며 현실 세계와 안전하게 상호작용할 수 있는 로봇을 구축하는 것을 더 쉽게 만들어 줍니다.

연구 분야의 논문에 파묻히고 계신가요?

연구 키워드에 맞는 최신 논문의 일일 다이제스트를 받아보세요 — 기술 요약 포함, 당신의 언어로.

Digest 사용해 보기 →