CSE 473: Introduction to Artificial Intelligence

Spring 2018

Warning: This is the website for a past offering of this course and may differ from the current offering's website in subtle respects

Important Links: Calendar, Piazza discussion, Canvas discussion, Textbook, Assignments

Basic Information

Eligible Students:

Enrollment in this course is limited to those students who are enrolled in the Computer Science and the Computer Engineering degree programs at the University of Washington. Students in other majors, graduate students, and students in exchange programs should take one of the other courses in artificial intelligence offered, such as CSE 415 during Autumn 2018.

Course Staff:

Steve Tanimoto
Course Instructor
Off.Hrs: Tu 10-11 in CSE638.
tanimoto (at) uw (dot) edu

Ben Evans
Teaching Assistant
Off.Hrs: M 11-12 in CSE 220
bevans97 (at) uw (dot) edu

Emilia Gan
Teaching Assistant
Off.Hrs: Tu 1:30-2:30 in CSE007.
efgan (at) uw (dot) edu

Kenny Le
Teaching Assistant
Off.Hrs: Tu 3:30-4:30 in CSE021
kennyle (at) uw (dot) edu

Vardhman Mehta
Teaching Assistant
Off.Hs: Th 10:30-11:30 in CSE021
mehtav (at) uw (dot) edu

Nicholas Ruhland
Teaching Assistant
Off.Hrs: W 10:45-11:45 in CSE220
ruhland (at) uw (dot) edu

Calendar: The schedule of lectures and other course events is available in our calendar. You may wish to subscribe to it, in order to see course events listed in your own calendar.


Our primary method of communication will be the Piazza discussion forum (pre-midterm, it was the Canvas discussion) for this course.

Class times & locations: Monday, Wednesday, Friday, 2:30-3:20 in SMI 205 (Smith Hall)

Textbook: Stuart Russell & Peter Norvig, Artificial Intelligence: A Modern Approach, Third Edition (2009)

Pac-Man: The programming projects in this course are based on those from http://ai.berkeley.edu/project_overview.html. This link is provided for reference only as our projects may differ.


Your grade will be 40% homework assignments, 20% midterm, 30% final exam, and 10% class participation.

Each student starts out with two late days which may be used on any assignment. Assignments may be handed in up to five days late, at a penalty of 10% of the maximum grade per day.

Assignments will be done individually unless otherwise specified. You may discuss the subject matter with other students in the class, but all final answers must be your own work. You are expected to maintain the utmost level of academic integrity in the course.

The bulk of the participation score will come from the worksheets we do in class. Normally, each worksheet is worth 1 point, when an honest attempt at completing the activity is turned in by the end of the class in which it is given out. Worksheet credits cannot be made up, even for illness or out-of-town trips; however, you may miss up to 3 worksheets with no effect on your grade. This system incentivizes contributions in-person to our class community, improving the learning environment. Catalyst Gradebook permits instructors to compute totals that automatically drop the three lowest-scoring items, and the plan is to exploit that capability when participation scores are figured. Past worksheets are available to registered students.

Academic Honesty

It is encouraged that you discuss your ideas with each other and consult online sources to better understand the material. However, your code must be written entirely by yourself. As a rule, you should never look at or run anyone else's code for the assignment, whether the code was written by someone currently in the class, or someone who took it previously, even at another university. Reading pseudocode for generic algorithms (like alpha-beta pruning or A* search) is perfectly OK. If you use a source very closely, for example, converting a pseudocode implementation of A* to Python, academic integrity demands that you cite the source (in a comment). You will not be penalized for this; on the contrary, the citation may help us to understand why your implementation is so similar to someone else's, in case they use and cite the same source. We do compare everyone's projects to each other and to past submissions to detect logical redundancy. When two assignments are too similar to have occurred by chance, we have to look into whether something improper occurred. These investigations are not fun for anyone involved. If you have questions, please ask!

Feedback to the Course Staff

You may submit feedback (optionally anonymous) at any time on any aspect of the course here: Catalyst UMail feedback form

Homework Assignments

Project 0 due April 4 @ 11:59 PM (lead TA: Nick)

Project 1: Search due April 13 @ 11:59 PM (lead TA: Emilia)

Project 2: Multi-Agent Search due April 23 @ 11:59 PM (lead TA: Vardhman)

Project 3: Reinforcement Learning due May 7 @ 11:59 PM (lead TA: Ben)

Project 4: Ghostbusters due May 18 @ 11:59 PM (lead TA: Kenny)

Project 5: Pattern Classification due May 25 (corrected) @ 11:59 PM (lead TA: Emilia).

Homework 6: Written exercises due June 1 @ 11:59 PM (lead TA: Nick). solutions.

Final Exam

The final exam will be given Tuesday, June 5 from 2:30 to 4:20. It will closed-book, closed-notes, no electronic devices. Sample finals and their solutions are available. Note that the format and coverage this quarter may differ.

Autumn 2017, solutions;

Spring 2017, solutions;

Autumn 2014, solutions.