35 lines
898 B
Plaintext
35 lines
898 B
Plaintext
(define (domain gripper-strips)
|
|
(:predicates (room ?r)
|
|
(ball ?b)
|
|
(gripper ?g)
|
|
(at-robby ?r)
|
|
(at ?b ?r)
|
|
(free ?g)
|
|
(carry ?o ?g))
|
|
|
|
(:action move
|
|
:parameters (?from ?to)
|
|
:precondition (and (room ?from) (room ?to) (at-robby ?from))
|
|
:effect (and (at-robby ?to)
|
|
(not (at-robby ?from))))
|
|
|
|
|
|
|
|
(:action pick
|
|
:parameters (?obj ?room ?gripper)
|
|
:precondition (and (ball ?obj) (room ?room) (gripper ?gripper)
|
|
(at ?obj ?room) (at-robby ?room) (free ?gripper))
|
|
:effect (and (carry ?obj ?gripper)
|
|
(not (at ?obj ?room))
|
|
(not (free ?gripper))))
|
|
|
|
|
|
(:action drop
|
|
:parameters (?obj ?room ?gripper)
|
|
:precondition (and (ball ?obj) (room ?room) (gripper ?gripper)
|
|
(carry ?obj ?gripper) (at-robby ?room))
|
|
:effect (and (at ?obj ?room)
|
|
(free ?gripper)
|
|
(not (carry ?obj ?gripper)))))
|
|
|