Robotics

R²D²: 장시간 조작 작업을 위한 인지 기반 태스크 및 모션 플래닝

Reading Time: 4 minutes

기존 로봇 조작용 TAMP(Task and Motion Planning) 시스템은 정적인 모델을 기반으로 하기 때문에, 환경이 조금만 바뀌어도 쉽게 실패하곤 합니다. 이런 문제를 해결하려면, 인지 정보를 조작 계획에 통합해 로봇이 실행 도중에도 계획을 유연하게 수정하고 변화하는 상황에 적응할 수 있어야 합니다.

이번 R²D²(NVIDIA Robotics Research and Development Digest)에서는 인지 기반 TAMP와 GPU로 가속하는 TAMP를 활용해, 로봇이 장기 조작 작업을 더 잘 수행할 수 있도록 하는 방식을 살펴봅니다. 로봇의 조작 능력을 높이기 위한 프레임워크와 함께, 시각 정보와 언어를 활용해 픽셀을 서브골, 어포던스, 미분 가능한 제약 조건으로 바꾸는 방법도 소개합니다.

  • 서브골(subgoal): 로봇이 최종 목표에 도달하기까지 단계별로 따라가야 할 중간 목표입니다.
  • 어포던스(affordance): 객체나 환경이 로봇에게 어떤 동작을 가능하게 하는지를 나타냅니다. 예를 들어 손잡이는 ‘잡기’, 버튼은 ‘누르기’, 컵은 ‘따르기’ 같은 동작을 유도합니다.
  • 미분 가능한 제약 조건: 관절 각도, 충돌 회피, 로봇 손의 위치 같은 물리 제약 조건을 학습이나 실시간 계획 과정에서 GPU로 빠르게 계산하고 조정할 수 있도록 한 것입니다.

태스크 및 모션 플래닝은 시각과 언어를 어떻게 로봇의 행동으로 바꾸는가

TAMP(Task and Motion Planning)은 로봇이 무엇을 해야 하는지어떻게 움직여야 하는지를 함께 결정하는 과정입니다. 즉, 상위 수준의 태스크 플래닝(해야 할 일 결정)과 하위 수준의 모션 플래닝(그 일을 어떻게 수행할지 결정)을 통합하는 것이 핵심입니다.

최근의 로봇은 이미지나 텍스트 같은 시각 및 언어 정보를 활용해 복잡한 작업을 작은 단계의 서브골(subgoal)로 나눌 수 있습니다. 서브골은 로봇이 다음에 어떤 작업을 해야 하는지, 어떤 객체와 상호작용해야 하는지, 어떻게 안전하게 움직여야 하는지를 이해하도록 도와줍니다.

이러한 과정은 고도화된 모델을 통해 이미지나 지시 문장을 현실 세계에서 실행 가능한 구체적인 계획으로 변환합니다. 특히 장기 조작 작업에서는 계획자가 충족시킬 수 있는 구조화된 의도가 필요합니다. 다음은 이를 가능하게 해주는 OWL-TAMP, VLM-TAMP, NOD-TAMP 접근 방식들입니다.

  • OWL-TAMP는 자연어로 주어진 복잡하고 장기적인 조작 작업—예를 들어 “오렌지를 테이블 위에 올려놔” 같은 명령—을 로봇이 실행할 수 있도록 해주는 워크플로우입니다. 이 방식은 Vision-Language Model(VLM)과 TAMP를 결합한 하이브리드 구조로, VLM이 자연어 명령(Open-World Language)을 로봇의 행동 공간에 맞게 구체적인 제약 조건으로 변환합니다. 이 제약 조건은 TAMP 시스템에 반영되어, 시뮬레이션 피드백을 통해 물리적 실행 가능성과 정확성을 확보합니다.
  • VLM-TAMP는 시각적으로 복잡한 환경에서 로봇이 다단계 작업을 수행할 수 있도록 설계된 워크플로우입니다. VLM-TAMP는 VLM과 기존 TAMP를 결합해 실제 장면에서의 작업 계획을 생성하고 다듬습니다. 예를 들어 “치킨 수프 만들기” 같은 명령을 받아, VLM이 이미지를 해석하고 고수준 작업 계획을 생성합니다. 이후 시뮬레이션과 모션 플래닝을 통해 실행 가능성을 검증하며 계획을 반복적으로 정제합니다. 이 하이브리드 접근 방식은 30~50단계의 연속적인 작업과 최대 21개의 객체가 포함된 장기 키친 조작 시나리오에서, VLM 단독 또는 TAMP 단독 방식보다 뛰어난 성능을 보입니다. 또한 시각 및 언어 맥락을 함께 활용함으로써 불확실한 정보를 처리하고, 복잡한 조작 작업에서 보다 안정적인 성능을 발휘합니다.
  • NOD-TAMP는 기존 TAMP 프레임워크가 장기 조작 작업에서 일반화에 어려움을 겪는 문제를 해결합니다. 기존 방식은 명시적인 기하학적 모델과 객체 표현에 의존하기 때문에 새로운 객체나 환경에서는 유연하게 대응하지 못하는 한계가 있습니다. NOD-TAMP는 이를 극복하기 위해 Neural Object Descriptor(NOD)를 활용합니다. NOD는 3D 포인트 클라우드에서 학습된 표현으로, 객체의 공간적 특성과 관계 정보를 인코딩합니다. 이 표현을 사용하면 로봇은 이전에 본 적 없는 객체에도 유연하게 반응할 수 있으며, 플래너는 동적으로 행동을 조정할 수 있습니다.

cuTAMP: GPU 병렬화를 통한 로봇 플래닝 가속

기존 TAMP는 먼저 작업의 전체 흐름을 추상화한 플랜 스켈레톤(plan skeleton)을 만들고, 그 뒤에 연속 변수들을 해결하는 순서로 진행됩니다. 이 두 번째 단계는 조작 시스템에서 가장 큰 병목으로 작용하는데, cuTAMP는 이 과정을 GPU에서 병렬 최적화함으로써 대폭 가속합니다. cuTAMP는 주어진 스켈레톤에 대해 수천 개의 시드(파티클)를 샘플링하고, 이를 기반으로 역기구학, 충돌 회피, 안정성, 목표 비용 등 다양한 제약 조건을 만족시키도록 미분 가능한 배치 최적화(differentiable batch optimization)를 GPU에서 실행합니다.

스켈레톤이 실행 불가능한 경우 알고리즘은 백트래킹하고, 가능할 경우에는 계획을 빠르게 도출합니다. 예를 들어 제약 조건이 많은 적재(packing)나 쌓기(stacking) 작업의 경우에도 몇 초 내에 실행 계획을 생성할 수 있습니다. 즉, 로봇이 여러 객체를 다루는 복잡한 작업을 기존의 수 분~수 시간에서 수 초 안에 해결할 수 있게 되는 것입니다.

이러한 벡터화된 제약 만족(vectorized satisfaction) 방식은, 현실 환경에서 장기 조작 문제를 실시간으로 해결할 수 있게 만드는 핵심 기술입니다.

Stein 변분 추론을 통해 로봇이 실패에서 학습하는 방법

장기 조작 모델은 학습 시 보지 못한 새로운 상황에서 실패할 수 있습니다. Fail2Progress는 로봇이 이러한 실패를 통해 조작 성능을 스스로 개선할 수 있도록 돕는 프레임워크입니다. 이 프레임워크는 실제 실패 데이터를 기반으로 스킬 모델을 보정하고, 시뮬레이션을 통해 정제함으로써 실패를 모델에 통합합니다. 또한 Stein 변분 추론을 활용해 관찰된 실패와 유사한 타깃 합성 데이터셋을 생성함으로써, 실패 상황에 대한 대응력을 향상시킵니다.

이렇게 생성된 데이터셋은 스킬-이펙트 모델을 파인튜닝하고 다시 배포하는 데 활용할 수 있으며, 이를 통해 장기 조작 작업에서 동일한 실패가 반복되는 횟수를 줄일 수 있습니다.

시작하기

이번 블로그에서는 인지 기반 TAMP, GPU 가속 TAMP, 그리고 시뮬레이션 기반 조작 보정 프레임워크에 대해 다뤘습니다. 기존 TAMP에서 자주 발생하는 문제들과, 이를 해결하기 위한 최신 연구 접근 방식들을 살펴볼 수 있었습니다.

더 자세한 내용을 원한다면 아래 리소스를 참고하세요:

이 포스트는 피지컬 AI와 로보틱스 분야에서 NVIDIA Research의 최신 연구 성과를 개발자에게 소개하기 위한 NVIDIA Robotics Research and Development Digest (R²D²) 시리즈의 일부입니다.

최신 소식을 받아보고 싶다면 뉴스레터를 구독하고, NVIDIA Robotics YouTube 채널, Discord, 개발자 포럼을 팔로우하세요. 로보틱스 개발을 시작하고 싶다면, 무료 NVIDIA Robotics Fundamentals 과정도 함께 살펴보시기 바랍니다.

감사의 말씀

이번 포스트에서 소개된 연구에 기여해주신 Ankit Goyal, Caelan Garrett, Tucker Hermans, Yixuan Huang, Leslie Pack Kaelbling, Nishanth Kumar, Tomas Lozano-Perez, Ajay Mandlekar, Fabio Ramos, Shuo Cheng, Mohanraj Devendran Shanthi, William Shen, Danfei Xu, Zhutian Yang, Novella Alvina, Dieter Fox, 그리고 Xiaohan Zhang께 감사드립니다.

Discuss (0)

Tags