1 / 29

Tree Searching Strategies

Tree Searching Strategies. The procedure of solving many problems may be represented by trees. Therefore the solving of these problems becomes a tree searching problem. Satisfiability problem. Tree Representation of Eight Assignments.

saniya
Télécharger la présentation

Tree Searching Strategies

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Tree Searching Strategies

  2. The procedure of solving many problems may be represented by trees. • Therefore the solving of these problems becomes a tree searching problem.

  3. Satisfiability problem Tree Representation of Eight Assignments. If there are n variables x1, x2, …,xn, then there are 2n possible assignments.

  4. Satisfiability problem • An instance: -x1……..……(1) x1…………..(2) x2 v x5….….(3) x3…….…….(4) -x2…….…….(5) A Partial Tree to Determine the Satisfiability Problem. • We may not need to examine all possible assignments.

  5. Hamiltonian circuit problem • E.g. the Hamiltonian circuit problem A Graph Containing a Hamiltonian Circuit

  6. Fig. 6-8 The Tree Representation of Whether There Exists a Hamiltonian Circuit of the Graph in Fig. 6-6

  7. A tree showing the non-existence of any Hamiltonian circuit.

  8. 8-Puzzle Problem Initial State: Goal State:

  9. Tree Representation of the solution of 8-puzzle problem

  10. How to expand the tree ? • Breadth-First Search • Depth-First Search • Hill Climbing • Best-First Search • Branch-and-Bound Strategy (for optimization problems) • A* Algorithm

  11. Breadth-First Search Scheme • Step1: Form a one-element queue consisting of the root node. • Step2: Test to see if the first element in the queue is a goal node. If it is, stop. Otherwise, go to step 3. • Step3: Remove the first element from the queue. Add the first element’s descendants, if any, to the end of the queue. • Step4: If the queue is empty, then signal failure. Otherwise, go to Step 2.

  12. 1 2 3 4 6 5 7 Goal Node

  13. Depth-First Search Scheme • Step1: Form a one-element stack consisting of the root node. • Step2: Test to see if the top element in the queue is a goal node. If it is, stop. Otherwise, go to step 3. • Step3: Remove the top element from the stack. Add the first element’s descendants, if any, to the top of the stack. • Step4: If the stack is empty, then signal failure. Otherwise, go to Step 2.

  14. E.G.: the depth-first search • E.g. sum of subset problem Given a set S={7, 5, 1, 2, 10}, answer if  S’ S  sum of S’ = 9. The Sum of Subset Problem Solved by Depth-First Search.

  15. Hill climbing • A variant of depth-first search The method selects the locally optimal node to expand. • E.g. for the 8-puzzle problem, evaluation function f(n) = w(n), where w(n) is the number of misplaced tiles in node n.

  16. Hill Climbing Search Scheme • Step1: Form a one-element stack consisting of the root node. • Step2: Test to see if the top element in the queue is a goal node. If it is, stop. Otherwise, go to step 3. • Step3: Remove the top element from the stack. Add the first element’s descendants, if any, to the top of the stack according to order computed by the evaluation function. • Step4: If the stack is empty, then signal failure. Otherwise, go to Step 2.

  17. An 8-Puzzle Problem Solved by the Hill Climbing Method

  18. Best-first search strategy • Combing depth-first search and breadth-first search • Selecting the node with the best estimated cost among all nodes. • This method has a global view.

  19. Best-First Search Scheme • Step1:Consturct a heap by using the evaluation function. First, form a 1-element heap consisting of the root node. • Step2:Test to see if the root element in the heap is a goal node. If it is, stop; otherwise, go to Step 3. • Step3:Remove the root element from the heap and expand the element. Add the descendants of the element into the heap. • Step4:If the heap is empty, then signal failure. Otherwise, go to Step 2.

  20. An 8-Puzzle Problem Solved by the Best-First Search Scheme Goal Node

  21. Feasible Solution vs. Optimal Solution • DFS, BFS, hill climbing and best-first search can not be used to solve optimization problems. • They only point out a feasible solution.

  22. The branch-and-bound strategy • This strategy can be used to solve optimization problems without an exhaustive search.

  23. Global Maximum and Local Maximum global maximum local maximum

  24. A Multi-Stage Graph Searching Problem.

  25. E.G.:A Multi-Stage Graph Searching Problem

  26. Solved by branch-and-bound

  27. Solved by branch-and-bound

  28. Branch-and-bound strategy • 2 mechanisms: • A mechanism to generate branches • A mechanism to generate a bound so that many braches can be terminated. • Although it is usually very efficient, a very large tree may be generated in the worst case. • It is efficient in the sense of average case.

  29. Exercise • Use BFS, DFS, Hill-Climbing and Best-First Search schemes to solve the following 8-puzzle problem with the evaluation function being the number of misplaced tiles. Initial State: Goal State:

More Related