인공지능/논문 리뷰 or 진행

Ghost in the Minecraft: Generally Capable Agents for Open-World Environments via Large Language Models with Text-based Knowledge and Memory - 논문 리뷰

이게될까 2024. 11. 26. 19:50
728x90
728x90

https://arxiv.org/abs/2305.17144

 

Ghost in the Minecraft: Generally Capable Agents for Open-World Environments via Large Language Models with Text-based Knowledge

The captivating realm of Minecraft has attracted substantial research interest in recent years, serving as a rich platform for developing intelligent agents capable of functioning in open-world environments. However, the current research landscape predomin

arxiv.org

 

마인크레프트가 인공지능이 현실 세계에서 활용되기 전 테스트해보는 장소라는 것은 처음 알았네요

그래도 마인 크래프트를 통해 다양한 테스트를 진행하고, 인공지능의 성능 파악하기에는 좋아보이긴 합니다.

여기 논문에선 다양한 강화학습 모델이 엄청난 리소스를 잡아 먹는 것을 보고 LLM을 통해 CPU단에서 높은 자유도와 성능을 가진 Agent를 만들었습니다.

LLM은 목표를 받으면 그 것을 세부 목표로 나눈 뒤 그 세부 목표를 이룰 때 까지 폐쇄적 루프를 통해서 행동을 진행합니다.

그렇게 하여 모든 기술 목표를 완수하고, 다이아몬드 채굴 확률도 높였습니다.

학습을 진행하기 보다는 이미 있는 위키피디아를 통해 사전 지식을 받고, 그에 따라 세부 목표를 이룬다는 점에서는 제가 생각하는 것과는 살짝 다르긴 하지만, 언어 모델이 세부 목표를 세우고, 그 목표를 이루기 위해 계속 도전한 다는 점이 이 논문에서 제가 얻어갈 점 인 것 같습니다.

 

 

연구 목표 Minecraft와 같은 오픈월드 환경에서 높은 자유도와 성능을 가진 일반적 에이전트 개발.
기존 문제점 - 강화학습 모델(RL)은 높은 리소스 소모 (GPU 기반, 비효율적인 학습 과정).
  - 특정 목표에 고정된 모델은 새로운 목표에 일반화가 어려움.
  - 장기적이고 복잡한 목표 수행에서 성능 저하.
제안된 방법 - LLM 기반 프레임워크로 RL 대체.
  - LLM이 목표를 세부 목표로 분해하고, 행동 계획을 수립하며 피드백을 통해 동작을 수정.
  - 사전 지식(Minecraft Wiki 등)을 활용하여 학습 없이 목표 수행.
프레임워크 구성 1. LLM Decomposer: 목표를 세부 목표로 분해 (예: 다이아몬드 → 철 곡괭이 제작 → 철 채굴).
  2. LLM Planner: 세부 목표를 달성하기 위한 행동 계획 생성 (예: "Y-레벨 12까지 땅 파기").
  3. LLM Interface: 계획된 행동을 Minecraft 환경에서 실행하고 피드백 수집.
  4. 폐쇄 루프(Closed-Loop): 피드백을 기반으로 행동을 수정하며 목표를 점진적으로 달성.
성과 - Minecraft Overworld의 모든 기술 목표(262개 항목) 달성.
  - 다이아몬드 채굴 성공률 47.5% 향상 (기존 대비).
  - 기존 RL 기반 방법보다 10,000배 적은 환경 상호작용으로 목표 수행.
  - GPU 없이 CPU(32코어)만으로 2일 내 학습 및 실행 가능.
장점 - 효율성: RL 대비 자원 소모 대폭 감소.
  - 범용성: 특정 목표에 제한되지 않고 다양한 작업 수행 가능.
  - 자율성: 피드백을 통해 계획 수정 및 행동 최적화 가능.
한계점 - 텍스트 기반 지식(Minecraft Wiki)에 의존하므로 지식이 불완전하거나 잘못될 경우 성능 저하.
  - LLM이 생성하는 행동의 확장성(스크립팅 의존성)이 제한될 수 있음.
  - 실제 환경(Minecraft 외)에서의 일반화 여부는 추가 검증 필요.
주요 기여 - LLM 기반의 일반적 에이전트 구현을 통한 RL 의존성 탈피.
  - 오픈월드 환경에서 복잡한 목표를 자동으로 분해하고 해결하는 프레임워크 제안.
연구의 의미 - Minecraft를 AI 연구 테스트베드로 활용 가능성을 입증.
  - 강화학습을 대체할 효율적이고 범용적인 접근 방식 제시.

 

 

 

논문 요약: Ghost in the Minecraft: Open-World 환경에서 LLM을 활용한 일반적 에이전트 개발


1. 해결하려는 문제

  • 문제 정의: Minecraft는 복잡하고 긴 목표를 가진 오픈월드 환경으로, 기존 연구는 단일 목표("다이아몬드 획득" 등)에 치중해 왔습니다. Reinforcement Learning(RL) 기반 접근법은 환경 상호작용 단계의 비효율성과 학습의 낮은 확장성으로 인해 장기적이고 복잡한 작업에서 한계를 보입니다.
  • 한계:
    • RL 기반 모델은 목표를 세부적인 키보드/마우스 동작으로 직접 매핑하려다 보니 학습 효율성이 낮음.
    • 특정 목표에 고정된 RL 모델은 새로운 작업에 일반화가 어려움.
    • 장기 목표를 해결하는 데 필요한 지식 활용이 RL 모델에서 미흡함.

2. 사용된 방법

  • 제안된 프레임워크: Ghost in the Minecraft(GITM)
    • 구성 요소:
      1. LLM Decomposer: 목표를 하위 목표로 나눠 해결 가능하도록 트리 구조로 분해.
      2. LLM Planner: 하위 목표를 실행 가능한 구조적 행동으로 변환하고 계획.
      3. LLM Interface: 행동을 실제 환경에서 실행하고 피드백을 수집.
    • 핵심 아이디어:
      • LLM의 논리적 사고와 지식 활용 능력을 기반으로 RL의 한계를 극복.
      • 계층적 목표 분해를 통해 긴 목표를 세부적이고 달성 가능한 하위 작업으로 변환.
      • 텍스트 기반 지식(Minecraft Wiki 등)과 메모리를 활용해 학습 효율을 증대.

3. 결과

  • 성능 개선:
    • 다이아몬드 획득 성공률에서 기존 방법 대비 47.5% 향상.
    • Minecraft Overworld의 기술 트리에서 모든 항목을 잠금 해제한 최초의 모델.
  • 효율성:
    • GPU 없이 단일 CPU(32 코어)로 2일 내 학습 완료. 기존 RL 방법(VPT)은 6480 GPU일 소요.
    • 환경 상호작용 단계가 기존 방법 대비 10,000배 감소.
  • 범용성:
    • 특정 목표에 제한되지 않고 다양한 작업을 효과적으로 수행.

4. 한계점

  • 구조적 행동 설계:
    • LLM이 생성한 행동은 수동으로 스크립팅되었으며, 이는 범용 작업 수행에서 확장성의 제한을 초래할 수 있음.
  • 외부 지식 의존성:
    • 텍스트 기반 지식 및 Wiki에 의존하므로 정보가 불완전하거나 잘못된 경우 성능 저하 가능.
  • 환경의 제약:
    • Minecraft 환경의 규칙 및 물리적 제약에 따라 실제 세계에서의 일반화 가능성이 검증되지 않음.

5. 논문의 타당성과 아쉬운 점

  • 타당성:
    • Minecraft는 실제 세계를 축소한 복잡한 환경으로, 일반적 에이전트 개발의 초기 모델로 적합.
    • LLM의 지식 기반 문제 해결 능력을 활용해 RL의 한계를 극복한 점에서 혁신적.
  • 아쉬운 점:
    • LLM의 상위 수준 계획 능력과 RL의 저수준 조작 능력의 통합이 부족함.
    • 텍스트 기반 지식 활용 외에 멀티모달 데이터를 활용한 확장이 필요함.
    • RL과의 성능 비교에서 실험 환경이 동일하지 않아 절대적 비교의 타당성이 약함.

6. 추후 연구 방향 (AI Agent 개발과 연계)

  • 텍스트 기반 외부 지식 확장:
    • 멀티모달 데이터를 통합해 현실 환경의 복잡성 대응.
  • 계층적 학습 모델:
    • RL과 LLM의 하이브리드 접근법으로 상위 계획과 저수준 행동의 통합 강화.
  • 지속적 학습:
    • 에이전트가 환경과 상호작용하며 실시간으로 지식을 갱신하고 학습할 수 있는 구조 필요.
  • 자율 에이전트의 범용성:
    • Minecraft와 같은 환경을 넘어 실제 문제(로봇 제어, 실험 설계)로의 확장 연구.

이 논문의 접근법은 AI Agent 연구에서 효율성과 범용성을 동시에 달성하기 위한 유망한 방향성을 제시하며, 특히 목표 분해 및 계획 수립의 자동화 측면에서 큰 잠재력을 보여줍니다.

 

이 논문과 관련된 연구들을 논문을 기반으로 설명해줘

논문에 언급된 관련 연구들은 대부분 Minecraft 환경에서의 AI 에이전트 개발, LLM 활용, 그리고 강화학습(RL) 기반 접근법을 포함하고 있습니다. 이들 연구는 Ghost in the Minecraft(GITM) 프레임워크의 배경이 되며, 기존 방법론의 한계를 극복하기 위해 이 논문이 어떤 혁신을 이루었는지를 이해하는 데 중요한 맥락을 제공합니다.


1. Minecraft를 활용한 AI 연구

Minecraft는 복잡한 오픈월드 환경과 다양한 도전 과제를 제공하며, 이를 활용한 AI 연구는 크게 두 가지 방식으로 이루어졌습니다.

(1) 강화학습 기반 접근

  • Minecraft의 오픈월드 환경은 RL 연구의 이상적인 테스트베드로 사용되어 왔습니다.
  • VPT (Video Pretraining):
    • 대규모 온라인 비디오 데이터를 학습해 Minecraft 에이전트를 훈련하는 RL 기반 접근법.
    • RL 모델이 특정 목표(예: 다이아몬드 획득)에 최적화되지만, 새로운 목표로의 일반화가 어려움.
    • GPU 자원이 많이 필요하며 학습 효율성이 낮음.
  • DreamerV3:
    • 강화학습을 활용한 에이전트 학습에서 환경 모델을 통해 학습 속도를 개선하려는 시도.
    • 다이아몬드 획득과 같은 단일 목표에서 성능은 향상되었지만, 장기적이고 복잡한 목표에는 여전히 비효율적임.
  • 한계:
    • RL 기반 모델은 목표와 환경 상호작용의 긴 의존성을 학습하기 어렵고, 환경의 변화에 적응하는 데 한계가 있음.
    • RL은 탐험과 학습에 많은 시간과 자원이 소요되며, 다중 작업 수행 능력이 부족.

(2) 다중 작업 학습

  • Minecraft의 다중 작업 환경에서 에이전트는 단일 목표를 넘어 복잡한 작업을 처리해야 하므로, 다중 작업 학습(Multi-task Learning)이 중요한 연구 분야로 부상했습니다.
  • MineDojo:
    • Minecraft에서 3,000개 이상의 작업을 정의하고, 이를 기반으로 에이전트를 훈련할 수 있는 다목적 플랫폼.
    • 작업 분해 및 목표 기반 계획 수립에 유용한 데이터셋을 제공하며, GITM의 작업 분해에서 활용됨.
  • Plan4MC:
    • 사전 정의된 기본 기술을 활용해 기술 간 관계를 추론하고 작업 그래프를 생성하는 방식.
    • LLM을 활용해 높은 수준의 계획 능력을 강조했으나, 저수준 작업에서 한계.

2. LLM을 활용한 계획 및 실행

LLM은 자연어 처리와 고수준 계획 수립에서 탁월한 능력을 보이며, 이를 활용한 연구가 GITM의 아이디어 기반이 되었습니다.

(1) LLM 기반 계획 연구

  • Inner Monologue:
    • 환경 피드백을 활용해 계획 능력을 개선하는 방식. LLM이 동작 실패 원인을 분석하고, 새로운 계획을 수립함.
    • GITM에서 LLM Planner의 피드백 메커니즘과 유사.
  • DEPS (Describe, Explain, Plan, and Select):
    • 목표를 설명하고 계획을 세운 후 가장 적합한 계획을 선택해 실행하는 구조.
    • GITM의 LLM Planner와 유사하나, 여전히 RL 기반 컨트롤러에 의존.
  • HuggingGPT:
    • LLM이 다양한 AI 모델(Vision, Language, Audio)을 활용해 사용자 요청을 수행하는 에이전트.
    • GITM처럼 텍스트 기반 지식을 활용했으나, 구체적인 게임 환경의 상호작용에 적용하지는 않음.

(2) 지식 기반 학습

  • Toolformer:
    • LLM이 계산기, 검색 엔진 등 외부 도구를 활용하도록 학습.
    • GITM에서 외부 텍스트 기반 지식을 활용한 점과 유사.
  • PaLM-E:
    • 로봇 지각, 명령 수행, 계획 수립, 저수준 제어를 통합한 멀티모달 언어 모델.
    • GITM이 텍스트 기반 접근에 한정된 점을 넘어 확장 가능한 연구 방향.

3. GITM의 차별화된 점

기존 연구와 GITM의 차이점은 다음과 같습니다:

  • RL 기반의 비효율성 극복: LLM의 고수준 추론 능력과 계층적 작업 분해를 통해 장기적 목표를 효율적으로 수행.
  • 텍스트 기반 메모리와 지식 활용: RL처럼 파라미터에 지식을 내재화하지 않고, 명시적 텍스트 메모리를 사용해 일반화 능력 강화.
  • 범용성: 특정 목표에 고정되지 않고 다양한 작업에서 높은 성공률을 보임.

GITM과 연관된 연구 방향 제안

  • 멀티모달 데이터 통합:
    • Minecraft와 같은 환경에서 텍스트 외에도 비주얼 데이터나 환경 센서 데이터를 활용해 에이전트의 상황 인식 능력 강화.
  • 하이브리드 학습:
    • LLM과 RL의 결합을 통해 계획 수립(LLM)과 행동 실행(RL)을 통합해 성능 극대화.
  • 지속적 학습과 적응성:
    • 에이전트가 새로운 데이터를 학습하고 환경 변화에 적응할 수 있는 메커니즘 설계.
  • 현실 적용 가능성 확대:
    • Minecraft에서 얻은 결과를 기반으로 로봇 제어, 도시 계획, 산업 자동화 등의 실제 문제에 적용.

이러한 배경을 바탕으로, GITM은 기존 연구의 한계를 극복하는 동시에 미래 AI Agent 연구에 중요한 기반을 제공합니다.

 

그럼 이 논문은 위 관련된 논문에서 어떻게 발전된거야?

"Ghost in the Minecraft" 논문은 기존의 Minecraft와 관련된 AI 연구에서 여러 중요한 한계를 해결하며 발전된 방식을 제시합니다. 특히 강화학습(RL) 기반 접근법, 다중 작업 학습, LLM 기반 계획 모델의 장점을 통합하면서도 기존 연구의 단점을 보완하는 데 주력했습니다. 발전된 점은 다음과 같은 맥락에서 설명될 수 있습니다.


1. 강화학습 기반 접근의 한계를 극복

기존 Minecraft 연구에서 RL은 환경과의 긴 상호작용을 통해 학습했으나, 다음과 같은 문제를 안고 있었습니다:

  • 낮은 효율성: RL 기반 모델은 목표 달성을 위해 수천만 단계의 학습이 필요하며, GPU와 같은 고성능 컴퓨팅 자원이 필수.
    • 예: VPT는 6,480 GPU일이 소요.
  • 목표 고정화: RL 모델은 특정 목표(예: 다이아몬드 획득)에 최적화되어 있어 새로운 목표에 일반화가 어려움.
    • 예: DreamerV3는 다이아몬드 획득 외의 작업에 성능이 떨어짐.

GITM의 발전점:

  • RL 대신 LLM 기반 계층적 목표 분해를 도입:
    • LLM Decomposer를 활용해 장기적 목표를 작은 하위 목표로 분해.
    • LLM Planner로 하위 목표를 구조화된 행동으로 계획.
  • 효율성 극대화:
    • RL과 달리 GPU가 필요 없으며, 단일 CPU(32코어)로 2일 내 학습 완료.
    • RL 기반 모델보다 상호작용 단계 수를 10,000배 줄임.
  • 목표의 범용성 확보:
    • 특정 작업에 제한되지 않고 Minecraft Overworld의 모든 기술 트리(262개 항목) 잠금 해제에 성공.

2. 다중 작업 학습에서의 진보

기존 다중 작업 학습 연구는 목표를 명시적으로 설정하고 작업 간 관계를 추론하거나, 사전 정의된 목표에 따라 모델을 훈련했습니다.

  • 한계:
    • MineDojo와 Plan4MC와 같은 플랫폼은 다중 작업 학습 데이터를 제공하지만, 작업의 세부 계획을 자동화하지 못함.
    • LLM과 RL의 결합을 시도한 DEPS 역시 RL 기반 하위 작업 수행에 의존하며, 장기적 목표에서는 RL의 한계를 노출.

GITM의 발전점:

  • 텍스트 기반 지식 활용:
    • Minecraft Wiki와 같은 외부 텍스트 데이터를 활용해 작업 관계를 추론하고, 작업 분해를 자동화.
  • 메모리 기반 계획:
    • GITM은 LLM Planner에 텍스트 기반 메모리를 도입해 이전 성공 경험을 축적.
    • 동일한 목표를 반복적으로 해결할 때 새로운 계획을 수립하지 않고도 학습된 경험을 재사용.
  • 장기 계획 가능:
    • Recursive Decomposition 방식을 통해 목표를 하위 목표 트리로 분해해 계획 성공률 향상.
    • 예: 다이아몬드 획득을 위해 철 곡괭이 제작, 철광석 채굴, 제련 등 단계별 계획 수립.

3. LLM 기반 계획 모델의 한계를 보완

LLM은 자연어 이해와 추론에서 탁월한 성능을 보이지만, 기존 연구에서는 다음과 같은 한계가 있었습니다:

  • 저수준 제어 부재:
    • Inner Monologue, DEPS 등은 LLM으로 고수준 계획을 수립했지만, 저수준 키보드/마우스 제어는 RL에 의존.
  • 피드백 활용 부족:
    • 계획 실패 시 원인을 분석하고 재계획하는 구조가 미흡하거나 제한적.

GITM의 발전점:

  • 저수준 제어의 자동화:
    • LLM Interface를 통해 구조적 행동(예: "equip", "mine", "craft")을 정의하고, 이를 키보드/마우스 동작으로 변환.
    • RL을 배제하고도 저수준 동작을 구현.
  • 피드백 기반 계획 수정:
    • Structured Action 실패 시, 실패 원인을 분석하고 새로운 계획을 수립하는 폐쇄 루프(closed-loop) 설계.
    • 피드백 메시지와 메모리를 활용해 환경에 적응.
  • 계층적 작업 계획:
    • Goal → Sub-goal → Structured Actions → Low-level Controls로 이어지는 계층적 계획 체계를 제안.

4. 성능의 정량적 발전

  • 기존 연구(VPT, DreamerV3, DEPS)와 비교해 성능에서 명확한 우위를 점함:
    • 다이아몬드 획득 성공률: 기존 최고 성공률 20%(DEPS) 대비 47.5% 향상.
    • 기술 트리 잠금 해제: 기존 최고 69/262(DEPS) 대비 GITM은 모든 항목(262개) 잠금 해제.
  • 학습 효율성:
    • 첫 5,000단계 상호작용에서 성공률이 35% → 47.5%로 상승.

5. 기존 연구 대비 GITM의 핵심 혁신

기존 연구 GITM의 혁신
RL 기반, 높은 학습 비용 LLM 기반, CPU만으로 학습 가능
단일 목표 최적화 기술 트리 전체 범위로 일반화
고정된 모델 파라미터 텍스트 기반 메모리로 경험 축적 및 재사용
제한적 피드백 활용 계획 실패 원인 분석 및 재계획 기능
다중 작업 간 관계 추론 미흡 계층적 목표 분해 및 구조적 행동 계획 도입

결론

GITM은 Minecraft와 같은 오픈월드 환경에서 기존 연구의 RL 의존성과 학습 비효율성을 극복하며, LLM의 논리적 추론과 지식 활용 능력을 극대화한 혁신적 프레임워크입니다. 이러한 접근법은 AI 에이전트 개발에서 범용성과 효율성을 모두 달성하는 방향으로 기존 연구를 발전시킨 대표 사례로 평가됩니다.

 

그럼 이 논문에서 LLM이 직접 조종한 것은 아니고, 사람이 조종하면서 결과만 확인한 거야...?
다이아를 얻을 수 있는지?

아니요, "Ghost in the Minecraft" 논문에서는 LLM이 직접 Minecraft 에이전트를 조종하며, 사람이 개입하지 않는 방식으로 다이아몬드와 기타 목표를 달성합니다. 그러나 여기서 "조종"은 사람이 하는 것처럼 세부적인 키보드/마우스 입력을 직접적으로 수행하는 것이 아니라, LLM이 구조화된 행동(Structured Actions)을 생성하고 이를 실제 환경에서 실행하는 시스템을 통해 이루어집니다.

LLM의 역할과 작동 방식

  1. 계층적 계획 수립:
    • LLM은 최종 목표(예: 다이아몬드 획득)를 입력받은 후 이를 세분화하여 하위 목표(예: 철 곡괭이 제작, 다이아몬드 위치 탐색)를 생성합니다.
    • 이러한 하위 목표는 더 작은 단위의 구조적 행동으로 나뉩니다(예: "explore", "mine", "craft").
  2. 구조적 행동의 실행:
    • LLM은 "탐색", "채굴", "제작"과 같은 구조적 행동을 설계하며, 각각은 Minecraft 환경에서 키보드/마우스 입력으로 매핑됩니다.
    • 이 구조적 행동은 사람이 아닌 프로그래밍된 인터페이스를 통해 Minecraft 환경에서 실행됩니다.
    • 예를 들어:
      • "dig_down" 행동 → 캐릭터가 특정 깊이까지 땅을 파는 키보드 명령.
      • "mine" 행동 → 특정 위치에서 철광석을 채굴하는 마우스 클릭.
  3. 피드백 수집 및 재계획:
    • LLM은 행동 실패 시(예: "다이아몬드 광석이 너무 멀리 있음") 피드백을 수집하고, 원인을 분석해 새로운 계획을 생성합니다.
    • 이 과정은 사람이 아닌 폐쇄 루프 시스템(closed-loop system)에서 자동으로 이루어집니다.

사람이 개입하지 않는 이유

  • 훈련과 실행이 모두 자동화됨:
    • GITM 시스템은 LLM Planner와 LLM Interface를 통해 목표 설정, 계획 수립, 실행, 결과 평가를 완전 자동으로 수행.
  • GPU 없이 CPU로도 실행 가능:
    • RL 기반 에이전트가 아닌 텍스트 기반 시스템을 통해 효율적이고 자동화된 학습을 지원.

다이아몬드 획득 여부 검증

  1. 다이아몬드 획득:
    • GITM은 다이아몬드 획득 성공률에서 기존 연구 대비 47.5% 증가한 결과를 기록.
    • 이는 LLM Planner가 다이아몬드의 위치(예: Y레벨 10-12)나 필요한 도구(예: 철 곡괭이)를 텍스트 기반 지식에서 학습한 결과.
  2. 기술 트리 전 영역 달성:
    • 다이아몬드 외에도 Minecraft Overworld의 모든 항목(262개)을 성공적으로 잠금 해제.
    • RL 기반 방법으로는 달성 불가능했던 장기적 목표를 GITM이 수행.

핵심 결론

  • 사람의 직접 조종 없이 LLM이 Minecraft 환경에서 자동으로 목표를 수행합니다.
  • GITM은 다이아몬드 획득과 같은 복잡한 목표를 계층적 계획과 피드백 기반 재계획을 통해 달성합니다.
  • 기존 연구와 달리, 사람이 개입하지 않고도 LLM이 독립적으로 실행 가능한 일반적 에이전트를 개발한 것이 이 논문의 가장 큰 발전입니다.

 

이 논문에서 사용된 방법론에 대해 자세하게 설명해줘

"Ghost in the Minecraft" 논문에서 사용된 방법론은 Large Language Model(LLM)을 활용하여 Minecraft와 같은 오픈월드 환경에서 일반적 에이전트(Generally Capable Agents, GCAs)를 개발하는 데 중점을 둡니다. 이 방법론은 기존 강화학습(RL) 기반 접근법의 한계를 극복하며, LLM의 강력한 추론 및 지식 활용 능력을 통해 복잡한 장기 목표를 해결합니다. 이를 단계별로 살펴보겠습니다.


1. 전체 프레임워크 구성

논문에서 제안된 GITM은 세 가지 주요 구성 요소로 나뉩니다:

  1. LLM Decomposer: 목표를 하위 목표로 분해.
  2. LLM Planner: 하위 목표를 수행하기 위한 행동 계획 수립.
  3. LLM Interface: 계획된 행동을 실제 환경에서 실행.

2. LLM Decomposer: 목표 분해

목적: 복잡한 장기 목표를 해결 가능하고 작은 단위의 하위 목표로 나눕니다.

  • 입력: 최종 목표 (예: "다이아몬드 1개를 획득하라").
  • 작동 방식:
    1. LLM은 주어진 목표를 텍스트 기반 지식을 활용해 재귀적으로 분해합니다.
      • 예: 다이아몬드를 획득하려면 철 곡괭이가 필요 → 철 곡괭이를 만들려면 철광석막대기 필요 → 철광석을 얻으려면 돌 곡괭이 필요.
    2. 각 단계는 서브골 트리(sub-goal tree)로 구조화됩니다.
  • 지식 활용:
    • Minecraft Wiki와 같은 외부 지식 소스를 통해 항목 제작법, 자원 분포, 요구 도구를 학습.
    • 예: "다이아몬드는 Y-레벨 10~12에서 발견된다."
  • 출력: 트리 구조의 하위 목표 목록.

3. LLM Planner: 계획 수립

목적: 하위 목표를 수행하기 위한 구조적 행동 계획(structured actions)을 생성.

  • 입력: LLM Decomposer가 생성한 하위 목표.
  • 작동 방식:
    1. 구조적 행동 생성:
      • LLM은 각 하위 목표를 수행하기 위한 행동을 생성합니다.
      • 행동은 명확한 함수와 매개변수를 가진 구조적 형태로 표현됩니다.
      • 예: explore(object='diamond_ore', strategy='branching'),
             craft(object='iron_pickaxe', materials={...}, tool='crafting_table').
    2. 피드백 기반 계획 수정:
      • 행동 실패 시(예: 다이아몬드 광석을 찾지 못함) 실패 원인을 분석하고 새로운 행동 계획 생성.
      • 피드백 예: "다이아몬드가 너무 멀리 있음 → 이동 후 탐색 재시도."
    3. 텍스트 기반 메모리 활용:
      • 성공적인 행동 시퀀스를 텍스트 메모리에 저장.
      • 미래 유사한 목표에서 메모리를 참조해 계획 효율성을 증가.
  • 출력: 실행 가능한 행동 리스트.

4. LLM Interface: 실행 및 피드백

목적: LLM Planner가 생성한 구조적 행동을 실제 Minecraft 환경에서 실행.

  • 입력: LLM Planner가 생성한 행동.
  • 작동 방식:
    1. 키보드/마우스 매핑:
      • 구조적 행동은 Minecraft에서 실제 키보드/마우스 동작으로 변환됩니다.
      • 예: dig_down → 특정 깊이까지 땅을 파는 마우스 클릭/키보드 입력.
    2. 환경 피드백 수집:
      • 행동 성공 여부, 환경 상태(인벤토리, 위치, 깊이 등), 실패 원인 등을 피드백으로 기록.
    3. 실패 처리:
      • 실패한 행동에 대해 피드백을 분석하고, 새로운 행동 계획 요청.
  • 출력: 행동 실행 결과와 피드백.

5. 구조적 행동 (Structured Actions)

LLM Planner에서 생성된 행동은 명확한 함수 형태로 표현됩니다:

  • 예시 행동:
    • equip(object='iron_pickaxe'): 아이템 장착.
    • explore(object='diamond_ore', strategy='branching'): 다이아몬드 광석 탐색.
    • craft(object='wooden_pickaxe', materials={planks: 3, stick: 2}, tool='crafting_table'): 곡괭이 제작.
    • mine(object='iron_ore', tool='stone_pickaxe'): 철광석 채굴.
    • dig_down(y_level=12, tool='iron_pickaxe'): 특정 깊이까지 땅 파기.
  • 설계 원칙:
    • 행동은 LLM이 인식할 수 있는 높은 수준의 추상화와 구체적인 매개변수를 포함.
    • 필요시 행동 실패 원인을 명확히 분석해 수정 가능.

6. 텍스트 기반 지식 및 메모리

  • 외부 지식 활용:
    • Minecraft Wiki, Crafting Recipe 데이터를 사용해 작업을 수행.
    • 예: 다이아몬드 광석 위치(Y-레벨), 제작법, 채굴 요구 도구 등.
  • 텍스트 기반 메모리:
    • 성공한 계획과 행동을 저장하고 반복적으로 활용.
    • 명시적 텍스트 저장 방식으로 RL의 암묵적 파라미터 저장 방식보다 투명함.

7. 폐쇄 루프 실행 (Closed-Loop Execution)

  1. 목표 설정:
    • "다이아몬드 1개 획득"과 같은 최종 목표 입력.
  2. 계획 수립:
    • 목표 → 하위 목표 → 행동 계획 생성.
  3. 행동 실행:
    • 구조적 행동을 실행하며, 실패 시 피드백 분석.
  4. 피드백 루프:
    • 실패 원인 분석 → 새로운 계획 생성 → 반복.

8. 결과 및 효율성

  • 성공률:
    • 다이아몬드 획득 성공률 47.5% 향상 (기존 연구 대비).
    • 기술 트리 전체(262개 항목) 잠금 해제.
  • 학습 효율성:
    • GPU 없이 단일 CPU로 2일 내 학습 완료.
    • 환경 상호작용 단계 10,000배 감소.

요약

이 논문은 LLM을 활용한 계층적 목표 분해, 구조적 행동 계획, 피드백 기반 재계획을 통해 Minecraft와 같은 복잡한 오픈월드 환경에서 강화학습을 대체하는 혁신적인 방법론을 제시합니다. GITM은 기존 RL 기반 접근법보다 효율적이며, 다양한 작업에 일반화 가능성이 높은 프레임워크로 평가됩니다.

 

폐쇄 루프 시스템이라는게 잘 모르겠어
피드백을 받아서 다른 작동 없이 한 모델이 알아서 진행한다는 뜻이야?

폐쇄 루프 시스템(Closed-Loop System)이란 피드백(Feedback)을 기반으로 동작을 수정하며 목표를 달성하는 시스템을 의미합니다. Minecraft 환경에서 사용된 GITM의 폐쇄 루프 시스템은 다음과 같은 구조로 동작합니다:


1. 폐쇄 루프 시스템의 핵심 개념

  • 폐쇄 루프 vs. 개방 루프:
    • 폐쇄 루프(Closed-Loop): 시스템이 자신의 동작 결과(피드백)를 모니터링하고, 필요에 따라 수정하며 목표를 향해 나아갑니다.
      • 예: 자동차의 자동 주행 시스템이 카메라 데이터를 이용해 방향을 조정.
    • 개방 루프(Open-Loop): 입력만을 기반으로 동작하며, 결과에 따라 동작을 수정하지 않습니다.
      • 예: 특정 경로로만 움직이는 로봇 팔.

2. GITM에서 폐쇄 루프의 역할

GITM은 LLM(대규모 언어 모델)을 기반으로 Minecraft 환경에서 다음 과정을 반복하며 목표를 수행합니다:

  1. 행동 계획(Planning):
    • LLM Planner가 목표에 대한 초기 행동 계획을 생성합니다.
      • 예: "다이아몬드 획득" → "Y레벨 10까지 땅을 파고 다이아몬드 광석을 탐색."
  2. 행동 실행(Execution):
    • 계획된 행동(예: "dig_down", "explore")이 LLM Interface를 통해 Minecraft 환경에서 실행됩니다.
      • 예: "10번 클릭하여 땅 파기" 동작 수행.
  3. 피드백 수집(Feedback):
    • 행동이 성공했는지, 실패했는지, 어떤 문제가 발생했는지 환경에서 정보를 수집합니다.
      • 피드백 예:
        • 성공: "Y레벨 10에 도달."
        • 실패: "다이아몬드가 발견되지 않음" 또는 "채굴 도구 없음."
  4. 피드백 기반 수정(Adaptation):
    • 실패한 경우, LLM Planner가 피드백을 분석하여 새로운 행동 계획을 생성합니다.
      • 예: "도구가 없으므로 나무를 채집해 제작 테이블을 만들고 곡괭이를 제작."
  5. 반복(Loop):
    • 새로운 계획을 생성하고 실행 → 피드백 수집 → 수정하는 과정을 반복.
    • 목표가 달성되면 종료.

3. 한 모델이 알아서 진행한다는 의미?

폐쇄 루프 시스템은 하나의 모델(여기선 LLM)이 피드백을 기반으로 행동을 조정하며 목표를 달성하는 것을 의미합니다. 사람의 개입 없이 다음과 같은 방식으로 작동합니다:

  • 피드백 수집 및 분석:
    • 행동이 실패했을 때, 실패 원인을 파악합니다.
      • 예: "다이아몬드가 너무 멀리 있음"이라는 메시지가 실패 원인으로 전달.
  • 새로운 계획 생성:
    • LLM Planner가 피드백을 참고해 새로운 행동 계획을 생성.
      • 예: "다이아몬드가 발견되지 않았으므로 Y레벨 10-12를 더 탐색."
  • 자동 실행:
    • 새 계획을 생성하고 자동으로 실행하는 과정이 루프 내에서 반복.

4. GITM의 폐쇄 루프 설계 장점

  1. 환경 적응:
    • 예상치 못한 상황(도구 부족, 목표 실패)에 적응 가능.
    • 피드백을 통해 환경 변화에 유연하게 대응.
  2. 학습 효율성:
    • 피드백을 통해 실패를 분석하므로 불필요한 반복이 줄어듦.
    • 예: RL처럼 무작위로 탐색하는 대신, 피드백 기반 수정으로 효율적 수행.
  3. 목표 달성 강화:
    • 단순히 계획된 대로 실행하는 것보다, 피드백 기반 수정이 목표 성공률을 높임.
    • 예: 다이아몬드 탐색 성공률이 47.5%로 향상.

5. 폐쇄 루프의 예시

Minecraft 환경에서 다이아몬드 획득을 목표로 하는 과정:

  1. 초기 계획:
    • LLM Planner: "철 곡괭이를 제작하고 Y레벨 10에서 다이아몬드를 채굴하라."
  2. 행동 실행:
    • "나무를 채집 → 곡괭이 제작 → 땅 파기 → 다이아몬드 탐색."
  3. 피드백:
    • 실패: "철 곡괭이가 없어 다이아몬드를 채굴할 수 없음."
  4. 수정:
    • 새로운 계획 생성: "철광석 채굴 후 제련하여 철 곡괭이를 제작하라."
  5. 반복:
    • 새로운 계획 실행 → 피드백 수집 → 재계획 → 목표 달성.

6. 결론

폐쇄 루프 시스템에서 LLM은 피드백을 기반으로 동작을 자동으로 수정하고 목표를 향해 나아갑니다. 이는 사람이 개입하거나 별도의 재설정을 요구하지 않고도 하나의 시스템이 독립적으로 목표를 달성할 수 있도록 설계된 것입니다. GITM은 이러한 구조를 통해 Minecraft와 같은 복잡한 환경에서 성공적인 자동화와 일반화 성능을 입증했습니다.

 

그럼 GITM은 목표를 정하면 그 목표의 세부 목표를 나눠서 각각 정한 다음에 그 목표를 위해서 행동을 LLM이 출력하면 그 행동대로 하다가 피드백을 받아들이고 다시 행동을 출력해주는 것이네?

네, 정확히 이해하셨습니다! GITM(Ghost in the Minecraft)의 작동 방식은 다음과 같은 과정으로 이루어지며, 이를 통해 목표를 설정하고 세부적으로 나눠 행동 계획을 실행하고 수정합니다:


GITM의 동작 과정

  1. 최종 목표 설정
    • 사용자 또는 시스템이 최종 목표를 지정합니다.
      예: "다이아몬드 1개를 획득하라."
  2. 세부 목표로 분해 (LLM Decomposer)
    • LLM은 최종 목표를 해결 가능한 작은 하위 목표로 나눕니다.
    • 이를 재귀적 목표 분해라고 하며, 모든 하위 목표는 작업 트리 형태로 구조화됩니다.
      • 예:
        • 최종 목표: 다이아몬드 획득
        • 하위 목표:
          1. 철 곡괭이 제작
          2. 다이아몬드 광석 탐색
          3. 다이아몬드 채굴
  3. 구조적 행동 생성 (LLM Planner)
    • LLM은 각 하위 목표를 수행하기 위한 세부적인 행동을 생성합니다.
      • 예:
        1. "나무를 채집하라."
        2. "막대기를 제작하라."
        3. "돌 곡괭이를 제작하라."
        4. "철광석을 채굴하라."
        5. "다이아몬드 광석을 탐색하라."
    • 각 행동은 구조화된 명령으로 표현됩니다.
      • 예: explore(object='diamond_ore', strategy='branching').
  4. 행동 실행 및 피드백 수집 (LLM Interface)
    • 행동을 Minecraft 환경에서 실행합니다.
      • LLM Interface가 행동을 실제 키보드/마우스 입력으로 변환하여 수행.
    • 실행 결과에 따라 피드백을 수집합니다.
      • 성공: 목표를 달성했거나 특정 행동이 완료됨.
      • 실패: 장애물 발생(예: "도구 부족", "다이아몬드 없음").
  5. 피드백 기반 수정 및 재계획 (Closed-Loop System)
    • 피드백을 분석해 실패 원인을 파악합니다.
      • 예: "채굴 도구가 부족함" → "돌 곡괭이를 제작하라."
    • 새로운 행동 계획을 생성합니다.
      • 예: 다이아몬드 광석이 발견되지 않은 경우 → "Y-레벨 12까지 땅을 더 파라."
  6. 목표 달성
    • 목표를 달성할 때까지 실행과 피드백 과정을 반복합니다.

핵심 설계 철학

  • 목표 분해: 큰 목표를 해결 가능한 작은 목표로 나누어 계획의 성공률을 높임.
  • 피드백 활용: 실패 시 원인을 분석하고 새로운 계획을 생성하여 환경 변화에 적응.
  • 자동화된 실행: 사람이 개입하지 않고 LLM이 목표 분해, 계획 수립, 실행, 수정 과정을 전적으로 수행.

구체적 예시: 다이아몬드 획득

  1. 목표 설정: "다이아몬드 1개를 획득하라."
  2. 목표 분해:
    • 철 곡괭이 제작.
    • 다이아몬드 광석 탐색.
    • 다이아몬드 채굴.
  3. 행동 계획 생성:
    • "나무를 채집하라."
    • "막대기를 제작하라."
    • "돌 곡괭이를 제작하라."
    • "철광석을 채굴하라."
  4. 행동 실행 및 피드백:
    • 실패: "철광석이 부족함."
    • 수정: "철광석을 더 탐색하라."
  5. 목표 달성: 다이아몬드 광석을 찾아 채굴.

결론

  • GITM은 사용자가 설정한 목표를 세부적으로 분해하고, 이를 달성하기 위한 행동 계획을 자동으로 생성하며, 피드백을 통해 실패를 보완하여 목표를 점진적으로 달성하는 지능적이고 자율적인 시스템입니다.
  • LLM의 역할:
    • 목표를 분해하고 행동을 설계.
    • 실패 피드백을 기반으로 행동을 수정.
    • 최종적으로 사람의 개입 없이 목표를 완전히 수행.

 

그럼 환경에 대한 인지와, 피드백이 어떻게 들어와?

GITM의 환경 인지피드백 수집은 LLM 기반 에이전트가 Minecraft와 같은 오픈월드 환경에서 효과적으로 상호작용할 수 있도록 설계된 중요한 요소입니다. 이를 구체적으로 설명하겠습니다.


1. 환경에 대한 인지 (Perception of the Environment)

GITM은 Minecraft 환경의 상태를 이해하고, 행동 계획을 세우기 위해 필요한 정보를 수집합니다. 이 과정은 LLM Planner와 Interface가 협력하여 이루어집니다.

(1) 인지 방법

  • 시각적 정보 (LiDAR 및 Voxel):
    • GITM은 Minecraft 환경에서 객체와 위치를 인식하기 위해 LiDAR 레이Voxel 데이터를 사용합니다.
      • LiDAR: 일정 간격으로 발사되는 레이로 물체의 위치를 감지.
        • 예: "다이아몬드 광석이 특정 위치에 있음."
      • Voxel: 주변 3D 공간을 그리드 형태로 표현하여 이동 및 작업을 위한 공간 데이터를 제공.
        • 예: "플레이어 주변 10 유닛 반경 내에서 탐색 가능."
  • 인벤토리 정보:
    • 플레이어가 소유한 아이템, 도구, 자원을 추적.
      • 예: "현재 돌 곡괭이 1개, 막대기 5개 소유."  
  • 위치 정보:
    • 플레이어의 현재 좌표(X, Y, Z)와 환경 상태를 파악.
      • 예: "현재 깊이는 Y-레벨 15, 바이옴은 숲."

(2) 인지 정보의 활용

LLM은 Minecraft 환경에서 수집한 정보를 행동 계획에 통합합니다.

  • 예제:
    • 목표: "다이아몬드 1개 획득."
    • 환경 인지 결과:
      • 현재 깊이는 Y-레벨 20, 다이아몬드 광석 없음.
      • 플레이어는 돌 곡괭이를 소유.
    • 결과:
      • LLM Planner는 "Y-레벨 10-12로 이동"과 "다이아몬드 광석 탐색" 행동을 계획.

2. 피드백 시스템 (Feedback System)

GITM은 행동 실행 후 환경에서 반환된 결과를 피드백으로 수집하고 이를 기반으로 행동을 수정합니다.

(1) 피드백의 구성 요소

피드백은 실행 결과와 환경 상태를 포함하며, 행동 계획의 성공 여부를 판단할 근거를 제공합니다.

  • 성공/실패 상태:
    • 행동이 성공했는지, 실패했는지 확인.
      • 성공 예: "Y-레벨 10에 도달."
      • 실패 예: "다이아몬드 광석 없음."
  • 상태 정보:
    • 플레이어의 현재 위치, 인벤토리 상태, 주변 환경 정보를 포함.
      • 예: "현재 깊이는 Y-레벨 10, 다이아몬드 광석 탐지 안됨."
  • 실패 원인:
    • 실패의 구체적인 이유를 제공.
      • 예: "도구 부족", "길을 찾을 수 없음", "다이아몬드가 탐지되지 않음."

(2) 피드백의 활용

LLM Planner는 피드백을 분석하여 계획을 수정하거나 새로운 행동을 생성합니다.

  • 피드백 루프:
    1. 피드백을 통해 행동의 성공 여부와 실패 원인을 파악.
    2. 실패 원인을 기반으로 새로운 행동 계획 생성.
      • 예: "다이아몬드 광석이 탐지되지 않음 → Y-레벨 12까지 땅을 더 파라."
    3. 행동 실행을 반복하며 목표 달성.

(3) 피드백 예제

상황: 다이아몬드 획득

  • 초기 행동: "Y-레벨 10까지 땅 파기."
  • 피드백:
    • 실패: "다이아몬드 광석 없음."
    • 상태: "현재 깊이는 Y-레벨 10."
  • 새로운 계획:
    • LLM Planner는 "Y-레벨 11로 이동한 후 주변 탐색"을 추가로 계획.

3. 환경 인지와 피드백의 상호작용

환경 인지와 피드백 시스템은 서로 밀접하게 연결되어 동작합니다:

  1. 환경 상태 파악:
    • LiDAR와 Voxel 데이터를 통해 환경의 상태를 인식.
    • 행동 계획을 수립하는 데 필요한 정보를 제공.
  2. 행동 실행 후 피드백:
    • 환경에서 제공된 실행 결과를 분석하여 행동 성공 여부를 판단.
    • 실패 시 새로운 계획을 세우고 행동을 수정.
  3. 루프 반복:
    • 목표 달성 시까지 환경 인지 → 계획 → 실행 → 피드백 과정을 반복.

4. GITM의 환경 인지 및 피드백 설계 장점

  • 자율성:
    • 에이전트가 환경 정보를 실시간으로 수집하고, 피드백을 기반으로 행동을 수정하며 목표를 스스로 달성.
  • 효율성:
    • 피드백을 통해 불필요한 행동을 줄이고 목표를 더 빠르게 달성.
  • 확장성:
    • 환경 인지와 피드백 시스템은 Minecraft 외의 다른 오픈월드 환경에도 쉽게 적용 가능.

결론

GITM은 환경에 대한 실시간 인지피드백 기반 행동 수정을 통해 자율적이고 효율적으로 목표를 달성합니다. 환경 인지는 LLM Planner가 적절한 계획을 세우는 데 핵심 역할을 하며, 피드백은 행동 실패를 보완하여 목표 달성률을 극대화합니다. 이 두 시스템이 상호작용하여 폐쇄 루프 구조를 형성하며, 이를 통해 GITM은 사람이 개입하지 않고도 Minecraft와 같은 복잡한 환경에서 효과적으로 작동합니다.

 

수정 및 명확화를 통해 더 읽기 쉽게 정리한 글은 아래와 같습니다:


Minecraft가 인공지능이 현실 세계에서 활용되기 전에 테스트할 수 있는 환경이라는 점은 흥미로웠습니다. 이처럼 Minecraft는 복잡한 오픈월드 환경을 제공하며, 인공지능의 성능을 파악하고 다양한 실험을 진행하기에 적합한 플랫폼으로 보입니다.

이 논문에서는 기존의 강화학습 모델이 목표를 달성하는 데 매우 높은 리소스를 요구한다는 문제를 지적하며, 이를 대안으로 LLM(Large Language Model)을 활용한 CPU 기반 에이전트를 제안했습니다. 이를 통해 높은 자유도와 성능을 가진 에이전트를 구현했습니다.

LLM은 목표를 입력받으면 이를 더 작은 세부 목표로 나누고, 각 세부 목표를 달성하기 위해 폐쇄 루프(Closed-Loop) 구조를 통해 행동을 수정하며 진행합니다. 이러한 방식으로 Minecraft 내의 모든 기술 목표를 완수했으며, 특히 다이아몬드 채굴 성공률을 기존 대비 크게 향상시켰습니다.

다만, 이 논문에서는 학습을 통해 지식을 획득하기보다는 Minecraft Wiki와 같은 사전 지식을 활용하여 목표를 세우고 이를 달성합니다. 제가 생각했던 것과는 약간 다르게 작동하지만, 언어 모델이 목표를 세부적으로 분해하고 이를 실현하기 위해 계속 도전하는 방식은 매우 흥미로웠습니다. 이 점이 이번 논문에서 제가 얻어갈 주요 교훈이라 생각합니다.


이 정리는 원문 내용의 논리 흐름을 유지하면서도 표현을 더 간결하고 명확하게 만들었습니다. 추가적으로 강조하고 싶은 점이 있다면 알려주세요!

728x90