Upload
robert-crawford
View
218
Download
2
Embed Size (px)
Citation preview
1
Chapter 2Heuristic Search Techniques
344-471 AI & ES Chapter 2 2
Defining 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
344-471 AI & ES Chapter 2 3
A 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,3start 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)
344-471 AI & ES Chapter 2 4
1 (x,y) (4,y) Fill the 4-gallon jug if x < 42 (x,y) (x,3) Fill the 3-gallon jun if y < 33 (x,y) (x – d,y) Pour some water out of if x > 0 the 4-gallon jun4 (x,y) (x,y – d) Pour some water out of if y > 0 the 3-gallon jun5 (x,y) (0,y) Empty the 4-gallon jun if x > 0 on the ground6 (x,y) (x,0) Empty the 3-gallon jun if y > 0 on the ground
Water jug rules
344-471 AI & ES Chapter 2 5
7 (x,y) (4,y – (4 - x)) Pour water from the if x+y >= 4 and y > 0 3-gallon jug into the 4-gallon jug
until the 4-gallon jug is full8 (x,y) (x – (3 - y),3) Pour water from the if x+y >= 3 and y > 0 4-gallon jug into the 3-gallon jug
until the 3-gallon jug is full9 (x,y) (x+y,0) Pour all water from the if x+y <= 4 and y > 0 from the 3-gallon jug
into the 4-gallon jug10 (x,y) (0,x + y ) Pour all water from the if x + y <= 3 and X > 0 from the 4-gallon jug
into the 3-gallon jug11 (0,2) (2,0) Pour the 2 gallons from the 3-
gallon jug into the 4-gallon jug12 (2,y) (0,y) Empty the 2 gallons in
the 4-gallon jug on the ground
Water jug rules
344-471 AI & ES Chapter 2 6
A water jug solution4-Gallon Jug 3-Gallon Jug Rule Applied
0 00 3 23 0 93 3 24 2 70 2 5 or 122 0 9 or 11
Solution : path / plan
344-471 AI & ES Chapter 2 7
Formal description of a problem
1. Define a state space that contains all the possible configurations of the relevant objects.
2. Specify state/states that describes the situation of start state.
3. Specify state/states that describes the situation of goal state.
4. Specify the set of rules. assumption, generalization
344-471 AI & ES Chapter 2 8
Search Tree
(0,0)
(4,0) (0,3)
(4,3) (0,0) (4,3) (3,0)(1,3) (0,0)
Water jug problem.
344-471 AI & ES Chapter 2 9
Search Graph
Water jug problem. Cycle When will the search terminate?
•(0,0)
•(4,0) •(0,3)
•(4,3) •(4,3) •(3,0)•(1,3)
344-471 AI & ES Chapter 2 10
Homework 2 (1%) 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 ................................
344-471 AI & ES Chapter 2 11
Question answering question
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?
344-471 AI & ES Chapter 2 12
Solution 1
1. Marcus was man. axiom 14. All men are mortal. axiom 48. Marcus is mortal. 1,43. Marcus was born in 40 A.D. axiom 37. It is now 1991 A.D. axiom 79. Marcus’ age is 1951 years. 3,76. No mortal lives longer than 150 years axiom 610. Marcus is dead. 8,6,9
344-471 AI & ES Chapter 2 13
7. It is now 1991 A.D. axiom 75. All Pompeians died in 79 A.D. axiom
511. All Pompeians are dead now. 7,5
2. Marcus was a Pompeian. axiom
212. Marcus is dead. 11,2
Solution 2
344-471 AI & ES Chapter 2 14
The bank president ate a dish of pasta salad with the fork.
Understanding a sentence
bank = financial institution / a side of a riverdish = eat dish / eat pastapasta salad : dog food food with dog meat?with a fork : with ....her friend. / with vegetable.
solution : state of the world
344-471 AI & ES Chapter 2 15
A blocks world
on(c,a). on(b,d).ontable(a).ontable(d).clear(b).clear(c). hand_empty.
a
c
d
b
344-471 AI & ES Chapter 2 16
Seven problem characteristics
1. Decomposable Problem• Block world problem
2. Can solution steps be ignored or undone?
• Ignorable : theorem provingsolution steps can be ignored
• Recoverable : 8 puzzle solution steps can be undone (backtracking)
• Irrecoverable : chesssolution steps can not be undone
344-471 AI & ES Chapter 2 17
Seven problem characteristics
3. Is the universe predictable?8-puzzel (yes)bridge (no) but we can use probabilities of each
possible outcomescontrolling robot arm gear of the arm might stuckhelping 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
344-471 AI & ES Chapter 2 18
Seven problem characteristics
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
344-471 AI & ES Chapter 2 19
Production system
1. A set of rules.2. Knowledge contains information
for a particular task.3. A control strategy.
resolve conflict rule. Breadth-first search Depth-first search
344-471 AI & ES Chapter 2 20
Breadth-first search
Algorithm BFS:1. Create a variable called NODE-LIST and set it
to the initial state.2. 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.
344-471 AI & ES Chapter 2 21
Advantage BFS
1. will not trapped exploring a blind alley (ไม่�ลงล�กไปทางใดทางหนึ่��งเฉพาะ ท��อาจจะไม่�ใช่�คำ�าตอบ)
2. if there is a solution, DFS is guaranteed to find it.
3. if there are multiple solutions, a minimum solution will be found.
344-471 AI & ES Chapter 2 22
Depth-first search Algorithm DFS:
1. If the initial state is a goal state, quit and return success.
2. 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.
344-471 AI & ES Chapter 2 23
Advantage DFS
1. require less memory 2. may find a solution without
examining much of the search space.
344-471 AI & ES Chapter 2 24
Production System 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
344-471 AI & ES Chapter 2 25
Production System
344-471 AI & ES Chapter 2 26
Production System
344-471 AI & ES Chapter 2 27
Production System
344-471 AI & ES Chapter 2 28
Production System
344-471 AI & ES Chapter 2 29
And-Or Graph start
Data driven Goal driven
b c d
e f goal
344-471 AI & ES Chapter 2 30
Heuristic SearchHeuriskein 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
344-471 AI & ES Chapter 2 31
Generate-and-test
Generate all possible solutions DFS + backtracking Generate randomly Test function ANSWER yes/no Algorithm page 64....
344-471 AI & ES Chapter 2 32
Hill Climbing 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
344-471 AI & ES Chapter 2 33
Simple Hill Climbing 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.....
344-471 AI & ES Chapter 2 34
Steepest-Ascent Hill Climbing
Consider all moves from the current state
Select the best one as the next state
Algorithm page 67....
344-471 AI & ES Chapter 2 35
Hill Climbing Characteristic
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
344-471 AI & ES Chapter 2 36
Local heuristic function
Block world figure 3.1 p. 69....
Local heuristic function1. 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
Heuristic function : max value
344-471 AI & ES Chapter 2 37
Local heuristic functionCurrent 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. 69case 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 ม่องไปไม่�พ'นึ่อ�าง
Heuristic function : max value
344-471 AI & ES Chapter 2 38
Global heuristic function
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.
344-471 AI & ES Chapter 2 39
Global heuristic function
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 ต&ว....
Heuristic function : max value
344-471 AI & ES Chapter 2 40
Global heuristic function
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 It’s work
Heuristic function : max value
344-471 AI & ES Chapter 2 41
New heuristic function
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 ได'อยิ�างไรี
344-471 AI & ES Chapter 2 42
Best first search Heuristic function : min value
page 74
344-471 AI & ES Chapter 2 43
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
Best first search
344-471 AI & ES Chapter 2 44
f’ = g + h’ g: cost from initial state to current stateh’: estimate cost current state to goal statef’: estimate cost initial state to goal stateOpen node : most promising nodeClose node : keep in memory, already discover node.
Best first search
344-471 AI & ES Chapter 2 45
Best First Search Algorithm
page 75-76
344-471 AI & ES Chapter 2 46
A* algorithm 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 > f ’(C) =5
then we have to go back to C.
1 level
2 level
3 level
f’(E) = f’(C) = 5
f’ = g + h’
Heuristic function : min value
344-471 AI & ES Chapter 2 47
A* algorithm f’ = g + h’
1 level
2 level
3 level
ปั�ญหา Overestimate : Suppose the solution is under D but we will not generate D because f’(D) = 6 > f’(G) = 4.
page 76
Heuristic function : min value
344-471 AI & ES Chapter 2 48
And-Or Graph / Tree
can be solved by decomposing them into a set of smaller problems And arcs are indicated with a line connecting all the components
344-471 AI & ES Chapter 2 49
And-Or Graph / Tree each arc with the successor has a cost of 1
3+4+1+1
15+10+1+1
9+27+1+1
choose lowest value = f’(B) = 5+1
ABEF = 17 + 1
Heuristic function : min value
344-471 AI & ES Chapter 2 50
And-Or Graph / Tree
344-471 AI & ES Chapter 2 51
To solve a problem1. Define the problem precisely. Specify the
problem space, and the starting and goal state (s).
2. Analyze the problem to determine where it falls with respect to seven important issues.
3. Identify and represent the knowledge required by the task.
4. Choose one or more techniques for problem solving , and apply those techniques to the problem.
344-471 AI & ES Chapter 2 52