-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathl6-ex2.problem.pddl
More file actions
133 lines (131 loc) · 3.16 KB
/
Copy pathl6-ex2.problem.pddl
File metadata and controls
133 lines (131 loc) · 3.16 KB
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
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
(define (problem lightup-p01)
(:domain lightup)
(:objects
n0 n1 n2 n3 n4 - num ; objects encoding numbers from 0 to 4
x0 x1 x2 x3 x4 - xpos ; x-coordinates
y0 y1 y2 y3 y4 - ypos ; y-coordinates
)
(:init
; TODO
;; auxiliary facts encoding neighborship relations {{
(increment n0 n1)
(increment n1 n2)
(increment n2 n3)
(increment n3 n4)
(right x0 x1)
(right x0 x2)
(right x0 x3)
(right x0 x4)
(right x1 x2)
(right x1 x3)
(right x1 x4)
(right x2 x3)
(right x2 x4)
(right x3 x4)
(below y0 y1)
(below y0 y2)
(below y0 y3)
(below y0 y4)
(below y1 y2)
(below y1 y3)
(below y1 y4)
(below y2 y3)
(below y2 y4)
(below y3 y4)
(adjacent x0 y0 x0 y1)
(adjacent x0 y0 x1 y0)
(adjacent x0 y1 x0 y2)
(adjacent x0 y1 x0 y0)
(adjacent x0 y1 x1 y1)
(adjacent x0 y2 x0 y3)
(adjacent x0 y2 x0 y1)
(adjacent x0 y2 x1 y2)
(adjacent x0 y3 x0 y4)
(adjacent x0 y3 x0 y2)
(adjacent x0 y3 x1 y3)
(adjacent x0 y4 x0 y3)
(adjacent x0 y4 x1 y4)
(adjacent x1 y0 x1 y1)
(adjacent x1 y0 x2 y0)
(adjacent x1 y0 x0 y0)
(adjacent x1 y1 x1 y2)
(adjacent x1 y1 x1 y0)
(adjacent x1 y1 x2 y1)
(adjacent x1 y1 x0 y1)
(adjacent x1 y2 x1 y3)
(adjacent x1 y2 x1 y1)
(adjacent x1 y2 x2 y2)
(adjacent x1 y2 x0 y2)
(adjacent x1 y3 x1 y4)
(adjacent x1 y3 x1 y2)
(adjacent x1 y3 x2 y3)
(adjacent x1 y3 x0 y3)
(adjacent x1 y4 x1 y3)
(adjacent x1 y4 x2 y4)
(adjacent x1 y4 x0 y4)
(adjacent x2 y0 x2 y1)
(adjacent x2 y0 x3 y0)
(adjacent x2 y0 x1 y0)
(adjacent x2 y1 x2 y2)
(adjacent x2 y1 x2 y0)
(adjacent x2 y1 x3 y1)
(adjacent x2 y1 x1 y1)
(adjacent x2 y2 x2 y3)
(adjacent x2 y2 x2 y1)
(adjacent x2 y2 x3 y2)
(adjacent x2 y2 x1 y2)
(adjacent x2 y3 x2 y4)
(adjacent x2 y3 x2 y2)
(adjacent x2 y3 x3 y3)
(adjacent x2 y3 x1 y3)
(adjacent x2 y4 x2 y3)
(adjacent x2 y4 x3 y4)
(adjacent x2 y4 x1 y4)
(adjacent x3 y0 x3 y1)
(adjacent x3 y0 x4 y0)
(adjacent x3 y0 x2 y0)
(adjacent x3 y1 x3 y2)
(adjacent x3 y1 x3 y0)
(adjacent x3 y1 x4 y1)
(adjacent x3 y1 x2 y1)
(adjacent x3 y2 x3 y3)
(adjacent x3 y2 x3 y1)
(adjacent x3 y2 x4 y2)
(adjacent x3 y2 x2 y2)
(adjacent x3 y3 x3 y4)
(adjacent x3 y3 x3 y2)
(adjacent x3 y3 x4 y3)
(adjacent x3 y3 x2 y3)
(adjacent x3 y4 x3 y3)
(adjacent x3 y4 x4 y4)
(adjacent x3 y4 x2 y4)
(adjacent x4 y0 x4 y1)
(adjacent x4 y0 x3 y0)
(adjacent x4 y1 x4 y2)
(adjacent x4 y1 x4 y0)
(adjacent x4 y1 x3 y1)
(adjacent x4 y2 x4 y3)
(adjacent x4 y2 x4 y1)
(adjacent x4 y2 x3 y2)
(adjacent x4 y3 x4 y4)
(adjacent x4 y3 x4 y2)
(adjacent x4 y3 x3 y3)
(adjacent x4 y4 x4 y3)
(adjacent x4 y4 x3 y4)
;; }} (auxiliary facts end)
)
(:goal (and
; Numbered nodes should be correctly surrounded
(surrounded x1 y1 1)
(surrounded x1 y3 2)
(surrounded x3 y1 2)
(surrounded x3 y3 2)
; All nodes should be lit
(forall (?x - xpos ?y ypos)
(when
(not (black ?x ?y))
(lit ?x ?y)
)
)
))
)