@@ -110,10 +110,7 @@ def air_cargo():
110
110
111
111
def goal_test (kb ):
112
112
required = [expr ('At(C1 , JFK)' ), expr ('At(C2 ,SFO)' )]
113
- for q in required :
114
- if kb .ask (q ) is False :
115
- return False
116
- return True
113
+ return all ([kb .ask (q ) is not False for q in required ])
117
114
118
115
# Actions
119
116
@@ -151,11 +148,8 @@ def spare_tire():
151
148
expr ('At(Spare, Trunk)' )]
152
149
153
150
def goal_test (kb ):
154
- required = [expr ('At(Spare, Axle)' ), expr ('At(Flat, Ground)' )]
155
- for q in required :
156
- if kb .ask (q ) is False :
157
- return False
158
- return True
151
+ required = [expr ('At(Spare, Axle)' )]
152
+ return all (kb .ask (q ) is not False for q in required )
159
153
160
154
# Actions
161
155
@@ -197,10 +191,7 @@ def three_block_tower():
197
191
198
192
def goal_test (kb ):
199
193
required = [expr ('On(A, B)' ), expr ('On(B, C)' )]
200
- for q in required :
201
- if kb .ask (q ) is False :
202
- return False
203
- return True
194
+ return all (kb .ask (q ) is not False for q in required )
204
195
205
196
# Actions
206
197
@@ -228,10 +219,7 @@ def have_cake_and_eat_cake_too():
228
219
229
220
def goal_test (kb ):
230
221
required = [expr ('Have(Cake)' ), expr ('Eaten(Cake)' )]
231
- for q in required :
232
- if kb .ask (q ) is False :
233
- return False
234
- return True
222
+ return all (kb .ask (q ) is not False for q in required )
235
223
236
224
# Actions
237
225
@@ -517,18 +505,14 @@ def extract_solution(self, goals_pos, goals_neg, index):
517
505
return solution
518
506
519
507
520
- def goal_test (kb , goals ):
521
- for q in goals :
522
- if kb .ask (q ) is False :
523
- return False
524
- return True
525
-
526
-
527
508
def spare_tire_graphplan ():
528
509
pddl = spare_tire ()
529
510
negkb = FolKB ([expr ('At(Flat, Trunk)' )])
530
511
graphplan = GraphPlan (pddl , negkb )
531
512
513
+ def goal_test (kb , goals ):
514
+ return all (kb .ask (q ) is not False for q in goals )
515
+
532
516
# Not sure
533
517
goals_pos = [expr ('At(Spare, Axle)' ), expr ('At(Flat, Ground)' )]
534
518
goals_neg = []
@@ -553,10 +537,7 @@ def double_tennis_problem():
553
537
554
538
def goal_test (kb ):
555
539
required = [expr ('Goal(Returned(Ball))' ), expr ('At(a, RightNet)' ), expr ('At(a, LeftNet)' )]
556
- for q in required :
557
- if kb .ask (q ) is False :
558
- return False
559
- return True
540
+ return all (kb .ask (q ) is not False for q in required )
560
541
561
542
# Actions
562
543
0 commit comments