하드코딩 방식의 구조적 한계 (Structural Limitations of the Hardcoding Approach)
1. 개요
하드코딩 기반 행동 제어는 장점에도 불구하고, 임무의 복잡도가 증가하면 확장성, 유연성, 유지보수성 측면에서 구조적 한계에 도달한다. 본 절에서는 이러한 한계를 체계적으로 분석한다.
2. 구조적 한계
2.1 조합적 폭발 (Combinatorial Explosion)
n개의 조건과 m개의 행동이 있을 때, 가능한 조건-행동 조합의 수는 O(m^n)에 달한다. 조건의 수가 증가하면 규칙의 수가 기하급수적으로 증가하여 관리가 불가능해진다.
예시: 10개의 센서 조건, 5개의 환경 변수, 8개의 가능 행동이 있는 시스템에서, 모든 상황을 커버하려면 2^{15} = 32,768개의 규칙이 필요하다.
2.2 상태 전이 폭발 (State Transition Explosion)
유한 상태 머신에서 n개의 상태가 있을 때, 가능한 전이의 수는 O(n^2)이다. 상태가 수십 개를 넘으면 전이 관리가 극히 어려워진다.
2.3 미예측 상황에 대한 취약성
사전에 정의되지 않은 상태-조건 조합이 발생하면, 로봇은 아무 행동도 수행하지 못하거나 부적절한 기본 행동을 실행한다. 실제 환경에서는 예측하지 못한 상황이 빈번히 발생하므로, 이 한계는 심각한 운용 문제를 초래한다.
2.4 도메인 결합 (Domain Coupling)
하드코딩된 규칙은 특정 임무와 환경에 밀접하게 결합되어, 다른 임무나 환경으로의 이식(porting)이 어렵다. 임무가 변경되면 규칙 전체를 재설계하여야 하는 경우가 많다.
2.5 최적성 보장 불가
개발자가 설계한 행동 순서가 최적이라는 보장이 없다. 복잡한 다단계 임무에서 최적의 행동 순서를 인간이 직관적으로 도출하기는 어렵다.
2.6 목표 기반 추론의 부재
하드코딩 방식은 “무엇을 달성할 것인가”(목표)가 아닌 “어떤 상황에서 무엇을 할 것인가”(규칙)를 기술한다. 목표가 변경되면 규칙을 전면 재설계하여야 한다. 자율 계획에서는 목표만 변경하면 계획기가 새로운 행동 시퀀스를 자동 생성한다.
3. 한계의 정량적 분석
| 지표 | 소규모 (조건 5개) | 중규모 (조건 15개) | 대규모 (조건 30개) |
|---|---|---|---|
| 가능 상태 수 | 2^5 = 32 | 2^{15} = 32{,}768 | 2^{30} \approx 10^9 |
| 규칙 관리 난이도 | 낮음 | 높음 | 불가능 |
| 개발 시간 | 수일 | 수주 | 수개월 이상 |
| 버그 발생 확률 | 낮음 | 높음 | 매우 높음 |
4. 한계를 완화하는 전략
4.1 행동 트리의 계층화
서브트리를 활용하여 복잡도를 관리 가능한 수준으로 분해한다.
4.2 태스크 플래닝의 도입
목표 기반 자율 계획을 도입하여, 복잡한 다단계 임무의 행동 순서를 자동 생성한다.
4.3 하이브리드 접근
안전에 중요한 저수준 행동은 하드코딩으로, 고수준 임무 계획은 자율 계획으로 구현한다.
5. 참고 문헌
- Ghallab, M., Nau, D., & Traverso, P. (2016). Automated Planning and Acting. Cambridge University Press.
- Colledanchise, M., & Ogren, P. (2018). Behavior Trees in Robotics and AI: An Introduction. CRC Press.
| 버전 | 날짜 | 변경 사항 |
|---|---|---|
| v0.1 | 2026-04-05 | 초안 작성 |