LLM을 이용한 행동트리 학습 가능성에 대한 연구

2026. 7. 6. 22:22·AI

이 글에서 공개하는 내용은 개인적으로 진행했지만, 논문 작성까지 가지 않은 개인 연구 입니다.

본 원고는 학회에 게재되거나 발표되지 않았으며, 정식 심사를 거치지 않았습니다.

0. Abstract

게임 인공지능 분야에서 행동 트리(BT)는 높은 해석 가능성과 모듈성을 제공하지만, 복잡한 환경에 대응하기 위해서는 전문가의 수동 설계가 필수적이라는 한계가 있다. 최근 대규모 언어 모델(LLM)을 활용한 에이전트 연구가 활발하나, 실시간 추론 비용과 속도로 인해 게임 런타임에 직접 적용하기에는 제약이 따른다. 본 연구에서는 LLM을 실시간 컨트롤러가 아닌, BT를 설계하고 수정하는 프레임워크를 제안한다.

1. 서론

 게임 인공지능 분야에서 에이전트의 의사결정 모델을 설계하는 것은 크게 규칙 기반과 학습 기반의 두 가지로 구분된다. 전통적인 유한 상태 기계(FSM)나 행동 트리(BT)와 같은 규칙 기반 시스템은 개발자가 의도를 명확히 파악할 수 있고 디버깅이 용이하나 복잡한 게임 환경의 모든 상태를 사전에 정의해야 하는 확장성의 한계가 있다. 반면 강화학습은 고차원 상태 공간에서 최적의 전략을 찾을 수 있으나 학습 과정에 많은 자원이 소요되며 결과물인 정책이 블랙박스 형태여서 해석과 수정이 불가능하다는 단점이 있다[1].

최근 대규모 언어 모델(LLM)의 등장으로 텍스트 기반의 추론 능력을 활용하여 게임 플레이 로그를 분석하고 전략을 생성하는 접근방법이 가능해졌다[2]. 그러나 LLM이 게임 컨트롤에 실시간으로 개입하는 것은 추론 시간과 비용 등으로 인해 비효율적이다[3]. 따라서 LLM을 실시간 컨트롤러가 아닌 기존의 신뢰성 있는 제어 구조인 BT를 생성하고 수정하는 설계자로서 활용하는 방법론이 주목받고 있다.

 

 본 연구에서는 턴제 텍스트 RPG 전투 환경에서 LLM이 전투 로그를 분석하여 플레이어의 BT를 점진적으로 개선하는 프레임워크를 제안한다. 이 시스템은 전투 수행, 로그 분석, BT 수정의 반복적인 사이클을 통해 사람의 개입 없이 전략을 최적화할 수 있다.

2. 관련 연구

2.1 BehaviourTree 자동 생성

 

  BT는 모듈화와 재사용성이 뛰어나 게임 업계의 표준적인 AI 아키텍쳐로 자리 잡았다[4]. 기존 연구에서는 유전 알고리즘을 사용하여 BT를 진화시키려는 시도가 있었으나, 이는 적합도 함수 설계가 까다롭고 생성된 트리의 가독성이 떨어지는 경향이 있다[5]. 본 연구는 무작위 변이에 의존하는 진화 연산 대신 LLM의 추론 능력을 활용하여 전투 로그의 인과 관계를 분석하고 목적 지향적으로 트리를 수정한다는 점에서 차별화된다.

 

2.2 게임 에이전트로서의 LLM

 

 기존 연구는 LLM이 텍스트 피드백을 통해 마인크래프트 같은 시뮬레이션 환경에서 장기적인 계획을 수립할 수 있음을 입증했다[6]. 그러나 이러한 방식은 LLM이 매 틱마다 호출되거나 자연어 형태의 계획을 수행하므로 연산 비용이 높고 실시간성이 요구되는 전투 환경에 부적합 한 문제가 있다. 본 연구는 LLM을 최적화 도구로만 사용하고 생성된 BT를 오프라인 환경에서 실행해 실행 효율성과 성능을 동시에 추구한다.

3. 실험 방법

3.1 게임 환경 및 제약 조건

 

실험 환경은 35턴의 제한이 있는 1:1 턴제 전투이다. 플레이어와 적은 각각 HP, MP, 공격력, 방어력 등의 스탯을 가지며, 화염과 얼음 속성 간의 상성 시스템이 적용된다. 모든 전투 정보는 텍스트의 로그 형태로 기록되며 이는 Critic LLM의 입력 데이터로 활용된다.

 

3.1.1 플레이어

플레이어는 100의 체력과 100의 MP를 가지며 다음과 같은 7개의 액션 공간을 가진다.

공격 및 스킬: Attack, Charge, FireSpell, IceSpell

방어 및 보조: Defend, Heal, Cleanse

 

BT는 이러한 액션들을 노드로 가지며, Sequence, Selector 등의 제어 노드를 통해 로직을 구성한다. 각 액션은 조건 노드와 결합하여 상황에 맞는 전략을 실행한다. 조건 노드는 IsPlayerHPLow, HasMP, HasStatus, EnemyIsTelegraphing, EnemyHasElement 등이 있다. 액션의 자세한 설명은 다음과 같다.

Attack: 9 데미지, MP 10 회복

Charge: 7 데미지, 다음 턴 2배 데미지의 Charged 상태 부여

FireSpell: 20MP 소모, 7데미지, 약점 공격시 데미지 1.5배

IceSpell: 20MP 소모, 10데미지, 약점 공격시 데미지 1.5배

Defend: 받는 데미지 50% 감소

Heal: 30MP 소모, HP40 회복, 3턴 쿨타임

Cleanse: 25MP소모, 상태 이상 제거

 

3.1.2 적대적 개체

시스템을 검증하기 위해 서로 다른 전략을 요구하는 두 가지 타입의 적을 설계한다.

  1. FireGolem: 상태 기반 패턴 변화

180의 체력과 40MP를 가지며 두 개의 체력 기반 상태(Phase)를 가지며 상태 2에서는 Fire 속성을 부여받는다. 특수 능력으로 플레이어에게 입힌 데미지의 20%를 회복하고 턴 당 8MP를 회복한다. 사용하는 액션과 확률은 다음과 같다.

  • Phase1: Slam(60%), HeavySlam(40%)
  • Phase2: FireStrike(70%), HeavySlam(30%)

각 액션의 자세한 정보는 다음과 같다. 액션의 정보는 액션 이름, 소모 MP, 기본 데미지, 특수 능력으로 구성된다.

  • Slam: 10MP 소모, Dmg21
  • HeavySlam: 30MP 소모, Dmg45
  • FireStrike:20MP 소모, Dmg15, 플레이어게게 3턴동안 10의 데미지를 주는 디버프를 부여한다.

    2. IceWraith: 상호작용 기반 동적 속성 변화

 

200의 체력과 100MP를 가지며 FrostBlast 스킬을 사용시 Ice 속성을 3턴동안 부여받으며 FireGolem보다 세부적인 Phase를 가지고 있다.

  • Phase1: FrostTouch(80%), FlostBlast(20%)
  • Phase2: FrostTouch(45%), FlostBlast(20%), Debuff(20%), DefensiveStance(15%)
  • Phase3: FlostBlast(45%), FrostTouch(35%), Debuff(20%)

각 액션의 자세한 정보는 다음과 같다.

  • FrostTouch: 10MP, Dmg18
  • FrostBlast: 20MP, Dmg28, 사용시 Ice 속성을 3턴동안 부여받는다.
  • Debuff: 20MP, 플레이어에게 1턴동안 공격력 20% 감소 디버프를 부여한다.
  • DefensiveStance: 15MP, 방어력이 25% 증가한다.

3.2 시스템 아키텍쳐

 

본 시스템은 전투 로그를 분석하고 BT를 개선하기 위해 두 단계의 LLM 파이프라인을 사용한다.

 

3.2.1 Critic

전투가 종료되면 Critic 에이전트는 전체 전투 로그를 입력받는다. Critic은 BT의 문법을 수정하지 않고, 오직 전략적 결함만을 자연어로 지적한다. 이 단계에서는 많은 토큰을 효율적으로 처리하기 위해 Gemma3:4b 모델을 사용하였다.

 

3.2.2 Generator

Generator 에이전트는 현재의 BT DSL과 Critic의 피드백을 입력받고 개선된 BT DSL을 생성성한다. 복잡한 제어 로직을 구성하고 문법적 정확도를 유지해야 하므로 Critic 에이전트보다 높은 코딩 성능을 보유한 Gemini 2.0 Flash 모델을 사용하였다. 생성한 BT DSL은 문법 오류, Fallback 액션, 존재하지 않은 조건, 액션을 사용하는지 검증하고 실패시 이전 BT를 다시 사용한다.

 

실험은 다음과 같은 반복 루프로 수행된다.

  • 초기화: 플레이어는 매우 단순한 초기 BT로 게임을 플레이한다.
  • 실행: 현재 BT로 랜덤한 적과 전투를 수행하고 로그를 생성한다. 승리하거나 최대 턴을 초과하면 종료된다.
  • 평가: 남은 HP, 소요 턴 수, 승패 유무 등을 기록하고 추가로 두 적과 20회씩 전투 후 승률을 기록한다.
  • 최적화: Critic-Generator 파이프라인을 가동하여 새로운 BT를 생성한다.
  • 반복: 생성된 BT로 2단계로 돌아가 재전투를 수행한다. 이 과정은 정해진 횟수 또는 목표 승률 도달까지 반복한다.

4. 실험 결과

4.1 실패사례 분석

[그림 1]

 

 실험 과정에서 [그림 1]과 같은 에이전트가 최적 전략에 도달하지 못하고 성능이 정체되는 현상이 자주 관찰되었다. 이러한 실패사례를 분석한 결과, 주로 Generator 에이전트의 보수적 성향과 Critic 에이전트의 추론 오류에 기인함을 확인하였다.

Generator 에이전트가 Critic 에이전트의 피드백을 반영하는 과정에서, 새로운 노드를 추가하거나 제어 노드를 변경해야 하는 상황에서 기존 노드의 순서만 바꾸거나 수치만을 조절해 BT의 논리 구조를 근본적으로 재설계하지 못하는 경향이 보였다.

Critic 에이전트는 전투 로그의 방대한 텍스트 내에서 패배의 결정적 원인을 식별하지 못하는 경우가 확인되었다. 예를 들어, 패배의 원인이 ‘과거 턴의 디버프 해제 실패’ 임에도 단순히 ‘전투 종료 직전의 HP 회복 실패’를 문제 삼는 등 시간적 인과 관계를 완전히 파악하지 못하는 문제가 있었다.

이는 경량화 모델의 한계로 인해 긴 시퀀스 내에서의 맥락을 완전히 파악하지 못했고, 복합적인 게임 규칙을 완전히 이해하지 못한 것으로 보인다.

 

4.2 성공사례 분석

[그림 2]

 개선에 성공한 BT들을 분석한 결과, 에이전트는 게임의 매커니즘 중 일부를 이해하고 더 나은 전략 패턴을 사용했다. 구체적으로는 적의 속성 상태를 조건부로 판단하여 성성 우위에 있는 액션을 선택하거나, Charge 상태에서 기본 공격 대신 고위력 기술을 연계하여 DPS를 올리는 공격 시퀀스가 있었다. 또한, 적의 강력한 공격이 예고되어있는 텔레그래프를 감지하였을 때는 적절히 방어나 힐을 사용하는 등 생존성을 확보하고, 디버프가 부여된 경우에는 Cleanse 액션을 통해 디버프를 해제하는 모습을 보였다.

 

5. 결과

본 연구에서는 턴제 텍스트 RPG 전투 로그를 분석하여 플레이어의 BT를 자동으로 최적화하는 프레임워크를 제안하였다. 이 시스템은 경량화된 Critic 에이전트와 고성능 Generator 에이전트의 2단계 파이프라인을 통해 텍스트데이터로부터 승리 전략을 만들어 BT를 생성하는 과정을 자동화 하였다.

실험 결과, Generator 에이전트가 생성하는 BT의 구조적 고착과 Critic 모델의 인과 관계 추론 오류로 인해 대다수의 실험에서 최적의 전략에 수렴하지 못하는 한계가 드러났다. 그러나 간헐적으로 생성된 개선 사례에서 에이전트가 속성 상성, 텔레그래프 대응, 스킬 연계와 같은 고수준 전략을 명시적인 BT 형태로 구현하였음을 확인하였다.

이는 불완전한 시스템에도 불구하고 LLM이 학습 없이 게임 매커니즘을 이해하고 논리적인 전략을 수립할 수 있음을 시사한다.

향후 연구에서는 이러한 한계를 극복하기 위해 Critic 에이전트의 추론 정확도를 확보할 수 있도록 게임 로그의 품질을 개선할 것이다. 또한, Generator 에이전트의 구조적 문제를 해결하기 위해 유망한 후보를 선별하는 Beam Search 알고리즘을 도입하고 이전에 실패했거나 성능이 저조했던 노드 패턴을 프롬프트에 추가하여 구조적 변이를 유도할 계획이다.

 

6. REFERENCE

[1]: Puiutta, Erika, and Eric MSP Veith. "Explainable reinforcement learning: A survey," in International Cross-Domain Conference for Machine Learning and Knowledge Extraction, Cham: Springer International Publishing, 2020, pp. 77–95.

[2]: Shinn, Noah, et al. "Reflexion: Language agents with verbal reinforcement learning," in Advances in Neural Information Processing Systems, vol. 36, 2023, pp. 8634–8652.

[3]:Park, Joon Sung, et al. "Generative agents: Interactive simulacra of human behavior." Proceedings of the 36th annual acm symposium on user interface software and technology. 2023.

[4]: Isla, Damian. "Managing complexity in the halo2 ai." Game Developer's Conference Proceedings, 2005. 2005.

[5]: Perez, Diego, et al. "Evolving behaviour trees for the mario ai competition using grammatical evolution." European Conference on the Applications of Evolutionary Computation. Berlin, Heidelberg: Springer Berlin Heidelberg, 2011.

[6]: Wang, Guanzhi, et al. "Voyager: An open-ended embodied agent with large language models." arXiv preprint arXiv:2305.16291, 2023.

'AI' 카테고리의 다른 글

강화학습 - IMPALA  (0) 2025.01.16
'AI' 카테고리의 다른 글
  • 강화학습 - IMPALA
GRstory
GRstory
  • GRstory
    GRstory Blog
    GRstory
  • 전체
    오늘
    어제
    • 분류 전체보기 (39)
      • Unity (0)
      • Unreal (2)
      • DirectX (3)
      • 프로그래머스 (30)
      • GameReady Format (1)
      • AI (2)
      • ETC (1)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    omniverse
    OpenUSD
    SimReady
    GameReady
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.6
GRstory
LLM을 이용한 행동트리 학습 가능성에 대한 연구
상단으로

티스토리툴바