1291.97 행동 트리와 GOAP의 비교

1. 개요

목표 지향 행동 계획(Goal-Oriented Action Planning, GOAP)은 원하는 목표 상태(goal state)로부터 역방향으로 행동 시퀀스를 자동 생성하는 계획 기반 행동 제어 기법이다. 본 절에서는 행동 트리(Behavior Tree, BT)와 GOAP의 구조적, 기능적 차이를 비교한다.

2. GOAP의 기본 원리

GOAP는 Orkin(2003)이 게임 *F.E.A.R.의 NPC 행동 제어를 위해 제안한 기법이다. GOAP에서 각 행동(action)은 사전 조건(precondition)과 효과(effect)로 정의되며, 계획 알고리즘(일반적으로 A 또는 역방향 탐색)이 현재 세계 상태(world state)에서 목표 상태까지의 행동 시퀀스를 자동으로 탐색한다.

형식적으로, GOAP의 행동 a는 다음과 같이 정의된다:

  • 사전 조건: \text{Pre}(a) \subseteq S (행동 a의 실행에 필요한 상태 집합)
  • 효과: \text{Eff}(a) \subseteq S (행동 a의 실행 후 변경되는 상태 집합)

3. 주요 차이점

3.1 행동 구성 방식

행동 트리에서 행동의 순서와 조건 분기는 개발자가 트리 구조로 수동 설계한다. GOAP에서는 개발자가 개별 행동의 사전 조건과 효과만 정의하면, 계획 알고리즘이 올바른 행동 시퀀스를 자동으로 도출한다.

3.2 유연성과 적응성

GOAP는 환경 상태의 변화에 따라 행동 시퀀스를 동적으로 재생성할 수 있어, 사전에 예측하지 못한 상황에 대한 적응성이 높다. 행동 트리는 사전 설계된 구조에 기반하므로, 새로운 상황에 대응하려면 설계자가 해당 상황에 대한 분기를 명시적으로 추가해야 한다.

3.3 반응성

행동 트리는 Tick 기반 재평가 메커니즘을 통해 매 주기마다 조건을 재검사하여 즉각적인 행동 전환이 가능하다. GOAP는 계획 수립에 계산 시간이 소요되며, 계획 실행 중의 실시간 행동 전환이 행동 트리에 비해 제한적이다.

3.4 계산 비용

GOAP의 계획 알고리즘은 행동의 수와 세계 상태의 크기에 따라 계산 비용이 증가한다. 행동 트리는 트리 순회만으로 행동을 결정하므로, 계산 비용이 트리의 깊이에 선형적으로 비례한다.

3.5 디버깅 용이성

행동 트리는 시각적 트리 구조를 통해 행동 로직의 추적이 직관적이다. GOAP는 계획 알고리즘의 탐색 과정이 암묵적(implicit)이어서, 특정 행동 시퀀스가 선택된 이유를 추적하기 어렵다.

4. 비교 요약

비교 기준행동 트리GOAP
행동 구성수동 설계 (트리 구조)자동 계획 (탐색 알고리즘)
반응성높음 (Tick 기반)낮음 (계획 재수립 지연)
적응성낮음 (사전 설계 의존)높음 (동적 재계획)
계산 비용낮음 (트리 순회)중–높음 (탐색 비용)
가독성높음낮음
순차 행동 보장명시적 (Sequence)자동 도출

5. 하이브리드 적용

행동 트리와 GOAP의 장점을 결합하기 위해, GOAP 계획기가 생성한 행동 시퀀스를 행동 트리 구조로 인코딩하여 실행하는 하이브리드 접근법이 활용된다. 이를 통해 GOAP의 자동 계획 능력과 행동 트리의 반응성 및 가독성을 동시에 제공할 수 있다.


참고 문헌

  • Orkin, J. (2003). Applying Goal-Oriented Action Planning to Games. AI Game Programming Wisdom 2, 217–228.
  • Colledanchise, M., & Ögren, P. (2018). Behavior Trees in Robotics and AI: An Introduction. CRC Press.

버전: 2026-04-01