1317.2 PlanSys2의 역사적 배경과 발전

1. AI 플래닝과 로봇 시스템의 통합 역사

AI 플래닝 기술을 로봇 시스템에 적용하려는 시도는 1970년대 STRIPS(Fikes & Nilsson, 1971)에서 시작되었다. 그러나 초기 플래닝 시스템은 로봇 실행 환경과의 통합이 미비하여, 계획 생성과 실행 사이에 상당한 간극이 존재하였다.

2. ROSPlan: ROS1 시대의 플래닝 프레임워크

ROSPlan은 Cashmore et al.(2015)이 KCL(King’s College London)에서 개발한 ROS1 기반의 태스크 플래닝 프레임워크이다. ROSPlan은 PDDL 기반 플래닝을 ROS 로봇 시스템에 최초로 체계적으로 통합한 프레임워크로서, 다음의 설계를 도입하였다:

  1. Knowledge Base: PDDL 도메인과 문제 정보를 ROS 파라미터로 관리
  2. Planning Interface: 외부 플래너를 ROS 서비스로 호출
  3. Plan Dispatch: 생성된 계획을 순차적으로 실행
  4. Sensing Interface: 센서 데이터를 지식 기반에 반영

ROSPlan은 수중 로봇(Carrera et al., 2015), 서비스 로봇, 산업 로봇 등 다양한 응용에서 성공적으로 활용되었다.

2.1 ROSPlan의 한계

  1. ROS1 의존: ROS1의 한계(실시간 미지원, 보안 부재, DDS 미지원)를 계승
  2. 라이프사이클 관리 부재: 노드의 상태 관리가 체계적이지 않음
  3. 액션 실행의 제한성: 커스텀 인터페이스 기반으로 ROS 표준 액션과의 통합이 미흡
  4. 행동 트리 미지원: 복잡한 액션 실행 로직의 표현이 제한적

3. PlanSys2의 탄생

PlanSys2는 Gonzalez, Martin, Matellán, Rodriguez(2021)가 레온 대학교(Universidad de León)에서 개발하였다. ROS2로의 전환과 함께 ROSPlan의 설계 경험을 재정립하여, 현대적 로봇 소프트웨어 아키텍처에 최적화된 새로운 프레임워크를 구축하였다.

3.1 PlanSys2의 설계 동기

  1. ROS2 네이티브: ROS2의 DDS 통신, 라이프사이클 관리, QoS 정책 등을 완전히 활용
  2. 행동 트리 통합: BehaviorTree.CPP 라이브러리와의 연동을 통한 유연한 액션 실행
  3. 플래너 플러그인화: 다양한 플래너를 플러그인으로 교체 가능
  4. 확장 가능한 아키텍처: 사용자 정의 확장이 용이한 모듈화된 설계

4. PlanSys2의 버전 발전

버전ROS2 배포판주요 변화
초기Foxy최초 릴리스, 기본 아키텍처 확립
중기Galactic, Humble안정화, 행동 트리 연동 강화
현재Iron, Jazzy성능 개선, 다중 로봇 지원 확장

5. PlanSys2와 관련 프로젝트

5.1 BehaviorTree.CPP

Michele Colledanchise가 개발한 행동 트리 라이브러리로, PlanSys2의 Executor가 계획 실행 시 내부적으로 사용한다. PDDL 계획을 행동 트리로 변환하여 유연한 실행 제어를 제공한다.

5.2 Nav2

ROS2의 표준 내비게이션 스택으로, PlanSys2의 이동 관련 액션 노드에서 Nav2의 NavigateToPose 액션 서버를 호출하여 실제 로봇 이동을 수행한다.

6. 참고 문헌

  • 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.
  • Fikes, R. E. & Nilsson, N. J. (1971). “STRIPS: A New Approach to the Application of Theorem Proving to Problem Solving.” Artificial Intelligence, 2(3–4), 189–208.