This is an advanced AI course on what should an agent do based on its ability, its beliefs, its perception and its values/goals. We will assume basic logic, probability, search, and machine learning such as covered in an introductory AI or machine learning course (but will cover everything needed).

AI is about the design, control and analysis of agents (or systems) that behave appropriately in various circumstances. An intelligent agent requires not only the ability to act but also to decide how to act as circumstances as vary. What an agent does depends on its abilities, its prior knowledge, its goals/preferences and its (history of) observations.

This course builds on the foundations of dynamic systems, decision theory, knowledge representation and machine learning all of which will be presented in enough detail to understand the rest of the course.

We will begin by studying representations of belief, preference and actions as well as how to reason and learn such representations. The aim is to understand techniques that work in complex stochastic partially-observable environments that include multiple objects and other agents. We concentrate on methods that have the potential to work in such environments (even though there are few existing representations that do everything).

Structure of the Course

Instructor: David Poole, Office hours: After class any day or by appointment (room ICCS 109).

There will be 3 hours of in-class interaction per week. The classes will be a mix of lectures on the foundations and student presentations and discussion of research papers. This is a participatory class; everyone will be expected to participate fully, to have read the reading material before class, and come ready to discuss and critically analyze it.

The classes will be held (subject to change):

Discussions and grades are on Canvas.


The topics we will cover include semantics, inference and learning for many representations with the goal of inderstanding how they can be combined.


The course assessment will be based on in-class presentations and three assignments/projects. The participants will write a textbook on UBC Wiki. Each wiki page will have (at least) one principal author. Each assignment of for you to:

You can be involved in multiple authorships, as long as the number of pages equals the number of authors, and each author will be evaluated by the (average of the) one(s) they choose to be evaluated for. (You can think of the critique / evaluator like the validation set / test set in machine learning.)

Each month's pages will be different theme:

Each wiki page should include both the prior argument and the evidence that it works.

Last updated: 2018-12-31, David Poole