News Feed

CS221 is coming to a close. Thanks for the uplifting term. Best of luck with the final project and I look forward to seeing you all as friends and colleagues. All the best, Chris.
The midterm is over! The mean was 72. See the solutions.
Driverless Car and the Variables pset have been released. They are both due on July 22nd at 11:59pm.
The probability review session has passed. It was televised.
Pacman and the Search pset have been released. They are both due on July 8th at 11:59pm.
The python review session has passed. It was televised.
Sign up for this class on Piazza!
We have added two "online" office hours where you can ask questions via google hangout. The hangouts will be Tu @ 5pm and We @ 7pm. See the calendar for details.
Make sure that you are enrolled for CS221 on Axess. The add/drop deadline is July 7th.
The first day of class is Tuesday, June 25th. We look forward to seeing you in Gates!

Course Information

Instructor: Chris Piech

Course assistants:

Contact: Please use Piazza for all questions related to lectures, homeworks, and projects. For private questions, email:

Office Hours: See the office hour calendar. Additional office hours are also availible by appointment.

Book: Russell and Norvig. Artificial Intelligence: A Modern Approach, 3rd. edition.

Lectures: If you can make it to lecture come! You learn a lot from your peers and stay on track. The lectures are recorded -- so if you can't make it, or if you want to see old lectures, you can find them at myvideosu.

Prerequisites: a good grasp of basic data structures and algorithms, probability, linear algebra; solid programming skills.

Grading Policy

Homework 20%
Midterm 20%
Programs 30%
Final Project 30%

Tentative Schedule

Date Topic Reading Lecture notes Assignment

June 25 [Tu] Basic Search 1.1, 3.1 - 3.4 slides Pacman (due July 8th)
Search Pset [soln] (due July 8th)
June 27 [Th] Heuristics and Chance 3.5, 3.6, 16.1, MDPs slides [code]
July 2 [Tu] Adversaries 5.1 - 5.5 slides [code]
July 4 [Th] No Class None None

[Variable Based Models]
July 9 [Tu] Variable Based Models 6.1 - 6.5, 13.1 - 13.5 slides Driverless Car (due July 22nd)
Variable Pset [soln] (due July 22nd)
July 11 [Th] Probabilistic Models 14.1 - 14.4 slides
July 16 [Tu] Temporal Models 15.1 - 15.5 slides
July 18 [Th] Parameter Learning 14.5, 20.3 slides [code]
July 23 [Tu] Midterm Review Practice Midterms slides
July 24 [We] Midterm Midterm Solutions None

[Machine Learning]
July 25 [Th] Supervised Learning 18.1-18.2, 18.6, 18.8 slides Visual Cortex (due Aug 5th)
Learning Pset (due Aug 5th)
July 30 [Tu] Unsupervised Learning 21.1-21.6, K Means slides Final Project (due Aug 8th, 18th)
Aug 1 [Th] Loss Minimization None slides
Aug 6 [Tu] Features Sparse Autoencoder slides
Aug 8 [Th] Deep Learning None slides

Aug 13 [Tu] The Big Picture 27.1 - 27.4, Big Picture slides
Aug 15 [Th] Peter Norvig Guest Lecture None code


Group Work

You are encouraged to talk about the homework assignments in small groups. However your final submission must be written up in your own words and you must not share actual lines of code with other students.

Late Policy

You have three six "late" days for the entire quarter. You can use each late day to grant yourself a 24 hour extension. Late days either apply to an entire problem set (even though you submit each part seperately) or a programming assignment. You can use up to three late days on an assignment. After you have used up all of your late days we will no longer accept late submissions. If an unforseen circumstance comes up and you need an extension beyond your late days, contact Chris.


Homework assignments will have specific submission instructions included with the handouts. We will use a certain amount of automatic grading to help us deal with the massive amounts of code everyone submits, so please follow the submission instructions exactly as written!

Honor Code

You are free to discuss the assignment and solutions with others. However, you must write your own assignment, and must not represent any portion of others' work as your own. Anybody violating the honor code will be referred to the Judical-Affairs Office. If convicted, the normal penalty is a quarter suspension or worse.

Where are the Assignments?

There are links to the assignment handouts on the schedule.

What is the Honor Code?

The full text of the honor code can be found here.