CS221: Artificial Intelligence: Principles and Techniques
Teaching Staff
Percy
Percy Liang
Instructor
Marina
Marina Zhang
Head CA
Amelie Byun
Amelie Byun
Course Manager
Policies
AIWG Statement: This course is participating in the proctoring pilot overseen by the Academic Integrity Working Group (AIWG). The purpose of this pilot is to determine the efficacy of proctoring and develop effective practices for proctoring in-person exams at Stanford. To find more details on the pilot or the working group, please visit the AIWG’s webpage.
Communication: We will use Ed for all communications, which you can access via Canvas. CGOE students: please email stanfordonline-gradprograms@stanford.edu if you need general assistance. Make a public Ed post whenever possible. For extra sensitive matters, you can email cs221-staff-aut2627@cs.stanford.edu, which is visible only to the instructors, head CA, course manager, and student liaison.
Video access disclaimer: Video cameras located in the back of the room will capture the instructor presentations in this course. For your convenience, you can access these recordings by logging into the course Canvas site. These recordings might be reused in other Stanford courses, viewed by other Stanford students, faculty, or staff, or used for other education and research purposes. Note that while the cameras are positioned with the intention of recording only the instructor, occasionally a part of your image or voice might be incidentally captured. If you have questions, please contact a member of the teaching team.
Academic accommodations: If you need an academic accommodation, contact the Office of Accessible Education (OAE). The OAE will then prepare an OAE letter with the recommended accommodations. Send this letter to cs221-staff-aut2627@cs.stanford.edu by Friday, Oct 9 (Week 3).

General OAE Guidelines: IMPORTANT: If you plan to use your OAE-approved exam accommodations for a specific assessment, students must provide their letter to cs221-staff-aut2627@cs.stanford.edu by: You need only submit your letter once per quarter. For urgent OAE-related accommodation needs that arise after the deadline, please consult your OAE advisor. If you are not yet registered with OAE, contact the office directly at oae-contactus@stanford.edu.
Collaboration policy and honor code: Please read Stanford's honor code policy. In the context of CS221, you are free to form study groups and discuss homeworks and projects. However, you must write up homeworks and code from scratch independently, and you must acknowledge in your submission all the students you discussed with. The following are considered to be honor code violations: When debugging code together, you are only allowed to look at the input-output behavior of each other's programs (so you should write good test cases!). We periodically run similarity-detection software over all submitted student programs, including programs from past quarters and any solutions found online on public websites.

Generative AI Policy: Each student is expected to submit their own solutions to the CS221 homeworks. You may use generative AI tools such as ChatGPT as you would use a human collaborator. This means that you may not directly ask generative AI tools for answers or copy solutions, and you must acknowledge generative AI tools as collaborators. Additionally, you may not use generative AI tools to "check" your work, even if you wrote it yourself, as this is equivalent to having another student look at your answers. The use of generative AI tools to substantially complete an assignment or exam (e.g. by directly copying) is prohibited and will result in honor code violations. We will be checking students' homework to enforce this policy.

Honor Code Violations: Anyone violating the honor code policy will be referred to the Office of Community Standards. If you think you violated the policy (it can happen, especially under time pressure!), please reach out to us; the consequences will be much less severe than if we approach you.

Inclusion: The CS221 teaching staff is committed to creating an inclusive and supportive learning environment for all students. Please be respectful to your fellow students, course CAs, and instructors. If you see any problems, please reach out to us early.

Stanford as an institution is committed to the highest quality education, and as your teaching team, our first priority is to uphold your educational experience. To that end we are committed to following the syllabus as written here, including through short- or long-term disruptions, such as public health emergencies, natural disasters, or protests and demonstrations. However, there may be extenuating circumstances that necessitate some changes. Should adjustments be necessary, we will communicate clearly and promptly to ensure you understand the expectations and are positioned for successful learning.
Content
What is this course about? The goal of artificial intelligence (AI) is to tackle complex real-world problems with rigorous mathematical tools. In this course, you will learn the foundational principles and practice implementing various AI systems. Specific topics include machine learning, search, Markov decision processes, game playing, Bayesian networks, and logic.
Prerequisites: This course is fast-paced and covers a lot of ground, so it is important that you have a solid foundation in a number of areas. Here are the basic skills that you need and the classes that teach those skills: It is less important that you know particular things (e.g., we don't use eigenvectors in this course even though that's a pillar of any linear algebra course), and more important that you've done enough related things that you feel at ease with it. While it is possible to fill in the gaps, this course does move quickly, and ideally you want to be focusing your energy on learning AI rather than catching up on prerequisites.
Further reading: There are no required textbooks for this class, and you should be able to learn everything from the lecture notes and homeworks. However, if you would like to pursue more advanced topics or get another perspective on the same material, here are some great resources: Note that some of these books use different notation and terminology from this course, so it may take some effort to make the appropriate connections.
Coursework
Schedule

See also course calendar for office hours and other events.

Pre-requisite review materials: see Canvas for pre-recorded videos from previous iterations.

Lecture Homework due Check-in due Project milestone Homework released Final exam

Monday Tuesday Wednesday Thursday Friday
Week 1
Sept 21 - 25
Sept 21
HW1 releasedFoundations
Sept 22
Lecture 1Overview
3:00pm - 4:20pm
Sept 23
Sept 24
Lecture 2Learning I
3:00pm - 4:20pm
Sept 25
Week 2
Sept 28 - Oct 2
Sept 28
HW1 due 11:59pm
HW2 releasedSentiment
Sept 29
Lecture 3Learning II
3:00pm - 4:20pm
Sept 30
Oct 1
Lecture 4Learning III
3:00pm - 4:20pm
Oct 2
HW1 check-in due
Week 3
Oct 5 - 9
Oct 5
HW2 due 11:59pm
HW3 releasedRoute
Oct 6
Lecture 5Search I
3:00pm - 4:20pm
Oct 7
Project interest form due 11:59pm
Oct 8
Lecture 6Search II
3:00pm - 4:20pm
Oct 9
HW2 check-in due
Week 4
Oct 12 - 16
Oct 12
HW3 due 11:59pm
HW4 releasedMountaincar
Oct 13
Lecture 7MDPs I
3:00pm - 4:20pm
Oct 14
Oct 15
Lecture 8MDPs II
3:00pm - 4:20pm
Oct 16
HW3 check-in due
Week 5
Oct 19 - 23
Oct 19
Oct 20
Lecture 9MDPs III
3:00pm - 4:20pm
Oct 21
Project proposal due 11:59pm
Oct 22
Lecture 10RL Applications
3:00pm - 4:20pm
Oct 23
Week 6
Oct 26 - 30
Oct 26
HW4 due 11:59pm
HW5 releasedPacman
Oct 27
Lecture 11Games I
3:00pm - 4:20pm
Oct 28
Oct 29
Lecture 12Games II
3:00pm - 4:20pm
Oct 30
HW4 check-in due
Week 7
Nov 2 - 6
Nov 2
HW5 due 11:59pm
HW6 releasedBayesian
Nov 3
Lecture 13Bayesian Networks I
3:00pm - 4:20pm
Nov 4
Nov 5
Lecture 14Bayesian Networks II
3:00pm - 4:20pm
Nov 6
HW5 check-in due
Week 8
Nov 9 - 13
Nov 9
Nov 10
Lecture 15Bayesian Networks III
3:00pm - 4:20pm
Nov 11
Nov 12
Lecture 16Logic I
3:00pm - 4:20pm
Nov 13
Week 9
Nov 16 - 20
Nov 16
HW6 due 11:59pm
HW7 releasedLogic
Nov 17
Lecture 17Logic II
3:00pm - 4:20pm
Nov 18
Nov 19
Lecture 18AI & Society I
3:00pm - 4:20pm
Nov 20
HW6 check-in due
Project progress report due 11:59pm
Thanksgiving
Nov 23 - 27
Thanksgiving recess, no classes
Week 10
Nov 30 - Dec 4
Nov 30
HW7 due 11:59pm
Dec 1
Lecture 19AI & Society II
3:00pm - 4:20pm
Dec 2
Dec 3
Lecture 20Fireside Chat, Conclusion
3:00pm - 4:20pm
Dec 4
HW7 check-in due
Project final report and video due 11:59pm
Finals Week
Dec 7 - 11
Dec 7
Dec 8
Dec 9
Dec 10
Final Exam12:15pm - 3:15pm
On Campus (Location TBD)
Dec 11