
Abstract -
LIBERO는 robot manipulation에서 lifelong learning을 체계적으로 평가하기 위한 benchmark 이다.
기존 lifelong learning은 주로 이미지/텍스트 분류처럼 “새로운 개념을 잊지 않고 배우는가”에 집중했었다. 하지만 로봇은 단순히 object 개념만 배우는 것이 아니라, 어떻게 잡고, 열고, 놓고, 이동하는지 같은 행동 절차도 배워야 한다.
그래서 LIBERO는 다음을 평가한다.
로봇이 여러 manipulation task를 순차적으로 배울 때, object/spatial/goal/action knowledge를 얼마나 잘 transfer하고, 얼마나 덜 forget하는가?
INTRODUCTION -
구체적으로 LIBERO는 LLDM에서 다섯 가지 핵심 연구 주제를 강조한다.
- declarative knowledge, procedural knowledge, 또는 둘의 mixture를 어떻게 효율적으로 transfer할 것인가
- LLDM을 위한 효과적인 policy architecture를 어떻게 설계할 것인가
- LLDM을 위한 효과적인 algorithm을 어떻게 설계할 것인가
- task ordering에 대해 lifelong learner가 얼마나 robust한가
- model pretraining이 LLDM에 어떤 영향을 미치는가
benchmarking을 위해, 저자는 위에서 언급한 연구 주제들을 조사하는 데 사용하는 네 개의 task suite를 만든다. 이들은 총 130개 task로 구성된다. 실험을 바탕으로, 저자는 몇 가지 통찰력 있는, 심지어 예상 밖의 관찰을 제시했다.
첫째, policy architecture design은 lifelong learning algorithm만큼 중요하다.
둘째, 우리가 평가한 lifelong learning algorithm들은 forgetting을 방지하는 데는 효과적이지만, 일반적으로 forward transfer 측면에서는 sequential finetuning보다 성능이 낮다.
셋째, 우리의 실험은 semantic하게 풍부한 task description의 pretrained language embedding을 사용하는 것이, task ID의 embedding을 사용하는 것보다 더 나은 성능을 내지 못한다는 것을 보여준다.
넷째, 대규모 offline dataset에 대한 기본적인 supervised pretraining은 LLDM에서 learner의 downstream performance에 부정적인 영향을 미칠 수 있다.
결론적으로 저자가 말한 것은
기존 lifelong learning은 주로 이미지/텍스트 domain에서 “개념을 잊지 않고 배우는가”를 다뤘다.
하지만 로봇 manipulation에서는 object나 위치 같은 declarative knowledge뿐 아니라, 잡기·열기·넣기 같은 procedural knowledge transfer가 중요하다.
LIBERO는 이 둘을 체계적으로 분석하기 위해 만든 lifelong robot manipulation benchmark이다.
BackGround -
Markov Decision Process for Robot Learning
로봇 학습 문제는 finite-horizon Markov Decision Process(MDP)로 공식화될 수 있다.
$$M = (S, A, T, H, \mu_0, R)$$
여기서 $S$와 $A$는 각각 로봇의 state space와 action space이다. $\mu_0$는 initial state distribution이고, $R : S \times A \rightarrow \mathbb{R}$은 reward function이며, $T : S \times A \rightarrow S$는 transition function이다.
이 연구에서는 sparse-reward setting을 가정하고, $R$을 goal predicate로 대체한다.
$$g : S \rightarrow \{0, 1\}$$
로봇의 목표는 expected return을 최대화하는 policy $\pi$를 학습하는 것이다.
$$\max_{\pi} J(\pi) = \mathbb{E}_{s_t, a_t \sim \pi, \mu_0} \left[ \sum_{t=1}^{H} g(s_t) \right]$$
여기서는 dense reward를 주지 않고, 목표 상태에 도달했는가 아닌가를 나타내는 sparse goal predicate를 사용한다.
Lifelong Robot Learning Problem
lifelong robot learning problem에서 로봇은 하나의 policy $\pi$를 사용해 $K$개의 task를 순차적으로 학습한다.
$$\{T^1, \ldots, T^K\}$$
저자는 $\pi$가 task에 condition된다고 가정한다.
$$\pi(\cdot \mid s; T)$$
각 task $T^k$는 initial state distribution $\mu_0^k$와 goal predicate $g^k$로 정의된다.
$$T^k \equiv (\mu_0^k, g^k)$$
저자는 모든 task에 대해 $S, A, T, H$가 동일하다고 가정한다. 즉, state space, action space, transition function, horizon은 task마다 같고, task마다 달라지는 것은 initial state distribution과 goal predicate이다.
$k$번째 task $T^k$까지 학습한 시점에서, 로봇은 다음 목적함수를 최적화하고자 한다.
$$\max_{\pi} J_{LRL}(\pi) = \frac{1}{k} \sum_{p=1}^{k} \left[ \mathbb{E}_{s_t^p, a_t^p \sim \pi(\cdot;T^p), \mu_0^p} \left[ \sum_{t=1}^{L} g^p(s_t^p) \right] \right]$$
lifelong setting의 중요한 특징은 agent가 task $T^k$를 학습할 때, 이전 $k-1$개의 task에 대한 access를 잃는다는 점이다.LIBERO의 lifelong setting은 이런 구조이다.
Task 1 학습
→ Task 2 학습
→ Task 3 학습
→ ...
→ Task K 학습
하지만 중요한 제약이 있습니다.
새 task를 배울 때 이전 task data에 자유롭게 접근할 수 없다.
즉, 로봇은 계속 새로운 task를 배우지만, 이전 task를 잊으면 안 된다.
예를 들어:
T1: bowl을 plate 위에 놓기
T2: mug를 drawer 안에 넣기
T3: stove를 끄기
를 순차적으로 배운다면, T3T를 학습한 뒤에도 T1, T2를 잘 수행해야 합니다.
이것이 lifelong robot learning의 핵심이다.
Lifelong Imitation Learning (평생 모방 학습)
Sparse-reward reinforcement learning(희소 보상 강화학습)의 어려움 때문에, 우리는 더 실용적인 대안 setting을 고려한다. 이 setting에서는 사용자가 task sequence의 각 task에 대해 작은 demonstration dataset(시연 데이터셋)을 제공한다.
$D^k = \{\tau_i^k\}_{i=1}^{N}$를 task $T^k$에 대한 $N$개의 demonstration이라고 하자. 각 trajectory는 다음과 같이 구성된다.
$$\tau_i^k = (o_0, a_0, o_1, a_1, \ldots, o_{l^k})$$
여기서 $l^k \leq H$이다. $o_t$는 로봇의 sensory input(감각 입력)이다. 여기에는 perceptual observation(지각 관측)과 로봇의 joint(관절) 및 gripper(그리퍼)에 관한 정보가 포함된다.
실제로 observation $o_t$는 종종 non-Markovian(비마르코프성)이다. 따라서 partially observable MDP(부분 관측 가능한 MDP)의 기존 연구를 따라, 우리는 state $s_t$를 observation history의 집합으로 나타낸다.
$$s_t \equiv o_{\leq t} \triangleq (o_0, o_1, \ldots, o_t)$$
이로 인해 Eq. (1)과 같은 objective를 갖는 lifelong imitation learning 문제가 된다. 하지만 training 중에는 다음 surrogate objective function(대리 목적 함수)으로 behavioral cloning(행동 복제)을 수행한다.
$$\min_{\pi} J_{BC}(\pi) = \frac{1}{k} \sum_{p=1}^{k} \mathbb{E}_{o_t, a_t \sim D^p} \left[ \sum_{t=0}^{l^p} L \left( \pi(o_{\leq t}; T^p), a_t^p \right) \right]$$
여기서 $L$은 supervised learning loss(지도학습 손실 함수)이다. 예를 들어 negative log-likelihood loss가 사용될 수 있다. 그리고 $\pi$는 Gaussian mixture model(가우시안 혼합 모델)이다.
마찬가지로, task $T^k$를 학습할 때 이전 task들의 dataset $\{D^p : p < k\}$는 완전히 사용할 수 없다고 가정한다.
즉 LIBERO는 로봇이 여러 manipulation task를 순차적으로 imitation learning으로 배울 때, 이전 task를 잊지 않으면서 새로운 task를 얼마나 잘 배우는가?
Research Topics in LLDM -
주제 질문
| T1 Knowledge Transfer | object, spatial relation, goal/action knowledge를 어떻게 transfer하는가? |
| T2 Architecture | image/language/robot state를 어떻게 policy architecture에 넣을 것인가? |
| T3 Algorithm | 어떤 lifelong learning algorithm이 forgetting을 줄이고 transfer를 높이는가? |
| T4 Task Ordering | task 순서가 바뀌어도 robust한가? |
| T5 Pretraining | pretraining이 lifelong robot learning에 실제로 도움이 되는가? |
LIBERO -

LIBERO는 다음 요소들로 구성된다.
첫째, task를 끊임없이 생성할 수 있게 하는 procedural generation pipeline이다.
둘째, benchmarking을 위해 생성한 네 개의 task suite이다.
셋째, 다섯 개의 algorithm이다.
넷째, 세 개의 neural architecture이다.
Procedural Generation of Tasks -
LIBERO는 세 단계로 새로운 task를 절차적으로 생성한다.
첫째, 인간 활동의 language annotation에서 behavioral template을 추출하고, 이러한 template을 바탕으로 natural language로 묘사된 sampled task를 생성한다.
둘째, task description이 주어졌을 때 initial object distribution을 지정한다.
셋째, language instruction과 일치하는 propositional formula를 사용해 task goal을 지정한다.
Procedural Generation of Tasks
LLDM 연구는 task diversity를 유지하면서도 기존 task와의 관련성을 유지할 수 있는 방식으로 새로운 task를 생성하는 체계적인 방법을 필요로 한다.
첫째, 인간 활동의 language annotation에서 behavioral template을 추출하고, 이러한 template을 바탕으로 natural language로 묘사된 sampled task를 생성한다.
둘째, task description이 주어졌을 때 initial object distribution을 지정한다.
셋째, language instruction과 일치하는 propositional formula를 사용해 task goal을 지정한다.
우리의 generation pipeline은 Robosuite 위에 구축되어 있다. Robosuite는 seamless integration을 제공하는 modular manipulation simulator이다.
Behavioral Templates and Instruction Generation -
저자는 대규모 activity dataset인 Ego4D를 선택한다. Ego4D는 language annotation이 포함된 다양한 일상 활동을 포함한다.
저자는 먼저 language description을 추출하여 dataset을 pre-process하고, 그런 다음 이를 자주 사용되는 language template들의 큰 집합으로 요약한다. 이 pre-processing step 이후, 우리는 template과 simulator에서 사용 가능한 object를 선택하여 language instruction 형태의 task description 집합을 생성한다.
예를 들어, 저자는 “Open ...”이라는 template으로부터 “Open the drawer of the cabinet”이라는 instruction을 생성할 수 있다.
1. 왜 behavioral template이 필요한가?
LIBERO는 lifelong robot learning benchmark이기 때문에 지속적인 학습을 평가할 수 있는 수많은 task가 필요하다. 하지만 task를 사람이 하나씩 수동으로 만들면 확장성(Scalability)이 떨어진다.
예를 들어 사람이 직접 아래와 같은 task를 수만 개씩 설계하는 것은 불가능에 가깝다.
open the drawer
put the bowl in the drawer
place the ketchup next to the plate
turn off the stove
put the mug on the tray
이 문제를 해결하기 위해 LIBERO는 사람의 일상 행동 데이터에서 자주 등장하는 공통적인 행동 패턴인 behavioral template을 추출하여 사용한다.
---
2. Ego4D를 왜 쓰나?
논문에서는 대규모 인간 행동 데이터셋인 Ego4D를 활용한다. Ego4D는 사람들이 일상생활에서 행하는 다양한 활동을 1인칭 시점 영상(Egocentric video)과 언어 주석(Language annotation)으로 담고 있다.
Ego4D 데이터셋에는 다음과 같은 언어적 묘사가 포함되어 있다.
open the drawer
put the cup on the table
take the bottle from the fridge
close the cabinet
place the bowl in the sink
LIBERO가 Ego4D의 비디오 영상을 직접 로봇 학습에 사용하는 것이 아니다. Ego4D는 오직 로봇이 수행할 만한 유의미한 task instruction을 생성하기 위한 텍스트(Language source) 자원으로만 사용된다.
---
3. Behavioral template이란 무엇인가?
Behavioral template은 구체적인 object(물체)의 이름을 제거하고, 행동의 구조적 골격만 남겨둔 문장 틀을 의미한다.
---
4. Simulator Object 결합
추출된 template에 시뮬레이터 환경 내에서 실제로 상호작용 가능한 object들을 끼워 넣음으로써 구체적인 task를 완성한다.
예를 들어, Robosuite/LIBERO 환경에 `bowl, mug, plate, drawer, cabinet, stove, ketchup, basket` 등의 물체가 존재한다고 가정하자. `put [object A] in [object B]`라는 템플릿에 이 물체들을 조합하면 다음과 같은 수많은 instruction을 자동으로 생성할 수 있다.
* put the bowl in the drawer
* put the mug on the plate
* put the ketchup in the basket
* open the drawer of the cabinet
---
5. 핵심은 "언어 instruction만 만드는 것"이 아니다
Behavioral template 단계는 언어 생성이 중심이지만, 이것이 최종 LIBERO task가 되려면 시뮬레이터 상에서 실제로 실행 가능한 물리적 환경 정보와 매핑되어야 한다.
만약 생성된 instruction이 *"put the bowl in the drawer"* 라면, 시스템은 후속 단계에서 아래 요소들을 정의해야 한다.
Scene (배경): kitchen
Objects (배정 물체): bowl, drawer, cabinet
Initial state (초기 상태): bowl은 table 위, drawer는 닫힌 상태
Goal (목표 상태):bowl이 drawer 안에 위치함
즉, behavioral template은 아래와 같이 체계적으로 구성된 전체 task 생성 파이프라인의 첫 단추역할을 한다.
> LIBERO Task 생성 파이프라인]
> Ego4D language annotation $\rightarrow$ behavioral template 추출 $\rightarrow$ simulator object 결합 및 instruction 생성 $\rightarrow$ 적절한 scene layout 선택 $\rightarrow$ PDDL을 이용한 initial state 및 goal predicate 정의 $\rightarrow$ Robosuite task 빌드 및 실행
---
6. 구체적인 파이프라인 예시
예시 A (문문형 행동)
Ego4D 데이터:open the drawer, open the cabinet, open the fridge
Behavioral template: `open [object]`
LIBERO instruction:open the drawer, open the cabinet
Task generator 변환:
* Object: cabinet / Part: drawer
* Initial state: drawer is closed
* Goal predicate: $Open(\text{drawer})$
예시 B (배치형 행동)
Ego4D 데이터:put the cup on the table, put the bowl on the counter, place the plate on the tray
Behavioral template:`put [object A] on [object B]`
LIBERO instruction:put the bowl on the plate, put the mug on the tray
Goal predicate:$On(\text{bowl}, \text{plate})$ 또는 $NextTo(\text{ketchup}, \text{plate})$
---
7. 왜 이것이 LRL에서 중요한가?
LIBERO의 진정한 목적은 단순히 양적으로 많은 task를 만드는 것이 아니다. 로봇이 평생 학습(Lifelong learning)을 진행하는 과정에서 어떤 지식을 어떻게 전이(Transfer)하는지 정밀하게 평가하는 것이 목적이다. 이를 위해서는 task들 사이에 구조적인 공통점과 차이점이 정교하게 통제되어야 한다.
예를 들어 아래의 task 세트가 주어졌을 때, 로봇은 일정한 규칙성을 기반으로 지식을 재사용해야 한다.
put the bowl on the plate
put the bowl next to the plate
put the mug on the plate
put the bowl in the basket
결과적으로 behavioral template은 task 간의 구조적 연관성(Task family)을 형성하는 핵심 장치다. LIBERO는 무작위로 생성된 파편화된 task들의 모음이 아니라, 인간의 일상 행동 양식을 기반으로 설계되어 서로 유기적으로 얽혀 있는 고도화된 벤치마크 환경을 제공할 수 있게 된다.
Task Suites
LIBERO에는 네 개의 task suite가 있다.
- LIBERO-SPATIAL
- LIBERO-OBJECT
- LIBERO-GOAL
- LIBERO-100
처음 세 task suite는 앞서 T1에서 언급한 것처럼 declarative knowledge와 procedural knowledge의 transfer를 분리해서 보기 위해 curated되었다.
--> 여기서 중요한게 이 벤치마크를 VLA에서 자주 사용된다. 특히 시뮬레이션 환경에서 평가한다.
1. LIBERO-Spatial
원문 설명의 핵심은:
같은 object set 안에서 bowl을 plate 위에 놓는 task들인데, 두 개의 동일한 bowl이 있고, 두 bowl은 위치나 다른 object와의 spatial relationship만 다르다.
즉, object 자체는 거의 같다. 둘 다 bowl. 그런데 instruction이 가리키는 bowl을 구분하려면 공간 관계를 이해해야 한다.
예를 들면 이런 느낌.
put the bowl on the plate
그런데 scene에 bowl이 두 개 있다.
plate 옆 bowl
stove 근처 bowl
왼쪽 bowl
오른쪽 bowl
이 경우 로봇은 “bowl”이라는 object concept만 알아서는 부족하다. 어떤 bowl인지를 spatial relation으로 구분해야 한다.
따라서 LIBERO-Spatial은 다음을 평가한다.
로봇이 새로운 spatial relationship을 계속 학습하고 기억할 수 있는가?
논문에서는 이를 spatial information에 관한 declarative knowledge transfer로 본다.
2. LIBERO-Object
원문 설명의 핵심은:
모든 task가 unique object를 pick-place하도록 요구한다.
즉, task마다 조작해야 하는 object type이 달라진다.
pick up the mug
pick up the ketchup
pick up the bowl
pick up the book
여기서 중요한 것은 spatial relation이나 goal variation보다는 새로운 object type을 계속 배우는 것이다.
따라서 LIBERO-Object는 다음을 평가.
로봇이 새로운 object type을 계속 학습하고 기억할 수 있는가?
논문에서는 이것도 declarative knowledge transfer로 분류합니다. 왜냐하면 object name, object identity, object concept에 관한 지식이기 때문이다.
3. LIBERO-Goal
원문 설명의 핵심은:
모든 task가 같은 object와 고정된 spatial relationship을 공유하지만, task goal만 다르다.
즉, scene 구성은 거의 같다. object도 같고 위치 관계도 고정되어 있다. 대신 해야 하는 행동 목표가 달라진다.
예를 들어 같은 물체들이 같은 위치에 있는데, instruction만 달라지는 식.
put the bowl on the plate
put the bowl in the basket
move the mug next to the plate
open the drawer
여기서는 object를 새로 배우는 문제가 아니다. 공간 배치도 새로 배우는 문제가 아니다. 핵심은 무엇을 해야 하는가, 즉 goal과 behavior이다.
따라서 LIBERO-Goal은 다음을 평가한다.
로봇이 새로운 motion과 behavior에 관한 knowledge를 계속 학습할 수 있는가?
논문에서는 이를 procedural knowledge transfer로 본다. 즉 “무엇이 무엇인가”가 아니라 “어떻게 행동해야 하는가”에 관한 지식이다.
4. LIBERO-100
원문 설명의 핵심은:
diverse object interactions와 versatile motor skills를 포함하는 100개 task suite이다.
LIBERO-100은 위의 세 suite처럼 하나의 knowledge type만 분리해서 보는 것이 아니라, 여러 지식이 섞인 더 복합적인 suite이다.
논문에서는 LIBERO-100을 두 부분으로 나눕니다.
| LIBERO-90 | 90개 short-horizon tasks | pretraining data source |
| LIBERO-LONG | 10개 long-horizon tasks | downstream lifelong learning evaluation |
즉 LIBERO-100은 object, spatial layout, goal, background, motor skill 등이 얽혀 있는 더 현실적인 setting.
따라서 LIBERO-100은 다음을 평가한다.
여러 object interaction과 다양한 motor skill이 섞인 상황에서 lifelong learning이 가능한가?
Evaluation Metrics -

총 세가지로 평가됨.
- FWT, 즉 forward transfer
- NBT, 즉 negative backward transfer
- AUC, 즉 success rate curve 아래 면적
모든 metric은 success rate를 기준으로 계산된다.
낮은 NBT는 policy가 이전에 본 task에서 더 좋은 성능을 가진다는 것을 의미한다.
높은 FWT는 policy가 새로운 task를 더 빠르게 학습한다는 것을 의미한다.
높은 AUC는 NBT와 FWT를 모두 고려했을 때 전반적으로 더 좋은 성능을 의미한다.

metric은 일반적인 VLA 논문처럼 단순 평균 success rate만 보는 게 아님.
Metric의미좋을수록
| FWT | 새 task를 얼마나 빨리 배우는가 | 높을수록 좋음 |
| NBT | 예전 task를 얼마나 잊었는가 | 낮을수록 좋음 |
| AUC | 전체 lifelong 과정에서의 종합 성능 | 높을수록 좋음 |
하지만 VLA의 논문은 단순히 success rate 만 평가됨.