Artificial Intelligence 304-526B

Course Outline

Course Credits:
3 credits
(3,0,6) (Lectures, Labs and tutorials, outside work)

Prof. Jeremy R. Cooperstock
McConnell Engineering, Room 424
Telephone: 398-5992
email: address and policy
Office hours: See course web page

ENGTR 0060, TTh 16:00-17:25


Course Description:
Design principles of autonomous agents, agent architectures, machine learning, neural networks, genetic algorithms, and multi-agent collaboration. The course includes a term project that consists of designing and implementing software agents that perform a particular task of relevance to Artificial Intelligence.

Learning Outcomes:
This course will provide you with an understanding of a range of applications to which artificial intelligence can be applied and the ability to choose appropriate AI techniques for each. You will be able to describe key characteristics of different agent architectures and machine learning methods. Finally, through the class assignments, you will gain hands-on experience in the design and implementation of intelligent agent systems, employing a variety of AI techniques.

Academic Integrity:
The instructor values it. Google my name with "academic integrity".

Course Content:
The following table provides a tentative schedule for the topics to be covered throughout the course. Text chapters are indicated for the primary reference (Russell and Norvig). Note that the order of these topics may be modified early in the term and lecture slides do not necessarily coincide exactly with the contents listed for each week.

Week of Topic Contents Readings Material Due Lecture Slides
Jan. 4 Intelligence and Intelligent Agents Concepts of intelligence and agency; AI architectures Ch. 1.1, 2 |   Jan 5 | Jan 7
Jan. 11 Problem Solving Problem formulation, Search strategies, heuristics. Two-player games, minimax, alpha-beta pruning, position evaluators; Utility functions, decision making Ch. 3-3.5, 4-4.2, 6-6.4 |   Jan 12 | Jan 14
Jan. 18 Knowledge and Reasoning propositional logic, first-order logic, forward and backward chaining, unification Ch. 7-7.5, 8-8.3, 9-9.4   Jan 19 | Jan 21
Jan. 25 Planning, Uncertainty progression and regression planning, partial-order planning, Probabilistic Inference, Bayes' Rule Ch. 11-11.3 | Ch. 13.3-13.6 |   Jan 26 | Jan 28
Feb. 1 Decision Making Simple and Complex Decisions, Markov Decision Problems Ch. 16-16.3, 17-17.4 Assignment #1 Feb 2 | Feb 4
Feb. 8 Inductive Learning induction, decision trees, boosting Ch. 18-18.3, Mitchell, Instance-based learning (pp. 230-234) | Sammut, Learning to Fly |   Feb 9
Feb. 15 Statistical Learning Bayesian Learning, MAP, Maximum Likelihood, Expectation Maximization, nearest neighbours Ch. 20-20.4, 20.6 |   Feb 16 | Feb 18
Feb. 22 Reading Week    
March 1 Reinforcement Learning LMS, temporal difference methods, Q-learning, Generalization, large state-action spaces. Ch. 21 | Mahadevan & Connell, Automatic Programming of Behavior-based Robots using Reinforcment Learning | Assignment #2 Mar 2 | Mar 4
March 8 Intro to Neural Networks Perceptrons, feed-forward neural networks, backpropagation Ch 20.5 | Mitchell, Artificial Neural Networks (4.1-4.6) | Pomerleau, Efficient Training of Artificial Neural Networks for Autonomous Navigation |
[Russell & Norvig, Ch. 20.5 | Schraudolph & Cummins, Introduction to NN | Rowley, Baluja & Kanade, Neural-Network-Based Face Detection | Tveter, BackProp Basics (or available as PDF here) | OCHRE applet]
  Mar 9 | Mar 11
March 15 Recurrent Neural Networks Hopfield networks, Boltzmann machines Kröse and van der Smagt, Intro to NN Ch. 5 | Assignment #3 Mar 16 | Mar 18
March 22 Self-Organizing Neural Networks clustering, quantization, function approximation Kröse and van der Smagt, Intro to NN Ch. 6   Mar 23 | Mar 25
Mar. 29 Kernel Methods Radial Basis Functions and Support Vector Machines Ch. 20.6 |   Mar 30 | Apr 1
April 5 Evolutionary Computing genetic algorithms, genetic programming, evolving neural networks Ch. 4.3 | Nolfi et al Phenotypic Plasticity in Evolving NN | Koza, Breeding Populations of Programs to Solve Problems in AI |   Apr 6
Apr. 12 Project Presentations (April 8 and 13) Project Report  

Instructional Method:
There will be two 1-1/2 hour classes every week throughout the term. These will consist of a mixture of lecture, group discussion, and occasional exercises.

Course Materials:
Textbook: Stuart Russell and Peter Norvig. Artificial Intelligence: A Modern Approach (Second Edition). Prentice Hall, 2002. This text can be purchased from Amazon.ca or Paragraphe Bookstore (2220 McGill College). The text is also available on reserve in the Schulich library. The first edition of this text is perfectly acceptable, in particular as the authors were kind enough to provide a Chapter map between the two editions.
Readings: Students are expected to complete the assigned readings each week. These will come either from the primary text (chapter numbers based on the second edition) or from other sources, as noted above. When not available on-line, handouts will be distributed in-class.

Computer Resources:
Students will have access to the computer workstations in the ECE Computer Laboratory. Complete compliance with the McGill University codes of conduct concerning computer usage is expected and required. The course web page (http://www.cim.mcgill.ca/~jer/courses/ai/) contains announcements, lecture summaries, assignments, and pointers to other useful resources.

The course grade will be based on three assignments, a group-based term project, and a final examination. Each of the assignments is designed to provide familiarity with a different aspect of artificial intelligence, while the term project, to be done in groups of 2-3 students, is intended to provide an opportunity for students to apply their overall knowledge gained through the course to a challenging, real-world problem.

Unless discussed with the instructor at least one week in advance, all assigned work is due on or before 16:00 of the due date. The penalty for all late submissions will be 15% if received within 24 hours, 30% if received within 48 hours of the due date; no work will be accepted thereafter. Relative weightings of each evaluation component will be as follows:

Component Topic Weight
Assignment 1 TBD 15%
Assignment 2 TBD 15%
Assignment 3 TBD 15%
Term Project   25%
Final examination   30%

Last updated on 3 March 2010
by Jeremy Cooperstock