Computer Science 687 / 001

Advanced Artificial Intelligence


Thursday, 4:30–7:10 PM, in Sandbridge Hall 107.


Sean Luke.


CS480, CS580, or an equivalent class taught at another university. This is a hard prerequisite: generally students who have not met this prerequisite will 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 very broad 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 try to cover all the topics that might show up on the Ph.D. Qualifying Exam.

All programming assignments will be done in Common Lisp, the traditional exploratory programming language of AI. Assignments will also be done by teams of students. Ordinarily Common Lisp is thoroughly taught in CS580, but not this past semester, so we will spend time reviewing it and performing basic programming in it first.

Course Web Page


Artificial Intelligence: A Modern Approach SECOND (green) or THIRD (blue) editions, by Russell and Norvig. Do not get the FIRST (red) edition.
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.