示例#1
0
    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
示例#2
0
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")