Chapter 1311. 하드코딩과 자율 계획의 패러다임 비교 (Hardcoding vs. Autonomous Planning Paradigm Comparison)

Chapter 1311. 하드코딩과 자율 계획의 패러다임 비교 (Hardcoding vs. Autonomous Planning Paradigm Comparison)

1. 개요

로봇의 행동을 결정하는 방식은 하드코딩(hardcoding) 기반의 사전 설계 방식과 자율 계획(autonomous planning) 기반의 동적 생성 방식으로 크게 구분된다. 하드코딩은 개발자가 모든 상황에 대한 행동을 사전에 명시적으로 프로그래밍하는 반면, 자율 계획은 로봇이 현재 상태와 목표에 기반하여 행동 시퀀스를 자동으로 생성한다. 본 장에서는 두 패러다임의 본질적 차이, 각각의 장단점, 적합한 적용 범위, 그리고 실무에서의 통합 전략을 체계적으로 비교 분석한다.

2. 하드코딩 기반 행동 결정

2.1 정의와 특성

하드코딩 기반 행동 결정은 개발자가 로봇의 모든 가능한 상황에 대한 대응 행동을 사전에 설계하고 코드로 구현하는 방식이다. 유한 상태 머신(FSM)과 행동 트리(BT)가 이 범주에 해당한다.

if (장애물 감지) then 회피;
else if (목표 도달) then 정지;
else 전진;

2.2 유한 상태 머신과 행동 트리

특성유한 상태 머신 (FSM)행동 트리 (BT)
구조상태-전이 그래프계층적 트리
확장성상태 폭발 문제서브트리로 관리
반응성이벤트 기반 전이ReactiveSequence
재사용성낮음서브트리 재사용
가독성상태 수 증가 시 저하계층적 구조로 유지

2.3 하드코딩의 장점

  1. 예측 가능성: 모든 행동이 사전에 정의되므로 로봇의 동작을 완전히 예측할 수 있다.
  2. 실시간 성능: 계획 생성에 계산 시간이 소요되지 않으므로 실시간 반응이 보장된다.
  3. 검증 가능성: 정적 분석과 형식 검증이 가능하여 안전 인증에 유리하다.
  4. 디버깅 용이성: 행동의 원인을 추적하기 쉽다.

2.4 하드코딩의 한계

  1. 확장성 부족: 상황의 수가 증가하면 코드의 복잡도가 지수적으로 증가한다.
  2. 유연성 결여: 사전에 예상하지 못한 상황에 대응하지 못한다.
  3. 유지보수 비용: 새로운 행동이나 상황을 추가할 때마다 코드 수정이 필요하다.
  4. 도메인 결합: 특정 임무에 특화되어 다른 임무로의 재사용이 어렵다.

3. 자율 계획 기반 행동 결정

3.1 정의와 특성

자율 계획 기반 행동 결정은 로봇이 현재 상태, 가용 행동, 목표 조건을 입력으로 받아 행동 시퀀스를 자동으로 생성하는 방식이다. AI 플래닝 알고리즘이 핵심 엔진이다.

현재 상태: {at(robot, A), on(box, B)}
목표: {on(box, C)}
→ 계획 생성: [move(A,B), pick(box), move(B,C), place(box)]

3.2 자율 계획의 장점

  1. 유연성: 목표와 상태에 따라 행동을 동적으로 생성하므로, 사전에 예측하지 못한 상황에도 대응할 수 있다.
  2. 확장성: 새로운 행동이나 객체를 도메인에 추가하면, 계획기가 자동으로 이를 활용한 계획을 생성한다.
  3. 도메인 독립성: 계획기는 도메인에 독립적이므로, 도메인 정의만 변경하면 다양한 임무에 적용할 수 있다.
  4. 최적성: 계획기가 비용 함수를 기반으로 최적 또는 준최적 계획을 생성할 수 있다.

3.3 자율 계획의 한계

  1. 계산 비용: 계획 생성에 상당한 계산 시간이 소요될 수 있다(NP-hard 이상의 복잡도).
  2. 모델 정확도: 도메인 모델(PDDL)이 실제 환경을 정확히 반영하지 못하면 계획이 실패한다.
  3. 실행 보장 부족: 생성된 계획이 실행 중에 예기치 않은 상황에 의해 무효화될 수 있다.
  4. 투명성 부족: 계획기가 생성한 행동 시퀀스의 근거를 이해하기 어려울 수 있다.

4. 두 패러다임의 정량적 비교

평가 기준하드코딩자율 계획
개발 비용 (소규모 임무)낮음높음
개발 비용 (대규모 임무)매우 높음보통
실행 시간O(1)O(\text{exp}) (최악)
유연성낮음높음
안전 검증용이어려움
미예측 상황 대응불가가능
유지보수성상황 수에 비례도메인 정의에 비례

5. 하이브리드 접근: 통합 전략

실무에서는 두 패러다임의 장점을 결합하는 하이브리드 접근이 일반적이다.

5.1 계층적 통합

[태스크 플래너] → 고수준 행동 시퀀스 생성
    ↓
[행동 트리] → 각 행동의 실행 관리, 예외 처리
    ↓
[저수준 제어] → 모터 명령, 센서 처리

고수준에서는 태스크 플래너가 목표 달성을 위한 행동 순서를 생성하고, 중간 수준에서는 행동 트리가 각 행동의 실행과 예외 처리를 관리하며, 저수준에서는 하드코딩된 제어 알고리즘이 물리적 동작을 수행한다.

5.2 PlanSys2와 BehaviorTree.CPP의 통합

ROS2 생태계에서 PlanSys2(태스크 플래닝)와 BehaviorTree.CPP(행동 실행)의 통합은 이 하이브리드 접근의 대표적 구현이다.

<!-- PlanSys2가 생성한 계획을 행동 트리로 실행 -->
<Sequence>
    <Action ID="Move" robot="{robot}" to="{location_B}"/>
    <Action ID="Pick" robot="{robot}" object="{box}"/>
    <Action ID="Move" robot="{robot}" to="{location_C}"/>
    <Action ID="Place" robot="{robot}" object="{box}"/>
</Sequence>

5.3 적용 기준

상황권장 패러다임
임무가 고정적이고 예측 가능하드코딩 (BT/FSM)
임무가 동적이고 다양자율 계획
안전이 최우선하드코딩 (검증 용이)
복잡한 다단계 임무자율 계획 + 하드코딩 (하이브리드)
실시간 반응 요구하드코딩
다중 로봇 협력자율 계획

6. 참고 문헌

  • 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.
  • Ingrand, F., & Ghallab, M. (2017). “Deliberation for Autonomous Robots: A Survey.” Artificial Intelligence, 247, 10-44.

버전날짜변경 사항
v0.12026-04-05초안 작성