Chapter 1317. PlanSys2 아키텍처와 설계 철학 (PlanSys2 Architecture and Design Philosophy)

Chapter 1317. PlanSys2 아키텍처와 설계 철학 (PlanSys2 Architecture and Design Philosophy)

1. 개요

PlanSys2(Planning System 2)는 ROS2 기반의 태스크 플래닝 프레임워크로, PDDL 도메인을 활용하여 자율 로봇 시스템의 임무 계획을 생성하고 실행한다(Gonzalez et al., 2021). PlanSys2는 ROS1 시대의 ROSPlan(Cashmore et al., 2015)의 설계 경험을 계승하면서, ROS2의 현대적 아키텍처에 최적화된 새로운 시스템이다.

본 장에서는 PlanSys2의 아키텍처, 설계 철학, 핵심 노드의 구조와 상호 작용, 외부 시스템과의 통합, 그리고 실용적 활용 방법을 체계적으로 다룬다.

2. 본 장의 구성

본 장은 크게 다음의 열 가지 주제 영역으로 구성된다.

첫째, PlanSys2의 개요와 설계 철학이다. 시스템의 목적, 역사적 배경, ROS2 네이티브 설계의 의의, 핵심 설계 원칙을 다룬다.

둘째, 전체 시스템 아키텍처이다. 4대 핵심 노드(Domain Expert, Problem Expert, Planner, Executor)의 역할, 관계, 통신 인터페이스를 상세히 분석한다.

셋째, ROS2 통합 설계이다. 서비스, 액션, 토픽을 활용한 노드 간 통신, 라이프사이클 관리, 파라미터 구성, 런치 시스템 통합을 다룬다.

넷째, PDDL 연계 방식이다. 도메인 모델의 로딩과 파싱, 문제 인스턴스의 동적 생성, 계획 결과의 파싱을 다룬다.

다섯째, 플래너 통합이다. 플래너 플러그인 아키텍처, POPF 통합, 다중 플래너 지원 전략을 다룬다.

여섯째, 액션 실행 아키텍처이다. 액션 클라이언트와 수행기의 관계, 행동 트리 기반 실행, 피드백 메커니즘을 다룬다.

일곱째, 모니터링과 오류 처리이다. 계획 상태 추적, 액션 피드백, 오류 처리, 재계획 전략을 다룬다.

여덟째, 도구와 인터페이스이다. CLI 도구, 터미널 인터페이스, 시각화 도구를 다룬다.

아홉째, 확장성과 외부 시스템 통합이다. 사용자 정의 플래너/액션 수행기 개발, Nav2/MoveIt2 통합, 다중 로봇 지원을 다룬다.

열째, 설치, 성능, 향후 발전이다. 설치 및 환경 구성, 성능 분석, 버전 호환성, 커뮤니티, 향후 방향을 다룬다.

3. 학습 목표

본 장을 학습한 후 다음을 수행할 수 있어야 한다:

  1. PlanSys2의 4대 핵심 노드의 역할과 상호 작용을 이해한다.
  2. PlanSys2에 PDDL 도메인을 로드하고 문제를 동적으로 구성할 수 있다.
  3. 외부 플래너를 PlanSys2에 통합하고 계획을 생성할 수 있다.
  4. ActionExecutorClient를 구현하여 PDDL 액션과 실제 로봇 행동을 연결할 수 있다.
  5. PlanSys2를 Nav2 등의 ROS2 하위 시스템과 통합할 수 있다.

4. 선행 지식

본 장의 내용을 이해하기 위해서는 PDDL의 도메인과 문제 정의, 고전적 플래너의 기본 원리, ROS2의 노드, 서비스, 액션, 토픽 등의 통신 패턴에 대한 이해가 필요하다.

5. 참고 문헌

  • Gonzalez, F., Martin, F., Matellán, V., & Rodriguez, F. J. (2021). “PlanSys2: A Planning System Framework for ROS2.” IEEE International Conference on Autonomous Robot Systems and Competitions (ICARSC).
  • Cashmore, M., Fox, M., Long, D., Magazzeni, D., Ridder, B., Carrera, A., Palomeras, N., Hurtos, N., & Carreras, M. (2015). “ROSPlan: Planning in the Robot Operating System.” Proceedings of ICAPS.
  • Macenski, S., Foote, T., Gerkey, B., Lalancette, C., & Woodall, W. (2022). “Robot Operating System 2: Design, Architecture, and Uses in the Wild.” Science Robotics, 7(66), eabm6074.
  • Ghallab, M., Nau, D., & Traverso, P. (2004). Automated Planning: Theory and Practice. Morgan Kaufmann.