Solving problems by searching Informed (heuristics) Search
This document discusses various informed (heuristic) search strategies for solving problems, including greedy best-first search, A* search, and memory-bounded variations. Greedy best-first search uses the heuristic function h(n) alone to select nodes for expansion. A* search combines the path cost g(n) and heuristic estimate h(n) to select nodes, guaranteeing an optimal solution if h is admissible. The document provides examples of applying these searches to route finding between cities in Romania. A* search is identified as finding the optimal solution for this problem if using an admissible heuristic like straight-line distance.
Introduction to Informed Search, defining components like g(n), h(n), and f(n), and describing Best-First Search algorithms.
Discusses Greedy Best-First Search's approach to expanding nodes closest to goals, noting its limitations like non-optimality and lack of completeness.
Describes A* Search, its evaluation function combining g(n) and h(n), optimality conditions, and how it compares to BFS concerning completeness and time complexity.
Introduces memory-bounded heuristic searches like Iterative Deepening A* and Simple Memory Bounded A*, explaining their mechanisms for managing memory.
An exercise involving a pathfinding task from Oradea to Bucharest utilizing various search strategies to determine optimal solutions.
Solving problems by searching Informed (heuristics) Search
1.
AI: Chapter 4:Informed Search
and Exploration
1
Introduction to Artificial Intelligence
Chapter 4
Solving problems by searching
Informed (heuristics) Search
2.
AI: Chapter 4:Informed Search
and Exploration
2
Informed (Heuristic) Search
Strategies
• Informed Search – a strategy that uses
problem-specific knowledge beyond the
definition of the problem itself
• Best-First Search – an algorithm in which a
node is selected for expansion based on an
evaluation function f(n)
– Traditionally the node with the lowest evaluation
function is selected
– Not an accurate name…expanding the best node first
would be a straight march to the goal.
– Choose the node that appears to be the best
3.
AI: Chapter 4:Informed Search
and Exploration
3
Informed (Heuristic) Search
Strategies
• There is a whole family of Best-First Search
algorithms with different evaluation functions
– Each has a heuristic function h(n)
• h(n) = estimated cost of the cheapest path from
node n to a goal node
• Example: in route planning the estimate of the
cost of the cheapest path might be the straight
line distance between two cities
4.
AI: Chapter 4:Informed Search
and Exploration
4
A Quick Review
• g(n) = cost from the initial state to the
current state n
• h(n) = estimated cost of the cheapest path
from node n to a goal node
• f(n) = evaluation function to select a node
for expansion (usually the lowest cost
node)
5.
AI: Chapter 4:Informed Search
and Exploration
5
Greedy Best-First Search
• Greedy Best-First search tries to expand the node that is
closest to the goal assuming it will lead to a solution
quickly
– f(n) = h(n)
– “Greedy Search”
• Implementation
– expand the “most desirable” node into the fringe queue
– sort the queue in decreasing order of desirability
• Example: consider the straight-line distance heuristic hSLD
– Expand the node that appears to be closest to the goal
6.
AI: Chapter 4:Informed Search
and Exploration
6
Greedy Best-First Search
7.
AI: Chapter 4:Informed Search
and Exploration
7
Greedy Best-First Search
• hSLD(In(Arad)) = 366
• Notice that the values of hSLD cannot be
computed from the problem itself
• It takes some experience to know that hSLD
is correlated with actual road distances
– Therefore a useful heuristic
8.
AI: Chapter 4:Informed Search
and Exploration
8
Greedy Best-First Search
9.
AI: Chapter 4:Informed Search
and Exploration
9
Greedy Best-First Search
10.
AI: Chapter 4:Informed Search
and Exploration
10
Greedy Best-First Search
11.
AI: Chapter 4:Informed Search
and Exploration
11
Greedy Best-First Search
• Complete
– No, GBFS can get
stuck in loops (e.g.
bouncing back and
forth between cities)
• Time
– O(bm
) but a good
heuristic can have
dramatic improvement
• Space
keeps all the nodes in
memory
• Optimal
– No!
12.
AI: Chapter 4:Informed Search
and Exploration
12
A* Search
• A* (A star) is the most widely known form
of Best-First search
– It evaluates nodes by combining g(n) and h(n)
– f(n) = g(n) + h(n)
– Where
• g(n) = cost so far to reach n
• h(n) = estimated cost to goal from n
• f(n) = estimated total cost of path through n
13.
AI: Chapter 4:Informed Search
and Exploration
13
A* Search
• When h(n) = actual cost to goal
– Only nodes in the correct path are expanded
– Optimal solution is found
• When h(n) < actual cost to goal
– Additional nodes are expanded
– Optimal solution is found
• When h(n) > actual cost to goal
– Optimal solution can be overlooked
14.
AI: Chapter 4:Informed Search
and Exploration
14
A* Search
• A* is optimal if it uses an admissible
heuristic
– h(n) <= h*(n) the true cost from node n
– if h(n) never overestimates the cost to reach
the goal
• Example
– hSLD never overestimates the actual road
distance
15.
AI: Chapter 4:Informed Search
and Exploration
15
A* Search
16.
AI: Chapter 4:Informed Search
and Exploration
16
A* Search
17.
AI: Chapter 4:Informed Search
and Exploration
17
A* Search
18.
AI: Chapter 4:Informed Search
and Exploration
18
A* Search
19.
AI: Chapter 4:Informed Search
and Exploration
19
A* Search
20.
AI: Chapter 4:Informed Search
and Exploration
20
A* Search
21.
AI: Chapter 4:Informed Search
and Exploration
21
A* Search
• A* expands nodes in increasing f value
– Gradually adds f-contours of nodes (like
breadth-first search adding layers)
– Contour i has all nodes f=fi where fi < fi+1
22.
AI: Chapter 4:Informed Search
and Exploration
22
A* Search
• Complete
– Yes, unless there are infinitely many nodes with f <= f(G)
• Time
– The better the heuristic, the better the time
• Best case h is perfect,
• same as BFS
• Space
– Keeps all nodes in memory and save in case of repetition
– worse
– A* usually runs out of space before it runs out of time
• Optimal
– Yes, cannot expand fi+1 unless fi is finished
23.
AI: Chapter 4:Informed Search
and Exploration
23
Memory-Bounded Heuristic Search
• Iterative Deepening A* (IDA*)
– Similar to Iterative Deepening Search, but cut off at
(g(n)+h(n)) > max instead of depth > max
– At each iteration, cutoff is the first f-cost that exceeds
the cost of the node at the previous iteration
• Simple Memory Bounded A* (SMA*)
– Set max to some memory bound
– If the memory is full, to add a node drop the worst
(g+h) node that is already stored
– Expands newest best leaf, deletes oldest worst leaf
24.
AI: Chapter 4:Informed Search
and Exploration
24
Exercise
For the case of a Romania Example if a person
needs to go from the city of Oradea to
Bucharest determine:
1. The state space graph
2. By using the five uninformed search
strategies determine the successor functions
3. By using a greedy best and A* heuristics
search strategies determine the path to reach
the goal city
4. Which search strategy provide you an optimal
solution for the problem? Why?