diff --git a/instances/ipc-1998-gripper/domain.pddl b/instances/ipc-1998-gripper/domain.pddl new file mode 100644 index 0000000..4fa3829 --- /dev/null +++ b/instances/ipc-1998-gripper/domain.pddl @@ -0,0 +1,34 @@ +(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))))) + diff --git a/instances/ipc-1998-gripper/prob01.pddl b/instances/ipc-1998-gripper/prob01.pddl new file mode 100644 index 0000000..c518fed --- /dev/null +++ b/instances/ipc-1998-gripper/prob01.pddl @@ -0,0 +1,22 @@ +(define (problem strips-gripper-x-1) + (:domain gripper-strips) + (:objects rooma roomb ball4 ball3 ball2 ball1 left right) + (:init (room rooma) + (room roomb) + (ball ball4) + (ball ball3) + (ball ball2) + (ball ball1) + (at-robby rooma) + (free left) + (free right) + (at ball4 rooma) + (at ball3 rooma) + (at ball2 rooma) + (at ball1 rooma) + (gripper left) + (gripper right)) + (:goal (and (at ball4 roomb) + (at ball3 roomb) + (at ball2 roomb) + (at ball1 roomb)))) \ No newline at end of file diff --git a/instances/ipc-1998-gripper/prob02.pddl b/instances/ipc-1998-gripper/prob02.pddl new file mode 100644 index 0000000..ea494f4 --- /dev/null +++ b/instances/ipc-1998-gripper/prob02.pddl @@ -0,0 +1,28 @@ +(define (problem strips-gripper-x-2) + (:domain gripper-strips) + (:objects rooma roomb ball6 ball5 ball4 ball3 ball2 ball1 left right) + (:init (room rooma) + (room roomb) + (ball ball6) + (ball ball5) + (ball ball4) + (ball ball3) + (ball ball2) + (ball ball1) + (at-robby rooma) + (free left) + (free right) + (at ball6 rooma) + (at ball5 rooma) + (at ball4 rooma) + (at ball3 rooma) + (at ball2 rooma) + (at ball1 rooma) + (gripper left) + (gripper right)) + (:goal (and (at ball6 roomb) + (at ball5 roomb) + (at ball4 roomb) + (at ball3 roomb) + (at ball2 roomb) + (at ball1 roomb)))) \ No newline at end of file diff --git a/instances/ipc-1998-gripper/solutions b/instances/ipc-1998-gripper/solutions new file mode 100644 index 0000000..9a4318f --- /dev/null +++ b/instances/ipc-1998-gripper/solutions @@ -0,0 +1,4 @@ +instance | minimal horizon | #solutions with minimal horizon +============================================================ +prob01.pddl | 11 | 384 +prob02.pddl | 17 | 46080