1291.98 행동 트리와 HTN의 비교
1. 개요
계층적 태스크 네트워크(Hierarchical Task Network, HTN)는 태스크를 계층적으로 분해하여 행동 시퀀스를 자동으로 생성하는 계획 기법이다. 본 절에서는 행동 트리(Behavior Tree, BT)와 HTN의 구조적, 기능적 차이를 비교한다.
2. HTN의 기본 원리
HTN 계획에서 태스크는 복합 태스크(compound task)와 원시 태스크(primitive task)로 분류된다. 복합 태스크는 분해 방법(decomposition method)을 통해 하위 태스크의 시퀀스로 분해되며, 이 과정은 모든 복합 태스크가 원시 태스크로 완전히 분해될 때까지 재귀적으로 반복된다. 각 분해 방법은 적용 조건(precondition)을 가지며, 적용 조건이 만족되는 분해 방법이 선택된다.
형식적으로, HTN 계획 문제는 도메인 \mathcal{D} = (O, M)과 문제 \mathcal{P} = (s_0, T_0)로 정의된다. 여기서 O는 연산자(operator) 집합, M은 메서드(method) 집합, s_0는 초기 상태, T_0는 초기 태스크 네트워크이다.
3. 주요 차이점
3.1 구조적 유사성과 차이
행동 트리와 HTN은 계층적 분해 구조를 공유한다는 점에서 구조적 유사성을 가진다. 행동 트리의 서브트리 계층은 HTN의 태스크 분해 계층과 대응한다. 그러나 핵심적 차이는 다음과 같다:
- 정적 vs. 동적 구조: 행동 트리는 트리 구조가 설계 시점에 결정되는 반면, HTN은 계획 시점에 태스크 분해를 통해 구조가 동적으로 생성된다.
- 실행 vs. 계획: 행동 트리는 실행 아키텍처(execution architecture)로서 각 Tick마다 노드를 순회하며 행동을 실행하는 반면, HTN은 계획 알고리즘(planning algorithm)으로서 실행 이전에 완전한 행동 시퀀스를 우선 생성한다.
3.2 자동 분해 능력
HTN의 핵심 장점은 복합 태스크의 자동 분해이다. 개발자는 분해 규칙만 정의하면, 계획 알고리즘이 현재 상태에 적합한 분해 경로를 자동으로 탐색한다. 행동 트리에서는 이러한 분해가 수동으로 수행되어야 한다.
3.3 반응성
행동 트리는 Tick 기반 재평가를 통해 높은 반응성을 제공한다. HTN은 계획 실행 중의 환경 변화에 대응하기 위해 재계획(replanning)이 필요하며, 재계획에 소요되는 시간이 실시간 반응을 제한할 수 있다.
4. 비교 요약
| 비교 기준 | 행동 트리 | HTN |
|---|---|---|
| 구조 결정 | 설계 시점 (정적) | 계획 시점 (동적) |
| 계층적 분해 | 수동 | 자동 |
| 반응성 | 높음 | 낮음 (재계획 필요) |
| 도메인 지식 | 트리 구조에 내재 | 분해 규칙으로 명시 |
| 가독성 | 높음 | 중 |
| 계산 비용 | 낮음 | 중–높음 |
5. 하이브리드 적용
HTN의 자동 분해 능력과 행동 트리의 반응성을 결합하기 위해, HTN 계획기가 생성한 태스크 분해 결과를 행동 트리 구조로 변환하여 실행하는 하이브리드 접근법이 연구되고 있다. 계획 알고리즘이 행동 트리의 골격을 자동으로 생성하고, 반응형 노드를 삽입하여 실행 시의 동적 상황 대응을 지원한다.
참고 문헌
- Erol, K., Hendler, J., & Nau, D. S. (1994). HTN Planning: Complexity and Expressivity. AAAI Conference on Artificial Intelligence.
- Colledanchise, M., & Ögren, P. (2018). Behavior Trees in Robotics and AI: An Introduction. CRC Press.
버전: 2026-04-01