היחידה הראשונה של הקורס היא מבוא לתחום וכוללת סקירה מ”מעוף הציפור” על האתגרים וההצלחות של בינה מלאכותית כיום. כמו כן, נדון בסוגיות האתיות שעולות מהשימוש ההולך ומתרחב בבינה מלאכותית.
ביחידה השנייה נלמד על אלגוריתמים לפתרון בעיות בעזרת חיפוש בגרפים. בחלק זה נסקור שיטות חיפוש עיוור (blind search) וחיפוש המתבסס על אומדנים (heuristic search). כמו כן, נבחן מספר שיטות ליצירת אומדנים אלו באופן אוטומטי או חצי-אוטומטי.
ביחידה השלישית נראה כיצד ניתן לייצג בעיות רבות כבעיות לסיפוק אילוצים (constraints satisfaction problems), ונסקור מספר שיטות מקובלות כדי לפתור בעיות אלו, כולל שיטות המתבססות על אלגוריתמי חיפוש יוריסטי שנלמדו ביחידה השנייה.
ביחידה הרביעית נכנס לתחום התכנון האוטומטי. נלמד כיצד אפשר להגדיר בעיית תכנון בעזרת מודלים סטנדרטיים כגון STRIPS, ואת האתגרים הקיימים בפתרון בעיות תכנון בעזרת שיטות חיפוש שנלמדו עד כה. נלמד מספר שיטות על מנת ולהתמודד עם אתגרים אלו.
ביחידה החמישית והשישית נלמד כיצד אפשר להציג ידע בעזרת לוגיקה ובעזרת מודלים גרפיים כדוגמת רשתות בייסיאניות (Bayesian Networks) ואיך ניתן ללמד מחשב להסיק מסקנות באמצעות מידע זה באופן אוטומטי ויעיל.
ביחידה השביעית נחזור לבעיית התכנון שנסקרה ביחידות הקודמות, אך הפעם נלמד כיצד אפשר לתכנן כאשר קיימת אי-וודאות לגבי תוצאת הפעולות. לצורך כך נגדיר מודלים מרקובים לקבלת החלטות (Markov decision problems) ונראה איך ניתן להשתמש בהם על מנת לתכנן רצף של פעולות במתארים עם אי-וודאות.
ביחידה השמינית והתשיעית נכנס לתחום למידת מכונה (machine learning), בה נראה איך אפשר ליצור תוכנה המסוגלת ללמוד מחיזוקים חיוביים ושליליים כיצד להתנהג בעולם (reinforcement learning) ואיך אפשר ליצור תוכנה המסוגלת ללמוד מושגים מופשטים מורכבים בעזרת למידה מדוגמאות (supervised learning).