본문 바로가기
Drawing (AI)/Paper review

[논문 리뷰] VoxPoser: Composable 3D Value Maps for Robotic Manipulation with Language Models

by 생각하는 이상훈 2025. 2. 10.
728x90

Abstract

VoxPoser는 LMM과 VLM을 결합하여 복잡한 3D 환경에서 로봇이 다양한 조작 작업을 수행할 수 있도록 하는 새로운 계획 및 제어 프레임워크를 제시한다. 기존의 사전 정의된 움직임에 의존하지 않고 Free form 자연어 지시를 받아 즉각적이고 유연한 로봇 궤적을 합성할 수 있도록 하는 점이 핵심이다. 이를 통해 로봇이 동적이고 복잡한 환경에서도 효과적으로 작동할 수 있는 가능성을 보여준다.


Intro

언어는 인간이 세계에 대한 지식과 경험을 압축하여 전달하는 매개체다. LLM은 이러한 추상적 표현을 캡처하며 세계를 언어 공간으로 투영하여 일반화된 지식을 내재화한다. 그러나 모델이 내재한 지식을 실제 물리적 행동으로 전환하는 방법은 여전히 미해결 문제로 남아있다. 본 연구는 추상적인 언어 명령을 로봇의 구체적인 행동으로 연결하는 문제를 다룬다. 기존 연구들은 어휘 분석이나 텍스트 단계 분해를 통해 명령을 해석하였으나 물리적 상호작용을 위해 사전 정의된 Motion Primitive에 의존하였으며 이는 대규모 로봇 데이터 부족으로 인한 병목 현상으로 작용한다. 이때 LLM의 풍부한 내부 지식을 미세한 행동 수준에서 활용하는 방안을 직접 제어 신호를 텍스트로 출력하는 것은 현실적이지 않음을 지적하고 LLM은 언어에 기반한 affordance와 제약 조건을 추론하는 데 뛰어남을 활용하여 코드 생성 능력으로 VLM과 연동하고 3D voxel 지도 형태로 시각 공간에 지식을 정착시킨다고 한다. 예를 들어 “상단 서랍을 열고 꽃병을 조심하라”는 명령에서 손잡이를 잡고 서랍을 밀어내며 꽃병 주변은 피해야 한다는 정보를 추론한다. LLM이 생성한 파이썬 코드를 통해 인식 API를 호출하고 관련 객체의 공간 정보를 획득하여 3D voxel을 조작함으로써 관찰 공간의 특정 위치에 높은 보상이나 낮은 비용을 부여한다. 이렇게 구성된 Value map은 모션 플래너의 목적 함수로 작용하여 추가 학습 없이도 주어진 명령을 달성하는 로봇 궤적을 직접 합성하도록 한다.


Method

Problem Formulation

VoxPoser의 방법론을 최적화 문제로 공식화하고 이를 바탕으로 언어 지시를 3D Value map에 매핑하며 그 결과로 로봇 조작을 위한 궤적을 합성하는 전 과정을 설명한다.

우선에서는 Free form 언어 지시 L을 여러 서브태스크 l_i로 분해하여 각 서브태스크마다 로봇 궤적 τ₍ᵣ₎ᵢ를 생성하는 문제로 정의한다. 각 로봇 궤적은 6-DoF end-effector 위치, 속도, 그리퍼 동작 등으로 구성된 연속적 waypoints sequence로 표현되며, 최적화 문제는 태스크 완료 정도를 평가하는 F_task와 제어 비용을 고려하는 F_control을 합산한 목적 함수를 최소화하면서 로봇 및 환경의 동역학과 운동학 제약을 만족하도록 구성된다.

Grounding Language Instruction via VoxPoser

이후 Free form 언어 지시로부터 3D voxel Value map V를 구성하는 과정을 다룬다. 언어 지시로부터 “entity of interest”인 로봇 엔드 이펙터 등에게 작용하는 보상 또는 비용 값을 할당하는 3D 지도 V를 생성하며, 이때 F_task는 “entity of interest”가 지도 내에서 이동하며 누적되는 비용으로 근사된다. LLM은 주석으로 주어진 지시를 바탕으로 파이썬 코드를 생성하여 인식 API를 호출하고, NumPy 연산을 통해 3D 배열을 조작하며 특정 위치에 정확한 값을 부여하여 지도 값을 산출한다. 또한 포즈, 그리퍼 동작, 속도 등의 추가 매개변수를 위해 회전 지도, 그리퍼 지도, 속도 지도를 LLM을 통해 구성하고 이를 최적화 과정에 포함시킨다.

 

Zero-Shot Trajectory Synthesis with VoxPoser

태스크 비용 F_task를 산출한 후 위의 식에 명시된 전체 문제를 해결하기 위해 로봇 모션 궤적을 계획한다. 이를 위해 간단한 0차 최적화 기법을 사용하여 무작위로 궤적을 샘플링하고, 제시된 목적 함수로 평가한다. 최적화는 모델 예측 제어(MPC) 프레임워크 내에서 구현되며, 매 단계마다 현재 관찰 값을 기반으로 궤적을 반복적으로 재계획한다. 이로 인해 동적 장애 상황에서도 궤적을 강인하게 실행할 수 있다. VoxPoser가 관찰 공간 내에서 밀집된 보상 값을 제공하고 매 단계 재계획이 가능하므로, 단순한 휴리스틱 모델만으로도 다양한 조작 작업을 성공적으로 수행할 수 있다. 또한, 일부 가치 지도는 반드시 로봇 자체에 국한되지 않고 ‘관심 대상’에 대해 정의되므로, 동역학 모델을 활용하여 로봇과 환경 간의 상호작용을 통해 원하는 객체의 움직임을 유도하는 최적의 로봇 궤적을 산출하여 태스크 비용을 최소화한다.

 

Efficient Dynamics Learning with Online Experiences

제로샷 방식으로 합성한 로봇 궤적 외에도 온라인 상호작용을 통해 동역학 모델을 효율적으로 학습하는 방법을 제시한다. 이 과정은 로봇이 매 시간 t마다 환경 관찰 ot, 이에 따른 행동 at, 그리고 다음 관찰 ot+1의 전이 데이터를 수집하는 단계와 수집한 데이터를 바탕으로 동역학 모델 g_θ를 학습하는 단계를 번갈아 수행한다. 여기서 동역학 모델은 예측된 다음 관찰 ôt+1과 실제 관찰 ot+1 사이의 L2 손실을 최소화하도록 학습된다. 동역학 모델 학습의 효율성을 결정하는 중요한 요소는 모델 예측 제어(MPC) 내에서 사용하는 행동 샘플링 분포 P(at|ot)이다. 일반적으로 이 분포는 전체 행동 공간 A에서 무작위로 샘플링되는데 이는 문 여는 작업과 같이 특정 태스크를 해결할 때 관련 객체(예를 들어 문 손잡이)와 의미 있는 상호작용을 하지 않는 다수의 불필요한 행동들을 탐색하게 되어 비효율적이다. VoxPoser는 대형 언어 모델(LLM)의 상식 기반 지식을 활용하여 제로샷 방식으로 로봇 궤적 τ₀ᵣ를 합성하므로 이 궤적을 유용한 사전 정보로 사용하여 행동 샘플링 분포를 P(at|ot, τ₀ᵣ)로 편향시킬 수 있다. 이로 인해 전체 행동 공간 A를 탐색하는 대신 τ₀ᵣ 주변에서 소규모 노이즈 ε를 추가하여 국소적 탐색을 수행함으로써 학습 과정을 크게 가속화한다.


Experiments

LLM과 프롬프트 구성에서는 “Code as policies: Language model programs for embodied control”의 프롬프트 구조를 따르며 LLM이 스스로 생성한 코드를 재귀적으로 호출하는 방식으로 구현한다. 각 언어 모델 프로그램(LMP)은 인식 호출 처리와 같이 고유한 기능을 담당하며 OpenAI API를 통해 GPT-4를 사용한다. 각 LMP에는 5개에서 20개의 예시 질의와 응답이 포함되어 코드 생성 시 참고하도록 하며 전체 프롬프트는 부록에 제공된다.

VLM과 인식 부분에서는 LLM으로부터 객체 또는 부위에 대한 질의가 들어오면 먼저 OWL-ViT 오픈 보캐뮬러리 탐지기를 통해 해당 객체의 바운딩 박스를 얻는다. 이후 Segment Anything을 통해 객체의 마스크를 생성하고 비디오 트래커 XMEM으로 해당 마스크를 추적한다. 이 추적된 마스크와 RGB-D 관찰 데이터를 활용하여 객체 또는 부위의 포인트 클라우드를 재구성한다.

Value map 구성에서는 affordance, avoidance, endeffector velocity, end-effector rotation, and gripper action과 같은 다양한 유형의 가치 지도를 정의한다. 각 지도는 고유한 LMP에 의해 생성되며, 주어진 지시를 입력받아 (100, 100, 100, k) 형태의 voxel 지도(여기서 k는 지도 유형에 따라 달라짐 예를 들어 affordance와 avoidance의 경우 k=1, 회전 지도는 k=4)를 출력한다. affordance 지도에는 유클리드 거리 변환을 적용하여 거리의 영향을 확산시키고 avoidance 지도에는 가우시안 필터를 적용하여 부드러운 반발 효과를 부여한다. 이들 가치 지도 LMP 위에 두 개의 상위 LMP가 정의되는데 하나는 사용자 지시(예: “서랍 열기”)를 입력받아 서브태스크 시퀀스 l₁:N으로 분해하는 플래너이고 다른 하나는 각 서브태스크 lᵢ를 입력받아 상세한 언어 파라미터와 함께 관련 Value map LMP를 호출하는 composer이다.

Motion planner 부분에서는 주로 affordance와 avoidance 지도만을 사용하여 최적화를 수행한다. 탐욕적 탐색(greedy search) 기법을 통해 충돌 없이 이동 가능한 엔드 이펙터의 위치 p₁:N ∈ ℝ³ 시퀀스를 산출하며 이후 각 위치에서 회전 지도, 속도 지도 등 나머지 파라미터를 적용하여 추가적으로 제어한다. 모션 플래너에서 사용되는 비용 지도는 정규화된 affordance 지도와 avoidance 지도의 가중 합(가중치는 각각 2와 1)을 음수로 취하여 계산한다. 완전한 6-DoF 궤적이 합성되면 첫 번째 웨이포인트를 실행하고 5Hz의 주기로 새로운 궤적을 재계획하여 환경 변화에 빠르게 대응한다.

Dynamics Model은 모든 태스크에 대해 로봇의 알려진 동역학 모델을 활용하여 엔드 이펙터가 계획된 웨이포인트를 따르도록 한다. 대부분의 태스크에서 “entity of interest”이 로봇 자체인 경우 환경은 정적이라고 가정하여 별도의 환경 동역학 모델을 사용하지 않지만, 매 단계 최신 관찰을 반영하기 위해 재계획을 수행한다. 반면, “entity of interest”이 객체인 경우에는 접촉 지점, 밀어내는 방향, 밀어내는 거리를 파라미터로 하는 planar pushing 모델을 연구한다. 입력 포인트 클라우드를 밀어내는 방향으로 지정된 거리를 이동시키는 휴리스틱 기반 동역학 모델을 사용하며, MPC와 random shooting을 통해 액션 파라미터를 최적화한 후 미리 정의된 밀기 프리미티브를 실행한다. 단, 액션 파라미터가 로봇의 엔드 이펙터 또는 관절 공간에서 정의될 경우 밀기 프리미티브가 필요 없으며 이 경우 최적화 시간이 증가하더라도 더 부드러운 궤적을 산출할 수 있다.


Conclusion

이 논문에서는 일상적인 조작 작업을 위해 LLM과 VLM으로부터 3D 인지 공간에 기반하여 affordance와 제약 조건을 추출하는 범용 프레임워크인 VOXPOSER를 제안한다. VOXPOSER는 개방형 명령과 객체에 대해 탁월한 일반화 성능을 보였다. 눈에 띄는 결과에도 불구하고 VOXPOSER에는 몇 가지 한계가 존재한다. 우선 VOXPOSER는 외부 인식 모듈에 의존기에 전체적인 시각적 추론이나 세밀한 객체 기하 구조의 이해를 요구하는 작업에는 한계가 발생한다. 둘째로 효율적인 동역학 학습에는 응용할 수 있으나 동일한 수준의 일반화 성능을 갖는 contact-rich task를 수행하기 위해서는 범용 동역학 모델이 여전히 필요하다. 셋째 본 연구의 motion planner는 end-effector trajectory만을 고려하기에 로봇 팔 계획 역시 가능하며 오히려 더 나은 설계 선택일 수 있다. 마지막으로 LLM에 대해서는 수동으로 프롬프트를 설계해야 한다는 문제가 있다.

추가로 해당 논문은 몇 가지 흥미로운 방향을 제시한다. 예를 들어, 최근 다중 모달 LLM의 성공 사례를 Voxposer에 직접 적용하여 직접적인 시각적 그라운딩을 수행할 수 있다. alignment 및 프롬프트 관련하여 개발된 방법들을 활용하면 프롬프트 설계에 소요되는 노력을 줄일 수 있다. 마지막으로 Voxposer가 합성한 value map와 가장 잘 연계될 수 있는 보다 발전된 trajectory optimization method를 개발할 수 있는 가능성이 존재한다.


728x90