본문 바로가기

Vision Language Action model

A Unified Framework for Real-Time Failure Handling in RoboticsUsing Vision-Language Models, Reactive Planner and Behavior Trees

논문 주소: https://arxiv.org/pdf/2503.15202


Abstract

로봇 시스템은 예기치 못한 장애물, 센서 오류, 환경 변화 등으로 인해 종종 실행 실패에 직면합니다. 기존의 실패 복구 방법은 사전에 정의된 전략이나 인간의 개입에 의존하기 때문에 적응력이 떨어지는 경향이 있습니다. 본 논문에서는 Vision-Language Model, reactive planner, Behavior Tree를 결합하여 실시간 실패 처리를 가능하게 하는 통합 실패 복구 프레임워크(Unified failure recovery framework)를 제안합니다. 본 연구에서의 접근 방식은 다음 두 가지 기능을 처리합니다: 

  • 실행 전 검증(pre-execution verification): 실행 전에 잠재적인 실패를 확인
  • 반응형 실패 처리(reactive failure handling): 실행 도중 BT 조건을 확인하고, 누락된 전제조건을 추가하거나, 필요한 경우 새로운 기술(skill)을 생성하여 실패를 감지하고 복구

이 프레임워크는 scene Graph를 통해 환경을 구조화된 방식으로 인식하며, execution history를 추적하여 지속적인 모니터링문맥 인식 기반 적응형 실패 처리를 가능하게 합니다. 본 프레임워크는 실제 환경에서 ABB YuMi 로봇을 사용한 페그 삽입, 객체 분류, 서랍 배치와 같은 작업 및 AI2-THOR 시뮬레이터에서 실험을 통해 평가되었습니다. 실험 전 검증 방법이나 반응형 처리 방법개별적으로 사용하는 경우와 비교했을 때, 본 방법은 더 높은 작업 성공률과 우수한 적응성을 달성하였습니다. 또한 abluation study를 통해 효과적인 로봇 실패 복구를 위한 VLM 기반 추론, 구조화된 장면 표현, 실행 이력 추적이 핵심 요소임을 확인하였습니다.

 

 

I. INTRODUCTION 

현대 로봇 시스템은 통제된 환경에서는 매우 잘 작동하지만, 동적 환경에서는 여전히 어려움을 겪습니다. 예를 들어, 소규모 배치 제조협동 조립 라인에서는 예기치 못한 장애물, 센서 오류, 물체 정렬 불량 등이 자주 발생하여 작업 지연 및 비효율성을 초래합니다. 이러한 환경에서는 로봇이 실시간으로 변화에 적응하고 오류를 처리하는 능력이 필수적입니다.

 

이러한 과제를 해결하기 위해 로봇이 인간의 개입 없이 오류를 스스로 감지하고, 원인을 파악하며, 수정할 수 있는 자율적인 실패 복구 메커니즘 개발이 중요합니다. 이는 로봇 시스템의 신뢰성을 높이고 작업 중단 시간을 줄이는 데 결정적인 역할을 합니다.

 

기존의 실패 복구 기법은 크게 두 가지로 나눌 수 있습니다.

  • 학습 기반 방법:데이터로부터 직접 로봇 제어 정책을 학습하는 '엔드 투 엔드(end-to-end)' 방식을 사용합니다. 이는 다양한 작업에서 효과적일 수 있지만, 해석 가능성과 검증 가능성이 부족하여 장비 손상이나 운영 중단과 같은 위험이 있는 안전이 중요한 도메인에서는 부적합할 수 있습니다.
  • 구조화된 실행 프레임워크 (예: Behavior Trees, BTs): 모듈형 구조를 통해 검증, 적응, 효율적인 실패 복구를 가능하게 합니다. BT는 재사용 가능한 스킬의 계층적 조합으로 execution policies을 정의하여, 세밀한 모니터링안전 기준 준수를 동시에 제공합니다. 이러한 모듈성은 값비싼 전체 재계획 없이도 점진적인 복구를 가능하게 합니다. BT는 수동으로 설계할 수도 있지만, reactive planner는 전제 조건과 사후 조건을 기반으로 skill을 자동으로 선택하고 생성하여 로봇이 전체 재계획 없이도 실시간 환경 변화에 적응 가능한 실행 정책을 만들 수 있도록 돕습니다.

 이전 연구에서는 Vision-Language Model 을 활용한 사전 실행(계획 수준) 검증 기반의 실패 복구 프레임워크를 제안했습니다. 이 시스템은 로봇이 작업을 시작하기 전에 스킬, 실행 조건, 계획된 행동 트리, 그리고 사전 이미지를 분석하여 계획이 성공적인 실행에 충분한 지식을 갖추고 있는지 평가했습니다. 만약 필수적인 전제 조건이나 필요한 스킬이 부족하다면, 실행 오류를 방지하기 위한 수정을 제안하여 불완전한 작업 지식으로 인한 실패를 줄였습니다.

 

하지만 이 접근 방식은 실행 도중에 발생하는 실패 (예: 예상치 못한 방해, 환경 변화, 하드웨어 오류 등)는 고려하지 못하는 한계가 있었습니다.

 

본 연구에서는 이러한 한계를 극복하기 위해 다음과 같은 개선을 이루었습니다:

 

  • 지속적인 장면 그래프 업데이트: 객체 간 및 로봇-객체 간의 공간 관계를 실시간으로 추적하는 장면 그래프를 지속적으로 업데이트합니다. 이는 실행 후에 장면 그래프를 생성하는 기존 방식과 달리 환경 변화에 즉각적으로 대응할 수 있도록 합니다.
  • 사전 실행 및 실행 중 스킬 추천: 이전 연구에서는 스킬 추천이 사전 실행 단계에만 국한되었지만, 본 연구에서는 사전 실행과 실행 중 모두에서 스킬 추천을 지원하여, 로봇이 실패에 대해 선제적이고 동적으로 대응할 수 있도록 합니다.

 

본 연구의 주요 기여는 다음과 같습니다: 

  • VLM, Reactive planners, Behavior Tree(BTs)를 통합한 통합 실패 복구 프레임워크를 활용하여 사전 실행 검증실시간 실패 처리를 모두 지원합니다.
  • 실시간 실패 감지, 식별, 수정이 가능합니다. 이는 skill 상태, 실행 시점, scene graph 등을 추적하는 점진적 갱신되는 실패 이력을 기반으로 합니다. 
  • 이는 AI2-THOR 시뮬레이터 및 실제 로봇을 통해 다양한 환경에서 실패 복구 성능 향상을 입증하였습니다.

 

II. RELATED WORK

로봇에서의 실패 복구는 사전 정의된 전략부터 최신 학습 기반 기법 및 LLM을 활용한 적응형 실패 처리 까지 폭넓게 연구되어 왔습니다. 본 절에서는 이러한 방법론들을 검토하고, 기존 연구와 본 연구의 차별점을 강조합니다.

 

A. Traditional Failure Recovery Strategies

 기존의 로봇 시스템은 인간의 개입, 사전 정의된 복구 전략, 또는 Failure Mode and Effects Analysis(FMEA)와 같은 방식을 의존하여 오류를 처리했습니다. 이러한 방식들은 유연성이 부족하거나(인간 개입), 알려진 문제에만 국한되거나(사전 정의), 전문가 지식을 요구하고 동적 환경에 적용하기 어렵다는(FMEA) 한계를 가집니다. 즉, 자동화된 복구 기법조차도 여전히 미리 정의된 실패 모드에 갇혀 있었습니다.

 

 본 연구는 이러한 한계를 뛰어넘어, 지속적으로 업데이트되는 실행 이력을 활용하여 실시간으로 실패를 감지하고 상황에 맞춰 복구하는 능력을 구현합니다.

 

 

B. Learning-Based Failure Recovery

최신 로봇 연구들은 강화학습(RL)과 모방학습(IL)을 통해 경험 기반의 복구 전략을 학습하려 시도했습니다. 하지만 RL은 광범위한 시뮬레이션 훈련이 필요해 실제 적용이 어렵고, IL 기반의 RACER 같은 방법은 시연을 통해 성능을 높일 수 있지만 일반화에 취약하다는 한계가 있습니다. 또한, 뉴로-심볼릭(Neuro-symbolic) 접근법은 해석 가능성은 높지만 확장성 면에서 어려움을 겪습니다.

 

C. Failure Recovery with Large Language Models (LLMs) and Vision-Language Models (VLMs)

LLMsVLMs는 그들의 추론 능력 덕분에 로봇의 실패 복구에 핵심적으로 활용되고 있습니다. 여러 접근법들이 LLM 기반 추론을 활용하여 실패를 감지하고 수정합니다. 주요 예시는 다음과 같습니다:

  • REFLECT: 계층적 post-execution 요약을 제공하지만, 실시간 개입이 불가능합니다.
  • AHA: 작업 체크포인트에서 실패를 감지하도록 VLM을 미세조정했지만, 구조화된 실행 정책이 없습니다.
  • DoReMi: 동적 실행 제약을 LLM으로 생성하지만, 제약 조건의 일관성이 부족합니다.
  • ReplanVLM: GPT-4V 기반으로 사전 실행 검증 + 실행 중 모니터링을 통합했으나, 구조화된 복구보다는 LLM 기반 재계획에 의존합니다.
  • RECOVER: 온톨로지를 활용한 신경-기호 기반 실시간 실패 감지를 수행하나, 도메인 특화 설계로 인해 확장성이 제한됩니다.
  • Code-as-Monitor: 자연어 제약을 실행 가능한 모니터로 번역하여 예방적/반응적 실패 감지는 가능하지만, 실패 복구 동작은 없습니다. 

 본 연구는 이러한 기존 연구와 달리, BT 기반 구조화된 정책, 반응형 플래너통합된 실시간 처리, 사전 실행실행 중 모두에서 실패 감지 + 수정이 가능한 통합 구조를 제안합니다.

 

또한, 본 연구에서의 실행 이력 관리 시스템은 skill 실행 상태를 지속적으로 추적함으로써, VLM이 post-execution이 아닌 실시간으로 실패를 분석할 수 있도록 합니다. 기존의 AHA, ReplanVLM이 상위 수준의 추론 또는 계획 수정에 집중했다면, 본 연구는 Behavior Tree와 반응형 플래너통합하여, 모듈형이며 동적으로 적응가능한 실패 복구 시스템을 구성합니다. 

 

 덧붙여, 최근연구는 LLM을 활용하여 사용자의 의도를 Behavior Tree로 해석(goal interpretation)하는 계획 방식을 제안했지만, 본 연구는 이에 더해 실행 정책을 실시간으로 수정하며, 누락된 전제 조건, 결과 조건, skill을 동적으로 추천하여, 복잡하고 동적인 환경에서도 강건한 실패 복구를 가능하게 합니다. 

 

III. BACKGROUND

이 절에서는 본 논문에서 사용되는 주요 개념들의 배경 지식으로 설명합니다.

 

A. Behavior Trees

Behavior Trees(BT)로봇의 의사결정에서 modularity, fiexibility, reactivity로 으로 인해 널리 사용되는 계층적 실행 모델입니다. 원래는 게임 AI를 위해 개발되었으나, 현재는 로봇 공학에서 해석 가능하고 확장 가능한 작업 실행 구조로 활용되고 있습니다. BT 구조는 행동, 설계, 수정, 디버깅을 단순화하고, 동적 환경에서 실시간으로 적응할 수 있게 합니다. BT는 방향 비순환 그래프(DAG)루트 노드부터 실행이 시작되어 하위 노드로 tick 신호가 전파되어 행동을 평가하고 실행합니다. 각 노드는 Success, Failure, Running 중 하나의 상태를 반환하며, 제어 흐름 노드 (예: Sequence, Failback)은 실행 순서를 관리하고, 실행 노드(예: action, condition)은 실제 로봇 스킬을 수행합니다. 이 구조는 task decomposition세밀한 모니터링을 가능하게 합니다. BT가 한 번 실패를 처리하도록 수정되면, 해당 트리는 재사용 가능한 실행 정책이 되어 모델 질의 횟수를 줄이고, 시간이 지날수록 효율성을 향상시킵니다. 

B. Reactive Planner

Reactive plannergoal condition을 만족시키는 skill을 선택하여, behavior Tree를 동적으로 생성합니다. 이 플래너는 목표로부터 시작하여, 각 스킬의 전제조건(preconditions)과 결과조건(postconditions)backchaining하면서 BT를 점진적으로 확장해 나갑니다. 모든 조건이 만족되거나 종료 조건이 충족될 때 까지 이 과정을 반복합니다. 이러한 방식은 full replanning 없이 환경 변화에 유연하게 적응할 수 있도록 하며, BT의 모듈성을 활용한 유연한 실행을 가능하게 합니다. 본 논문에서 사용하는 PDDL 기반 reactive planner본 논문 에 따르며, 불필요한 노드를 제거하고, 복잡한 작업에 대해 composite subtree를 생성하여 효율성을 높입니다. 이는 계산 효율성을 유지하면서 실시간 자율 실패 복구를 가능하게 합니다. 또한, backchaining을 본질적으로 필요한 postcondition을 만족시키는 스킬을 선택하므로, VLM이 postcondition을 명시적으로 생성할 필요가 없습니다.

 

C. Vision-Language Models

Vision Language models은 visual perception과 language-based reasoning을 결합함으로 써, 로봇의 failure recovery에 효과적인 도구로 사용됩니다. VLM은 로봇이 실행 조건과 작업 상태를 분석하여, 실패를 감지,식별, 수정 할 수 있게 합니다. 이전 연구에서는 GPT-4o를 per-execution verification에 사용하였습니다. 여기서 VLM은 계회된 실행이 성공을 위한 충분한 지식을 포함하고 있는지 판단하였습니다. 이 VLM은 다음 세 가지 핵심 작업을 수행하엿습니다: 

 

  • 실패 감지 (Failure Detection):
    주어진 조건에 기반하여 발생할 수 있는 실패 여부를 확인
  • 실패 원인 분석 (Failure Identification):
    누락되거나 잘못된 전제조건을 분석하여 근본 원인을 진단
  • 실패 수정 (Failure Correction):
    누락된 전제조건이나 필요한 스킬을 추가하는 등의 수정 제안을 생성

이 접근 방식은 불완전한 작업 지식으로 인한 실패를 줄이는 데 효과적이였으나, 예기치 못한 교란이나 환경 변화로 인해 발생하는 실행 중 실패는 처리하지 못했습니다. 

 

본 논문에서는 이러한 한계를 확장하여, VLM을 실시간 실행 모니터링 및 수정을 활용합니다. VLM은 실행 상태를 지속적으로 분석하고, 변화하는 조건에 기반한 수정 제안을 제공합니다. 

 

 추론 능력을 강화하기 위해, 본 연구는 scene graph를 통합하여 object-object 및 robot-object 간의 관계를 동적으로 추적하며, 이를 통해 실패 감지 성능을 향상시킵니다. 또한 실행 이력을 통해 각 스킬의 전제조건, 결과조건, 실행 시점 등을 기록하여, 구조화된 실패 분석을 가능하게 합니다.

-> 사전 실해 검증과 실시간 반응형 모니터링을 결합함으로 써, 본 프레임워크는 로봇이 실패에 continous한 adaptation 할 수 도록 하여, 자율 로봇 실행의 robustness를 향상시킵니다

 

로봇의 High-Level PlanningReactive Planner를 통한 BT 생성 및 분할 → BT의 각 노드가 카메라 등 센서 Scene Graph를 통해 실시간으로 상태를 모니터링하고 판단(성공/실패/실행 중) → 실패 시 BT에서 VLM으로 피드백 전달(실패 정보, 실시간 Scene Graph/이미지) → VLM이 실패 원인 진단 및 해결 방안(새 스킬, 수정 조건 등) 제안 → Reactive Planner가 이를 바탕으로 BT를 동적으로 수정/확장 → 로봇이 수정된 BT로 복구 시도 및 성공 시 다음 단계 진행.

 

IV. APPROACH

실시간 로봇 실패 복구를 가능하게 하기 위해, 본 프레임워크는 reactive planner, Behavior Tree 그리고 Vision Language model을 통합합니다. 실패 모니터링 과정은 다음과 같이 두 단계로 나뉩니다: 

 

  • 사전 실행 실패 검증 (pre-execution failure verification)
  • 실시간 실행 모니터링 (real-time execution monitoring

각 단계는 공통적으로 실패 감지, 실패 식별, 실패 수정을 수행합니다. 또한 본 시스템은 scene graph와 execution history를 통합하여 Failure reasoning과 adaptation을 향상시킵니다. Failute Handling의 핵심 입력은 다음과 같습니다: 

  • Image: 장면을 다양한 각도에서 촬영한 이미지(공간 인식 향상을 위해 두 대의 카메라 사용)
  • Skill: 사전에 정의된 precondition 및 postconditions을 가진 로봇 동작
  • 조건 정보: 환경에 대한 추론을 위한 상태 조건 집합
  • Scene Graph: 객체 간의 공간적 관계를 표현
  • Behavior Tree(BT): 현재 로봇 실행 정책을 정의하는 트리 구조
  • Execution History: 실행 모니터링 시에만 사용하며 과거 동작과 scene을 update를 추적하여 상태 변화를 기록.

실패 처리는 총 3 가지 프로세스를 가집니다. 첫 번째로 Decetion을 하여 실패가 발생할 가능성이 있는지 판단합니다. 두 번째로 identification을 통해 실패의 근본적인 원인을 분석합니다. 이는 영향을 받은 스킬 및 충족되지 않은 조건을 명확히 합니다. 마지막으로 correction 과정을 거칩니다. 성공과 실패를 보장하기 위해 BT를 수정합니다. 이는 전제조건 수정 또는 스킬을 추가합니다.

 이 3단계 프로세스는 chain-of-thought 추론 방식의 영감을 받아 구성되었습니다. 각 단계를 프롬프트 형태로 분리하여 VLM이 단계별로 추론을 수행할 수 있도록 하여 성능을 향상 시킵니다. 만일 감지 단계에서 실패가 확인되지 않으면, 시스템은 식별 및 수정 단계를 생략함으로 써, 사전 실행 및 실시간 처리 모두에서 계산 효율성을 최적화 합니다. 

 

 

 

예시 작업으로 peg-in-Hole 과제가 있습니다. 본 연구에서는 설명을 위해 peg-in-hole 작업을 예시로 사용하였습니다. 이 작업의 목표는 파란색 객체를 초록색 객체 안에 삽입하는 것입니다. 여기서 빨간색과 검정색 객체는 장애물 역할을 수행합니다. 그림 2와 5를 보면, 다양한 실패 유형과 그에 대한 VLM응답을 시각적으로 보여줍니다. 각 프롬프트는 색상 구분을 통해 실패 감지 질문, 실패 식별 질문, 실패 수정 질문을 각각 던집니다. 이후 설명에서는, 아직 실패 처리를 고려하지 않은 BT를 기준으로 peg-in-hole 작업을 설명하며, 별도로 명시되지 않는 한 이 기본 BT 구조를 사용합니다. 

 

A. Pre-Execution Failure Verification

실행에 앞서 본 연구에서는 계획된 Behavior Tree를 검증하여 누락된 전제 조건이나 예상 가능한  실행 실패가 있는지 사전에 점검합니다. 이 단계는 오류가 발생하기 전에 이를 방지함으로 써, 불완전한 작업 지식으로 인한 실패를 줄이는 데 목적이 있습니다. 이 검증은 GPT-4o 기반 Vision-Language Model이 수행하며, 다음과 같은 방식으로 입력을 분석합니다. 

  • Detection: 현재 장면을 기반으로, 계획된 BT가 싪해할 수 있는 이상을 표시합니다. 예를 들어, Peg-in-hole 작업에서 검정색 큐브가 구멍을 막고 있다면, 사전 실행 검증기는 이 상태에서 실패 가능성을 탐지합니다.
  • Identification: 실패를 유발할 Failing skill과 root cause를 명확히 찾아냅니다. 이 원인은 누락된 지식이거나 잘못된 전제일 수 있습니다. 위 예시에서는 VLM이 다음을 식별합니다:
    • Place 스킬이 실패할 것이다.
    • 왜냐하면 현재 BT는 구멍(hole)이 비어있다는 조건이 명시되어 있지 않기 때문.(위 그림 2(a) 참고)
  • Correction: 실패를 방지하기 위해 BT를 업데이트할 Missing precondition을 제안합니다. 위 사레에서는 시스템이 다음과 같은 제안을 합니다: 
    • ~occupied(hole)를 plase 스킬의 전제 조건으로 추가
    • 이에 따라 reactive planner는 배치 전에 검정 큐브를 제거하도록 계획을 수정함(그림 2(a) 참고)

이러한 사전 검증 단계는 추상적인 행동 계획을 실행 가능한 정책으로 강화하고, 실행 전 실패 방지를 통해 전반적인 시스템의 안정성과 효율성을 높이는 핵심 구성 요소입니다. 

 

B. Real-Time Failure Monitoring

사전 실패 검증이 실패를 최소화할 수는 있지만, 센서 오류, 동작 장애물, 외부 교란 등으로 인해 실행 중 예기치 못한 실패가 여전히 발생하고 있습니다. 이를 처리하기 위해, 본 연구는 실시간 실패 모니터링 모듈을 도입하며, 이 모듈은 두 가지 구성 요소로 구성됩니다(Verifier-> 검증기, Suggestor -> 제안기)

이 두 모듈은 사전 실행 검증과 동일한 입력을 사용하지만, 지속적으로 갱신되는 scene graph, 이미지, 실행 이력을 포함하여 추론 성능을 강화합니다. 

 

1) Verifier 

예상 조건 실행이 일치하는지 확인하기 위해 스킬 실행 전에는 전제조건 검증을, 실행 후에는 결과조건 검증을 수행합니다. 


a) 전제조건 검증(Precondition Verification): 스킬을 실행하기 전에 Verifier는 스킬의 전제조건이 충족되는지 확인합니다. BT가 위 그림 4에서 표시된 것처럼  ~grasped any object 전제조건을 포함하는 경우를 고려합니다.

  • Detection: BT 내 스킬의 전제조건이 충족되지 않으면 이상을 감지합니다. 예를 들어, peg-in-hole 작업에서 로봇이 이미 빨간 물체를 잡고 있지만 파란 물체를 잡아야할 경우, Berifier는 이상을 감지합니다.(위 그림 2(b)). 이 실패는 사람이 사전 실행 검증 이후 로봇 그리퍼에 빨간 물체를 수동으로 넣는 경우와 같이 외부 개입에 의해 발생할 수 있습니다.
  •  Identification: 위반된 전제 조건과 실패 원인을 식별합니다. 이 경우, grasp 스킬을 ~grasped any object 전제조건이 충족되지 않았음을 발견합니다(위 그림 2(b))
  • Correction: 관련 전제 조건이 충족되지 않았음을 표시함으로 써 실행을 방지합니다. 그런 다음 반응형 플래너는 표시된 전제조건을 만족시키도록 BT를 자동 확장합니다. 예를 들어, 현재 들고 있는 물체를 내려놓고 새로운 grasp를 시도하도록 BT가 적용합니다. (위 그림 2(b))

b) 결과조건 검증(Postcondition Verification):

스킬 실행 후, Verifier는 기대한 결과 조건이 충족되는지 확인합니다.

  • Detection: 실행된 스킬이 결과 조건을 충족하지 않으면 이상을 감지합니다. 예를 들어, 로봇이 파란 물체를 구멍 안이 아니라 위에 놓는 경우, Verifier는 실패를 감지합니다.(위 그림 2(c))
  • Identification: 위반된 결과조건과 실패 원인을 식별합니다. 이 경우, 물체가 구멍 안이 아니라 위에 놓였기 떄문에 "inside"조건이 위반되었음을 확인합니다(위 그림 2(c))
  • Correction: Failure를 반환하여 반응형 플래너가 실행을 동적으로 조정하게 합니다. BT는 다음 tick에서 다시 배치를 시도합니다.(위 그림 2(c))

2) Suggestor: 

Suggestor는 스킬이 전제조건 미충족으로 인해 실패할 경우 누락된 전제조건을 동적으로 추론합니다. 

  • Detection:
    전제조건이 충족되지 않아 스킬이 실패할 가능성이 있을 때 이상을 감지합니다.
    예: peg-in-hole 작업에서 빨간 물체가 이미 구멍을 점유하고 있는 경우 (Figure 5(a)).
  • Identification:
    누락된 전제조건과 실패 원인을 식별한다.
    이 경우, place 스킬에 구멍이 비어 있어야 한다는 전제조건이 빠졌음을 식별합니다 (Figure 5(a)).
  • Correction:
    누락된 전제조건을 제안하고, 이에 따라 BT가 업데이트됩니다.
    모델은 ~occupied(hole) 전제조건을 제안하며, 반응형 플래너가 이에 따라 BT를 확장할 수 있게 합니다 (Figure 5(a)).

C. Skill Addition

 

전제 조건을 수정하는 것은 많은 실패를 해결할 수 있지만, 어떤 경우에는 새로운 기술을 도입해야 합니다. 기술 추가는 잠재적인 실패 사례가 발생하는시점에 따라 실행 전 또는 반응적으로 제안될 수 있습니다. 실행 전 단계는 논문의 이전 작업을 구현합니다. 기존 기술로 감지된 실패를 해결할 수 없는 경우, 시스템은 누락된 기술을 제안합니다. (위 그림 5-b) 반응 단계에서는 VLM이 모든 기술을 실행하기 전에 실행 가능성을 확인합니다. 현재 기술이 실패할 것으로 예측되면, 실패를 제거하기 위해 누락된 기술을 제안합니다. (위 그림 5-c) 

  • Detection: 사용 가능한 기술로 실패를 해결할 수 없는 시점을 식별합니다. 예를 들어, 구멍에 못 박기 작업에서 집을수 없는 물체가 구멍을 막고 시스템이 해결되지 않은 실패를 감지하는 경우입니다.(그림 5-b)
  • Identification: 누락된 기능과 이 제한으로 인해 실패하는 기술을 결정합니다. 이 경우, 물체가 집을 수 없기 때문에 집기 기술을 실패합니다.(그림 5-b) 
  • Correction: VLM이 로봇의 world 모델과의 호환성을 보장하면서 실패를 해결하기 위한 새로운 기술을 제안합니다. 제안에는 다음이 포함됩니다: 
    • 누락된 기술의 이름
    • 기술을 정의하는 코드 템플릿
    • 사전 정의된 전제 조건 및 사후 조건.

예를 들어, 로봇이 물체를 잡을 수 없다면 VLM은 "밀기" 기술을 대안으로 제안하고, 사전 정의된 조건을 포함하는 기술의 설명을 제공할 수 있습니다.(그림 5-b)  그림 5(c)는 실행 주에 발생하는 반응 버전을 보여주며, 로봇이 빨간색 물체를 움직이기 위해 "밀기" 기술을 실행하기 전 파란색 물체를 테이블 위에 놓습니다. 일관성을 보장하기 위해 시스템은 VLM이 알려진 world 모델 조건으로 제한하여 임의의 조건 생성을 방지하니다.

 

D. Scene Graph Representation

이 시스템은 물체와 로봇 사이의 공간적 관계를 추적하는 Scene Graph를 지속적으로 관리합니다. 기존 방식인 REFLECT가 매 순간 Scene graph를 처음부터 다시 생성하는 것과는 다르게 이 시스템은 필요한 경우 관계를 수정하거나 노드를 추가/ 제거하여 지속적으로 업데이트를 수행합니다. 여기 Scene Graph는 다음 정보를 기반으로 구축됩니다:

  • RGB-D images and point clouds: 장면의 깊이와 물체 위치를 파악하는 데 사용됩니다. 
  • Grounding DINO, SAM2: 각각 물체 감지 및 인스턴스  분할, 추적을 담당합니다.
  • RANSAC and PCA-based pose estimation: 물체의 6D 자세를 추정합니다. 

이러한 지속적인 업데이트 방식은 효율성을 높이고 실행의 일관성을 보장합니다. 예를 들어, 로봇이 구멍에 못을 박는 작업에서 파란색 물체를 초록색 물체 안으로 넣을 때, 시스템은 전체 그래프를 새로 만들지 않고 "on" 관계를 "inside"로 수정하여 Scene graph를 업데이트 합니다.

 

E. Execution History

이 시스템은 실행 이력을 통해 기술 실행, 조건 확인 결과, 그리고 환경 변화에 대한 기록을 유지합니다. 완벽한 실행 상태 지식을 가정하는 명시적인 실패 기록 대신, 시스템은 Scene Graph의 변화를 통해 실행 과정을 포착하여 실패와 불일치를 유추합니다. 실행 이력에는 다음 정보가 기록됩니다:

  • Skill execution records: 실행된 기술과 해당 시간 표시를 기록합니다.
  • Precondition and postcondition verification: 실행 전에 조건이 충족 되었는지, 그리고 실행 후에 사후 조건이 유지되었는지를 추적합니다.
  • Scene graph updates: 실행 전후의 물체 위치와 관계를 기록하여 편차를 분석합니다.

예를 들어, "구멍에 못 박기" 작업에서 파란색 못이 초록색 구멍 안으로 들어가지 않고 위에 놓이게 된다면, 실행 이력은 해당 "놓기"의 기술의 실행과 시간 표시를 기록합니다. 시스템은 전제 조건(예: 못이 잡혔음)은 충족되었지만, 못의 공간적 관계가 예상했던 "inside"의 조건과 일치하지 않아 사후 조건 확인에 실패했음을 기록합니다. Scene graph update는 이러한 편차를 반영하여 못이 구멍 "안에(inside)"있는 것이 아니라 "위에(on)" 있음을 보여줍니다. 이러한 구조화된 이력은 실행 이상을 감지하여 시스템이 관찰된 작업 진행 상황을 기반으로 실패 처리 방식을 개선할 수 있도록 함으로 써 실시간 적응을 가능하게 합니다.

 

V. EXPERIMENTS AND RESULTS

본 실험에서는 시뮬레이션 벤치마크와 실제 환경 실험을 통해 오류 복구 프레임워크를 평가합니다. 시뮬레이션에서는 AI2THOR의 REFLECT 벤치마크 작업을 사용하여 시스템이 미리 정의된 오류 사례와 어떻게 적응하는지 평가합니다. 실제 검증을 위해 로봇 플렛폼 프레임워크를 구현하여 물리적 환경에서 오류를 처리하는 효율성을 평가합니다. 

 

A. Simulation Experiments

 

시뮬레이션의 경우, REFLECT 벤치마크 작업에서 프레임워크를 평가합니다. REFLECT에서는 실행 중에 오류가 발생하며, 계층적 요약 및 Scene Graphㄹ르 사용하여 실행 후 수정됩니다. 그러나 REFLECT는 작업 완료 후에만 오류를 감지하고 수정하므로 실시간 적응 기능이 부족합니다. 

 

반면, 본 논문에서 제안하는 방법은 reactive planner와 BTs를 사용하여 execution policies를 동적으로 생성함으로 써, 실시간 모니터링 및 즉각적인 오류 수정을 가능하게 합니다. 실행당 새로운 scene graph를 재구성하는 REFLECT와 달리, 본 시스템은 Scene graph를 지속적으로 업데이트 합니다. 또한, REFLECT는 정확성 보장 없이 LLM이 생성한 실행 후 수정에 의존하는 반면, 본 연구에서의 reactive planner는 구조화된 전제 조건 및 사후 조건을 통해 정확성을 보장합니다. 

 

연구에소는 REFLECT 벤치마크의 모든 작업에 성공적으로 프레임워크를 적용하여 여러 번의 실행에서 100%의 성공률을 달성했습니다. 실시간 모니터링이 충분하여 사전 실행 확인이 불필요했습니다. Verifier는 실행의 정확성을 보장했고, suggestor는 누락된 전제 조건을 해결했습니다. REFLECT가 설명, 위치 파악, 재계획 성공을 평가하는 반면, 제안하는 방식으로는 전체 작업 완룔르 평가합니다. 실행 중에 오류가 선제적으로 검증되고 반응적으로 수정되므로, 실행 후 재계획이 불필요하여 회고적 추론에 대한 의존도를 줄일 수 잇습니다. REFLECT와 본 연구의 접근 방식의 주요 차이점은 위 표1에 요약되어 있습니다. 

 

B. Real-World Experiments

실제 검증을 위해, 본 연구에선 RGB-D 카메라가 장착된 ABB YUMI로봇에 프레임워크를 배포했습니다. 다음 세 가지 작업에서 오류 복구 기능을 평가했습니다.

  • Peg-in-hole: 다양한 초기 배치에서 못을 구멍에 삽입합니다.
  • Object Sorting: 물체를 색상 별로 지정된 위치에 분류합니다.
  • Drawer Placement: 서랍 안에 물체를 놓습니다.

물체 배치 변경, 장애물 추가 또는 작업 제약 조건 변경을 통해 오류를 유도했습니다. 또한, 실행 중에 사람의 개입을 통해 오류를 유발했습니다.

 

1) Baseline Approaches: 

연구진은 사전 실행 및 reactive failure recovery 메커니즘 통합의 이점을 평가하기 위해 두 가지 기준선 접근 방식과 본 연구의 접근 방식을 비교했습니다. 

  • Pre-execution: 계획 검증을 확인합니다.
  • Reactive: 실행 중에 오류를 감지하고 수정합니다.
  • Our Approach(Pre-execution + Reactive): 사전 실행 검증과 실시간 모니터링을 결합하여 오류를 동적으로 방지하고 수정합니다. 

오른 쪽 표 2는 정량적 비교를 제공하며, 사전 실행 + 반응형이 가장 높은 성능을 달성했음을 보여줍니다. 반응형 방식이 오류 처리 면에서는 유사하지만, VLM 쿼리 증가, 추가 기술 실행, 더 긴 실행 시간으로 인해 훨씬 더 비용이 많이 듭니다. 예를 들어, 사전 실핼 확인 없이는 로봇이 실행을 시도했다가 작업 도중에 필요한 물체가 없다는 것을 깨달아 역추적 및 반응형 수정이 필요하게 되어 지연과 비효율성을 초래할 수 있습니다. 반대로 본 연구의 접근 방식은 가능한 한 선제적으로 사전 실행 오류를 해결하여 계산 및 실행 오버헤드를 줄입니다. 한편, 사전 실행 방식은 실행 전에만 오류를 처리하므로 정확도는 낮지만, 비용이 많이 드는 실시간 개입을 피하므로 가장 효율적입니다. 이는 실행 성공과 효율성 사이의 상충 관계를 보여주며, 사전 실행 처리가 계산적으로 저렴하지만 실시간 오류에는 불충분하다는 것을 강조합니다. 

 

2) Evaluation Metrics

본 연구는 16가지 미리 기록된 실패 사례에 걸쳐 프레임워크의 실패 감지, 식별 및 수정 능력을 평가했으며, 각 실험은 10회 반복했습니다. False positive를 평가하기 위해 실패를 유도하지 않은 상태에서도 각 작업을 10회 실행했습니다. 시스템의 실패 감지 정확도, 근본 원인 식별 정확도, 그리고 성공적인 수정 정확도를 측정했습니다. 또한 사전 실행 단계에서 처리된 실패와 실시간 개입이 필요한 실패의 비율을 분석하고, 기술 제안의 정확도를 평가했습니다. 

 

위 표 2는 이러한 지표에 대한 성능을 요약합니다. 본 프레임워크는 모든 작업에서 100%의 완벽한 정확도를 달성하여 강력한 실패 인식 및 추론 능력을 보여주었습니다. 실패 없이 작업을 실행했을 때 오탐은 발생하지 않았습니다. 실패 복구 시스템이 거의 완벽한 정확도를 목표로 설게된다는 점을 고려할 때, 이러한 결과는 예상과 일치합니다. 향후 연구는 프레임워크의 확정성과 견고성을 추가로 평가하기 위해 더 복잡한 벤치마크에서 평가하는 데 중점을 두어야 합니다. 

 

3) Ablation Studies and Summary of Findings

주요 구성 요소를 평가하기 위해, 특정 요소를 선택적으로 제거하고 그것이 실패 복구에 미치는 영향을 분석하는 abluation studies를 수행했습니다. 

  • VLM vs LLM: 시각 입력이 제거되면 공간적, 장면 인지적 실패 감지 능력이 약화되어 물체 관계 추론이 제한됩니다. Scene Graph의 정확도가 항상 보장되는 것은 아니지만, 성공률은 100%(2개의 이ㅣ지)에서 98%(1개의 이미지)로, 그리고 95%(이미지 없음) 으로 떨어집니다.
  • Scene Graph 기여: 공간 추론을 돕고 장면의 모호성을 제거합니다. Scene graph가 없으면 성공률이 91.25%로 떨어지며, 이는 구조화된 실패 예측에서 Scene graph의 중요성을 강조합니다.
  • Execution History Effectiveness: 실행 이력 추적을 생략해도 결과에 큰 영향을 미치지 않았으며, 유무에 관계없이 유사한 성공률을 보였습니다. 그러나 이는 실행 이력이 비효율적임을 의미하는 것이 아니라, 더 복잡한 벤치마크에서 그 이점이 더 명확해질 수 있습니다.

본 연구에서의 결과는 사전 실행 및 반응형 실패 처리의 결합이 작업 성공률을 향상시킨다는 것을 확인시켜주었습니다. 사전 실행 확인은 계획 실패를 방지하고, 실시간 모니터링은 적응성을 향상시킵니다. VLM 기반 추론은 실패 감지 및 수정을 강화하며, 실패 추적 기능이 있는 scene graph는 구조화된 환경 맥락을 유지하여 시스템 신뢰성을 향상시킵니다. 이러한 결과는 다양한 로봇 작업에서 본 프레임워크의 자율적인 실패 복구 효율성을 입증합니다. 

 

 

VI. CONCLUSION AND FUTURE WORK

 

본 연구는 VLM, reactive planer 그리고 behavior Trees 를 통합한 통합 오류 복구 프레임워크를 제시합니다. 이 프레임워크는 로봇 실행에서 사전 실패 오류 감지와 반응형 복구를 가능하게 합니다. 구조화된 인식을 위한 scene graph와 실시간 모니터링을 위한 실행 이력을 통합함으로써, 본 접근 방식은 오류에 동적으로 적응하여 실행 중단을 최소화힙니다.

 

ABB YuMi 로봇 및 시뮬레이션 벤치마크를 통한 실험 검증은 사전 실행 및 반응형 방식을 개별적으로 사용하는 것보다 본 프레임워크가 더 우수하다는 것을 입증했습니다. 제거 연구를 통해 VLM, 구조화된 장면 이해, 그리고 실행 요약이 시스템 신뢰성을 높이는 데 중요함을 확인했습니다.

 

향우 연구에서는 다음과 같은 방향으로 프레임워크를 개선할 계획입니다:

 

  • 향상된 문맥 인지 작업 모니터링을 위해 비디오 및 오디오 입력을 통합할 예정입니다.
  • 오류 처리를 위해 오픈 소스 다중 모드 모델을 미세 조정하여 계산 비용을 줄이고 효율성을 높일 것입니다.
  • Vision-Language Action (VLA) 모델을 활용하여 구조화된 전제 조건 및 사후 조건을 가진 자율적인 기술 생성을 목표로 하며, 정적 및 통합 검사를 통해 품질을 보장할 것입니다.
  • 실시간 모니터링을 확장하기 위해 실행 중 사전 예방적 오류 확인을 위한 유지 조건을 통합할 것입니다.

이러한 발전은 자율적인 오류 복구 기능을 향상시켜 로봇 시스템을 더욱 적응성 있고 자립적으로 만들 것입니다.