타입 선언과 타입 계층 구조 (Type Declaration and Type Hierarchy)
1. 개요
PDDL의 타입 시스템(:typing)은 객체를 분류하는 계층적 타입 체계를 제공한다. 타입에 의해 행동의 매개변수에 적용 가능한 객체가 제한되어, 계획기의 인스턴스화 효율이 향상되고 도메인 모델의 의미론적 명확성이 높아진다.
2. 타입 선언 구문
2.1 단순 타입
(:types robot location item)
2.2 계층적 타입 (서브타입)
(:types
robot location item - object ; 1단계: object의 하위 타입
warehouse office corridor - location ; 2단계: location의 하위 타입
heavy_item light_item - item ; 2단계: item의 하위 타입
delivery_robot patrol_robot - robot) ; 2단계: robot의 하위 타입
- 기호 뒤의 타입이 상위 타입(supertype)이다.
2.3 다단계 계층
(:types
entity - object
robot human - entity
ground_robot aerial_robot - robot
arm_robot mobile_robot - ground_robot)
3. 타입 계층의 상속
하위 타입의 객체는 상위 타입의 매개변수에도 적용 가능하다.
; delivery_robot은 robot의 하위 타입이므로
; ?r - robot 매개변수에 delivery_robot 객체가 대입 가능
(:action move
:parameters (?r - robot ?from ?to - location)
...)
4. 로봇 도메인의 타입 설계 예시
(:types
; 물리적 존재
robot location item tool - object
; 로봇 하위 타입
mobile_robot arm_robot drone - robot
; 위치 하위 타입
room corridor dock charging_station - location
; 물품 하위 타입
box tray package - item
; 도구 하위 타입
gripper vacuum_tool - tool)
5. 설계 지침
| 지침 | 설명 |
|---|---|
| 적절한 세분화 | 과도한 타입 분류는 복잡도 증가 |
| 상속 활용 | 공통 행동은 상위 타입에서 정의 |
| 명명 일관성 | 일관된 명명 규칙 사용 |
| 최소 계층 | 2~3단계 이내의 계층 권장 |
6. 참고 문헌
- McDermott, D., et al. (1998). “PDDL — The Planning Domain Definition Language.”
| 버전 | 날짜 | 변경 사항 |
|---|---|---|
| v0.1 | 2026-04-05 | 초안 작성 |