CPSC 322 - Introduction to Artificial Intelligence (Term 2, Session 201, 2007)
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.

  • Assignments -- 20%
  • MidTerm -- 30%
  • Final -- 50%

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.  Note that this means that assignments are not weighted equally when they are out of a different number of points.

Late Assignments: Assignments are to be handed in IN CLASS at the start of lecture on the due date. However, every student is allotted three "late days", which allow work to be handed in late without penalty on three days or parts of days during the term.  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:
  • Handing in an assignment at the end of lecture on the day it is due consumes one late day. 
  • Handing in an assignment at 10:15 the morning after it is due consumes one late day.
  • Handing in an assignment at 4:30 the day after an assignment is due consumes two late days.

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.  Late assignments will no longer be accepted from students who have used up all of their late days.

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:

  • Assignments are to be done alone. You may not, under any circumstances, submit any solution not written by yourself, look at another student's solution (this includes the solutions from assignments completed in the past), or previous sample solutions, and you may not share your own work with others. All work for this course is required to be new work and cannot be submitted as part of an assignment in another course without the approval of all instructors involved.
  • You may, however, discuss your solutions and design decisions with your fellow students. In other words, you can talk about the assignments, but you cannot look at or copy other people's answers.

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.

Here is where I'll post the course schedule and the PDF files from lectures. These dates will change throughout the term, but I'll try to keep this schedule up to date.  Assignment due dates will be added as we get close to them. 

Date Lecture Notes
Monday, January 8 What is AI? Assignment 1
Wednesday, January 10 Representational Dimensions  
Friday, January 12 Search: Intro  
Monday, January 15 Applications of AI Assignment 1 due
Wednesday, January 17 Search: Uninformed Search  
Friday, January 19 Search: Heuristic Search  
Monday, January 22 Search: A*  
Wednesday, January 24 Search: Branch and Bound, other pruning Assignment 2
Friday, January 26 CSP Introduction  
Monday, January 29 CSPs: Search and Consistency  
Wednesday, January 31 CSPs: Arc Consistency  
Friday, February 2 CSPs: Stochastic Local Search  
Monday, February 5 CSPs: Stochastic Local Search Assignment 2 due
Wednesday, February 7 Planning: Introduction  
Friday, February 9 Planning: Representations Assignment 3
Monday, February 12 Planning: Forward and Regression Planning  
Wednesday, February 14 Planning: Regression  
Friday, February 16 Midterm review  
Monday, February 19 Midterm break  
Wednesday, February 21 Midterm break  
Friday, February 23 Midterm break  
Monday, February 26 CSP Planning; Logic Intro Assignment 3 first part due
Wednesday, February 28 Logic: Syntax and Semantics  
Friday, March 2 Logic: Bottom-Up Proofs Assignment 3 second part due
Monday, March 5 Midterm exam  
Wednesday, March 7 Logic: Resolution Proofs; Objects and Relations  
Friday, March 9 Logic: Datalog Syntax and Semantics  
Monday, March 12 Uncertainty: Probability Theory Assignment 4 posted
Wednesday, March 14 Uncertainty: Conditional Probability & Independence  
Friday, March 16 Uncertainty: Conditional Independence  
Monday, March 19 Uncertainty: Belief Networks  
Wednesday, March 21 Uncertainty: Belief Network Inference  
Friday, March 23 Uncertainty: Variable Elimination  
Monday, March 26 Uncertainty: Variable Elimination Example  
Wednesday, March 28 HMMs and Decision Theory Intro Assignment 4 due
Friday, March 30 Decision Theory: Single Decisions Assignment 5 posted
Monday, April 2 Decision Theory: Sequential Decisions  
Wednesday, April 4 Decision Theory: MDPs  
Friday, April 6 Easter Break  
Monday, April 9 Easter Break  
Tuesday, April 10   Assignment 5 due, NOON
Wednesday, April 11 Value Iteration; Rainbow Robot Deathmatch  



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: