CPSC 322 - Introduction to Artificial Intelligence (Term 1, Session 101, 2007-08)
Overview | Grades | Text | Schedule | Handouts]



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


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 a student 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 a student got 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: the second edition of Computational Intelligence by Poole, Mackworth and Goebel. (This is great news for students: not only will the text be free, but it is also considerably more up-to-date than the text used in previous iterations of this course.) 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 5 What is AI? Assignment 0
Fri, Sept 7 Representational Dimensions  
Mon, Sept 10 Applications of AI Assignment 0 due
Wed, Sept 12 Search: Intro  
Fri, Sept 14 Search: Uninformed Search Assignment 1 out
Mon, Sept 17 Search: Search with Costs  
Wed, Sept 19 Search: Heuristic Search and A*  
Fri, Sept 21 Search: A*, optimal efficiency  
Mon, Sept 24 Search: Branch and Bound, other pruning  
Wed, Sept 26 CSP Introduction  
Fri, Sept 28 CSPs: Search and Consistency Assignment 1 due
Mon, Oct 1 CSPs: Arc Consistency  
Wed, Oct 3 CSPs: Stochastic Local Search  
Fri, Oct 5 CSPs: Stochastic Local Search Assignment 2 out
Mon, Oct 8 Thanksgiving: university holiday  
Wed, Oct 10 CSPs: SLS Variants  
Fri, Oct 12 Planning: Representations  
Mon, Oct 15 Planning: Forward and CSP Planning  
Wed, Oct 17 Logic: Intro and Syntax  
Fri, Oct 19 Logic: Semantics Assignment 2 due
Mon, Oct 22 Logic: Bottom-Up Proofs  
Wed, Oct 24 Logic: Soundness and Completeness of Bottom-Up  
Fri, Oct 26 Midterm review  
Mon, Oct 29 Midterm exam (1.5 hours, regular room) Assignment 3 out
Wed, Oct 31 Logic: Resolution; Uncertainty: Probability Theory  
Fri, Nov 2 Uncertainty: Conditional Probability  
Mon, Nov 5 Uncertainty: Conditional Independence (alt slides)  
Wed, Nov 7 Uncertainty: Belief Networks  
Fri, Nov 9 Uncertainty: Belief Network Inference  
Mon, Nov 12 Remembrance day: university holiday  
Wed, Nov 14 Uncertainty: Variable Elimination Assignment 3 due
Fri, Nov 16 Uncertainty: Hidden Markov Models Assignment 4 out; blackjack.xml
Mon, Nov 19 Decision Theory: Single Decisions  
Wed, Nov 21 Decision Theory: Sequential Decisions  
Fri, Nov 23 Decision Theory: MDPs  
Mon, Nov 26 Decision Theory: Value Iteration  
Wed, Nov 28 Decision Theory: Q-Learning Assignment 4 code due
Fri, Nov 30 Rainbow Robot Deathmatch Assignment 4 written part due
last day of class
Wed, Dec 5,

8:30 AM

Final exam  




Please note that the links to slides and to assignments are given in the schedule above.  The textbook chapters are only available through WebCT. Other handouts follow: