60 likes | 235 Views
אלגוריתמי חיפוש לא מיודעים. מבוא לבינה מלאכותית (236501) מדעי המחשב, טכניון עומר גייגר וירון קסנר חורף 2013. קישורים. אנימציות (לא לוקח אחריות על הקישור ) קוד: https ://code.google.com/p/aima-python/. אלגוריתמי חיפוש לא מיודעים (תזכורת).
E N D
אלגוריתמי חיפוש לא מיודעים מבוא לבינה מלאכותית (236501) מדעי המחשב, טכניון עומר גייגר וירון קסנר חורף 2013
קישורים • אנימציות (לא לוקח אחריות על הקישור) • קוד: https://code.google.com/p/aima-python/
אלגוריתמי חיפוש לא מיודעים (תזכורת) BFS: חיפוש לרוחב. הצומת הבא לפיתוח הוא הצומת הרדוד ביותר. DFS: חיפוש לעומק. הצומת הבא לפיתוח הוא הצומת העמוק ביותר. Bounded - DFS: DFS מוגבל רק עד עומק מסוים. ID - DFS: מבצע Bounded DFSבאיטרציה על פרמטר העומק. Bounded - ID - DFS: מבצע איטרציות על פרמטר העומק עד לעומק קבוע מראש. Backtracking: מאוד דומה ל-DFS, אך יוצר צמתים עוקבים רק לפני פיתוח שלהם. Uniform Cost: הצומת הבא לפיתוח הוא הצומת עם המסלול הכי זול עד אליו. מבוא לבינה מלאכותית (236501) מדעי המחשב- טכניון. עומר גייגר חורף 2013
הגדרות (מההרצאה) מבוא לבינה מלאכותית (236501) מדעי המחשב- טכניון. עומר גייגר חורף 2013
השוואת אלגוריתמי חיפוש לא-מיודעים
Bidirectional -BFS "טריק" הכפלת עומק החיפוש נניח שבבעיית LightzOut (מהשיעור שעבר) אי אפשר לחפש מעבר לעומק 6, בגלל אילוצי זמן. אולם, הפתרון האופטימלי נמצא בעומק 10. מה נעשה?... נחפש לרוחב מההתחלה לסוף ומהסוף להתחלה "במקביל" ! • "נכפיל" את העומק בלי עלות אסימפטותית בזמן או בזיכרון. • נצטרך להחזיק "חזית" כפולה (פקטור של פי 2 זיכרון). • נשתמש במבנה נתונים חכם על מנת להקטין את מספר ההשוואות בין החזיתות • (HashTable, עץ חיפוש). סיבוכיות? מתבסס על רשמים של גב' ענת עציון, מהתרגול של מר' עומר לוי חורף 11-12 מבוא לבינה מלאכותית (236501) מדעי המחשב- טכניון. עומר גייגר חורף 2013