heuristic search
play

Heuristic Search Rob Platt Northeastern University Some images and - PowerPoint PPT Presentation

Heuristic Search Rob Platt Northeastern University Some images and slides are used from: AIMA Recap: What is graph search? Start state Goal state Graph search: find a path from start to goal what are the states? what are the


  1. Heuristic Search Rob Platt Northeastern University Some images and slides are used from: AIMA

  2. Recap: What is graph search? Start state Goal state Graph search: find a path from start to goal – what are the states? – what are the actions (transitions)? – how is this a graph?

  3. Recap: What is graph search? Goal state Start state Graph search: find a path from start to goal – what are the states? – what are the actions (transitions)? – how is this a graph?

  4. Recap: BFS/UCS goal It's like this start – search in all directions equally until discovering goal

  5. Idea Is it possible to use additional information to decide which direction to search in?

  6. Idea Is it possible to use additional information to decide which direction to search in? Yes! Instead of searching in all directions, let's bias search in the direction of the goal.

  7. Example Stright-line distances to Bucharest

  8. Example Goal state Start state Expand states in order of their distance to the goal – for each state that you put on the fringe: calculate straight-line distance to the goal – expand the state on the fringe closest to the goal

  9. Example Goal state Start state Heuristic: Expand states in order of their distance to the goal – for each state that you put on the fringe: calculate straight-line distance to the goal – expand the state on the fringe closest to the goal Greedy search

  10. Greedy Search

  11. Greedy Search Each time you expand a state, calculate the heuristic for each of the states that you add to the fringe. – heuristic: i.e. distance to Bucharest – on each step, choose to expand the state with the lowest heuristic value.

  12. Greedy Search This is like a guess about how far the state is from the goal Each time you expand a state, calculate the heuristic for each of the states that you add to the fringe. – heuristic: i.e. distance to Bucharest – on each step, choose to expand the state with the lowest heuristic value.

  13. Example: Greedy Search

  14. Example: Greedy Search

  15. Example: Greedy Search

  16. Example: Greedy Search Path: A-S-F-B

  17. Example: Greedy Search Path: A-S-F-B Notice that this is not the optimal path!

  18. Example: Greedy Search Greedy Search: – Not optimal – Not complete – But, it can be very fast Path: A-S-F-B Notice that this is not the optimal path!

  19. Greedy vs UCS UCS: Greedy Search: – Optimal – Not optimal – Complete – Not complete – Usually very slow – But, it can be very fast

  20. Greedy vs UCS UCS: Greedy Search: – Optimal – Not optimal – Complete – Not complete – Usually very slow – But, it can be very fast Can we combine greedy and UCS???

  21. Greedy vs UCS UCS: Greedy Search: – Optimal – Not optimal – Complete – Not complete – Usually very slow – But, it can be very fast Can we combine greedy and UCS??? YES: A*

  22. A*

  23. A* : a state : minimum cost from start to : heuristic at ( i.e. an estimate of remaining cost-to-go) UCS: expand states in order of Greedy: expand states in order of A*: expand states in order of

  24. A* What is “cost-to-go”? : a state : minimum cost from start to : heuristic at ( i.e. an estimate of remaining cost-to-go) UCS: expand states in order of Greedy: expand states in order of A*: expand states in order of

  25. A* What is “cost-to-go”? – minimum cost required : a state to reach a goal state : minimum cost from start to : heuristic at ( i.e. an estimate of remaining cost-to-go) UCS: expand states in order of Greedy: expand states in order of A*: expand states in order of

  26. A* 8 e h=1 1 1 2 3 S a d G h=6 h=5 1 h=2 h=0 b h=6 1 c h=7 • Uniform-cost orders by path cost from Start : g(n) • Greedy orders by estimated cost to goal: h(n) • A* orders by the sum: f(n) = g(n) + h(n) Modifjed from: T eg Grenager

  27. When should A* terminate? Should we stop when we enqueue a goal? h = 2 A 2 2 S G h = 3 h = 0 2 3 B h = 1 No: only stop when we dequeue a goal Slide: Adapted from Berkeley CS188 course notes (downloaded Summer 2015)

  28. Is A* optimal? h = 6 1 3 A S h = 7 G h = 0 5 What went wrong here? Image: Adapted from Berkeley CS188 course notes (downloaded Summer 2015)

  29. When is A* optimal? It depends on whether we are using the tree search or the graph search version of the algorithm. Recall: – in tree search, we do not track the explored set – in graph search, we do

  30. Recall: Breadth first search (BFS) What is the purpose of the explored set?

  31. When is A* optimal? It depends on whether we are using the tree search or the graph search version of the algorithm. Optimal if h is admissible Optimal if h is consistent

  32. When is A* optimal? It depends on whether we are using the tree search or the graph search version of the algorithm. Optimal if h is admissible Optimal if h is consistent – h(s) is an underestimate – h(s) is an underestimate of the true cost-to-go. of the cost of each arc.

  33. When is A* optimal? It depends on whether we are using the tree search or the graph search version of the algorithm. Optimal if h is admissible Optimal if h is consistent – h(s) is an underestimate – h(s) is an underestimate of the true cost-to-go. of the cost of each arc. What is “cost-to-go”? – minimum cost required to reach a goal state

  34. When is A* optimal? It depends on whether we are using the tree search or the graph search version of the algorithm. Optimal if h is admissible Optimal if h is consistent – h(s) is an underestimate – h(s) is an underestimate of the true cost-to-go. of the cost of each arc. More on this later...

  35. Admissibility: Example Stright-line distances to Bucharest h(s) = straight-line distance to goal state (Bucharest)

  36. Admissibility Stright-line distances to Bucharest h(s) = straight-line distance to goal state (Bucharest) Is this heuristic admissible???

  37. Admissibility Stright-line distances to Bucharest h(s) = straight-line distance to goal state (Bucharest) Is this heuristic admissible??? YES! Why?

  38. Admissibility: Example Start state Goal state h(s) = ? Can you think of an admissible heuristic for this problem?

  39. Admissibility h = 6 1 3 A S h = 7 G h = 0 5 Why isn't this heuristic admissible? Image: Adapted from Berkeley CS188 course notes (downloaded Summer 2015)

  40. Consistency State space graph Search tree A S (0+2) 1 1 S h=4 C A (1+4) B (1+1) h=1 1 h=2 2 3 C (2+1) C (3+1) B h=1 G (5+0) G (6+0) G h=0 What went wrong? Slide: Adapted from Berkeley CS188 course notes (downloaded Summer 2015)

  41. Consistency Cost of going from s to s' s s'

  42. Consistency Rearrange terms

  43. Consistency Cost of going from s to s' implied by heuristic Actual cost of going from s to s'

  44. Consistency Cost of going from s to s' implied by heuristic Actual cost of going from s to s'

  45. Consistency Consistency implies that the “f-cost” never decreases along any path to a goal state. – the optimal path gives a goal state its lowest f-cost. A* expands states in order of their f-cost. Given any goal state, A* expands states that reach the goal state optimally before expanding states the reach the goal state suboptimally.

  46. Consistency implies admissibility Suppose: Then:

  47. Consistency implies admissibility Suppose: Then:

  48. Consistency implies admissibility Suppose: admissible Then:

  49. Consistency implies admissibility Suppose: Then:

  50. Consistency implies admissibility Suppose: Then: admissible

  51. Consistency implies admissibility Suppose: Then: admissible admissible

  52. Consistency implies admissibility Suppose: Then:

  53. A* vs UCS goal goal goal start start start Greedy UCS A*

  54. Choosing a heuristic The right heuristic is often problem-specific. But it is very important to select a good heuristic!

  55. Choosing a heuristic Consider the 8-puzzle: : number of misplaced tiles : sum of manhattan distances between each tile and its goal. How much better is ?

  56. Choosing a heuristic Consider the 8-puzzle: : number of misplaced tiles : sum of manhattan distances between each tile and its goal. Average # states expanded on a random depth-24 puzzle: (by depth 12)

  57. Choosing a heuristic Consider the 8-puzzle: : number of misplaced tiles : sum of manhattan distances between each tile and its goal. Average # states expanded on a random depth-24 puzzle: So, getting the heuristic right can speed things up by multiple orders of magnitude! (by depth 12)

  58. Choosing a heuristic Consider the 8-puzzle: : number of misplaced tiles : sum of manhattan distances between each tile and its goal. Why not use the actual cost to goal as a heuristic?

  59. How to choose a heuristic? Nobody has an answer that always works. A couple of best-practices: – solve a relaxed version of the problem – solve a subproblem

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend