**E2Map: Experience-and-Emotion Map for Self-Reflective Robot Navigation with Language Models** Review


2026.01
관심사인 Language Model + Navigation 논문 읽음


ICRA 2025 [📄] [] Chan Kim, Keonwoo Kim, Mintaek Oh, Hanbi Baek, Jiyang Lee, Donghwi Jung, Soojin Woo, Younkyung Woo, John Tucker, Roya Firoozi, Seung-Woo Seo, Mac Schwager, and Seong-Woo Kim


Abstract

I. Introduction

III. Method

A. Building and Initializing E2Map

image
Fig. 2

B. Reflecting Emotion and Updating E2Map

Fig. 2
Fig. 2

Agent가 주행 중 예기치 못한 Event를 겪었을 때, E2Map을 업데이트하는 과정은 다음 3단계로 이루어진다.

  1. Event Descriptor (LMM):
    • 사건 발생 전중후의 이미지를 입력받아 상황을 텍스트로 묘사한다.
    • 예: “갑자기 문이 열리면서 사람과 충돌했다.”
    • 문제 범위를 좁히기 위해 agent’s event는 simulator 혹은 sensor information에 의한 것으로만 가정했다.
    • (GPT-4o)
  2. Emotion Evaluator (LLM):
    • 묘사된 텍스트를 바탕으로 두 가지 척도로 감정 점수를 매긴다.
      1. Upsetness: 로봇 자신에게 미친 부정적 영향의 강도.
      2. Guiltiness: 로봇의 행동이 환경이나 타인에게 미친 영향.
    • (Llama3)
  3. Updating E2Map:
    • 산출된 감정 점수를 바탕으로 grild cell의 위치를 update 한다.
    • Weber-Fechner law에서 영감을 받아, 자극(감정 점수)의 로그 값에 비례하여 표준편차를 업데이트한다.

1) Event descriptor

Fig. 3
Fig. 3
Fig. 13
Fig. 13
\[\begin{equation}l_{evt} = \mathcal{F}_{ed}(I_{t_{evt}-h}, I_{t_{evt}}, I_{t_{evt}+h}, p_{ed})\end{equation}\]

2) Event evaluator

Prompt
Fig.14, Fig. 15
Prompt details
\[\begin{equation}s_{emo} = \mathcal{F}_{ee}(l_{evt}, p_{ee})\end{equation}\]

3) Update the E2Map

  1. 위험 범위 확장 (Standard Deviation Update)
    • 인간의 감각 강도가 자극의 로그 값에 비례한다는 Weber-Fechner law에서 영감을 받아, 감정 점수($s_{emo}$)에 따라 표준편차($\sigma$)를 업데이트한다.

      \[\begin{equation}\sigma_{k}^{new} = \sigma_{k} v_{k} \log\left(\frac{s_{emo}}{T}\right), \quad \text{where } k \in \{x, y\}\end{equation}\]
      • $(\cdot)^{new}$: 업데이트된 새로운 value 혹은 function
      • $T$: Temperature parameter
      • $v_{k}$: 사건 발생 당시 로봇의 방향 벡터(Unit direction vector). 로봇이 진입하던 방향으로 위험 범위를 확장하기 위함.
      • $s_{emo}$: LLM이 평가한 감정 점수. 점수가 클수록 $\log$ 값이 커져서 위험 반경이 넓어진다.
  2. 위험 강도 보정 (Weight Update)
    • 단순히 표준편차($\sigma$)만 넓히면 문제가 발생한다. 정규 분포(Gaussian)는 전체 부피가 1로 고정되어 있어서, 옆으로 퍼지면 필연적으로 중심의 높이(Peak value)가 낮아진다. 즉, 위험 범위를 넓혔더니 오히려 가장 위험해야 할 중심부의 위험도 수치가 떨어지는 부작용이 생긴다. 이를 막기 위해 가중치($w$)를 보정한다.

      \[\begin{equation}w_{\mathbf{p}_i}^{new} = w_{\mathbf{p}_i} \frac{\mathcal{N}_{\mathbf{p}_i}(\mathbf{p}_i)}{\mathcal{N}_{\mathbf{p}_i}^{new}(\mathbf{p}_i)}\end{equation}\]
      • $\mathcal{N}_{\mathbf{p}_i}(\mathbf{p}_i)$: 업데이트 전 중심에서의 높이.
      • $\mathcal{N}_{\mathbf{p}_i}^{new}(\mathbf{p}_i)$: 업데이트 후 중심에서의 높이.

C. Navigating with E2Map

Navigating
Fig. 1
Fig. 1

E2Map이 실제로 로봇 주행에 어떻게 활용되는지, 전체적인 Navigation Loop를 설명한다.

  1. Goal Selection (목적지 선택) (line 1)
    • 사용자가 자연어로 명령($l_{inst}$)을 내리면, Goal Selector (LLM)가 이를 해석하여 code로 변환한다.
    • 이 코드는 API를 호출하여 명령어가 지칭하는 물체나 장소의 정확한 그리드 좌표(Goal)를 반환한다.
  2. Navigation System (주행 시스템) (line 2, 4, 6~8)
    • Planning ($D^*$ Algorithm): 경로 계획에는 $D^*$ 알고리즘을 사용. 핵심은 E2Map의 감정 값($E(\mathbf{x})$)을 주행 비용(Cost)으로 사용한다는 점.
    • 감정 점수가 높은 지역은 비용이 비싸게 책정되므로, 알고리즘은 자연스럽게 이를 우회하는 최적 경로를 생성.
    • Control (MPPI): 생성된 경로를 따라가기 위해 MPPI(Model Predictive Path Integral) 제어 알고리즘을 사용.
    • Localization: 3D LiDAR를 사용하여 실시간으로 로봇의 위치($p_{agent}$)를 파악.
  3. One-shot Behavior Adjustment (즉각적인 행동 교정) (line 9~14)
    • 주행 중 예상치 못한 사건(Event)이 발생하면, 즉시 E2Map의 감정 파라미터가 업데이트.
    • 지형(비용)이 바뀌었으므로, $D^*$ 알고리즘이 즉각적으로 경로를 재계산한다
    • 이를 통해 로봇은 단 한 번의 경험만으로도 “어? 여기 위험해졌네?”라고 판단하고 바로 경로를 수정하여 행동을 교정
  4. Comparison with Potential Field (기존 방식과의 차이)
    • Repulsive force처럼 쓴다는 점은 고전적인 Potential Field 방식과 유사.
    • 차이점: Potential Field 방식은 로봇이 구석에 갇히는 Local Minima, 즉 최적화 문제가 자주 발생한다. 이 논문은 별도의 글로벌 플래너($D^*$)를 사용하여 경로를 계산함으로써 이 문제를 해결했다.


IV. Experiments

A. Experimental Setup

Setup

B. Experiments in Simulated Environment

Sim Result 1
Sim Result 2
Sim Result 3

C. Experiments in Real World

Real World 1
Real World 2

V. Conclusion




참고자료