Title: Chapter 2 Heuristic Search Techniques
1Chapter 2Heuristic Search Techniques
2Defining the problem
- A water jug problem 4-gallon and 3-gallon
- no marker on the bottle
- pump to fill the water into the jug
- How can you get exactly 2 gallons of water into
the 4-gallons jug?
4
3
3A state space search
- (x,y) order pair
- x water in 4-gallons ? x 0,1,2,3,4
- y water in 3-gallons ? y 0,1,2,3
- start state (0,0)
- goal state (2,n) where n any value
- Rules 1. Fill the 4 gallon-jug (4,-)
- 2. Fill the 3 gallon-jug (-,3)
- 3. Empty the 4 gallon-jug (0,-)
- 4. Empty the 3 gallon-jug (-,0)
4Water jug rules
- 1 (x,y) (4,y) Fill the 4-gallon jug
- if x lt 4
- 2 (x,y) (x,3) Fill the 3-gallon jun
- if y lt 3
- 3 (x,y) (x d,y) Pour some water out of
- if x gt 0 the 4-gallon jun
- 4 (x,y) (x,y d) Pour some water out of
- if y gt 0 the 3-gallon jun
- 5 (x,y) (0,y) Empty the 4-gallon jun
- if x gt 0 on the ground
- 6 (x,y) (x,0) Empty the 3-gallon jun
- if y gt 0 on the ground
5Water jug rules
- 7 (x,y) (4,y (4 - x)) Pour water from the
- if xy gt 4 and y gt 0 3-gallon jug into the
4-gallon jug until the 4-gallon jug is full - 8 (x,y) (x (3 - y),3) Pour water from the
- if xy gt 3 and y gt 0 4-gallon
jug into the 3-gallon jug until the
3-gallon jug is full - 9 (x,y) (xy,0) Pour all water from the
- if xy lt 4 and y gt 0 from the 3-gallon jug
- into the 4-gallon jug
- 10 (x,y) (0,x y ) Pour all water from
the - if x y lt 3 and X gt 0 from the 4-gallon
jug - into the 3-gallon jug
- 11 (0,2) (2,0) Pour the 2 gallons from the
3- gallon jug into the 4-gallon jug - 12 (2,y) (0,y) Empty the 2 gallons in
- the 4-gallon jug on the ground
6A water jug solution
- 4-Gallon Jug 3-Gallon Jug Rule Applied
- 0 0
- 0 3 2
- 3 0 9
- 3 3 2
- 4 2 7
- 0 2 5 or 12 2 0 9 or 11
-
- Solution path / plan
7Formal description of a problem
The End
- Define a state space that contains all the
possible configurations of the relevant objects. - Specify state/states that describes the situation
of start state. - Specify state/states that describes the situation
of goal state. - Specify the set of rules.
- assumption, generalization
8Search Tree
The End
9Search Graph
The End
- Water jug problem.
- Cycle
- When will the search terminate?
10Homework 2 (1)
The End
- Is there any other solution for a water jug
problem? - If there is some other solution, describe in an
order pair of how to solve it. - due date ................................
11Question answering question
The End
Marcus was a man. Marcus was a Pompeian. Marcus
was born in 40 A.D. All men are mortal. All
Pompeians died when the volcano erupted in 79
A.D. No mortal lives longer than 150 years. It is
now 1991 A.D. Is
Marcus alive?
12Solution 1
The End
1. Marcus was man. axiom
1 4. All men are mortal.
axiom 4 8. Marcus is mortal.
1,4 3. Marcus was born in 40 A.D.
axiom 3 7. It is now 1991 A.D.
axiom 7 9. Marcus age is 1951 years.
3,7 6. No mortal lives longer than 150 years
axiom 6 10. Marcus is dead.
8,6,9
13Solution 2
The End
7. It is now 1991 A.D.
axiom 7 5. All Pompeians died in 79 A.D.
axiom 5 11. All Pompeians are dead now.
7,5 2. Marcus was a Pompeian.
axiom 2 12. Marcus is dead.
11,2
14Understanding a sentence
The End
The bank president ate a dish of pasta salad with
the fork.
bank financial institution / a side of a
river dish eat dish / eat pasta pasta salad
dog food ? food with dog meat? with a fork
with ....her friend. / with vegetable.
solution state of the world
15A blocks world
- on(c,a).
- on(b,d).
- ontable(a).
- ontable(d).
- clear(b).
- clear(c).
- hand_empty.
c
b
a
d
16Seven problem characteristics
The End
- Decomposable Problem
- Block world problem
- Can solution steps be ignored or undone?
- Ignorable theorem proving
- solution steps can be ignored
- Recoverable 8 puzzle
- solution steps can be undone (backtracking)
- Irrecoverable chess
- solution steps can not be undone
17Seven problem characteristics
The End
3. Is the universe predictable? 8-puzzel
(yes) bridge (no) ? but we can use probabilities
of each possible outcomes controlling robot arm ?
gear of the arm might stuck helping the lawyer to
decide how to defend his client against a murder
charge. 4. Is a good solution absolute or
relative? - formal inference
methods - More than one
solution? - traveling salesman
problem
18Seven problem characteristics
The End
5. Is the solution a state or a path? -
consistent interpretation for the sentence -
water jug problem ? path / plan 6. What is the
role of knowledge? knowledge for perfect program
of chess (need knowledge to constrain the
search) newspaper story understanding
(need
knowledge to recognize a solution) 7. Does the
task require interaction with a
person? solitary/ conversational
19Production system
The End
- A set of rules.
- Knowledge contains information for a particular
task. - A control strategy.
- resolve conflict rule.
- Breadth-first search
- Depth-first search
20Breadth-first search
The End
- Algorithm BFS
- Create a variable called NODE-LIST and set it
to the initial state. - Until a goal state is found or NODE-LIST is empty
do - Remove the first element from NODE-LIST and call
it E. If NODE-LIST was empty, quit. - For each way that each rule can match the state
described in E do - Apply the rule to generate a new state.
- If the new state is a goal state, quit and return
this state. - Otherwise, add the new state to the end of
NODE-LIST.
21Advantage BFS
The End
- will not trapped exploring a blind alley
(???????????????????????????? ???????????????????
) - if there is a solution, DFS is guaranteed to
find it. - if there are multiple solutions, a minimum
solution will be found.
22Depth-first search
The End
- Algorithm DFS
- If the initial state is a goal state, quit and
return success. - Otherwise, do the following until success or
failure is signaled - Generate a successor, E, of the initial state.
If there are no more successors, signal failure. - Call Depth-First Search with E as the initial
state. - If success is returned, signal success. Otherwise
continue in this loop.
23Advantage DFS
The End
- require less memory
- may find a solution without examining much of
the search space.
24Production System
The End
- Working memory
- Production set Rules Figure 5.3
- Trace Figure 5.4
- Data driven Figure 5.9
- Goal driven Figure 5.10
- Iteration
- Working memory
- Conflict sets
- Rule fired
25Production System
26Production System
27Production System
28Production System
29And-Or Graph
start Data
driven Goal
driven
The End
b
c
d
e
f
goal
30Heuristic Search
The End
Heuriskein ? to discover (Greek word) Heuristic
is a technique that improves the efficiency of
the search process. - It is often useful to
introduce heuristics based on
relatively unstructured knowledge. - can not use
Mathematical analysis. Heuristic function is
the function that maps from problem state
descriptions to measures of desirability, usually
represent as number ? guide the most profitable
direction
31Generate-and-test
The End
- Generate all possible solutions
- DFS backtracking
- Generate randomly
- Test function ? ANSWER yes/no
- Algorithm page 64....
32Hill Climbing
The End
- Similar to generate-and-test
- Test function heuristic function ? Tell how
close to the goal state - EX In unfamiliar city without a map...
- downtown tall building...
- heuristic function distance between
downtown and tall building - Stop
- Goal state meet
- No alternative state to move
33Simple Hill Climbing
The End
- Task specific knowledge into the control process
- Is one state better than another
- If the new state is ...better... than the current
state then make it the current state - Algorithm page 66.....
34Steepest-Ascent Hill Climbing
The End
- Consider all moves from the current state
- Select the best one as the next state
- Algorithm page 67....
35Hill Climbing Characteristic
The End
- Local method
- It decides what to do next by looking only at the
immediate consequences of its choice (rather than
by exhaustively exploring all of the consequence) - Look only one more ahead
36Local heuristic function
The End
Heuristic function max value
- Block world figure 3.1 p. 69....
- Local heuristic function
- 1. Add one point for every block that is resting
on the thing it is supposed to be resting on. - 2. Subtract one point for every block that is
sitting on the wrong thing. - Initial state score 4 (6-2)
- C,D,E,F,G,H correct 6
- A,B wrong -2
- Goal state score 8
- A,B,C,D,E,F,F,H all correct
37Local heuristic function
Heuristic function max value
Current state figure 3.1 ???? A ????????? B
C D E F G H ?????????????????? ? Score 6 (B C
D E F G H correct) Block world figure 3.2 p.
69 case a Next state score 4 (6-2) case b
Next state score 4 (6-2) case c Next state
score 4 (6-2) All 3 cases a,b,c ...have no
better score than the current state 6 ? so
we... Stop Local minimum problem ???????????????
???? local ???????????????
38Global heuristic function
The End
- Block world figure 3.1 p. 69....
- Global heuristic function
- For each block that has the correct support
structure (?????????????????????????)add one
point for every block in the support structure. - For each block that has an incorrect support
structure, subtract one point for every block in
the existing support structure.
39Global heuristic function
The End
Heuristic function max value
- initial state score -28
- C -1, D -2, E -3, F -4, G -5, H -6, A
-7 - C ?????????????????????? 1 ???
- D ?????????????????????? 2 ???...
- Goal state score 28
- B 1, C 2, D 3, E 4, F 5, G 6, H
7 - B ????????????????????????? 1 ???
- C ????????????????????????? 2 ???....
40Global heuristic function
Heuristic function max value
Current state figure 3.1 ???? A ????????? B
C D E F G H ?????????????????? Score -21 (C
-1, D -2, E -3, F -4, G -5, H
-6) Block world figure 3.2 p. 69 Next state
move to case(c) case a -28 same as initial
state case b -16 (C -1, D -2, E -3, F
-4, G -5, H -1) case c -15 (C -1,
D -2, E -3, F -4, G -5) No Local minimum
problem ? Its work
41New heuristic function
The End
- 1. Incorrect structure are bad and should be
taken apart. - More subtract score
- 2. Correct structure are good and should built
up. - Add more score for the correct structure.
- ?????????????????????
- How to find a perfect heuristic function?
- ????????????????????????????????????????? dead
end ??????????
42Best first search
Heuristic function min value
The End
page 74
43Best first search
- OR GRAPH each of its branches represents an
alternative problem-solving pattern - we assumed that we could evaluate multiple paths
to the same node independently of each other - we want to find a single path to the goal
- use DFS select most promising path
- use BSF when no promising path/ switch part to
receive the better value - old branch is not forgotten
- solution can be find without all completing
branches having to expanded
44Best first search
f g h g
cost from initial state to current stateh
estimate cost current state to goal state f
estimate cost initial state to goal state Open
node most promising node Close node keep in
memory, already discover node.
45Best First Search Algorithm
page 75-76
46A algorithm
Heuristic function min value
f g h
- h count the nodes that we step down the path,
1
level down 1 point, except the root node. - Underestimate we generate up until f (F) 6 gt
f (C) 5 - then we have to go back to C.
The End
1 level
2 level
f(E) f(C) 5
3 level
47A algorithm
Heuristic function min value
f g h
The End
????? Overestimate Suppose the solution is
under D but we will not
generate D because f(D) 6 gt f(G) 4.
1 level
2 level
3 level
page 76
48And-Or Graph / Tree
The End
- can be solved by decomposing them into a set of
smaller problems - And arcs are indicated with a line connecting all
the components -
49And-Or Graph / Tree
Heuristic function min value
- each arc with the successor has a cost of 1
-
The End
92711
3411
151011
choose lowest value f(B) 51
ABEF 17 1
50And-Or Graph / Tree
The End
51To solve a problem
The End
- Define the problem precisely. Specify the problem
space, and the starting and goal state (s). - Analyze the problem to determine where it falls
with respect to seven important issues. - Identify and represent the knowledge required by
the task. - Choose one or more techniques for problem
- solving , and apply those techniques
- to the problem.
52 It is not enough to stare up the steps...
We must step up the stairs.