이 글은 필자의 이해를 돕기 위해 작성된 글입니다. 참고자료1, 참고자료2
PDDL은 "classical" planning task의 표준 encoding language입니다. PDDL planning task는 다음과 같이 이루어져 있습니다.
- problem.pddl
- Objects: 존재하는 물체들
- Initial state: 시작 state
- Goal specification: 우리가 원하는 goal
# gripper-four.pddl
(define (problem <problem name ex. gripper-four>)
(:domain <domain name ex. gripper>)
<PDDL code for objects>
<PDDL code for initial state>
[...]
<PDDL code for goal specification>
)
- domain .pddl
- Predicates: 물체들에 대한 제약
- Actions/Operators: world를 바꾸기 위한 방식들
- 각 action 당 description, precondition, 과 effect로 이루어져있다. Precondition과 effect는 predicate로 이루어져있다.
# gripper.pddl
(define (domain <domain name ex. gripper>)
<PDDL code for predicates>
<PDDL code for first action>
[...]
<PDDL code for last action>
)
예를 들면 다음과 같이 만들 수 있다.



'Robotics & Perception > Basic' 카테고리의 다른 글
[AI614] Overview of Robot Task and Motion planning (0) | 2022.09.07 |
---|---|
Sim2Real transfer: Domain randomization, domain adaptation, System identification (0) | 2022.08.06 |
Imitation learning (0) | 2022.07.08 |
[CS391R] Overview of Robot Decision Making (0) | 2022.05.15 |
[CS391R] Overview of Robot perception (0) | 2022.05.15 |