Ifi6057w6extra

Allikas: Lambda
Redaktsioon seisuga 11. oktoober 2017, kell 12:05 kasutajalt PriitJ (arutelu | kaastöö)
Mine navigeerimisribale Mine otsikasti

Täienda my_search funktsiooni nii, et see jätaks meelde juba nähtud seisud. Neid fringe-sse enam ei panda.


Pseudokood:

function Tree-Search(problem, fringe) return a solution, or failure
    fringe <- Insert(Make-Node(Initial-State[problem]), fringe)

    #kusagil alguses lisa:
    # states_seen on tyhi hulk, Pythonis set()

    loop do
        if fringe is empty then return failure
        node <- Remove-Front(fringe)

        # uus node, jätame meelde
        #states_seen lisame node

        if Goal-Test(problem, State(node)) then return node

        # fringesse lisa AINULT need lapsed, mis EI OLE
        # states_seen hulgas
        fringe <- InsertAll(Expand(node, problem), fringe)
 

Kahe node võrdlemiseks võrdle node.state - sid