Heuristic Search
Heuristic Search
Heuristic Search
Heuristic Search
The search techniques we have seen so far...
In other words, the heuristic tells us approximately how far the state
is from the goal state*.
16
Steepest-Ascent Hill Climbing
(Gradient Search)
• Considers all the moves from the current
state.
17
Steepest-Ascent Hill Climbing
(Gradient Search)
Algorithm
1. Evaluate the initial state.
2. Loop until a solution is found or a complete iteration produces no change
to current state:
- SUCC = a state such that any possible successor of the
current state will be better than SUCC (the worst state).
- For each operator that applies to the current state, evaluate
the new state:
goal quit
better than SUCC set SUCC to this state
- SUCC is better than the current state set the current
state to SUCC.
18
Hill Climbing: Disadvantages
Local maximum
A state that is better than all of its
neighbours, but not better than some other
states far away.
19
Hill Climbing: Disadvantages
Plateau
A flat area of the search space in which all
neighbouring states have the same value.
20
Hill Climbing: Disadvantages
Ridge
The orientation of the high region, compared to the set
of available moves, makes it impossible to climb up.
However, two moves executed serially may increase
the height.
21
Hill Climbing: Disadvantages
Ways Out
23
Hill Climbing: Disadvantages
Start Goal
A D
D C
C B
B A
Blocks World
24
Hill Climbing: Disadvantages
Start Goal
A D
0 4
D C
C B
B A
Blocks World
Local heuristic:
+1 for each block that is resting on the thing it is supposed to
be resting on.
-1 for each block that is resting on a wrong thing.
25
Hill Climbing: Disadvantages
0 A 2
D D
C C
B B A
26
Hill Climbing: Disadvantages
2
D
C
B A
A 0
0
D
C C D C 0
B B A B A D
27
Hill Climbing: Disadvantages
Start Goal
A D
-6 6
D C
C B
B A
Blocks World
Global heuristic:
For each block that has the correct support structure: +1 to
every block in the support structure.
For each block that has a wrong support structure: -1 to
every block in the support structure. 28
Hill Climbing: Disadvantages
D -3
C
B A
A -6
-2
D
C C D C -1
B B A B A D
29
Hill Climbing: Conclusion
Can be very inefficient in a large, rough
problem space.
Global heuristic may have to pay for
computational complexity.
Often useful when combined with other
methods.
30
Simulated Annealing
A variation of hill climbing in which, at the
beginning of the process, some downhill
moves may be made.
To do enough exploration of the whole
space early on, so that the final solution is
relatively insensitive to the starting state.
Lowering the chances of getting caught at a
local maximum, or plateau, or a ridge.
31
Simulated Annealing
Physical Annealing
• Physical substances are melted and then gradually cooled
until some solid state is reached.
• The goal is to produce a minimal-energy state.
• Annealing schedule: if the temperature is lowered
sufficiently slowly, then the goal will be attained.
• Nevertheless, there is some probability for a transition to a
higher energy state: e-E/kT.
32
Simulated Annealing
Algorithm
1. Evaluate the initial state.
2. Loop until a solution is found or there are no new operators left to be
applied:
- Set T according to an annealing schedule
- Selects and applies a new operator
- Evaluate the new state:
goal quit
E = Val(current state) - Val(new state)
E < 0 new current state
else new current state with probability e-E/kT.
33
NEXT CLASS
Best-First Search
• Depth-first search: not all competing branches
having to be expanded.
B C D B C D
3 5 1 3 5
E F
4 6
A A
B C D B C D
5 5
G H E F G H E F
6 5 4 6 6 5 6
I J
2 1
36
Best-First Search
• OPEN: nodes that have been generated, but have
not examined.
This is organized as a priority queue.
37
Best-First Search
Algorithm
1. OPEN = {initial state}.
2. Loop until a goal is found or there are no nodes left in OPEN:
- Pick the best node in OPEN
- Generate its successors
- For each successor:
new evaluate it, add it to OPEN, record its parent
generated before change parent, update successors
38
Best-First Search
• Greedy search:
h(n) = estimated cost of the cheapest path
from node n to a goal state.
39
Best-First Search
• Uniform-cost search:
g(n) = cost of the cheapest path from the
initial state to node n.
40
Best-First Search
• Greedy search:
h(n) = estimated cost of the cheapest path
from node n to a goal state.
Neither optimal nor complete
41
Best-First Search
• Greedy search:
h(n) = estimated cost of the cheapest path from
node n to a goal state.
Neither optimal nor complete
• Uniform-cost search:
g(n) = cost of the cheapest path from the initial
state to node n.
Optimal and complete, but very inefficient
42
Best-First Search
• Algorithm A* (Hart et al., 1968):
f(n) = g(n) + h(n)
Goal: Steal TV set Goal: Earn some money Goal: Buy TV set
AND-OR Graphs
46
Problem Reduction: AO*
A A 6
5 9
B C D
3 4 5
A 9 A 11
9 12
B C D 10 B 6 C D 10
3 4 4
E F G H E F
4 4 5 7 4 4
47
Problem Reduction: AO*
A 11 A 14
B 13 C 10 B 13 C 15
D 5 E 6 F 3 D 5 E 6 F 3
G 5 G 10
48
TO BE CONTINUE…