1 / 34

חיפוש יוריסטי

חיפוש יוריסטי. מבוא לבינה מלאכותית (236501) מדעי המחשב, טכניון עומר גייגר חורף 2013-14. Uninformed search. עד כה ראינו אלגוריתמי חיפוש לא מיודעים: BFS DFS Bounded – DFS ID – DFS Bounded - ID – DFS Backtracking Uniform Cost והבדלנו בין גרסאות האלגוריתמים: TreeSearch GraphSearch

draco
Download Presentation

חיפוש יוריסטי

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. חיפוש יוריסטי מבוא לבינה מלאכותית (236501) מדעי המחשב, טכניון עומר גייגר חורף 2013-14

  2. Uninformed search • עד כה ראינו אלגוריתמי חיפוש לא מיודעים: • BFS • DFS • Bounded – DFS • ID – DFS • Bounded - ID – DFS • Backtracking • Uniform Cost • והבדלנו בין גרסאות האלגוריתמים: • TreeSearch • GraphSearch • כאשר ב-(2) האלג' מתחזק קבוצת מצבים בהם ביקר ונמנע מביקור חוזר בהם מבוא לבינה מלאכותית (236501) מדעי המחשב- טכניון. עומר גייגר, חורף 2013-14

  3. Heuristic search • חיפוש מיודע(יוריסטי) משתמש במידע נוסף על הבעיה לזירוז החיפוש. • מידע זה מגולם בדרך כלל בפונקציה יוריסטיתלהערכת "טיב" המצבים . • בבעיות חיפוש מסלול למטרה נתונה, פונקציה יוריסטית טובה תעריך את המרחק של צומת למטרה בקירוב טוב. • נעדיף צמתים בעלי ערך יוריסטי נמוך תחת ההנחה שהדבר נותן אינדיקציה אמינה למרחק מהמטרה. מבוא לבינה מלאכותית (236501) מדעי המחשב- טכניון. עומר גייגר, חורף 2013-14

  4. Example: Urban Navigation • בעיית ניווט עירוני: בהינתן מפה, צומת מוצא וצומת' יעד , נרצה למצוא מסלול קצר ביותר ליעד. • שאלה 1: איך נבחר להגדיר את המצבים והאופרטורים? • אפשרות ראשונה • בעיה: לא מאפשר איטרציה על כל האופרטורים. • פתרון אפשרי: דיסקרטיזציה של ערכי הפרמטרים . • אפשרות עדיפה • נרצה אבסטרקציה מתאימה לבעיה: נגביל את עצמנו למיקומים של צמתי דרכים. מבוא לבינה מלאכותית (236501) מדעי המחשב- טכניון. עומר גייגר, חורף 2013-14

  5. Example: Urban Navigation • שאלה 2: מהי פונקציית העלות של האופרטורים? • יש כמה אפשרויות... • אורך הדרך • זמן נסיעה • מחיר דלק לנסיעה • (ביחס לקטע הדרך המתאים) • נבחר למשל למדוד עלות לפי אורך הדרך • עבור • נגדיר מבוא לבינה מלאכותית (236501) מדעי המחשב- טכניון. עומר גייגר, חורף 2013-14

  6. Example: Urban Navigation • שאלה 3: מהן יוריסטיקות אפשריות תחת פונק' עלות זו? • מרחק אוקלידי (אווירי) • מרחק מנהטן מבוא לבינה מלאכותית (236501) מדעי המחשב- טכניון. עומר גייגר, חורף 2013-14

  7. Perfect & Admissible heuristics • יוריסטיקה מושלמת מעריכה במדויק את המרחק למטרה בדרך הקצרה ביותר. • יוריסטיקה קבילה מעריכה "אופטימית" את מחיר המסלול מכל צומת למצב מטרה. • יורסטיקהקבילה בפרט מקיימת: מבוא לבינה מלאכותית (236501) מדעי המחשב- טכניון. עומר גייגר, חורף 2013-14

  8. Example: Urban Navigation • שאלה 4: האם היוריסטיקות הנ"ל קבילות? • (נניח מפה מישורית) • קבילה. המרחק הקצר ביותר בין 2 נקודות הוא קו ישר. היא "מקלה" במובן שהיא מתירה תנועה שלא על גבי כבישים. • אינה קבילה אם יתכנו כבישים שאינם מקבילים לצירים. מבוא לבינה מלאכותית (236501) מדעי המחשב- טכניון. עומר גייגר, חורף 2013-14

  9. Example: 15 Tile puzzle • יוריסטיקתDisplacedTiles: מבוא לבינה מלאכותית (236501) מדעי המחשב- טכניון. עומר גייגר, חורף 2013-14

  10. Example: 15 Tile puzzle • יוריסטיקת ManhattanDistanceSum מבוא לבינה מלאכותית (236501) מדעי המחשב- טכניון. עומר גייגר, חורף 2013-14

  11. Example: 15 Tile puzzle • יוריסטיקת ManhattanDistanceSum • האם זו יוריסטיקה קבילה?... • תלוי איך מגדירים את האופרטורים ופונק' המחיר • באופן טבעי נגדיר 4 אופרטורים: "הזזת" המשבצת הריקה לאחד מארבע כיווני אוויר • תחת הגדרות אלו התשובה היא כן. מבוא לבינה מלאכותית (236501) מדעי המחשב- טכניון. עומר גייגר, חורף 2013-14

  12. Example: 15 Tile puzzle • שאלה: מה הטענה הנכונה מבין הבאות? • מיודעת מ- • מיודעת מ- • שתי הטענות שגויות. שתיהן קבילות ומתקיים מבוא לבינה מלאכותית (236501) מדעי המחשב- טכניון. עומר גייגר, חורף 2013-14

  13. Heuristic vs. Cost • מחיר צומת : סך מחירי האופרטורים במסלול המצטבר מצומת ההתחלה ועד ל- תחת ריצה מסוימת. כאשר מחיר האופרטורים הינו חלק מהגדרת הבעיה. • כלומר, בהינתן צומת בעץ החיפוש , שהתקבל על ידי מסלול חיפוש • (יחיד) • פונקציית יוריסטיקה : מעריכה את מחיר המסלול הנותר מ- למטרה הקרובה. • היוריסטיקה מהווה חלק מהגדרת הפתרון. מבוא לבינה מלאכותית (236501) מדעי המחשב- טכניון. עומר גייגר, חורף 2013-14

  14. UniformCost vs. GreedyBest • Uniform Cost • בוחר את הצומת הבא לפי , מחיר מצטבר • מעדיף צומת קרוב לאלו שפותחו • מתעלם מהמרחק למטרה • חיפוש עיוור (לא מיודע) • Greedy Best First • בוחר את הצומת הבא לפי • מעדיף צומת קרוב למטרה • מתעלם מהמרחק אליו • חיפוש יוריסטי (מיודע) מבוא לבינה מלאכותית (236501) מדעי המחשב- טכניון. עומר גייגר, חורף 2013-14

  15. Best First Search • BestFirstSearchזו קבוצת אלגוריתמים לחיפוש בגרפים. • הצומת הבא לפיתוח נבחר כבעל ערך מינימלי על פי פונקציית הערכה כלשהי . • דוגמאות • Uniform Cost • Greedy Best First מבוא לבינה מלאכותית (236501) מדעי המחשב- טכניון. עומר גייגר, חורף 2013-14

  16. Beam First Search • חיפוש אלומה: דומה ל GreedyBestאך פועל באופן ממוקד יותר. • מגביל את רשימת הצמתים הפתוחים, המועמדים להמשך החיפוש למס' קבוע . • יתרון: חוסך זיכרון וזמן ריצה. • חסרון: עשוי לפגוע בטיב הפתרון. מבוא לבינה מלאכותית (236501) מדעי המחשב- טכניון. עומר גייגר, חורף 2013-14

  17. A-STAR • אלג' : הטוב משני העולמות! • שייך ממשפחת BestFirstSearch עם פונק' הערכה משולבת . • כלומר, הצומת הבא לפיתוח הינו בעל עלות צפויה כוללת מינימלית. • נדרש תיקון לתבנית אלג' BestFirstSearch לטיפול במקרה של "פתיחה מחדש". • "פתיחה מחדש" מתרחשת כאשר נמצא מסלול זול יותר לצומת פתוח או כזה שכבר נסגר. ? מבוא לבינה מלאכותית (236501) מדעי המחשב- טכניון. עומר גייגר, חורף 2013-14

  18. אתחול • (כמו ב-) • בחירת מצב לפיתוח, בדיקת מצב מטרה ויצירת הבנים • (דומה ל-) • מצב פתוח • מצב שכבר נסגר • מצב חדש (כמו ב-)

  19. A-STAR run simulation • תרגיל: עקוב אחר ריצת האלגוריתם על פני הגרף הבא. h = 1 h = 10 15 I G 11 20 5 h = 2 h = 9 h = 11 h = 0 6 15 8 5 3 7 h = 5 h = 15 12 מבוא לבינה מלאכותית (236501) מדעי המחשב- טכניון. עומר גייגר, חורף 2013-14

  20. A-STAR run simulation h = 1 h = 10 15 I G 11 20 5 h = 2 h = 9 g = 0 f = 9 h = 11 h = 0 6 15 8 5 3 7 h = 5 h = 15 12 מבוא לבינה מלאכותית (236501) מדעי המחשב- טכניון. עומר גייגר, חורף 2013-14

  21. A-STAR run simulation h = 1 h = 10 g = 5 f = 15 15 I G 11 20 5 h = 2 h = 9 g = 0 f = 9 h = 11 g = 8 f = 19 h = 0 6 15 8 5 3 7 h = 5 h = 15 g = 5 f = 20 12 מבוא לבינה מלאכותית (236501) מדעי המחשב- טכניון. עומר גייגר, חורף 2013-14

  22. A-STAR run simulation h = 1 g = 20 f = 21 h = 10 g = 5 f = 15 15 I G 11 20 5 h = 2 h = 9 g = 0 f = 9 h = 11 g = 8 f = 19 h = 0 6 15 8 5 3 7 h = 5 h = 15 g = 5 f = 20 12 מבוא לבינה מלאכותית (236501) מדעי המחשב- טכניון. עומר גייגר, חורף 2013-14

  23. A-STAR run simulation h = 1 g = 20 f = 21 h = 10 g = 5 f = 15 15 I G 11 20 5 אין שיפור h = 2 g = 23 f = 25 h = 9 g = 0 f = 9 h = 11 g = 8 f = 19 h = 0 6 15 8 5 3 7 h = 5 h = 15 g = 5 f = 20 12 מבוא לבינה מלאכותית (236501) מדעי המחשב- טכניון. עומר גייגר, חורף 2013-14

  24. A-STAR run simulation h = 1 g = 20 f = 21 h = 10 g = 5 f = 15 15 I G 11 20 5 h = 2 g = 8 f = 10 h = 9 g = 0 f = 9 h = 11 g = 8 f = 19 h = 0 6 15 8 5 3 7 נמצא שיפור! h = 5 g = 17 f = 20 h = 15 g = 5 f = 20 12 מבוא לבינה מלאכותית (236501) מדעי המחשב- טכניון. עומר גייגר, חורף 2013-14

  25. A-STAR run simulation h = 1 g = 20 f = 21 h = 10 g = 5 f = 15 15 I G 11 20 5 h = 2 g = 8 f = 10 h = 9 g = 0 f = 9 h = 11 g = 8 f = 19 h = 0 g = 16 f = 16 6 15 8 5 3 7 h = 5 g = 17 f = 20 h = 15 g = 5 f = 20 12 מבוא לבינה מלאכותית (236501) מדעי המחשב- טכניון. עומר גייגר, חורף 2013-14

  26. A-STAR run simulation h = 1 g = 20 f = 21 h = 10 g = 5 f = 15 15 I G 11 20 5 h = 2 g = 8 f = 10 h = 9 g = 0 f = 9 h = 11 g = 8 f = 19 h = 0 g = 16 f = 16 6 15 8 5 3 7 h = 5 g = 17 f = 20 h = 15 g = 5 f = 20 12 מבוא לבינה מלאכותית (236501) מדעי המחשב- טכניון. עומר גייגר, חורף 2013-14

  27. A-STAR questions • בכל השאלות הבאות נניח שפונק' המחיר חיובית וחסומה מלמטה. • שאלה 1: מה היה קורה ב עם יוריסטיקה קבילה אילו לא היינו מחזירים צומת מ-CLOSEDל-OPEN אליו נמצאה דרך עדיפה? • ערכי ה-של הצמתים החל מצומת שכזה ואילך לא היו מתעדכנים ל-. • כתוצאה מכך גם ערכי ה לא היו מתעדכנים. • ייתכן שלכל הצמתים ב-OPENיתקיים . • במקרה זה האלגוריתם יחזיר פתרון לא אופטימאלי. • כלומר, השינוי פוגע בקבילות האלגוריתם. מבוא לבינה מלאכותית (236501) מדעי המחשב- טכניון. עומר גייגר, חורף 2013-14

  28. A-STAR questions • שאלה 2: איזה שינוי הייתם מבצעים באלגוריתם אם מובטח שהיוריסטיקה מונוטונית? • תזכורת: יוריסטיקה מונוטונית (או קונסיסטנטית) היא יוריסטיקה "אופטימית מקומית". כלומר לכל מצב , מצב עוקב ואופרטור מעבר ביניהם מתקיים • . • טענה: במקרה של יוריסטיקה מונוטונית סדרת ערכי ה של הצמתים הנבחרים לפיתוח עולים מונוטונית (במובן החלש). • מבנה ההוכחה: • צומת שנבחר הינו בעל ערך מינימלי מבין כל צמתי OPEN - ישירות מהאלגוריתם. • צומת שנוצר הינו בהכרח בעל ערך גדול\שווה משל אביו - מהגדרת מונוטוניות. • כל צומת שנוצר הינו בעל ערך גדול\שווה מכל אב קדמון שלו - באינדוקציה על אורך שרשרת הצאצאים תוך שימוש ב(2). • מסקנה: צומת שנבחר לפיתוח בזמן הוא בעל ערך קטן מכל הצמתים בOPEN באותו זמן ובכל זמן מתקדם יותר. מ.ש.ל מבוא לבינה מלאכותית (236501) מדעי המחשב- טכניון. עומר גייגר, חורף 2013-14

  29. A-STAR questions • שאלה: איזה שינוי הייתם מבצעים אם מובטח שהיוריסטיקה מונוטונית? • טענה: במקרה של יוריסטיקה מונוטונית סדרת ערכי ה של הצמתים הנבחרים לפיתוח עולים מונוטונית (במובן החלש). • לא תתכן "פתיחה מחדש" של צמתים: לעולם לא נגיע לצומת שנבחר כבר לפיתוח ועבר ל CLOSED בדרך עדיפה. • כל צומת שנכנס ל-CLOSED מקיים . • לכן, אין צורך להעביר צמתים מ- CLOSED ל-OPEN, והאלגוריתם לעולם לא צריך לבצע פעולות "פתיחה מחדש". מבוא לבינה מלאכותית (236501) מדעי המחשב- טכניון. עומר גייגר, חורף 2013-14

  30. A-STAR questions • שאלה 3: איזה שינוי הייתם מבצעים באלגוריתם אם מובטח שמרחב המצבים הינו עץ? • בעץ יש מסלול יחיד בין כל שני צמתים ובפרט מצומת ההתחלה לכל צומת אחר. • לא תיתכן החזרת צומת מ-CLOSEDל-OPEN. בשלילה, משמעות הדבר שהגענו לצומת מבנו והרי בדרך הוספנו מחיר אי-שלילי (פעמיים) כך שלא יתכן שערך ה קטן יותר מהערך בביקור הראשון - סתירה. • לפיכך אין צורך בתחזוקת קבוצת ה-CLOSEDבמקרה זהובפיתוח צומת, נוותר על יצירת אביו שהרי הוא כבר פותח. מבוא לבינה מלאכותית (236501) מדעי המחשב- טכניון. עומר גייגר, חורף 2013-14

  31. תודה רבה! שאלות? התרגול מבוסס על חומרים באדיבותם של: • פרופ' שאול מרקוביץ' • מר' עומר לוי מבוא לבינה מלאכותית (236501) מדעי המחשב- טכניון. עומר גייגר, חורף 2013-14

  32. GreedyBest & UniformCost • תזכורת להרצאה... • שאלה 1: האם GreedyBest שלם במרחבים סופיים? • כן, מדובר באלגוריתם מסוג GraphSearch כל המצבים יפותחו בסופו של דבר. • שאלה 2: האם GreedyBest שלם במרחבים אינסופיים? • לא. יתכן שהיוריסטיקה תטעה את החיפוש ותוביל למסלול אינסופי. • שאלה 3: האם UniformCost שלם כאשר קבוצת האופרטורים סופית וקבוצת המצבים יכולה להיות אינסופית? האם הוא קביל? • כן. אם קיים מסלול מטרה בעל עלות סופית, הוא ימצא בסופו של דבר. העלות המצטברת של הצמתים המפותחים עולה מונוטונית וללא קפיצות כך ש- UniformCost גם שלם וגם קביל. • שאלה 4: מה ניתן לומר על עם יוריסטיקה מיודעת יותר לעומת עם יוריסטיקה מיודעת פחות? • אלג' המיודע שולט על השני: קבוצת הצמתים שהוא מפתח מוכלת בזו של השני. מבוא לבינה מלאכותית (236501) מדעי המחשב- טכניון. עומר גייגר, חורף 2013-14

More Related