בינה מלאכותית
89-5570
תרגול 2
חיפוש מיודע
Example: Urban Navigation
Example: Urban Navigation
Example: Urban Navigation
מאפייני הפונקציה ההיוריסטית
שני המאפיינים החשובים ביותר:�
היוריסטיקה מושלמת
היוריסטיקה קבילה�(admissible)
היוריסטיקה מונוטונית�(consistent)
h(s)
h(s’)
Example: Urban Navigation
דוגמא:�9 Tile puzzle
דוגמא:�9 Tile puzzle
| | | tile |
0 | 0 | 0 | 1,2,3,4,5 |
2 | 1 | 1 | 6 |
3 | 1 | 2 | 7 |
1 | 0 | 1 | 8 |
האם זו יוריסטיקה קבילה...?
תחת האופרטורים ופונק' המחיר מקודם - התשובה היא כן.
דוגמא:�9 Tile puzzle
הגדרה
דוגמא 1#
h(A) = 7
h(B) = 5
h(c) = 6
h(D) = 4
h(E) = 3
h(F) = 3
h(G) = 0
מה מבין האמרות הבאות נכון:
דוגמא 2#
מצב | טווח h(s) |
A | ≤ h(A) ≤ |
D | ≤ h(D) ≤ |
E | ≤ h(E) ≤ |
פתרון דוגמא 2#
Best First Search
Greedy Best First
Uniform Cost
Greedy Best First Search
I
h=5
h=6
G
h=0
5
1
7
5
דוגמת הרצה�Greedy
A Star
Greedy Best First
אלגוריתם best-first עם
f = h
Uniform Cost
אלגוריתם best-first עם
f = g
+
A Star Algorithm
Input:� QUEUE: Path only containing root
Algorithm:
WHILE(QUEUE not empty && first path not reach goal) DO
IF goal reached THEN success ELSE failure
דוגמת הרצה
G
I
h = 17
h = 10
h = 13
h = 4
h = 4
h = 2
h = 1
6
10
4
6
6
7
6
S
A
B
E
C
D
F
3
5
h = 0
G
6
דוגמת הרצה
G
I
h = 17
g = 0
f = 17
h = 10
h = 13
h = 4
h = 4
h = 2
h = 1
6
10
4
6
6
7
6
S
A
B
E
C
D
F
3
5
h = 0
G
6
דוגמת הרצה
G
I
h = 17
g = 0
f = 17
h = 10
g = 6
f = 16
h = 13
g = 5
f = 18
h = 4
g = 10
f = 14
h = 4
h = 2
h = 1
6
10
4
6
6
7
6
S
A
B
E
C
D
F
3
5
h = 0
G
6
דוגמת הרצה
G
I
h = 17
g = 0
f = 17
h = 10
g = 6
f = 16
h = 13
g = 5
f = 18
h = 4
g = 10
f = 14
h = 4
h = 2
h = 1
6
10
4
6
6
7
6
S
A
B
E
C
D
F
3
5
h = 0
G
6
דוגמת הרצה
G
I
h = 17
g = 0
f = 17
h = 10
g = 6
f = 16
h = 13
g = 5
f = 18
h = 4
g = 10
f = 14
h = 4
h = 2
g = 16
f = 18
h = 1
6
10
4
6
6
7
6
S
A
B
E
C
D
F
3
5
h = 0
G
6
דוגמת הרצה
G
I
h = 17
g = 0
f = 17
h = 10
g = 6
f = 16
h = 13
g = 5
f = 18
h = 4
g = 10
f = 14
h = 4
h = 2
g = 16
f = 18
h = 1
6
10
4
6
6
7
6
S
A
B
E
C
D
F
3
5
h = 0
G
6
דוגמת הרצה
G
I
h = 17
g = 0
f = 17
h = 10
g = 6
f = 16
h = 13
g = 5
f = 18
h = 4
g = 10
f = 14
h = 4
g = 12
f = 16
h = 2
g = 16
f = 18
h = 1
6
10
4
6
6
7
6
S
A
B
E
C
D
F
3
5
h = 0
G
6
דוגמת הרצה
G
I
h = 17
g = 0
f = 17
h = 10
g = 6
f = 16
h = 13
g = 5
f = 18
h = 4
g = 10
f = 14
h = 4
g = 12
f = 16
h = 2
g = 16
f = 18
h = 1
6
10
4
6
6
7
6
S
A
B
E
C
D
F
3
5
h = 0
G
6
דוגמת הרצה
G
I
h = 17
g = 0
f = 17
h = 10
g = 6
f = 16
h = 13
g = 5
f = 18
h = 4
g = 10
f = 14
h = 4
g = 12
f = 16
h = 2
g = 16
f = 18
h = 1
g = 16
f = 17
6
10
4
6
6
7
6
S
A
B
E
C
D
F
3
5
h = 0
G
6
h = 13
g = 18
f = 31
דוגמת הרצה
G
I
h = 17
g = 0
f = 17
h = 10
g = 6
f = 16
h = 13
g = 5
f = 18
h = 4
g = 10
f = 14
h = 4
g = 12
f = 16
h = 2
g = 16
f = 18
h = 1
g = 16
f = 17
6
10
4
6
6
7
6
S
A
B
E
C
D
F
3
5
h = 0
G
6
דוגמת הרצה
G
I
h = 17
g = 0
f = 17
h = 10
g = 6
f = 16
h = 13
g = 5
f = 18
h = 4
g = 10
f = 14
h = 4
g = 12
f = 16
h = 2
g = 16
f = 18
h = 1
g = 16
f = 17
6
10
4
6
6
7
6
S
A
B
E
C
D
F
3
5
h = 0
g = 19
f =19
G
6
דוגמת הרצה
G
I
h = 17
g = 0
f = 17
h = 10
g = 6
f = 16
h = 13
g = 5
f = 18
h = 4
g = 10
f = 14
h = 4
g = 12
f = 16
h = 2
g = 16
f = 18
h = 1
g = 16
f = 17
6
10
4
6
6
7
6
S
A
B
E
C
D
F
3
5
h = 0
g = 19
f =19
G
6
דוגמת הרצה
G
I
h = 17
g = 0
f = 17
h = 10
g = 6
f = 16
h = 13
g = 5
f = 18
h = 4
g = 10
f = 14
h = 4
g = 12
f = 16
h = 2
g = 16
f = 18
h = 1
g = 16
f = 17
6
10
4
6
6
7
6
S
A
B
E
C
D
F
3
5
h = 0
g = 19
f =19
G
6
h = 2
g = 12
f = 14
h = 4
g = 11
f = 15
דוגמת הרצה
G
I
h = 17
g = 0
f = 17
h = 10
g = 6
f = 16
h = 13
g = 5
f = 18
h = 4
g = 10
f = 14
h = 1
g = 16
f = 17
6
10
4
6
6
7
6
S
A
B
E
C
D
F
3
5
h = 0
g = 19
f =19
G
6
h = 2
g = 12
f = 14
h = 4
g = 11
f = 15
דוגמת הרצה
G
I
h = 17
g = 0
f = 17
h = 10
g = 6
f = 16
h = 13
g = 5
f = 18
h = 4
g = 10
f = 14
h = 1
g = 16
f = 17
6
10
4
6
6
7
6
S
A
B
E
C
D
F
3
5
h = 0
g = 19
f =19
G
6
h = 2
g = 12
f = 14
h = 4
g = 11
f = 15
h = 1
g = 18
f = 19
דוגמת הרצה
G
I
h = 17
g = 0
f = 17
h = 10
g = 6
f = 16
h = 13
g = 5
f = 18
h = 4
g = 10
f = 14
h = 1
g = 16
f = 17
6
10
4
6
6
7
6
S
A
B
E
C
D
F
3
5
h = 0
g = 19
f =19
G
6
h = 2
g = 12
f = 14
h = 4
g = 11
f = 15
דוגמת הרצה
G
I
h = 17
g = 0
f = 17
h = 10
g = 6
f = 16
h = 13
g = 5
f = 18
h = 4
g = 10
f = 14
h = 1
g = 16
f = 17
6
10
4
6
6
7
6
S
A
B
E
C
D
F
3
5
h = 0
g = 19
f =19
G
6
h = 2
g = 12
f = 14
h = 4
g = 11
f = 15
h = 1
g = 15
f = 16
דוגמת הרצה
G
I
h = 17
g = 0
f = 17
h = 10
g = 6
f = 16
h = 13
g = 5
f = 18
h = 4
g = 10
f = 14
6
10
4
6
6
7
6
S
A
B
E
C
D
F
3
5
h = 0
g = 19
f =19
G
6
h = 2
g = 12
f = 14
h = 4
g = 11
f = 15
h = 1
g = 15
f = 16
דוגמת הרצה
G
I
h = 17
g = 0
f = 17
h = 10
g = 6
f = 16
h = 13
g = 5
f = 18
h = 4
g = 10
f = 14
6
10
4
6
6
7
6
S
A
B
E
C
D
F
3
5
h = 0
g = 19
f =19
G
6
h = 2
g = 12
f = 14
h = 4
g = 11
f = 15
h = 1
g = 15
f = 16
h = 0
g = 18
f =18
דוגמת הרצה
G
I
h = 17
g = 0
f = 17
h = 10
g = 6
f = 16
h = 13
g = 5
f = 18
h = 4
g = 10
f = 14
6
10
4
6
6
7
6
S
A
B
E
C
D
F
3
5
G
6
h = 2
g = 12
f = 14
h = 4
g = 11
f = 15
h = 1
g = 15
f = 16
h = 0
g = 18
f =18
דוגמת הרצה
G
I
h = 17
g = 0
f = 17
h = 10
g = 6
f = 16
h = 13
g = 5
f = 18
h = 4
g = 10
f = 14
6
10
4
6
6
7
6
S
A
B
E
C
D
F
3
5
G
6
h = 2
g = 12
f = 14
h = 4
g = 11
f = 15
h = 1
g = 15
f = 16
h = 0
g = 18
f =18
תכונות A Star
שלמות – האלגוריתם שלם אם מחיר הקשתות חסום מלמטה ע"י δ > 0.
אופטימליות – האלגוריתם אופטימלי תחת התנאים הבאים:
IDA Star
IDA Star�Algorithm
משתנה גלובלי
f-limited Search�Algorithm
המשתנה גלובלי בו משתמשים בשגרה העוטפת
קריאה רקורסיבית לאחר ביצוע פיתוח
דוגמת הרצה
h = 3
h = 0
h = 0
h = 4
h = 0
h = 0
A
S
C
D
B
G
G
I
9
10
5
4
1
8
5
f-limit = 0
new-limit = ∞
#1
דוגמת הרצה
h = 3
h = 0
h = 0
g =0
f = 0
h = 4
h = 0
h = 0
A
S
C
D
B
G
G
I
9
10
5
4
1
8
5
f-limit = 0
new-limit = ∞
#1
דוגמת הרצה
h = 3
g = 9
f = 12
h = 0
h = 0
g = 0
f = 0
h = 4
g = 8
f = 12
h = 0 g = 10
f = 10
h = 0
A
S
C
D
B
G
G
I
9
10
5
4
1
8
5
f-limit = 0
new-limit = 10
#1
דוגמת הרצה
h = 3
h = 0
h = 0
g =0
f = 0
h = 4
h = 0
h = 0
A
S
C
D
B
G
G
I
9
10
5
4
1
8
5
f-limit = 10
new-limit = ∞
#2
דוגמת הרצה
h = 3
g = 9
f = 12
h = 0
h = 0
g = 0
f = 0
h = 4
g = 8
f = 12
h = 0 g = 10
f = 10
h = 0
A
S
C
D
B
G
G
I
9
10
5
4
1
8
5
f-limit = 10
new-limit = 12
#2
דוגמת הרצה
h = 3
g = 9
f = 12
h = 0
h = 0
g = 0
f = 0
h = 4
g = 8
f = 12
h = 0 g = 10
f = 10
h = 0
A
S
C
D
B
G
G
I
9
10
5
4
1
8
5
f-limit = 10
new-limit = 12
#2
דוגמת הרצה
h = 3
g = 9
f = 12
h = 0
h = 0
g = 0
f = 0
h = 4
g = 8
f = 12
h = 0 g = 10
f = 10
h = 0
g = 11
f = 11
A
S
C
D
B
G
G
I
9
10
5
4
1
8
5
f-limit = 10
new-limit = 11
#2
דוגמת הרצה
h = 3
h = 0
h = 0
g =0
f = 0
h = 4
h = 0
h = 0
A
S
C
D
B
G
G
I
9
10
5
4
1
8
5
f-limit = 11
new-limit = ∞
#3
דוגמת הרצה
h = 3
g = 9
f = 12
h = 0
h = 0
g = 0
f = 0
h = 4
g = 8
f = 12
h = 0 g = 10
f = 10
h = 0
A
S
C
D
B
G
G
I
9
10
5
4
1
8
5
f-limit = 11
new-limit = 12
#3
דוגמת הרצה
h = 3
g = 9
f = 12
h = 0
h = 0
g = 0
f = 0
h = 4
g = 8
f = 12
h = 0 g = 10
f = 10
h = 0
A
S
C
D
B
G
G
I
9
10
5
4
1
8
5
f-limit = 11
new-limit = 12
#3
דוגמת הרצה
h = 3
g = 9
f = 12
h = 0
h = 0
g = 0
f = 0
h = 4
g = 8
f = 12
h = 0 g = 10
f = 10
h = 0
g = 11
f = 11
A
S
C
D
B
G
G
I
9
10
5
4
1
8
5
f-limit = 11
new-limit = 12
#3
דוגמת הרצה
h = 3
g = 9
f = 12
h = 0
h = 0
g = 0
f = 0
h = 4
g = 8
f = 12
h = 0 g = 10
f = 10
h = 0
g = 11
f = 11
A
S
C
D
B
G
G
I
9
10
5
4
1
8
5
f-limit = 11
new-limit = 12
#3
דוגמת הרצה
h = 3
g = 9
f = 12
h = 0
h = 0
g = 0
f = 0
h = 4
g = 8
f = 12
h = 0 g = 10
f = 10
h = 0
g = 11
f = 11
A
S
C
D
B
G
G
I
9
10
5
4
1
8
5
f-limit = 11
new-limit = 12
h = 4
g = 15
f = 19
#3
דוגמת הרצה
h = 3
h = 0
h = 0
g =0
f = 0
h = 4
h = 0
h = 0
A
S
C
D
B
G
G
I
9
10
5
4
1
8
5
f-limit = 12
new-limit = ∞
#4
דוגמת הרצה
h = 3
g = 9
f = 12
h = 0
h = 0
g = 0
f = 0
h = 4
g = 8
f = 12
h = 0 g = 10
f = 10
h = 0
A
S
C
D
B
G
G
I
9
10
5
4
1
8
5
f-limit = 12
new-limit = ∞
#4
דוגמת הרצה
h = 3
g = 9
f = 12
h = 0
h = 0
g = 0
f = 0
h = 4
g = 8
f = 12
h = 0 g = 10
f = 10
h = 0
g = 11
f = 11
A
S
C
D
B
G
G
I
9
10
5
4
1
8
5
f-limit = 12
new-limit = ∞
#4
דוגמת הרצה
h = 3
g = 9
f = 12
h = 0
h = 0
g = 0
f = 0
h = 4
g = 8
f = 12
h = 0 g = 10
f = 10
h = 0
g = 11
f = 11
A
S
C
D
B
G
G
I
9
10
5
4
1
8
5
f-limit = 12
new-limit = ∞
#4
דוגמת הרצה
h = 3
g = 9
f = 12
h = 0
h = 0
g = 0
f = 0
h = 4
g = 8
f = 12
h = 0 g = 10
f = 10
h = 0
g = 11
f = 11
A
S
C
D
B
G
G
I
9
10
5
4
1
8
5
f-limit = 12
new-limit = 19
h = 4
g = 15
f = 19
#4
דוגמת הרצה
h = 3
g = 9
f = 12
h = 0
h = 0
g = 0
f = 0
h = 4
g = 8
f = 12
h = 0 g = 10
f = 10
h = 0
g = 11
f = 11
A
S
C
D
B
G
G
I
9
10
5
4
1
8
5
f-limit = 12
new-limit = 19
#4
דוגמת הרצה
h = 3
g = 9
f = 12
h = 0
g = 13
f = 13
h = 0
g = 0
f = 0
h = 4
g = 8
f = 12
h = 0 g = 10
f = 10
h = 0
g = 11
f = 11
A
S
C
D
B
G
G
I
9
10
5
4
1
8
5
f-limit = 12
new-limit = 13
h = 0
g = 12
f = 12
#4
דוגמת הרצה
h = 3
g = 9
f = 12
h = 0
g = 13
f = 13
h = 0
g = 0
f = 0
h = 4
g = 8
f = 12
h = 0 g = 10
f = 10
h = 0
g = 11
f = 11
A
S
C
D
B
G
G
I
9
10
5
4
1
8
5
f-limit = 12
new-limit = 13
h = 0
g = 12
f = 12
#4
דוגמת הרצה
h = 3
g = 9
f = 12
h = 0
g = 13
f = 13
h = 0
g = 0
f = 0
h = 4
g = 8
f = 12
h = 0 g = 10
f = 10
h = 0
g = 11
f = 11
A
S
C
D
B
G
G
I
9
10
5
4
1
8
5
f-limit = 12
new-limit = 13
h = 0
g = 12
f = 12
h = 0
g = 13
f = 13
#4
דוגמת הרצה
h = 3
g = 9
f = 12
h = 0
g = 13
f = 13
h = 0
g = 0
f = 0
h = 4
g = 8
f = 12
h = 0 g = 10
f = 10
h = 0
g = 11
f = 11
A
S
C
D
B
G
G
I
9
10
5
4
1
8
5
f-limit = 12
new-limit = 13
h = 0
g = 12
f = 12
h = 0
g = 13
f = 13
#4
דוגמת הרצה
h = 3
g = 9
f = 12
h = 0
g = 13
f = 13
h = 0
g = 0
f = 0
h = 4
g = 8
f = 12
h = 0 g = 10
f = 10
h = 0
g = 11
f = 11
A
S
C
D
B
G
G
I
9
10
5
4
1
8
5
f-limit = 12
new-limit = 13
h = 0
g = 12
f = 12
h = 0
g = 13
f = 13
h = 0
g = 14
f = 14
#4
דוגמת הרצה
h = 3
h = 0
h = 0
g =0
f = 0
h = 4
h = 0
h = 0
A
S
C
D
B
G
G
I
9
10
5
4
1
8
5
f-limit = 13
new-limit = ∞
#5
דוגמת הרצה
h = 3
g = 9
f = 12
h = 0
h = 0
g = 0
f = 0
h = 4
g = 8
f = 12
h = 0 g = 10
f = 10
h = 0
A
S
C
D
B
G
G
I
9
10
5
4
1
8
5
f-limit = 13
new-limit = ∞
#5
דוגמת הרצה
h = 3
g = 9
f = 12
h = 0
h = 0
g = 0
f = 0
h = 4
g = 8
f = 12
h = 0 g = 10
f = 10
h = 0
g = 11
f = 11
A
S
C
D
B
G
G
I
9
10
5
4
1
8
5
f-limit = 13
new-limit = ∞
#5
דוגמת הרצה
h = 3
g = 9
f = 12
h = 0
h = 0
g = 0
f = 0
h = 4
g = 8
f = 12
h = 0 g = 10
f = 10
h = 0
g = 11
f = 11
A
S
C
D
B
G
G
I
9
10
5
4
1
8
5
f-limit = 13
new-limit = ∞
#5
דוגמת הרצה
h = 3
g = 9
f = 12
h = 0
h = 0
g = 0
f = 0
h = 4
g = 8
f = 12
h = 0 g = 10
f = 10
h = 0
g = 11
f = 11
A
S
C
D
B
G
G
I
9
10
5
4
1
8
5
f-limit = 13
new-limit = 19
h = 4
g = 15
f = 19
#5
דוגמת הרצה
h = 3
g = 9
f = 12
h = 0
h = 0
g = 0
f = 0
h = 4
g = 8
f = 12
h = 0 g = 10
f = 10
h = 0
g = 11
f = 11
A
S
C
D
B
G
G
I
9
10
5
4
1
8
5
f-limit = 13
new-limit = 19
#5
דוגמת הרצה
h = 3
g = 9
f = 12
h = 0
g = 13
f = 13
h = 0
g = 0
f = 0
h = 4
g = 8
f = 12
h = 0 g = 10
f = 10
h = 0
g = 11
f = 11
A
S
C
D
B
G
G
I
9
10
5
4
1
8
5
f-limit = 13
new-limit = 19
h = 0
g = 12
f = 12
#5
דוגמת הרצה
h = 3
g = 9
f = 12
h = 0
g = 13
f = 13
h = 0
g = 0
f = 0
h = 4
g = 8
f = 12
h = 0 g = 10
f = 10
h = 0
g = 11
f = 11
A
S
C
D
B
G
G
I
9
10
5
4
1
8
5
f-limit = 13
new-limit = 19
h = 0
g = 12
f = 12
#5
דוגמת הרצה
h = 3
g = 9
f = 12
h = 0
g = 13
f = 13
h = 0
g = 0
f = 0
h = 4
g = 8
f = 12
h = 0 g = 10
f = 10
h = 0
g = 11
f = 11
A
S
C
D
B
G
G
I
9
10
5
4
1
8
5
f-limit = 13
new-limit = 19
h = 0
g = 12
f = 12
#5
A Star�vs.�IDA Star
| | |
שלם (אם קיים פתרון הוא מוצא כזה) | ||
אופטימלי (אם קיים פתרון מוצא פתרון אופטימלי) | ||
חיפוש בגרף: נמנע מפיתוחים חוזרים במצבים כאשר אין שיפור | חיפוש בעץ: מפתח מצבים חוזרים מבלי לדעת שביקר בהם בעבר | |
| צריכת זיכרון לינארית באורך המסלול | |
A Star�vs.�IDA Star
...
I
g
A Star�vs.�IDA Star