Solving Problem by Searching - PowerPoint PPT Presentation

About This Presentation
Title:

Solving Problem by Searching

Description:

Solving Problem by Searching Chapter 3 - continued Outline Best-first search Greedy best-first search A* search and its optimality Admissible and consistent ... – PowerPoint PPT presentation

Number of Views:154
Avg rating:3.0/5.0
Slides: 31
Provided by: MinY226
Learn more at: http://csc.lsu.edu
Category:

less

Transcript and Presenter's Notes

Title: Solving Problem by Searching


1
Solving Problem by Searching
  • Chapter 3 - continued

2
Outline
  • Best-first search
  • Greedy best-first search
  • A search and its optimality
  • Admissible and consistent heuristics
  • Heuristic functions

3
Review Tree and graph search
  • Tree search can expand the same node more than
    once loopy path Graph search avoid duplicate no
    de expansion by storing all nodes explored
  • Blind search (BFS, DFS, uniform cost search)
  • A search strategy is defined by picking the order
    of node expansion
    Evaluate search algorithm by
  • Completeness
  • Optimality
  • Time and space complexity

4
Best-first search
  • Idea use an evaluation function f(n) for each
    node
  • estimate of "desirability"
  • Expand most desirable unexpanded node
  • Implementation
  • Order the nodes in fringe in decreasing order of
    desirability
  • Special cases
  • greedy best-first search
  • A search

5
Romania with step costs in km
6
Greedy best-first search
  • Evaluation function f(n) h(n) (heuristic)
  • estimate of cost from n to goal
  • e.g., hSLD(n) straight-line distance from n to
    Bucharest
  • Greedy best-first search expands the node that
    appears to be closest to goal

7
Greedy best-first search example
8
Greedy best-first search example
9
Greedy best-first search example
10
Greedy best-first search example
11
Properties of greedy best-first search
  • Complete? No can get stuck in loops (for tree
    search), e.g., Iasi ? Neamt ? Iasi ? Neamt ?
  • For graph search, if the state space is finite,
    greedy best-first search is complete
  • Time? O(bm), but a good heuristic can give
    dramatic improvement
  • Space? O(bm) -- keeps all nodes in memory
  • Optimal? No the example showed a non-optimal
    path

12
A search
  • Idea avoid expanding paths that are already
    expensive Algorithm is the same as the uniform cos
    t search except the evaluation function is
    different
  • Evaluation function f(n) g(n) h(n)
  • g(n) actual cost so far to reach n
  • h(n) estimated cost from n to goal
  • f(n) estimated total cost of path through n to
    goal

13
A search example
14
A search example
15
A search example
16
A search example
17
A search example
18
A search example
19
Admissible heuristics
  • A heuristic h(n) is admissible if for every node
    n,
  • h(n) h(n), where h(n) is the true cost to
    reach the goal state from n.
  • An admissible heuristic never overestimates the
    cost to reach the goal, i.e., it is optimistic
  • Example hSLD(n) (never overestimates the actual
    road distance)
  • Theorem If h(n) is admissible, A using
    TREE-SEARCH is optimal

20
Optimality of A (proof)
  • Suppose some suboptimal goal G2 has been
    generated and is in the fringe. Let n be an
    unexpanded node in the fringe such that n is on a
    shortest path to an optimal goal G.
  • f(G2) g(G2) since h(G2) 0
  • g(G2) gt g(G) since G2 is suboptimal
  • f(G) g(G) since h(G) 0
  • f(G2) gt f(G) from above

21
Optimality of A (proof)
  • Suppose some suboptimal goal G2 has been
    generated and is in the fringe. Let n be an
    unexpanded node in the fringe such that n is on a
    shortest path to an optimal goal G.
  • f(G2) gt f(G) from above
  • h(n) h(n) since h is admissible
  • g(n) h(n) g(n) h(n) g(G) f(G)
  • f(n) f(G)
  • Hence f(G2) gt f(n), and A will never select G2
    for expansion

22
Consistent heuristics
  • A heuristic is consistent if for every node n,
    every successor n' of n generated by any action
    a,
  • h(n) c(n,a,n') h(n')
  • If h is consistent, we have
  • f(n') g(n') h(n')
  • g(n) c(n,a,n') h(n')
  • g(n) h(n) f(n)
  • i.e., f(n) is non-decreasing along any path.
  • Theorem If h(n) is consistent, A using
    GRAPH-SEARCH is optimal

23
Optimality of A
  • A expands nodes in order of increasing f value
  • Gradually adds "f-contours" of nodes
  • Contour i has all nodes with ffi, where fi lt
    fi1

24
Properties of A
  • Complete? Yes (unless there are infinitely many
    nodes with f f(G) )
  • Time? Exponential
  • Space? Keeps all nodes in memory
  • Optimal? Yes

25
Admissible heuristics
  • E.g., for the 8-puzzle
  • h1(n) number of misplaced tiles
  • h2(n) total Manhattan distance
  • (i.e., no. of squares from desired location of
    each tile)
  • h1(S) ?
  • h2(S) ?

26
Admissible heuristics
  • E.g., for the 8-puzzle
  • h1(n) number of misplaced tiles
  • h2(n) total Manhattan distance
  • (i.e., no. of squares from desired location of
    each tile)
  • h1(S) ? 8
  • h2(S) ? 31222332 18

27
Dominance
  • If h2(n) h1(n) for all n (both admissible)
  • then h2 dominates h1
  • h2 is better for search
  • Typical search costs (average number of nodes
    expanded)
  • d12 IDS 3,644,035 nodes A(h1) 227 nodes
    A(h2) 73 nodes
  • d24 IDS too many nodes A(h1) 39,135 nodes
    A(h2) 1,641 nodes

28
Relaxed problems
  • A problem with fewer restrictions on the actions
    is called a relaxed problem
  • The cost of an optimal solution to a relaxed
    problem is an admissible heuristic for the
    original problem
  • If the rules of the 8-puzzle are relaxed so that
    a tile can move anywhere, then h1(n) gives the
    shortest solution
  • If the rules are relaxed so that a tile can move
    to any adjacent square, then h2(n) gives the
    shortest solution

29
Use multiple heuristic functions
  • We have several heuristic functions h1(n), h2(n),
    , hk(n).
  • One could define a heuristic function h(n) by
  • h(n) max h1(n), h2(n), , hk(n)

30
Summary
  • Best-first search uses an evaluation function
    f(n) to select a node for expansion
  • Greedy best-first search uses f(n) h(n). It is
    not optimal but efficient
  • A search uses f(n) g(n) h(n)
  • A is complete and optimal if h(n) is admissible
    (consistent) for tree (graph) search
  • Obtaining good heuristic function h(n) is
    important one can often get good heuristics by
    relaxing the problem definition, using pattern
    databases, and by learning
Write a Comment
User Comments (0)
About PowerShow.com