술어 선언의 문법과 의미 (Syntax and Semantics of Predicate Declaration)

술어 선언의 문법과 의미 (Syntax and Semantics of Predicate Declaration)

1. 개요

PDDL의 술어(predicate)는 세계 상태를 기술하는 명제의 스키마(schema)이다. 술어는 이름과 타입이 지정된 매개변수로 구성되며, 구체적 객체로 인스턴스화되면 참/거짓 값을 가지는 명��가 된다.

2. 구문

(:predicates
  (술��이름 ?변수1 - 타입1 ?변수2 - 타입2 ...)
  ...)

3. 예시

(:predicates
  (at ?r - robot ?l - location)           ; 로봇의 위치
  (on ?o - item ?l - location)            ; 물체의 위치
  (holding ?r - robot ?o - item)          ; 파지 상태
  (gripper_empty ?r - robot)              ; 그리퍼 빈 상태
  (connected ?l1 ?l2 - location)          ; 위치 간 연결
  (door_open ?l - location)              ; 문 열림 상태
  (charged ?r - robot)                    ; 충전 상태
  (visited ?r - robot ?l - location))     ; 방문 여부

4. 술어의 인스턴스화

술어 스키마의 변수를 ���체적 객체로 대치하면 명제(ground atom)가 된다.

술어 스키마: (at ?r - robot ?l - location)
인스턴스: (at robot1 room_A)   → 참 또는 거짓
          (at robot1 room_B)   → 참 또는 거짓

5. 술어의 의미

상태 s에서 명제 (at robot1 room_A)s에 포함되면 참, 포함되지 않으면 거짓이다(폐쇄 세�� 가정).

6. 술어의 유형

유형인자 ��예시설명
단항 (Unary)1(charged ?r)단일 객���의 속성
이항 (Binary)2(at ?r ?l)두 객체 간의 관계
삼항 (Ternary)3(between ?l ?l1 ?l2)세 객체 간의 관계
영항 (Zero-ary)0(emergency)전역 상태 플래그

7. 로봇 도메인에서의 핵심 술어 패턴

패턴술어의미
위치(at ?r ?l)로봇의 현재 위치
소유(holding ?r ?o)로봇이 물체를 파지 중
연결(connected ?l1 ?l2)위치 간 이동 가능
상태(gripper_empty ?r)그리퍼 상태
완료(delivered ?o ?l)배달 완료

8. 설계 지침

  1. 명확한 명명: 술어 이름이 ��미��� 직관적으로 전달
  2. 최소 인자: 필요한 인자만 포함
  3. 타입 제약: 모든 매개변수에 타입 지정
  4. 중복 방지: 유사한 의미의 술어 중복 정의 방지

9. 참고 문헌

  • McDermott, D., et al. (1998). “PDDL — The Planning Domain Definition Language.”
  • Ghallab, M., Nau, D., & Traverso, P. (2016). Automated Planning and Acting. Cambridge University Press.

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