-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathExperimental Code.txt
240 lines (216 loc) · 8.28 KB
/
Experimental Code.txt
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
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
(define (problem debris-collection-1)
(:domain debris-collection)
(:objects
rocket1 - rocket
rocket2 - rocket
debris1 - debris
debris2 - debris
debris3 - debris
truck1 - truck
truck2 - truck
launchPoint1 - launch-point
landingPoint1 - landing-point
A1 - space-point
A2 - space-point
A3 - space-point
B1 - space-point
B2 - space-point
B3 - space-point
C1 - space-point
C2 - space-point
C3 - space-point
launchPad1 - launch-pad
landingPad1 - landing-pad
serviceDock1 - service-dock
debrisBin1 - debris-bin
refuelStation1 - refuel-station
)
(:init
(at rocket1 serviceDock1)
(= (rocket-energy-consumption-rate rocket1) 10)
(= (rocket-current-energy-level rocket1) 10000)
(= (rocket-maximum-energy-level rocket1) 10000)
(= (rocket-mass rocket1) 1)
(= (rocket-current-holding-mass rocket1) 0)
(= (rocket-maximum-holding-mass rocket1) 300)
(rocket-not-in-tracking-mode rocket1)
(rocket-not-examining-debris rocket1)
(rocket-not-collecting-debris rocket1)
(rocket-not-depositing-debris rocket1)
(rocket-not-in-orbit rocket1)
(rocket-can-change-orbit rocket1)
(rocket-not-refueling rocket1)
(at rocket2 serviceDock1)
(= (rocket-energy-consumption-rate rocket2) 10)
(= (rocket-current-energy-level rocket2) 10000)
(= (rocket-maximum-energy-level rocket2) 10000)
(= (rocket-mass rocket2) 1)
(= (rocket-current-holding-mass rocket2) 0)
(= (rocket-maximum-holding-mass rocket2) 500)
(rocket-not-in-tracking-mode rocket2)
(rocket-not-examining-debris rocket2)
(rocket-not-collecting-debris rocket2)
(rocket-not-depositing-debris rocket2)
(rocket-not-in-orbit rocket2)
(rocket-can-change-orbit rocket2)
(rocket-not-refueling rocket2)
(truck-at truck1 serviceDock1)
(truck-not-carrying-rocket truck1)
(truck-not-carrying-debris truck1)
(truck-not-driving truck1)
(truck-not-picking-up-load truck1)
(truck-not-dropping-load truck1)
(= (truck-speed truck1) 100)
(= (truck-rocket-current-capacity truck1) 0)
(= (truck-rocket-maximum-capacity truck1) 1)
(= (truck-debris-current-capacity truck1) 0)
(= (truck-debris-maximum-capacity truck1) 1)
(at debris1 A1)
(debris-not-collected debris1)
(= (debris-mass debris1) 100)
(rocket-not-tracking-debris rocket1 debris1)
(rocket-not-tracking-debris rocket2 debris1)
(at debris2 A2)
(debris-not-collected debris2)
(= (debris-mass debris2) 200)
(rocket-not-tracking-debris rocket1 debris2)
(rocket-not-tracking-debris rocket2 debris2)
(at debris3 A3)
(debris-not-collected debris3)
(= (debris-mass debris3) 300)
(rocket-not-tracking-debris rocket1 debris3)
(rocket-not-tracking-debris rocket2 debris3)
(points-on-lateral-plane A1 A2)
(points-on-lateral-plane A2 A1)
(points-on-lateral-plane A2 A3)
(points-on-lateral-plane A3 A2)
(points-on-lateral-plane B1 B2)
(points-on-lateral-plane B2 B1)
(points-on-lateral-plane B2 B3)
(points-on-lateral-plane B3 B2)
(points-on-lateral-plane C1 C2)
(points-on-lateral-plane C2 C1)
(points-on-lateral-plane C2 C3)
(points-on-lateral-plane C3 C2)
(above A1 B1)
(below B1 A1)
(above B1 C1)
(below C1 B1)
(above A2 B2)
(below B2 A2)
(above B2 C2)
(below C2 B2)
(above A3 B3)
(below B3 A3)
(above B3 C3)
(below C3 B3)
(below launchPoint1 C1)
(below launchPoint1 C2)
(below launchPoint1 C3)
(above C1 landingPoint1)
(above C2 landingPoint1)
(above C3 landingPoint1)
(path-free-between launchPoint1 C1) (= (time-between launchPoint1 C1) 10)
(path-free-between launchPoint1 C2) (= (time-between launchPoint1 C2) 10)
(path-free-between launchPoint1 C3) (= (time-between launchPoint1 C3) 10)
(path-free-between C1 landingPoint1) (= (time-between C1 landingPoint1) 10)
(path-free-between C2 landingPoint1) (= (time-between C2 landingPoint1) 10)
(path-free-between C3 landingPoint1) (= (time-between C3 landingPoint1) 10)
(path-free-between A1 A2) (= (time-between A1 A2) 10)
(path-free-between A2 A1) (= (time-between A2 A1) 10)
(path-free-between A2 A3) (= (time-between A2 A3) 10)
(path-free-between A3 A2) (= (time-between A3 A2) 10)
(path-free-between B1 B2) (= (time-between B1 B2) 10)
(path-free-between B2 B1) (= (time-between B2 B1) 10)
(path-free-between B2 B3) (= (time-between B2 B3) 10)
(path-free-between B3 B2) (= (time-between B3 B2) 10)
(path-free-between C1 C2) (= (time-between C1 C2) 10)
(path-free-between C2 C1) (= (time-between C2 C1) 10)
(path-free-between C2 C3) (= (time-between C2 C3) 10)
(path-free-between C3 C2) (= (time-between C3 C2) 10)
(path-free-between A1 B1) (= (time-between A1 B1) 10)
(path-free-between B1 A1) (= (time-between B1 A1) 10)
(path-free-between B1 C1) (= (time-between B1 C1) 10)
(path-free-between C1 B1) (= (time-between C1 B1) 10)
(path-free-between A2 B2) (= (time-between A2 B2) 10)
(path-free-between B2 A2) (= (time-between B2 A2) 10)
(path-free-between B2 C2) (= (time-between B2 C2) 10)
(path-free-between C2 B2) (= (time-between C2 B2) 10)
(path-free-between A3 B3) (= (time-between A3 B3) 10)
(path-free-between B3 A3) (= (time-between B3 A3) 10)
(path-free-between B3 C3) (= (time-between B3 C3) 10)
(path-free-between C3 B3) (= (time-between C3 B3) 10)
(point-not-occupied A1)
(point-not-occupied A2)
(point-not-occupied A3)
(point-not-occupied B1)
(point-not-occupied B2)
(point-not-occupied B3)
(point-not-occupied C1)
(point-not-occupied C2)
(point-not-occupied C3)
(point-not-occupied launchPoint1)
(point-not-occupied landingPoint1)
(= (altitude A1) 1)
(= (altitude A2) 1)
(= (altitude A3) 1)
(= (altitude B1) 1)
(= (altitude B2) 1)
(= (altitude B3) 1)
(= (altitude C1) 1)
(= (altitude C2) 1)
(= (altitude C3) 1)
(= (altitude launchPoint1) 1)
(= (altitude landingPoint1) 1)
(= (time-between launchPad1 launchPoint1) 10)
(= (time-between landingPoint1 landingPad1) 10)
(= (refuel-station-current-capacity refuelStation1) 0)
(= (refuel-station-maximum-capacity refuelStation1) 2)
(= (refuel-station-refuel-rate refuelStation1) 100)
(connected serviceDock1 refuelStation1)
(= (distance-between serviceDock1 refuelStation1) 500)
(= (road-traffic-level serviceDock1 refuelStation1) 0)
(road-free-to-enter serviceDock1 refuelStation1)
(connected refuelStation1 serviceDock1)
(= (distance-between refuelStation1 serviceDock1 ) 500)
(= (road-traffic-level refuelStation1 serviceDock1) 0)
(road-free-to-enter refuelStation1 serviceDock1)
(connected serviceDock1 launchPad1)
(= (distance-between serviceDock1 launchPad1) 500)
(= (road-traffic-level serviceDock1 launchPad1) 0)
(road-free-to-enter serviceDock1 launchPad1)
(connected launchPad1 serviceDock1)
(= (distance-between launchPad1 serviceDock1) 500)
(= (road-traffic-level launchPad1 serviceDock1) 0)
(road-free-to-enter launchPad1 serviceDock1)
(connected serviceDock1 debrisBin1)
(= (distance-between serviceDock1 debrisBin1) 500)
(= (road-traffic-level serviceDock1 debrisBin1) 0)
(road-free-to-enter serviceDock1 debrisBin1)
(connected debrisBin1 serviceDock1)
(= (distance-between debrisBin1 serviceDock1) 500)
(= (road-traffic-level debrisBin1 serviceDock1) 0)
(road-free-to-enter debrisBin1 serviceDock1)
(connected serviceDock1 landingPad1)
(= (distance-between serviceDock1 landingPad1) 500)
(= (road-traffic-level serviceDock1 landingPad1) 0)
(road-free-to-enter serviceDock1 landingPad1)
(connected landingPad1 serviceDock1)
(= (distance-between landingPad1 serviceDock1) 500)
(= (road-traffic-level landingPad1 serviceDock1) 0)
(road-free-to-enter landingPad1 serviceDock1)
(launch-pad-not-in-use launchPad1)
(landing-pad-not-in-use landingPad1)
(= (GM-squared) 1)
(= (R) 1)
(= (ve) 1)
(= (g) 9.81)
)
(:goal
(and
(at debris1 landingPad1)
(at debris2 landingPad1)
(at debris3 landingPad1)
))
(:metric minimize total-time)
)