이 논문은 Unitree G1이라는 사람형 로봇을 위해, "언어로 명령하면 움직이는" 데이터를 대량으로 만들어내는 새로운 방법 CLAW를 소개합니다.
기존 방식의 문제점과 CLAW 가 어떻게 해결책을 제시하는지, 마치 요리와 레시피에 비유해서 쉽게 설명해 드릴게요.
1. 왜 이 연구가 필요한가요? (기존 방식의 문제점)
지금까지 로봇에게 걷거나 뛰는 법을 가르치려면 두 가지 방법만 있었습니다.
실제 인간을 카메라로 찍는 방법 (모션 캡처):
비유: 유명 안무가를 고용해서 춤을 추게 하고, 그걸 로봇에게 복사해 주는 거예요.
문제: 비용이 너무 비싸고, 사람마다 동작이 달라서 로봇에게 딱 맞게 수정하기 힘들어요. 게다가 로봇이 넘어질 수도 있는 위험한 동작을 만들 수 있죠.
AI 가 글을 보고 춤을 추게 하는 방법 (텍스트 - 모션 생성):
비유: "신나게 춤춰!"라고 말하면 AI 가 춤을 만들어내는 거예요.
문제: AI 가 만든 춤은 물리적으로 불가능할 때가 많아요. (예: 발이 공중에 뜬 채로 걷거나, 관절이 꺾이는 등). 실제 로봇에 적용하려면 다시 물리 법칙을 맞춰주는 번거로운 수정 작업이 필요하죠.
2. CLAW 는 무엇인가요? (해결책)
CLAW 는 "로봇이 실제로 움직일 수 있는 동작을 먼저 만들고, 그걸 바탕으로 설명문을 자동으로 써주는" 시스템입니다.
핵심 아이디어: 로봇의 동작을 레고 블록처럼 생각하세요.
걷기, 뛰기, 주먹질, 기어가기 등 25 가지 기본 동작 (블록) 이 있습니다.
우리는 이 블록들을 속도, 방향, 시간만 조절해서 자유롭게 이어붙일 수 있습니다.
마치 레고로 성을 짓듯이, "먼저 3 초간 걷고, 그다음 2 초간 주먹질하고, 마지막으로 기어가라"는 식으로 레시피를 짜는 거죠.
3. CLAW 는 어떻게 작동하나요? (3 단계 프로세스)
이 시스템은 크게 세 가지 역할을 하는 팀으로 나뉩니다.
① 레시피 작성자 (사용자 인터페이스)
사용자는 웹 브라우저에서 두 가지 방식으로 로봇에게 지시를 내립니다.
키보드 모드: 게임 하듯이 키보드 (W, A, S, D) 를 누르며 실시간으로 로봇을 조종합니다. "지금 당장 오른쪽으로 돌면서 천천히 걸어!"라고 즉흥적으로 명령할 수 있어요.
편집기 모드: 타임라인에 동작 조각들을 끌어다 놓아 정해진 레시피를 만듭니다. "1 분간 걷고, 2 분간 뛰고, 3 분간 주먹질하기" 같은 복잡한 미션을 미리 만들어서 반복 실행할 수 있죠.
② 요리사 (운동 계획 및 시뮬레이션)
사용자가 만든 레시피를 받아서, MuJoCo라는 물리 엔진 안에서 로봇이 실제로 그 동작을 하도록 시뮬레이션합니다.
여기서 중요한 건, 로봇이 넘어지지 않고 물리 법칙에 맞게 움직이는지 확인한다는 점입니다. 만약 로봇이 넘어지면 그 데이터는 버리고, 성공한 데이터만 저장합니다.
③ 비평가 (자동 설명문 생성)
로봇이 움직이는 동안, CLAW 는 동시에 그 동작을 설명하는 문장을 만들어냅니다.
창의적인 비유: 로봇이 "빨리 왼쪽으로 90 도 돌면서 걷는다"라고 움직이면, CLAW 는 이를 다음과 같이 다양한 스타일로 설명합니다.
지시형: "빨리 왼쪽으로 90 도 돌며 걸어라."
서술형: "로봇이 활기차게 왼쪽으로 돌아서 걷기 시작했다."
간결형: "좌회전 걷기."
이 설명문은 AI 가 임의로 지은 게 아니라, 동작 파라미터를 바탕으로 규칙에 따라 자동으로 생성되므로 100% 정확하고 반복 가능합니다.
4. CLAW 의 놀라운 점 (기대 효과)
무한한 데이터 생산: 실제 사람을 고용할 필요 없이, 컴퓨터만 있으면 밤새도록 수천 가지의 다양한 동작 데이터를 만들 수 있습니다.
자연스러운 연결: 걷다가 갑자기 기어가는 동작으로 넘어갈 때, 로봇이 넘어지지 않고 자연스럽게 넘어가도록 설계되어 있습니다. (물론 가끔은 어색한 연결이 생기기도 하지만, 대부분 매끄럽습니다.)
언어와 운동의 완벽한 짝꿍: 로봇이 어떤 동작을 했는지, 그걸 설명하는 문장이 자동으로 붙어 나오기 때문에, 나중에 "로봇아, '신나게 춤춰'라고 했을 때 실제로 춤을 추게 하는" AI 를 훈련시키기에 최적의 데이터가 됩니다.
요약
CLAW는 로봇에게 춤을 가르치는 마법 레시피 책입니다. 우리는 이 책에서 기본 동작 (레고 블록) 을 골라 조합하고, 속도와 방향을 조절하면, 로봇은 물리 법칙을 지키며 그 동작을 수행합니다. 그리고 동시에 그 동작을 설명하는 다양한 스타일의 설명문도 자동으로 써줍니다.
이 덕분에 우리는 값비싼 촬영 장비나 수작업 없이도, 로봇이 언어 명령을 이해하고 자연스럽게 움직일 수 있도록 훈련시키는 엄청난 양의 데이터를 쉽게 만들어낼 수 있게 되었습니다.
1. 연구 배경 및 문제 정의 (Problem)
휴머노이드 로봇의 전신 제어 (Whole-body control) 및 loco-manipulation(이동 및 조작) 태스크 학습을 위해서는 자연어 설명과 매핑된 대규모 전신 운동 데이터가 필수적입니다. 그러나 기존 데이터 생성 방식은 다음과 같은 근본적인 병목 현상에 직면해 있습니다.
모션 캡처 (MoCap) 의 한계: 고비용과 물류적 제약으로 인해 데이터의 양과 행동 다양성이 제한됩니다. 또한, 인간 모션을 로봇 형태에 맞게 재매핑 (Retargeting) 하는 과정에서 발 미끄러짐, 자기 침투, 관절 한계 위반 등의 기하학적 오류가 발생하여 정책 성능을 저하시킵니다.
텍스트 - 모션 생성 모델의 물리적 비현실성: 기존 텍스트 - 모션 생성 모델 (Diffusion 모델 등) 은 순수 기하학적 (Kinematic) 출력을 생성할 뿐, 물리적으로 실행 가능한 동역학 (Dynamic) 이 보장되지 않습니다. 따라서 실제 로봇 배포 전 추가적인 물리 기반 추적 (Tracking) 단계가 필요합니다.
수동 주석의 비효율성: 언어 조건부 학습을 위해 기록된 모든 클립에 자연어 설명을 수동으로 매칭하는 과정은 데이터 크기에 비례하여 비용이 기하급수적으로 증가합니다.
2. 제안 방법론: CLAW 파이프라인 (Methodology)
저자들은 언어에서 모션을 생성하는 대신, 물리 시뮬레이션 내에서 파라미터화된 모션 원시 (Motion Primitives) 를 조립하여 언어가 주석된 운동 데이터를 대규모로 생성하는 상호작용형 웹 기반 파이프라인인 CLAW를 제안합니다.
A. 핵심 아키텍처
CLAW 는 4 개의 독립된 프로세스로 구성된 분산 시스템입니다:
웹 UI 프론트엔드: 사용자의 고수준 운동 의도 (모드, 방향, 속도, 골반 높이, 지속 시간 등) 를 입력받습니다.
프로토콜 브리지 (WebSocket-ZMQ): UI 명령을 20Hz 로 전송하고, 플래너 상태 및 텔레메트리를 통합 관리합니다.
C++ 컨트롤러 (Kinematic Planner & WBC): SONIC [6] 의 플래너와 전체 몸통 제어기 (Whole-body Controller) 를 사용합니다. 고수준 명령을 기하학적 참조 모션으로 변환하고, MuJoCo 시뮬레이션 내에서 이를 추적하여 물리적으로 타당한 전신 궤적을 생성합니다 (50Hz).
MuJoCo 시뮬레이터: Unitree G1 휴머노이드 모델을 기반으로 물리 엔진을 실행합니다.
B. 구성 가능한 모션 원시 (Composable Motion Primitives)
플래너의 25 가지 운동 모드 (Locomotion, Squat/Ground, Boxing, Styled Walking 등) 를 조립 가능한 빌딩 블록으로 간주합니다.
각 모드는 이동 방향, 속도, 골반 높이, 지속 시간 등의 파라미터로 제어됩니다.
모드 간 전환 시 명시적인 블렌딩 없이 현재 로봇 상태를 기반으로 자연스럽게 전환되도록 설계되어, 이질적인 동작 (예: 걷기 → 스쿼트 → 기어가기) 을 연속된 궤적으로 연결할 수 있습니다.
C. 자동화된 언어 주석 (Language Annotation)
템플릿 기반 엔진: 운동 파라미터를 기반으로 결정론적 (Deterministic) 으로 자연어 설명을 생성합니다.
다양한 스타일: 8 가지 스타일 (명령형, 자연어, 서술형, 간결형 등) 과 시간적 근거 (지속 시간 포함/미포함) 를 조합하여 다양한 표현을 생성합니다.
어휘 다양성: 동의어 뱅크 (Synonym banks) 와 어미 변환을 사용하여 확률적 생성 없이도 풍부한 어휘 다양성을 확보하며, 대규모 학습을 위한 재현 가능성 (Reproducibility) 을 보장합니다.
D. 사용자 인터페이스
키보드 모드: 실시간으로 W/A/S/D, 방향키 등을 통해 로봇을 조작하며 자유로운 탐색과 프로토타이핑이 가능합니다.
시퀀스 에디터 모드: 타임라인 기반의 편집기를 통해 여러 모션 클립을 조합하고 파라미터를 설정하여 재현 가능한 대량 데이터 생성 (Batch generation) 을 지원합니다.
3. 주요 기여 (Key Contributions)
구성 가능한 데이터 생성 파이프라인: 파라미터화된 모션 원시를 물리 시뮬레이션된 언어 주석 전신 궤적으로 변환하며, 플래너와 무관한 아키텍처를 제공합니다.
상호작용형 브라우저 인터페이스: 실시간 키보드 조작과 재현 가능한 시퀀스 편집을 지원하는 두 가지 모드를 통합하여 탐색적 및 대량 데이터 수집을 가능하게 합니다.
템플릿 기반 언어 주석 엔진: 결정론적이면서도 스타일적으로 다양한 설명을 생성하여, 언어 조건부 제어 학습을 위한 다양하고 일관된 감독 신호를 제공합니다.
오픈소스 모듈형 시스템: 브라우저, 브리지, 컨트롤러, 시뮬레이션이 분리된 확장 가능한 4 프로세스 아키텍처를 공개하여 무한한 규모의 데이터 생성을 지원합니다.
4. 실험 결과 및 성능 (Key Results)
원활한 모션 스티칭 (Motion Stitching): 의미적으로 다른 동작 모드들 (예: 걷기에서 기어가기로) 을 매끄럽게 연결하여 장시간의 궤적을 생성할 수 있음을 시연했습니다. 일부 극단적인 자세 전환에서는 일시적인 아티팩트가 발생할 수 있으나, 대부분의 경우 자연스러운 전환이 확인되었습니다.
자동화된 언어 주석: 긴 시간의 궤적에 대해 단계별 (Segment-wise) 및 전체 궤적에 대한 정확한 자연어 설명을 자동으로 생성하며, 수동 라벨링 없이도 다양한 스타일의 설명을 제공합니다.
확장성: 편집기를 통해 동일한 레시피를 다양한 파라미터로 재실행함으로써 체계적으로 데이터셋을 확장할 수 있습니다. Unitree G1 의 키텍 구조에 직접 작동하므로 재매핑 (Retargeting) 단계가 불필요합니다.
5. 의의 및 결론 (Significance)
CLAW 는 휴머노이드 로봇 학습을 위한 대규모 언어 - 운동 쌍 (Language-Motion Paired) 데이터 생성의 새로운 패러다임을 제시합니다.
비용 및 효율성: 고비용의 모션 캡처와 수동 주석 작업을 대체하여, 컴퓨팅 자원만으로 고품질의 물리적으로 타당한 데이터를 무한히 생성할 수 있습니다.
데이터 품질: 물리 시뮬레이션을 기반으로 하므로 실제 로봇 배포에 바로 적용 가능한 동역학 데이터를 제공합니다.
학습 지원: 다양한 언어적 스타일과 운동 파라미터의 조합을 통해 언어 조건부 강화학습 (RL) 및 모방 학습을 위한 풍부한 데이터셋을 제공하여, 휴머노이드의 복잡한 전신 제어 능력 향상에 기여합니다.
이 시스템은 오픈소스로 공개되어, 연구자들이 Unitree G1 을 포함한 휴머노이드 로봇의 언어 기반 제어 정책 학습을 위한 데이터 수집을 쉽게 수행할 수 있도록 지원합니다.