@@ -152,86 +152,35 @@ def heuristic(self, currentNode, targetNode):
152
152
# method for getting the node with minimum value from the either direction
153
153
def minValueNodeFromEitherDirection (self , forwardDiscovered , backwardDiscovered , forwardFinalized , backwardFinalised ):
154
154
155
- # -------- Direction with Minimum F value node ---------------------
156
-
157
- # forwardMinItem = forwardDiscovered.rootItemAtHeap()
158
- # backwardMinItem = backwardDiscovered.rootItemAtHeap()
159
- #
160
- # if forwardMinItem.f < backwardMinItem.f:
161
- #
162
- # result = forwardDiscovered.minItemInHeap()
163
- # forwardFinalized.append(result)
164
- # return result, "forward"
165
- #
166
- # elif forwardMinItem.f > backwardMinItem.f:
167
- #
168
- # result = backwardDiscovered.minItemInHeap()
169
- # backwardFinalised.append(result)
170
- # return result, "backward"
171
- #
172
- # elif forwardMinItem.f == backwardMinItem.f:
173
- #
174
- # if forwardMinItem.h > backwardMinItem.h:
175
- #
176
- # result = forwardDiscovered.minItemInHeap()
177
- # forwardFinalized.append(result)
178
- # return result, "forward"
179
- #
180
- # else:
181
- #
182
- # result = backwardDiscovered.minItemInHeap()
183
- # backwardFinalised.append(result)
184
- # return result, "backward"
185
-
186
- # -------- Direction with Minimum F value node ---------------------
187
-
188
- # ----------- Cardinality Criterion --------------------------------
189
-
190
- if len (backwardDiscovered .getHeap ()) < len (forwardDiscovered .getHeap ()):
191
-
192
- result = backwardDiscovered .minItemInHeap ()
193
- backwardFinalised .append (result )
194
- return result , "backward"
195
-
196
- elif len (backwardDiscovered .getHeap ()) > len (forwardDiscovered .getHeap ()):
197
-
155
+ forwardMinItem = forwardDiscovered .rootItemAtHeap ()
156
+ backwardMinItem = backwardDiscovered .rootItemAtHeap ()
157
+
158
+ if forwardMinItem .f < backwardMinItem .f :
159
+
198
160
result = forwardDiscovered .minItemInHeap ()
199
161
forwardFinalized .append (result )
200
162
return result , "forward"
201
-
202
- elif len (backwardDiscovered .getHeap ()) == len (forwardDiscovered .getHeap ()):
203
-
204
- forwardMinItem = forwardDiscovered .rootItemAtHeap ()
205
- backwardMinItem = backwardDiscovered .rootItemAtHeap ()
206
-
207
- if forwardMinItem .f < backwardMinItem .f :
208
-
163
+
164
+ elif forwardMinItem .f > backwardMinItem .f :
165
+
166
+ result = backwardDiscovered .minItemInHeap ()
167
+ backwardFinalised .append (result )
168
+ return result , "backward"
169
+
170
+ elif forwardMinItem .f == backwardMinItem .f :
171
+
172
+ if forwardMinItem .h > backwardMinItem .h :
173
+
209
174
result = forwardDiscovered .minItemInHeap ()
210
175
forwardFinalized .append (result )
211
176
return result , "forward"
212
-
213
- elif forwardMinItem . f > backwardMinItem . f :
214
-
177
+
178
+ else :
179
+
215
180
result = backwardDiscovered .minItemInHeap ()
216
181
backwardFinalised .append (result )
217
182
return result , "backward"
218
183
219
- elif forwardMinItem .f == backwardMinItem .f :
220
-
221
- if forwardMinItem .h > backwardMinItem .h :
222
-
223
- result = forwardDiscovered .minItemInHeap ()
224
- forwardFinalized .append (result )
225
- return result , "forward"
226
-
227
- else :
228
-
229
- result = backwardDiscovered .minItemInHeap ()
230
- backwardFinalised .append (result )
231
- return result , "backward"
232
-
233
- # ----------- Cardinality Criterion --------------------------------
234
-
235
184
def minItemFromList (self , node , givenList ):
236
185
237
186
for item in givenList :
@@ -723,4 +672,4 @@ def biDirectionalSearch(self, source, target):
723
672
724
673
print ("Number of correct cases: " , correct )
725
674
print ("Number of wrong cases: " , wrong )
726
- print ("Number of not walkable source issues: " , unWalkable )
675
+ print ("Number of not walkable source issues: " , unWalkable )
0 commit comments