(3,0,6) (Lectures, Labs and tutorials, outside work)
Prof. Jeremy R. Cooperstock
McConnell Engineering, Room 424
email: address and policy
Office hours: See course web page
ENGTR 0060, TTh 16:00-17:25
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.
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.
The instructor values it. Google my name with "academic integrity".
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 |
optional readings indicated in square brackets: [Brooks, A Robust Layered Control System for a Mobile Robot | Minsky, Why People Think Computers Can't | Brooks, Intelligence without Reason | Etzioni, Intelligence without Robots | Dennett, Can Machines Think]
|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 |
[ EM applet]
|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 |||Mar 9 | Mar 11|
|March 15||Recurrent Neural Networks||Hopfield networks, Boltzmann machines||
Kröse and van der Smagt, Intro to NN Ch. 5 |
[Hopfield network applet | Necker Cube applet | Schraudolph & Cummins Introduction to NN Lecture 3 | Hopfield, Neural Networks and Physical Systems with Emergent Collective Computational Abilities | Fels, An Adaptive Interface that Maps Hand Gestures to Speech | Bugmann, Classification Using Networks of RBF]
|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|
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.
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.
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:
Last updated on 3 March 2010
by Jeremy Cooperstock