This course will introduce the basic ideas and techniques underlying the design of intelligent computer systems. A specific emphasis will be on the statistical and decision-theoretic modeling paradigm. By the end of this course, you will have built autonomous agents that efficiently make decisions in fully informed, partially observable, and adversarial settings. The techniques you learn in this course apply to a wide variety of artificial intelligence problems and will serve as the foundation for further study in more specific areas of AI, such as deep learning (though please note that this course does not significantly cover deep learning, but instead focuses on fundamentals necessary for a proper understanding of such areas).
iClicker: Students will need to purchase an iClicker Model 2 and register it on Moodle via the instructions found here.
Textbook: The course textbook is the 3rd edition of Artificial Intelligence: A Modern Approach by Russell and Norvig. Be sure to get the 3rd edition, as other editions will not match up to the reading assignments, nor contain all the necessary content.
Language: Course programming assignments will be in Python. We do not assume that students have previous experience with the language, but we do expect you to learn the basics rapidly. Project 0 is designed to teach you the basics of Python if you are not already familiar.
There are three types of assignments that you will be expected to complete:
1. Reading assignments: These will primarily be readings from the textbook, but may occasionally come from other provided sources.
All reading assignments should be completed before the class period for which they are assigned.
2. Homework exercises: Throughout the semester, problem sets will be assigned and automatically graded through Gradescope.
You will receive instant feedback from the autograder and can retry each problem as many times as necessary.
The goal of these problems is to get you comfortable with the material and prepared for the midterm and final.
To access these assignments, you must sign up for a Gradescope account using the email address that is listed for you in Spire.
After creating an account, you'll enroll using a course code that will sent to all enrolled students.
3. Programming projects: There will be a series of Python programming projects in which you will implement various AI algorithms.
An autograder script will be provided for each project so that you can check your progress along the way and fix errors in your code.
The first of these projects (P0: Tutorial) must be completed individually. All other projects may be completed in pairs or alone.
Day | Topic | Readings | Slides | Assignments | ||
Tues 9/5 | Introduction | Ch. 1.1, 2.1-2.3; AI-100 report (optional) | P0: Tutorial Due: 9/11 11:59 pm |
|||
Thurs 9/7 | Uninformed Search | Ch. 3.1-3.4 | HW1 Due: 9/20 11:59 pm |
|||
Tues 9/12 | A* Search and Heuristics | Ch. 3.5-3.6 | PDF |
P1: Search Due: 9/25 11:59 pm |
||
Thurs 9/14 | Constraint Satisfaction Problems | Ch. 6.1-6.3 | PDF. CSP demo | HW2 Due: 9/27 11:59 pm | ||
Tues 9/19 | CSPs II; Local Search | Ch. 6.4-6.5, 4.1-4.2 | ||||
Thurs 9/21 | Game Trees: Minimax | Ch. 5.1-5.3 | PDF |
HW3 Due: 10/4 11:59 pm |
||
Tues 9/26 | Game Trees: Expectimax; Utilities | Ch. 5.4-5.5, 16.1-16.3 | P2: Multi-Agent Pacman Due: 10/9 11:59 pm |
|||
Thurs 9/28 | Markov Decision Processes | Ch. 17.1-3 | HW4 Due: 10/11 11:59 pm |
|||
Tues 10/3 | Markov Decision Processes II | Sutton and Barto Ch. 3-4 | ||||
Thurs 10/5 | Reinforcement Learning | S&B Ch. 6.1, 6.2, 6.5 | HW5 Due: 10/18 11:59 pm |
|||
Tues 10/10 | No class | |||||
Thurs 10/12 | Reinforcement Learning II | Ch. 21 | P3: Reinforcement Learning Due: 11/1 11:59 pm |
|||
Tues 10/17 | Probability | Ch. 13.1-13.5 | ||||
Thurs 10/19 | Midterm Exam | |||||
Tues 10/24 | Bayes Nets: Representation | Ch. 14.1-14.3 | ||||
Thurs 10/26 | Bayes Nets: Independence | Ch. 14.3 | PDF |
|||
Tues 10/31 | Bayes Nets: Inference | Ch. 14.4 | PDF |
|||
Thurs 11/2 | Bayes Nets: Sampling | Ch. 14.5 | PDF |
HW6 Due: 11/15 11:59 pm |
||
Tues 11/7 | Hidden Markov Models | Ch. 15.1-15.3 | ||||
Thurs 11/9 | Particle Filters and HMM Applications |
Ch. 15.5 | P4: Ghostbusters Due: 11/29 11:59 pm |
|||
Tues 11/14 | Decision Diagrams / VPI | Ch. 16.5-16.6 | HW7 Due: 12/4 11:59 pm |
|||
Thurs 11/16 | Naive Bayes | Ch. 18.1-18.2, 20.1-20.2.2 | PDF |
|||
Tues 11/21 | Perceptrons | Ch. 18.6.1, 18.6.3 | PDF |
HW8 Due: 12/7 11:59 pm |
||
Thurs 11/23 | No class | |||||
Tues 11/28 | Kernels and Clustering | Ch. 18.8, 18.9 | ||||
Thurs 11/30 | Deep Learning | PDF |
||||
Tues 12/5 | AI Ethics | |||||
Thurs 12/7 | Advanced Applications | |||||
Final Exam: Monday 12/11 | 1:00pm - 3:00pm, School of Management 137 |
Attendance: Class attendance is mandatory and participation in daily quizzes will be recorded via iClicker (quizzes are not graded on correctness, only participation). You will be granted 3 free days that you can miss for any reason, but please save these for when you truly need them, as no other days will be granted except under extraordinary circumstances.
Project grading: Projects will by default be graded automatically for correctness, though we will review projects individually as necessary to ensure that they receive the credit they deserve if there is an issue.
Late policy: Programming projects and Gradescope exercises are due electronically by 11:59pm on the listed due date. After the due date, programming projects can be turned in late at a 20% penalty (of the total number of possible points) until 11:59pm on the final day of classes (12/7). No extensions will be provided, except under highly exceptional circumstances. Gradescope exercises can be submitted up to 5 days late at a 20% penalty (of the total number of possible points). After that, solutions will be auto-released, so no extensions are possible. The only exception to being able to submit up to 5 days late is if the date would go beyond the last day of class (12/7), as all assignments must be submitted by then.
Overall grades will be determined from:
Grades will be assigned using both plus and minus grades as follows:
93-100: ASince the integrity of the academic enterprise of any institution of higher education requires honesty in scholarship and research, academic honesty is required of all students at the University of Massachusetts Amherst. Academic dishonesty is prohibited in all programs of the University. Academic dishonesty includes but is not limited to: cheating, fabrication, plagiarism, and facilitating dishonesty. Appropriate sanctions may be imposed on any student who has committed an act of academic dishonesty. Instructors should take reasonable steps to address academic misconduct. Any person who has reason to believe that a student has committed academic dishonesty should bring such information to the attention of the appropriate course instructor as soon as possible. Instances of academic dishonesty not related to a specific course should be brought to the attention of the appropriate department Head or Chair. Since students are expected to be familiar with this policy and the commonly accepted standards of academic integrity, ignorance of such standards is not normally sufficient evidence of lack of intent (http://www.umass.edu/dean_students/codeofconduct/acadhonesty/).
In this course, you are encouraged to discuss the readings and concepts with classmates, but all work must be your own. Programming assignments must be your own, except for 2-person teams when teams are authorized. You may not look online for existing implementations of algorithms related to the programming assignments, even as a reference. Your code will be analyzed by automatic tools that detect plagiarism to ensure that it is original. Assistance from AI systems such as ChatGPT for writing code or answering homework questions is also strictly prohibited.
The University of Massachusetts Amherst is committed to providing an equal educational opportunity for all students. If you have a documented physical, psychological, or learning disability on file with Disability Services (DS), you may be eligible for reasonable academic accommodations to help you succeed in this course. If you have a documented disability that requires an accommodation, please notify me within the first two weeks of the semester so that we may make appropriate arrangements. For further information, please visit Disability Services (https://www.umass.edu/disability/)
In accordance with Title IX of the Education Amendments of 1972 that prohibits gender-based discrimination in educational settings that receive federal funds, the University of Massachusetts Amherst is committed to providing a safe learning environment for all students, free from all forms of discrimination, including sexual assault, sexual harassment, domestic violence, dating violence, stalking, and retaliation. This includes interactions in person or online through digital platforms and social media. Title IX also protects against discrimination on the basis of pregnancy, childbirth, false pregnancy, miscarriage, abortion, or related conditions, including recovery. There are resources here on campus to support you. A summary of the available Title IX resources (confidential and non-confidential) can be found at the following link: https://www.umass.edu/titleix/resources. You do not need to make a formal report to access them. If you need immediate support, you are not alone. Free and confidential support is available 24 hours a day / 7 days a week / 365 days a year at the SASA Hotline 413-545-0800.