Computer Science 687 / 001

Advanced Artificial Intelligence


Monday, 7:20-10:00 PM, in Room 326 of Innovation Hall.


Sean Luke.


CS480, CS580, or an equivalent class taught at another university. This is a hard prerequisite: generally students who have not taken this prerequisite fail CS687 and become sad.

About the Class

This course will cover several advanced topics in Artificial Intelligence beyond those covered in CS580. These topics will extend existing knowledge about search, machine learning, reasoning, and situated action. Some topics are required; others may be negotiated with the class. Topics may include planning, probabilistic reasoning, reinforcement learning, evolutionary computation, advanced neural networks, natural language processing, constraint satisfaction, reactive systems, knowledge-based learning, robotics, vision, emergent behavior, and intelligent multiagent systems.

AI is a breadth-oriented field, and the goal of this course is to provide the student with sufficient breadth beyond CS580 to act as a well-versed AI researcher. Informally, CS580 + CS687 typically cover all the topics that might show up on the Ph.D. Qualifying Exam.

Any programming assignments, other than the final project, will be done in Common Lisp, the traditional exploratory programming language of AI. Ordinarily (but not always) Common Lisp is thoroughly taught in CS580. If not, we may spend time reviewing it and performing basic programming in it first, depending on the CS687 student population. The course may introduce other AI languages as well, including Prolog and Scheme.

Course Web Page


Artificial Intelligence: A Modern Approach SECOND edition, by Russell and Norvig. This book is green, not red.
ANSI Common Lisp by Paul Graham, ISBN: 0133708756.

These textbooks are readily bought on Amazon, Barnes & Noble, etc., and you do not need them in the first week or two.


This course will consist largely of several large projects and two exams. The breakdown will be approximately: 1. Homework and (several) Projects: 50% with higher weight given to harder projects. 2.Exams (2 of them): 25% Each

Course Outcomes

1. An ability to employ various basic machine learning, probabilistic reasoning, search, knowledge representation, and planning techniques. 2. An ability to use Lisp at a moderate to high level of proficiency. 3. An ability to develop nontrivial artificial intellience applications. 4. An ability to work in teams. 5. An ability to identify the right AI technique to use for a given problem, and to understand the issues and tradeoffs involved.