Watch a video introduction to this course on YouTube.
To give an introduction to the fundamental problems of artificial intelligence and an introduction to the basic models and algorithms used in tackling these problems. Another objective is to expose the student to frontier areas of computer science, while providing sufficient foundations to enable further study.
CS 486 is a course for CS major students, and is normally completed in a student's fourth year. The course should be relevant for all students who are interested in applications of a computer to solve sophisticated problems.
Prerequisites: CS 341/CM 339 or SE 240; Computer Science students only.
Corequisite: STAT 206 or 231/241.
Antirequisite: ECE 457.
Artificial Intelligence: A Modern Approach., 3rd Edition, by S. Russell and P. Norvig, Prentice-Hall, 2003.
3 hours of lectures per week. Normally available in Fall, Winter and Spring.
Introduction to artificial intelligence. What is AI? Goals and methodology. Building intelligent agents.
Building systems that solve problems by searching. Constraint satisfaction problems, backtrack and local search algorithms. Automated problem solving, graph search algorithms, searching implicit graphs, A* search. Automated planning.
Building systems that know facts and reason on them to solve problems. Knowledge representation, propositional logic, first order logic, commonsense knowledge. Logical inference. Representing change. Building a knowledge base.
Building systems that reason and act in uncertain environments. Probabilistic reasoning, joint probabilities, conditional probabilities, conditional independence, Bayes rule, Bayesian networks. Utilities, decision theory, sequential decision making, value of information. Game theory, multi-agent systems, adversarial environments, partially observable environments.
Building systems that improve with experience. Learning a function from examples, linear functions, generalized linear functions (nonlinear bases), neural networks, decision trees. Generalization theory, over-fitting and under-fitting, complexity control. Topics may also include reinforcement learning and unsupervised learning.
Building systems that communicate. Natural language understanding, parsing, grammars, semantic interpretation, pragmatics.

David R. Cheriton School of Computer Science
University of Waterloo
Waterloo, Ontario, Canada N2L 3G1
Tel: 519-888-4567 x33293
Fax: 519-885-1208
Contact | Feedback: cs-uops@cs.uwaterloo.ca | David R. Cheriton School of Computer Science | Faculty of Mathematics