43
תתתתת תת תתת תתתתת תתתתת תתתת תתתתתתתת תתת תתת

פתרון על ידי בעיות חיפוש

  • Upload
    ishana

  • View
    43

  • Download
    6

Embed Size (px)

DESCRIPTION

פתרון על ידי בעיות חיפוש. בינה מלאכותית יעל נצר. סוכנים פותרי בעיות. Reflex agents לא יכולים לתכנן קדימה Reflex agents עם מצב פנימי (מודל עולם) – קשה לבטא מדיניות במונחים של מיפוי ממצב לפעולה לעיתים צריך לתכנן פעולה עכשווית על פי הערכת העתיד. בתחילה: - PowerPoint PPT Presentation

Citation preview

Page 1: פתרון על ידי בעיות חיפוש

פתרון על ידי בעיות חיפוש

בינה מלאכותית

יעל נצר

Page 2: פתרון על ידי בעיות חיפוש

סוכנים פותרי בעיות

•Reflex agentsלא יכולים לתכנן קדימה •Reflex agents – )עם מצב פנימי )מודל עולם

קשה לבטא מדיניות במונחים של מיפוי ממצב לפעולה

לעיתים צריך לתכנן פעולה עכשווית על פי •הערכת העתיד.

בתחילה:• פתרון' ו''בעיה'הגדרת האלמנטים המרכיבים •

שלה על ידי דוגמאות•General problem solver יכולים לפתור

בעיות

Page 3: פתרון על ידי בעיות חיפוש

Problem solving agents

סוכנים רציונליים אמורים למקסם את מדד •הביצועים שלהם.

מטרהאפשר לפשט את הבעייה על ידי הגדרת •ונסיון להשיג אותה

Page 4: פתרון על ידי בעיות חיפוש

אלגוריתם לסוכנים פותרי בעיות

Page 5: פתרון על ידי בעיות חיפוש

מפת רומניה

Page 6: פתרון על ידי בעיות חיפוש

להגדרת אלגוריתם חיפוש

סוכן צריך לדחות פעולות שלא מקדמות למטרה•המטרות מאפשרות לארגן את התנהגות הסוכן ולהגביל •

את הפעולות שלו לפעולות שמקדמות למטרה•Goal formulation נוסחת מטרה המבוססת על -

מדד הביצועים הנוכחיים של הסוכן ועל המצב הנוכחיאוסף של מצבים בעולם שצריכים להתקיים מטרה – •

אם המטרה הושגה.מטרת הסוכן היא למצוא את רצף הפעולות שיביא אותו •

לאוסף הזה של מצביםקודם לכן, עליו להחליט אילו פעולות ואילו מצבים הם •

רלוונטיים.

Page 7: פתרון על ידי בעיות חיפוש

חיפוש

כשיש לסוכן מספר אפשרויות מיידיות לפעולה •בעלות ערך בלתי ידוע יכול להחליט מה לעשות

על ידי בחינה מקדימה של רצפי הפעולות האפשריות שיובילו אותו למצבים בעלי ערך ידוע

– ואז לבחור באפשרות הטובה ביותר.

: אלגוריתם חיפוש מקבל בעייה כפלט חיפוש•ומחזיר פתרון בצורת רצף פעולות.

לאחר מציאת פתרון, רצף הפעולות המוצע יכול • execution phaseלהיעשות –

Page 8: פתרון על ידי בעיות חיפוש

הגדרת סוכן חיפוש

•Formulateניסוח הבעייה – •Search•Execute

עיצוב הסוכן:•סביבה סטאטית )ניסוח ופתרון בעייה לא מתחשב •

בהשתנות הסביבה(סביבה דיסקרטית )לקיחה בחשבון של סדרת פעולות •

אלטרנטיבית מתבססת על כך שהסביבה דיסקרטית(כל האלגוריתמים בפרק מניחים שהמצב ההתחלתי הוא •

observableידוע – הכי קל כשהסביבה היא ההנחה שהסביבה היא דטרמיניסטית •

Page 9: פתרון על ידי בעיות חיפוש

הגדרת הבעייה ארבעה מרכיבים:•המצב ההתחלתי•תיאור הפעולות האפשריות של הסוכן )שימוש בפונקציה •

(succ(x שמחזירה קבוצה של זוגות סדורים(action, successor state ) המצב ההתחלתי יחד עם פונקציית . succ

מגדירים את מרחב המצבים האפשריים : גרף מכוון שבו קדקדים הם מצבים וקשתות הן פעולות. מסלול במרחב המצבים מוגדר

כרצף מצבים המיוחס לרצף פעולות שהסוכן יכול להפעיל על מצב כדי goal testמבחן מטרה •

לבדוק אם מדובר במטרה היא פונקציה שמחזירה ערך מספרי Path cost"עלות מסלול" •

. סוכן פותר-בעיות בוחר את פונקציית g(n)עבור כל מסלול העלות שמתאימה למדד הביצועים שלו )למשל – הסוכן ברומניה – מדד הביצועים הוא זמן, לכן עלות יכולה להמדד בקילומטרים(. ההנחה היא שעלות מסלול היא סכום עלויות הפעולות הבודדות.

Step cost עלות פעולה–a ממצב x למצב yמוגדר c(a, x, y)

Page 10: פתרון על ידי בעיות חיפוש

Example: 8-Puzzle

Page 11: פתרון על ידי בעיות חיפוש

State Space

1. initial state

2. successor function

Page 12: פתרון על ידי בעיות חיפוש

Goal Test

3. goal test

Page 13: פתרון על ידי בעיות חיפוש

(Partial )Search Space for 8-Puzzle Problem

1. initial state

2. successor function

3. goal test

Page 14: פתרון על ידי בעיות חיפוש

Vaccuum World Revisited

Page 15: פתרון על ידי בעיות חיפוש

Vacuum World (continued)

Page 16: פתרון על ידי בעיות חיפוש

Example: Route Planning in a Map

Graph: nodes are cities and links are roads.

• Map gives world dynamics• Current state is known• World is fully predictable• World (set of cities) is finite and

enumerable. Cost: total distance or total time for

path.

Page 17: פתרון על ידי בעיות חיפוש

Route Planning: Romania

AB

Z

OS F

C

PR

T LM

D

118

75

71 151

140

111 7075

120

90

99

211

97

146 138

101

Slides on Route Planning Adapted from Leslie Kaelbling’s AI notes.

Page 18: פתרון על ידי בעיות חיפוש

General Search-Tree Algorithm

Page 19: פתרון על ידי בעיות חיפוש

Breadth-First Search

AB

ZO

S F

C

P

R

T L MD

Page 20: פתרון על ידי בעיות חיפוש

Breadth-First Search

AB

ZO

S F

C

P

R

T L MD

A

Page 21: פתרון על ידי בעיות חיפוש

Breadth-First Search

AB

ZO

S F

C

P

R

T L MD

A

ZA SA TA

Page 22: פתרון על ידי בעיות חיפוש

Breadth-First Search

AB

ZO

S F

C

P

R

T L MD

A

ZA SA TA

SA TA OAZ

Page 23: פתרון על ידי בעיות חיפוש

Breadth-First Search

AB

ZO

S F

C

P

R

T L MD

A

ZA SA TA

SA TA OAZ

TA OAZ OAS FAS RAS

Page 24: פתרון על ידי בעיות חיפוש

Breadth-First Search

AB

ZO

S F

C

P

R

T L MD

A

ZA SA TA

SA TA OAZ

TA OAZ OAS FAS RAS

OAZ OAS FAS RAS LAT

Page 25: פתרון על ידי בעיות חיפוש

Breadth-First Search

AB

ZO

S F

C

P

R

T L MD

A

ZA SA TA

SA TA OAZ

TA OAZ OAS FAS RAS

OAZ OAS FAS RAS LAT

OAS FAS RAS LAT

Page 26: פתרון על ידי בעיות חיפוש

Breadth-First Search

AB

ZO

S F

C

P

R

T L MD

A

ZA SA TA

SA TA OAZ

TA OAZ OAS FAS RAS

OAZ OAS FAS RAS LAT

OAS FAS RAS LAT

Page 27: פתרון על ידי בעיות חיפוש

Breadth-First Search

AB

ZO

S F

C

P

R

T L MD

A

ZA SA TA

SA TA OAZ

TA OAZ OAS FAS RAS

OAZ OAS FAS RAS LAT

OAS FAS RAS LAT

RAS LAT BASF

Result = BASF

Page 28: פתרון על ידי בעיות חיפוש

Breadth-First Search

BA

Z

O

S F

C

P

R

T LM

D

Page 29: פתרון על ידי בעיות חיפוש

Evaluation of Search Strategies

• Completeness• Time Complexity• Space Complexity• Optimality

To evaluate, we use the following terms• b = branching factor• m = maximum depth• d = goal depth

Page 30: פתרון על ידי בעיות חיפוש

• Complete• Complexity:

– O(bd) time– O(bd) space

• Optimal (counting by number of arcs).

Evaluation of BFS

Page 31: פתרון על ידי בעיות חיפוש

Depth-First Search

AB

ZO

S F

C

P

R

T L MD

Page 32: פתרון על ידי בעיות חיפוש

Depth-First Search

AB

ZO

S F

C

P

R

T L MD

A

Page 33: פתרון על ידי בעיות חיפוש

Depth-First Search

AB

ZO

S F

C

P

R

T L MD

A

ZA SA TA

Page 34: פתרון על ידי בעיות חיפוש

Depth-First Search

AB

ZO

S F

C

P

R

T L MD

A

ZA SA TA

Page 35: פתרון על ידי בעיות חיפוש

Depth-First Search

AB

ZO

S F

C

P

R

T L MD

A

ZA SA TA

OAZ SA TA

Page 36: פתרון על ידי בעיות חיפוש

Depth-First Search

AB

ZO

S F

C

P

R

T L MD

A

ZA SA TA

OAZ SA TA

SAZO SA TA

Page 37: פתרון על ידי בעיות חיפוש

Depth-First Search

AB

ZO

S F

C

P

R

T L MD

A

ZA SA TA

OAZ SA TA

SAZO SA TA

FAZOS RAZOS SA TA

Page 38: פתרון על ידי בעיות חיפוש

Depth-First Search

AB

ZO

S F

C

P

R

T L MD

A

ZA SA TA

OAZ SA TA

SAZO SA TA

FAZOS RAZOS SA TA

BAZOSF RAZOS SA TA

Page 39: פתרון על ידי בעיות חיפוש

Depth-First Search

AB

ZO

S F

C

P

R

T L MD

A

ZA SA TA

OAZ SA TA

SAZO SA TA

FAZOS RAZOS SA TA

BAZOSF RAZOS SA TA

Result = BAZOSF

Page 40: פתרון על ידי בעיות חיפוש

Depth-first Search

O

A

B

ZS F

C

P

R

T LM

D

Page 41: פתרון על ידי בעיות חיפוש

Evaluation of DFS

• Not complete• Complexity:

– O(bm) time– O(mb) space

• Non-optimal

Page 42: פתרון על ידי בעיות חיפוש

Lisp Implementation(defun tree-search (states goal-successors combiner) "Find a state that satisfies goal-p. Start with states, and search according to successors and combiner." (cond ((null states) fail)

((funcall goal-p (first states)) (first states))

(t (tree-search (funcall combiner

(funcall successors (first states))

(rest states)) goal-p successors combiner))))

Page 43: פתרון על ידי בעיות חיפוש