University of Calgary
Rob Kremer
Course Description

CPSC 433: Artifical Intelligence
Fall 2006
Department of Computer Science


Rob Kremer, ICT 748, email:;
Tues/Thurs 14:00-15:15 in TRB 102
Office hours:
Tues/Thurs 12:45-13:45 and by appointment.
Course web site:
Mail list server: (also see how to subscribe by email, or just subscribe directly with SYMPA)
TutorialTimeTAOffice Hours
T01MW 11:00 Jason Heardby appointment

Course Description

An examination of the objectives, key techniques and achievements of work on Artificial Intelligence in Computer Science.


Computer Science 313 and one of 349 or 449


Note that a basic understanding in logic is definitely required for this course (Philosophy 279 or 377 are prerequisites of CPSC 349 and 449, therefore they are not explicitly mentioned in the calendar)! Although we will introduce the basic concepts of how to process and solve problems described in logic in this course, knowing what logical formulas, propositions and calculi are and how a problem can be represented as a set of formulas is a must!

Misuse of Computer Facilities, Plagiarism, and Cheating

Academic misconduct (cheating, plagiarism, or any other form) is a very serious offence that will be dealt with rigorously in all cases. A single offence may lead to disciplinary probation or suspension or expulsion. The Faculty of Science follows a zero tolerance policy regarding dishonesty. Please read the sections of the University Calendar under the heading "Student Misconduct" (pages 53-56 for 2004-2005).

These serious offences will carry sanctions. Copying of assignments from anywhere without appropriate references, cheating on exams, or misusing facilities will result in punishment ranging from course failure to criminal prosecution. If you are unsure about these issues do not hesitate to consult with the course instructor.

This course requires group work, which dictates that students must work together to solve assignments. Generally individual contributions from people within the group do not need to be cited, but major contributions should be. Note that it is the responsibility of each member of the group to ensure that plagiarism (or other forms of cheating) does not occur in the work: the entire group will be assessed based on any incident of academic misconduct in group assignments.

Each member of a group is expected to do their fair share of the group work. A peer assessment mechanism will be used to monitor this. If group work is unequally distributed among group members, group members may achieve differing marks for the assessment. This may range from and A to a failing grade, with corresponding consequences for the overall course mark.


The following is a collection of text books on AI. It is recommend that you look at them in the library (and any other AI books you find there) and decide for yourself which one you find best (i.e. which one explains the best the things that you did not understand in the lectures and labs). They all have a rather large overlap in their content and none of them covers all of the course (in the depth that I want the different topics covered). Note that some of them are out of print (but you might be able to buy used copies cheap). It might also be interesting to compare the older books with the newer one (you will see that new does not always mean better).

You might also be interested in looking at Prof. Denzinger's manuscript (containing the first two chapters of his upcoming book [translated from German]), which describes the search models according to the same onology as used in class.


The University policy on grading and related matters is described in the university calendar.

The course will have a Registrar's scheduled final examination and a midterm exam. These exams together constitute the exam component of the course and there is also an assignment component and a peer evaluation component. All three components have to be passed in order to pass the course, and both parts of the peer evaluation must be passed in order to pass that component. Even though the peer evaluation component has only a nominal mark associated with it, you may fail the entire course for failing to complete these tasks adequately.

The final grade will be calculated using the grade point equivalents of the individual grades achieved weighted by the percentages given later on this page. To get the final letter grade for the course, the weighted sum is converted back using the official University grade point equivalents. In order to deal with the grade A+ that unfortunately does not scale in the grade point equivalents, the following rule will apply: an A+ as final letter grade will be awarded to every student who has an A in both exams and in both components of the assignment component and in both components of the peer evaluation component.

The exam component

As already described, we follow the usual midterm-final-scheme for exams. The weighting of the grades you achieve in these two exams is as follows:

Midterm   20%
Final exam 30%

Remember, you have to pass this component to pass the course. For example, this means that a D in the midterm and an F in the final is not sufficient!

The assignment component

For a detailed description of what you have to do, please refer to the assignment page. The following table describes the percentage with which the individual task grades will be weighted in the final grade for the course.

Paper presenting two solutions to the given problem   18%
Implementation and demonstration of the selected solution 30%

So, the assignment component accounts for 48 percent of your mark. Please note that both grades above are achieved by your team!

The peer evaluation component

The peer evaluations are relatively simple to do compared with the other course components. You must submit a report to your TA and instructor (by email) containing a letter grade assessment of each (including yourself) of your group members' contributions to the current assignment together with a 1/3 page description of that person's contribution justifying your assessment. It is not acceptable to give everyone in your group an A or to give everyone in your group an F. A report that does not reflect the dynamics of the group will be considered a failure, which could cause you to fail the course. It is your responsibility to get to know your group members and know their contributions to the project.

The weighting in the final grade for the course is

Peer evaluation 1 (to be handed in just after the paper assignment)   1%
Peer evaluation 2 (to be handed in just after the implementation and demonstration assignment) 1%

So, the peer evaluation component accounts for only 2 percent of your mark, but you have to do both of them adequately in order to pass the course.

Why the peer evaluation? The peer evaluation is set up to prevent freeriding (a group member doing little or nothing and getting a good mark by taking advantage of the efforts of the rest of the group). It will be used as follows: The TA and instructor will use their own judgment and experience with the group as well as the input from the peer evaluations to assess a "delta mark", which will be applied to the group assignment. The delta mark will be a positive or negative letter-grade value between -4 and +1, which will be added to the group mark for each individual member.

Therefore, if you are the group leader, make a huge contribution to the project, your group thinks you can walk on water, and your group project is assessed as a "B", you may be assessed a delta mark of +1 -- your mark for the project will be "A". On the other hand, if you could had done better on the project, your delta mark may be -0.7, and you'd get a group mark of "C+". Furthermore, if you really didn't help much at all on the project, you'd get a delta mark of -4, you'd get a "F" for the project and you'd automatically fail the entire course. Don't let that happen. :)

Lecture/Lab Schedule

Tuesday 14:00-15:15
Thursday 14:00-15:15
Introduction, Structure of an AI system, knowledge processing [ PPT]
Search: Basic definitions [ PPT]
Search: Set-based search [ PPT]
Search: And-tree-based search [ PPT]
Search: Or-tree-based search [ PPT]
Search: Search summary [PPT] & Other models [ PPT]
Search control issues [ PPT]
Knowledge Representation (propositional logic) [ PPT]
Knowledge Representation (first order logic) [ PPT]
Rule-based Systems [ PPT]: Prolog & Mycin
Frames [ PPT]
Paper due 12:00 (noon)
Peer evaluation due Oct 21 12:00 (noon)
Semantic Nets [ PPT]
AI, more background [PPT]
Midterm review
Exam results
Neural Networks [ PPT]
Reading Days
Guest Lecture: Jeff Boyd


Constraints [ PPT], General Issues: Planning [ PPT]
General Issues: Learning [ PPT], Cooperation [ PPT]
Multi-agent Systems: Agent Communication [PPT, paper]
Exam review


Final assignment due Dec 08 12:00 (noon)
Peer evaluation due Dec 10 12:00 (noon)

CPSC 433: Artificial Intelligence
Department of Computer Science

Last updated 2007-08-29 6:18
Rob Kremer