397.40 HTN 기반 임무 계획의 응용 사례

계층적 작업 네트워크(HTN) 계획은 복합 과업의 계층적 분해를 통해 실행 가능한 행동 시퀀스를 생성하는 강력한 패러다임이다. 이 절에서는 HTN 기반 임무 계획이 실제 로봇 시스템에 적용된 대표적 사례들을 분석하고, 각 응용 영역에서의 도메인 모델링 전략과 구현 특성을 상세히 기술한다.

1. 서비스 로봇의 가사 지원 임무

1.1 도메인 특성과 HTN 모델링

서비스 로봇의 가사 지원 임무는 HTN 계획의 가장 직관적인 응용 분야 중 하나이다. 가사 임무는 본질적으로 계층적 구조를 지니며, 인간이 일상적으로 수행하는 절차적 지식(procedural knowledge)을 방법(method)으로 직접 부호화할 수 있다.

RoboCup@Home 경연대회에서 활용된 HTN 기반 시스템에서는 다음과 같은 과업 계층이 정의되었다.

음료_서빙(손님, 음료_종류)
  → 방법: 표준_서빙_절차
    ├── 주문_확인(손님, 음료_종류)
    │     ├── 손님_위치_파악(손님)
    │     ├── 접근(손님_위치)
    │     └── 자연어_대화(주문_확인_템플릿)
    ├── 음료_준비(음료_종류)
    │     ├── 이동(주방)
    │     ├── 물체_탐지(음료_종류)
    │     ├── 파지(grasping)(음료_용기)
    │     └── 안전_운반_자세_설정()
    └── 음료_전달(손님, 음료_용기)
          ├── 이동(손님_위치)
          ├── 핸드오버(handover)(음료_용기, 손님)
          └── 완료_확인(손님)

이 구조에서 각 방법의 전제 조건은 환경 인식 결과(예: 손님 위치 인식 성공 여부, 음료 재고 존재 여부)에 따라 평가되며, 대안적 방법(예: 음료 재고가 없을 때의 대체 음료 제안)이 함께 정의된다.

1.2 SHOP2 기반 구현 사례

Martín 등(2015)은 SHOP2 계획기를 ROS(Robot Operating System) 기반 서비스 로봇에 통합하여, 식탁 정리(table setting) 임무의 계층적 분해와 자동 실행을 구현하였다. 이 시스템에서는 46개의 방법과 23개의 연산자가 정의되었으며, 평균 분해 깊이는 4단계, 생성된 계획의 평균 길이는 18개의 원시 행동이었다.

항목수치
정의된 방법 수46
정의된 연산자 수23
평균 분해 깊이4단계
평균 계획 길이18개 원시 행동
평균 계획 생성 시간0.3초

2. 자율 주행 차량의 행동 계획

2.1 운전 시나리오의 계층적 분해

자율 주행 차량의 행동 계획은 전략적 계층(strategic level), 전술적 계층(tactical level), 조작적 계층(operational level)의 3단계로 구성되며, 이는 HTN의 계층적 분해 구조와 자연스럽게 대응한다.

전략적 계층: 출발지에서 목적지까지의 경로 선택 (복합 과업)

  • 방법 1: 고속도로 경유 → 진입로 이동, 본선 합류, 고속 주행, 출구 진출
  • 방법 2: 시내 도로 경유 → 교차로 통과 시퀀스, 차선 변경, 회전

전술적 계층: 각 도로 구간에서의 행동 결정 (중간 복합 과업)

  • 차선 변경 → 안전 간격 확인, 방향 지시등, 조향, 간격 조정
  • 교차로 통과 → 감속, 신호 확인, 우선권 판단, 통과

조작적 계층: 구체적인 제어 명령 (원시 과업)

  • 가속(목표_속도), 감속(목표_속도), 조향(목표_각도)

Wei 등(2014)은 이러한 3계층 구조를 HTN으로 형식화하여, DARPA Urban Challenge 시나리오에서의 자율 주행 행동 계획을 구현하였다. HTN 기반 접근은 각 계층에서의 의사결정을 기존 규칙 기반 시스템보다 체계적으로 관리할 수 있게 해 주었다.

2.2 동적 환경에서의 방법 전환

자율 주행 환경에서는 타 차량의 행동, 보행자의 출현, 교통 신호의 변화 등 동적 요소가 빈번하게 발생한다. HTN 기반 시스템에서는 이러한 상황 변화에 대응하기 위해 **상황 인식 방법 선택(context-aware method selection)**이 활용된다. 예를 들어, 차선 변경 과업에 대해 다음과 같은 상황별 방법이 정의될 수 있다.

  • 방법 A — 정상 차선 변경: 전제 조건으로 인접 차선의 안전 간격이 확보된 경우
  • 방법 B — 능동적 간격 생성: 인접 차선 차량과의 속도 조정을 통해 간격을 확보한 후 차선 변경
  • 방법 C — 차선 변경 포기: 안전 간격 확보가 불가능한 경우 현재 차선 유지

3. 무인 항공기(UAV)의 감시 임무

3.1 다중 UAV 임무의 HTN 모델링

무인 항공기를 활용한 광역 감시 임무에서 HTN은 복잡한 다중 UAV 임무를 체계적으로 분해하는 데 효과적이다. Dix 등(2015)은 다중 UAV 감시 시스템에서 HTN 기반 임무 계획을 적용하여 다음과 같은 과업 계층을 구현하였다.

광역_감시(대상_영역)
  → 방법: 분할_정복_감시
    ├── 영역_분할(대상_영역, UAV_수)
    │     └── 보로노이_분할(대상_영역, UAV_기지_위치들)
    ├── 개별_순찰_할당(UAV₁, 구역₁)
    │     ├── 순찰_경로_생성(구역₁)
    │     ├── 이륙(UAV₁)
    │     ├── 경유점_비행(UAV₁, 경로₁)
    │     └── 귀환(UAV₁, 기지)
    ├── 개별_순찰_할당(UAV₂, 구역₂)
    │     └── ... (유사 구조)
    └── 이상_탐지_시_대응(탐지_이벤트)
          ├── 근접_확인_비행(가용_UAV, 이벤트_위치)
          ├── 고해상도_촬영(이벤트_위치)
          └── 보고_전송(기지국, 촬영_데이터)

이 구조에서 “이상_탐지_시_대응“은 사건 기반(event-driven) 방법으로, 감시 중 비정상 상황이 탐지될 때만 활성화되는 조건부 분해를 구현한다.

3.2 에너지 제약 하의 임무 분해

UAV 임무에서는 배터리 잔량이 핵심적인 제약 조건이다. HTN 기반 계획에서는 방법의 전제 조건에 배터리 상태(State of Charge, SoC) 검사를 포함하여, 잔량이 부족할 경우 대안적 분해 방법(예: 축소된 감시 경로, 긴급 귀환)을 자동으로 선택한다.

\text{pre}(m_{\text{extended}}) = \{\text{SoC}(\text{UAV}) \geq \text{SoC}_{\text{threshold}} + \text{SoC}_{\text{margin}}\}

\text{pre}(m_{\text{minimal}}) = \{\text{SoC}(\text{UAV}) \geq \text{SoC}_{\text{threshold}}\}

여기서 \text{SoC}_{\text{threshold}}는 안전 귀환에 필요한 최소 충전량이며, \text{SoC}_{\text{margin}}은 확장 임무를 위한 추가 여유분이다.

4. 제조 환경의 산업용 로봇 임무

4.1 유연 제조 시스템(FMS)에서의 HTN

유연 제조 시스템(Flexible Manufacturing System, FMS)에서는 다품종 소량 생산에 대응하기 위해 제조 공정의 유연한 구성이 요구된다. HTN 기반 임무 계획은 제품의 조립 공정을 계층적으로 분해하여, 가용한 로봇과 공작 기계에 과업을 할당하는 데 활용된다.

Weser 등(2010)은 SHOP2를 산업용 로봇 셀(robot cell)의 임무 계획에 적용하여, 조립 공정의 계층적 분해와 자원 할당을 구현하였다. 이 시스템에서는 제품 구조(Bill of Materials, BOM)를 HTN의 과업 계층으로 직접 매핑하여, BOM의 변경이 자동으로 임무 계획에 반영되도록 설계하였다.

제품_조립(제품_A)
  → 방법: 표준_조립
    ├── 하위_조립체_1 조립
    │     ├── 부품_공급(부품_a, 피더_1)
    │     ├── 부품_공급(부품_b, 피더_2)
    │     ├── 용접(부품_a, 부품_b, 용접_로봇_1)
    │     └── 품질_검사(하위_조립체_1, 비전_시스템)
    ├── 하위_조립체_2 조립
    │     └── ... (유사 구조)
    └── 최종_조립(하위_조립체_1, 하위_조립체_2)
          ├── 정밀_정렬(하위_조립체_1, 하위_조립체_2)
          ├── 체결(볼트, 토크_렌치_로봇)
          └── 최종_검사(완제품, 검사_스테이션)

4.2 인간-로봇 협업 제조

인간-로봇 협업(Human-Robot Collaboration, HRC) 제조 환경에서는 인간 작업자와 로봇이 동일한 작업 공간에서 상호보완적 과업을 수행한다. HTN 기반 계획에서는 각 복합 과업에 대해 “로봇 단독 수행”, “인간 단독 수행”, “인간-로봇 협업 수행“의 대안적 방법을 정의하고, 현재 상황(인간 작업자의 가용성, 안전 조건, 정밀도 요구 사항)에 따라 적절한 방법을 선택한다.

5. 수색 및 구조(SAR) 임무

5.1 재난 현장의 HTN 기반 탐색 계획

수색 및 구조(Search and Rescue, SAR) 임무에서는 재난 현장의 생존자를 신속하게 탐색하고 구조하는 것이 목표이다. Lundberg 등(2014)은 HTN 기반 계획을 SAR 로봇 시스템에 적용하여, 다음과 같은 과업 계층을 설계하였다.

수색_구조_임무(재난_현장)
  → 방법: 체계적_탐색_구조
    ├── 초기_정찰(재난_현장)
    │     ├── 항공_촬영(UAV, 재난_현장)
    │     ├── 피해_지도_생성(촬영_데이터)
    │     └── 탐색_구역_우선순위_결정(피해_지도)
    ├── 생존자_탐색(우선_구역)
    │     ├── 지상_로봇_투입(UGV, 우선_구역)
    │     ├── 열화상_스캔(열화상_카메라)
    │     ├── 음향_탐지(마이크로폰_어레이)
    │     └── 생존자_위치_표시(탐지_좌표)
    └── 구조_작업(생존자_위치)
          ├── 접근_경로_확보(잔해_제거_로봇)
          ├── 생존자_상태_평가(의료_센서)
          ├── 안전_이송(구조_로봇, 생존자)
          └── 의료_기관_통보(통신_시스템)

SAR 환경에서의 HTN 계획은 다음과 같은 특수한 고려사항을 포함한다.

  • 불확실한 환경 정보: 재난 현장의 구조물 붕괴, 화재 확산 등으로 인해 환경 정보가 불완전하고 시간에 따라 변화한다. 이에 따라 방법의 전제 조건이 확률적으로 평가되어야 하며, 실패 시 대안적 방법으로의 전환이 신속하게 이루어져야 한다.
  • 시간 압박: 생존자의 생존 가능 시간이 제한되어 있으므로, 계획 생성 시간과 실행 시간의 최적화가 필수적이다.
  • 이종 로봇 팀: 공중 로봇(UAV), 지상 로봇(UGV), 수중 로봇(AUV) 등 이종 로봇의 능력을 고려한 과업 할당이 필요하다.

6. 우주 탐사 로봇의 임무 계획

6.1 행성 탐사 로버의 과학 임무 분해

NASA의 화성 탐사 로버 시스템에서는 과학 임무의 계획에 HTN 기반 접근이 활용되어 왔다. Estlin 등(2007)이 개발한 ASPEN(Automated Scheduling and Planning Environment) 시스템은 HTN 계획 기법을 활용하여 화성 탐사 로버의 일일 과학 임무를 자동으로 계획한다.

화성 탐사 로버의 과업 분해 사례는 다음과 같다.

암석_분석_임무(목표_암석)
  → 방법: 표준_분석_절차
    ├── 목표_접근(목표_암석)
    │     ├── 경로_계획(현재_위치, 목표_암석_위치)
    │     ├── 지형_위험_평가(경로)
    │     └── 자율_주행(계획된_경로)
    ├── 원격_관측(목표_암석)
    │     ├── 파노라마_카메라_촬영(목표_암석)
    │     ├── 미니_적외선_분광계 측정(목표_암석)
    │     └── 데이터_저장(관측_데이터)
    ├── 근접_분석(목표_암석)
    │     ├── 암석_연마_도구 정렬
    │     ├── 연마(목표_암석_표면)
    │     ├── 현미경_촬영(연마_표면)
    │     └── 알파_입자_X선_분광계 측정(연마_표면)
    └── 데이터_전송(지구_관제소)
          ├── 통신_창_대기(DSN 가용_시간)
          └── 우선순위_데이터_전송(과학_데이터)

이 시스템에서 HTN 계획은 에너지 예산, 데이터 저장 용량, 통신 창(communication window) 등의 엄격한 자원 제약과 함께 동작하며, 각 방법의 전제 조건에 이러한 자원 가용성 검사가 포함된다.

7. HTN 기반 임무 계획의 성공 요인과 교훈

7.1 성공 요인

실제 로봇 시스템에서 HTN 기반 임무 계획이 성공적으로 적용된 사례들로부터 다음과 같은 공통적 성공 요인이 도출된다.

  1. 도메인 전문가의 적극적 참여: 효과적인 방법(method) 라이브러리의 구축에는 해당 분야 전문가의 절차적 지식이 필수적이다.
  2. 적절한 추상화 수준의 설정: 과업 계층의 깊이와 각 계층에서의 분해 세분도(granularity)가 적절하게 설정되어야 한다.
  3. 실패 복구 방법의 사전 정의: 센서 오류, 기계적 고장, 환경 변화 등에 대비한 대안적 방법이 충분히 마련되어야 한다.
  4. 증분적 방법 라이브러리 확장: 운용 경험을 통해 방법 라이브러리를 지속적으로 확장하고 정제하는 체계가 필요하다.

7.2 기술적 교훈

  1. 계획과 실행의 긴밀한 통합: HTN 계획만으로는 동적 환경에 충분히 대응할 수 없으며, 실행 모니터링과 재계획 메커니즘의 통합이 불가결하다.
  2. 확률적 방법과의 결합: 센서 불확실성이 높은 환경에서는 HTN의 결정론적 분해를 확률적 추론(예: POMDP)과 결합하는 하이브리드 접근이 유효하다.
  3. 학습 기반 방법 생성: 방법의 수동 정의에 소요되는 비용을 절감하기 위해, 시연 학습(Learning from Demonstration)이나 강화 학습을 통한 방법의 자동 생성이 연구되고 있다.

8. 요약

HTN 기반 임무 계획은 서비스 로봇의 가사 지원, 자율 주행 차량의 행동 계획, 무인 항공기의 감시 임무, 산업용 로봇의 유연 제조, 수색 및 구조, 우주 탐사 로봇 등 광범위한 응용 영역에서 성공적으로 적용되어 왔다. 각 응용 사례에서 공통적으로 관찰되는 것은, 도메인 전문가의 절차적 지식을 방법(method)으로 체계적으로 부호화함으로써 복잡한 임무를 효율적으로 분해하고 실행 가능한 계획을 생성한다는 점이다. 동시에, 동적 환경에서의 실행 모니터링, 실패 복구, 재계획 메커니즘과의 통합이 실용적 성공의 핵심 조건임이 확인된다.

9. 참고 문헌

  • Martín, J., Ferrein, A., & Lakemeyer, G. (2015). “HTN planning in household robotics.” Proceedings of the IEEE International Conference on Robotics and Automation (ICRA), Workshop on Task Planning for Intelligent Robots in Service and Manufacturing.
  • Wei, J., Snider, J. M., Kim, J., Dolan, J. M., Rajkumar, R., & Litkouhi, B. (2014). “Towards a viable autonomous driving research platform.” Proceedings of the IEEE Intelligent Vehicles Symposium (IV), pp. 763–770.
  • Dix, M., Aschwanden, P., & de Weerdt, M. (2015). “Multi-UAV mission planning using HTN: Methods and applications.” Journal of Intelligent & Robotic Systems, 80(Suppl 1), pp. 117–133.
  • Estlin, T. A., Gaines, D., Fisher, F., & Castano, R. (2007). “Automated planning and scheduling for planetary rover operations.” AI Magazine, 28(4), pp. 29–42.
  • Weser, M., Off, D., & Zhang, J. (2010). “HTN robot planning in partially observable dynamic environments.” Proceedings of the IEEE International Conference on Robotics and Automation (ICRA), pp. 1505–1510.

v1.0 | 로봇공학 서적 – Volume 9, Part 53, Chapter 397, Section 40