What does it mean for a computer agent to be intelligent? Can we build computers that act or reason intelligently? This course introduces core concepts and algorithms in artificial intelligence, in the areas of problem solving, search, logical reasoning, and planning. The course also provides an overview of application areas of artificial intelligence including robotics, natural language communication, and human-agent interaction.
Time and Location
Tues/Thurs 11:30 AM-12:45 PM
ponbarry at mtholyoke dot edu
Office: Clapp 226
Office Hours: Thurs 3:00-4:00/Fri 2:00-3:00 PM or by appointment
CS 211 (data structures) and Math 232 (discrete math), or permission from the instructor. You should be comfortable designing programs and writing code, and you should be comfortable with mathematical reasoning. If you have any questions about whether you have the right background, please talk to me.
Artificial Intelligence: A Modern Approach (Third Edition)
Authors: Stuart Russell and Peter Norvig
Publisher: Prentice Hall
Be sure to note the edition. The cover should be blue and white. If it’s green, then it’s the second edition. You may be okay using the second edition but you are responsible for determining the alignment of the sections.
The majority of the readings will be drawn from the textbook, so it is necessary that you have access to a copy of the book. The library has a copy of the textbook on 3-hour reserve.
Piazza: We will use Piazza for announcements and for Q&A.
- Class participation: 15%
- Homework assignments: 50%
- Midterm exam: 15%
- Final project: 20%
You will have opportunities to earn bonus points throughout the semester. The bonus points will not count directly towards your grade, but they will be factored in if your final letter grade is near a boundary such as A-/B+.
Participation: This includes constructive participation in small group and whole-class discussions, a presentation of your final project, informal presentations throughout the semester, giving structured feedback to your peers, and arriving to class on-time.
Homework: Assignments will be due approximately once a week through mid-November. They will be a mixture of written exercises, programming exercises, and reading responses.
The programming assignments will be in python. If you are new to python, this is an excellent opportunity to get some experience with it! The intensity of the programming assignments throughout the semester will be designed so that students who are comfortable programming but new to python will be able to succeed. Two good introductions to python: Google’s python class and the python tutorial from the Berkeley NLP group.
You can use up to 3 free late days on the homework assignments (<= 24 hours counts as 1 day). After your late days are spent, late homework will be penalized 15% per day late.
Midterm Exam: There will be one in-class midterm exam.
Final Project: Students will have the opportunity to explore a topic of interest in the final project. Project guidelines will be distributed mid-semester.
Accommodations: If you have a disability for which you require accommodations, please make an appointment to see the instructor within the first two weeks of classes so that we can make appropriate arrangements. You will need to have a letter from the AccessAbility Services Office, located in Wilder Hall B4 (phone: 413-538-2634, ).
Academic Integrity: In all your work for this class, it is very important for you to follow the Honor Code: I will honor myself, my fellow students, and Mount Holyoke College by acting responsibly, honestly, and respectfully in both my words and my deeds. If you are not sure how this applies in a particular context, please ask for clarification. Collaboration on homework assignments is encouraged. However, when you write up your work, it is important that you only write what you understand, and that it is in your own words. If you have any questions about what constitutes an Honor Code violation in this class please ask your instructor.
Topics are subject to change. Readings should be done prior to the associated lecture topic. Lecture slides are posted to Piazza.
|Sept 4||Introduction, course logistics||[Optional] Ch. 1|
|Sept 9||Uninformed search||Ch. 3.1 – 3.4|
|Sept 11||A* search, heuristics||Ch. 3.5 – 3.6||Assignment 0 out (due 9/17)|
|Sept 16||CSPs||Ch. 6.1 – 6.4|
|Sept 18||Game trees||Ch. 5.1 – 5.3||Assignment 1 out (due 9/28)|
|Sept 23||Logical reasoning||Ch. 7.1 – 7.5 (skim 7.6 – 7.7)|
|Sept 25||Reasoning and inference||Ch. 8|
|Sept 30||Markov Decision Processes||Ch. 17.1||Assignment 2: Turing Response (due 10/6)|
|Oct 2||MDPs continued||Ch. 17.2 – 17.3||Assignment 3 out (due 10/14)|
|Oct 7||Discussion: Turing||“Computing Machinery and Intelligence” (Turing, 1950)|
|Oct 9||Review||Ch. 15.1 – 15.2|
|Oct 14||Fall Break|
|Oct 16||HMMs||Ch. 15.3 (skim 15.4)|
|[Optional] J&M Ch. 7|
|Oct 21||HMMs; Viterbi decoding||Ch. 23.5||Assignment 4 out (due 10/28)|
|Oct 23||Guest Lecture: Elif Yamangil||J&M Ch. 5.1-5.2|
|Oct 30||In-class midterm|
|Nov 4||Speech Recognition||Assignment 5: Watson Response (due 11/7)|
|Nov 6||Discussion: Watson||“Building Watson: An Overview of the DeepQA Project” (Ferrucci et al., 2010)|
|Nov 11||Dialogue; dialogue systems|
|Nov 20||Reinforcement learning|
|Nov 25||Robot navigation||Ch. 25|
|Dec 2||Robot localization|
|Dec 4||Final presentations|
|Dec 9||[ NO CLASS ]|