forked from potassco/pddl-instances
-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathdomain.pddl
69 lines (66 loc) · 2.49 KB
/
domain.pddl
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
(define (domain sokoban-temporal)
(:requirements :typing :durative-actions)
(:types thing location direction - object
player stone - thing)
(:predicates (clear ?l - location)
(at ?t - thing ?l - location)
(at-goal ?s - stone)
(IS-GOAL ?l - location)
(IS-NONGOAL ?l - location)
(MOVE-DIR ?from ?to - location ?dir - direction))
(:durative-action move
:parameters (?p - player ?from ?to - location ?dir - direction)
:duration (= ?duration 1)
:condition (and (at start (at ?p ?from))
(at start (clear ?to))
(over all (MOVE-DIR ?from ?to ?dir))
)
:effect (and (at start (not (at ?p ?from)))
(at start (not (clear ?to)))
(at end (at ?p ?to))
(at end (clear ?from))
)
)
(:durative-action push-to-nongoal
:parameters (?p - player ?s - stone
?ppos ?from ?to - location
?dir - direction)
:duration (= ?duration 1)
:condition (and (at start (at ?p ?ppos))
(at start (at ?s ?from))
(at start (clear ?to))
(over all (MOVE-DIR ?ppos ?from ?dir))
(over all (MOVE-DIR ?from ?to ?dir))
(over all (IS-NONGOAL ?to))
)
:effect (and (at start (not (at ?p ?ppos)))
(at start (not (at ?s ?from)))
(at start (not (clear ?to)))
(at end (at ?p ?from))
(at end (at ?s ?to))
(at end (clear ?ppos))
(at start (not (at-goal ?s)))
)
)
(:durative-action push-to-goal
:parameters (?p - player ?s - stone
?ppos ?from ?to - location
?dir - direction)
:duration (= ?duration 1)
:condition (and (at start (at ?p ?ppos))
(at start (at ?s ?from))
(at start (clear ?to))
(over all (MOVE-DIR ?ppos ?from ?dir))
(over all (MOVE-DIR ?from ?to ?dir))
(over all (IS-GOAL ?to))
)
:effect (and (at start (not (at ?p ?ppos)))
(at start (not (at ?s ?from)))
(at start (not (clear ?to)))
(at end (at ?p ?from))
(at end (at ?s ?to))
(at end (clear ?ppos))
(at end (at-goal ?s))
)
)
)