depth_BFS = 0 depth_ASS = 0 depth_UCS = 0 space_BFS = 0 space_ASS = 0 space_IDS = 0 counter_BFS = 0 counter_ASS = 0 counter_UCS = 0 for k in outputList: # create a problem instance problem = P.InformedProblem(k[3]) # create a search object, and set the time limit searcher = InformedSearch.InformedSearch(problem, timelimit=10) # establish the initial state s = P.State(k[2], k[1][0], k[1][1]) # do the searching; here we're calling BFS answer_BFS = searcher.BestFirstSearch(s) answer_ASS = searcher.AStarSearch(s) answer_UCS = searcher.UCSSearch(s) # answer_IDS = searcher.IDS(s) # very basic output: use the __str__() method in SearchTerminationRecord
ad = 20 far = 40 step = 40 exp = 1 avTime = 0 avNodes = 0 avSpace = 0 counter = 0 for i in range(0, len(testProblems)): testProblem = testProblems[i] state = P.InformedState(testProblem) problem = P.InformedProblem(state) searcher = Search.InformedSearch(problem, timelimit=timeLimit) answer = searcher.AStarSearch(state, ad, far, step, exp) if answer.success == True: avTime = avTime + answer.time avNodes = avNodes + answer.nodes avSpace = avSpace + answer.space counter = counter + 1 print(str(answer)) print() if counter >= 1: print("The average time A* Search took was " + str(avTime / counter) + " seconds")