CPSC 322 - Introduction to Artificial Intelligence (Term 1, Session 101, 2009-10)
Overview Grades Text Schedule Handouts



Course Description:  This course provides an introduction to the field of artificial intelligence.  The major topics covered will include reasoning and representation, search, constraint satisfaction problems, planning, logic, reasoning under uncertainty, and planning under uncertainty.

What do I do if I get the flu (e.g., H1N1)?


Grading Scheme: Evaluation will be based on a set of  assignments, a midterm, and an exam. Important: you must pass the final in order to pass the course. The instructor reserves the right to adjust this grading scheme during the term, if necessary.

If your grade improves substantially from the midterm to the final, defined as a final exam grade that is at least 20% higher than the midterm grade, then the following grade breakdown will be used instead.

The assignment grade will be computed by adding up the number of points you get across all assignments, dividing this number by the number of possible points, and multiplying by 20.  Assignments will not be graded out of the same number of points; this means that they will not be weighted equally.


Late Assignments: Assignments are to be handed in IN CLASS at the start of lecture on the due date. However, every student is allotted four "late days", which allow assignments to be handed in late without penalty on three days or parts of days during the term.  The purpose of late days is to allow students the flexibility to manage unexpected obstacles to coursework that arise during the course of the term, such as travel, moderate illness, conflicts with other courses, extracurricular obligations, job interviews, etc.  Thus, additional late days will NOT be granted except under truly exceptional circumstances.  If an assignment is submitted late and a student has used up all of her/his late days, 20% will be deducted for every day the assignment is late. (E.g., an assignment 2 days late and graded out of 100 points will be awarded a maximum of 60 points.)

How late does something have to be to use up a late day? A day is defined as a 24-hour block of time beginning at 4 PM on the day an assignment is due.  To use a late day, write the number of late days claimed on the first page of your assignment and submit your assignment to the course drop box located in the basement of CICSR, or just bring it to class if it's less than an hour late. Examples:

Assignments can be handed in electronically using handin; this is the only way to hand in late assignments over a weekend. Written work can also be put in Kevin's mailbox in the main CS office (room 201); ask the secretary to time-stamp it.


Missing Deadlines or Exams: In truly exceptional circumstances, when accompanied by a note from Student Health Services or a Department Advisor, the following arrangements will be made.

Academic Conduct: Submitting the work of another person as your own (i.e. plagiarism) constitutes academic misconduct, as does communication with others (either as donor or recipient) in ways other than those permitted for homework and exams. Such actions will not be tolerated. Specifically, for this course, the rules are as follows:

Violations of these rules constitute very serious academic misconduct, and they are subject to penalties ranging from a grade of zero on the current and *all* the previous assignments to indefinite suspension from the University. More information on procedures and penalties can be found in the Department's Policy on Plagiarism and collaboration and in  UBC regulations on student discipline . If you are in any doubt about the interpretation of any of these rules, consult the instructor or a TA!


We will be using a new text under development, which is currently only available in electronic form: Artificial Intelligence: Foundations of Computational Agents by Poole and Mackworth. PDF files of the chapters covered in class will be added to WebCT as they are needed. Although this text will be our main reference for the class, it must be stressed that you will need to know all the material covered in class, whether or not it is included in the readings or available on-line.  Likewise, you are responsible for all the material in assigned readings, whether or not it is covered in class. If you'd like to refer to an alternate text, I recommend Russell and Norvig's Artificial Intelligence: A Modern Approach (second edition). I've arranged for a copy to be put on reserve in the CS reading room.


Here is where you can find the course schedule and the PDF files from lectures. These dates will change throughout the term, but this schedule will be kept up to date.  Assignment due dates are provided to give you a rough sense; however, they are also subject to change. Slides will not always be posted in advance. Furthermore, even when they are posted in advance, I don't promise to use the exact same slides in class. Slides from last year are available from last year's course webpage; they should be very similar to the slides I will use this year.


Date Lecture Notes
Wed, Sept 9 What is AI? Assignment 0 on WebCT
Fri, Sept 11 Representational Dimensions  
Mon, Sept 14 Applications of AI  
Wed, Sept 16 Search: Intro Assignment 0 due
Fri, Sept 18 Search: State Spaces; Search Framework  
Mon, Sept 21 Search: Uninformed Search, Search with Costs  
Wed, Sept 23 Search: Heuristic Search  
Fri, Sept 25 Search: A* Search Assignment 1
Mon, Sept 28 Search: Branch and Bound, other pruning  
Wed, Sept 30 CSPs: Introduction
Fri, Oct 2 CSPs: Representation and Search  
Mon, Oct 5 CSPs: Arc Consistency  
Wed, Oct 7 CSPs: Local Search Assignment 1 due
Fri, Oct 9 CSPs: Stochastic Local Search Algorithms  
Mon, Oct 12 Thanksgiving: university holiday  
Wed, Oct 14 Planning: Representations Assignment 2 (see below)
Fri, Oct 16 Planning: Forward and CSP Planning  
Mon, Oct 19 Logic: Intro and Syntax
Wed, Oct 21 Logic: Semantics  
Fri, Oct 23 Logic: Proofs  
Mon, Oct 26 Logic: recap on syntax, semantics, proofs  
Wed, Oct 28 Logic: Datalog Assignment 2 due
Fri, Oct 30 Uncertainty: Probability Theory  
Mon, Nov 2 Uncertainty: Conditional Probability  
Wed, Nov 4 Uncertainty: Conditional Independence  
Fri, Nov 6 Midterm review Assignment 3 (see below)
Mon, Nov 9 Midterm exam (1.5 hours)  
Wed, Nov 11 Remembrance Day: university holiday  
Fri, Nov 13 Uncertainty: Belief Networks  
Mon, Nov 16 Uncertainty: Belief Network Examples  
Wed, Nov 18 Uncertainty: Belief Networks: Inference  
Fri, Nov 20 Uncertainty: Variable Elimination  
Mon, Nov 23 Uncertainty: Hidden Markov Models Assignment 4 (see below)
Wed, Nov 25 Decision Theory: Single-Stage Decisions Assignment 3 due
Fri, Nov 27 Decision Theory: Sequential Decisions  
Mon, Nov 30 Decision Theory: Markov Decision Processes
Wed, Dec 2 Decision Theory: Value Iteration  
Fri, Dec 4 class is cancelled: get started studying for the exam! :-)  
Mon, Dec 7 DMP 310: Optional competition:
Rainbow Robot Deathmatch
Assignment 4 due. Late days
cannot be used for code part.


Exercises are ungraded practice problems to help you prepare for assignments and exams. They're optional, but will definitely help you to master the course material.


Assessing your own learning: