Date: Spring, 1999
Time: Tuesday, Thursday 1400-1550
Instructor: Bart Massey <firstname.lastname@example.org>
This is a tentative syllabus. Some changes may occur before and/or after the course begins.
This course explores methods for the solution of constraint satisfaction and related problems using search techniques, in the context of real-world problems such as resource-bounded scheduling, enterprise planning, classical planning, and one- and two-player games. The emphasis is on coding projects, and on reading and reporting on selected literature.
The course is, of necessity, an overview of the area: there is far more material here than can be thoroughly covered in the time available. A student project and presentation will provide an opportunity for focus on a particular topic of individual interest.
The course announcement may be helpful in understanding the intent of the course.
Michael Garey and David Johnson
Computers and Intractability: A Guide to the Theory of NP-Completeness
W H Freeman & Co.
I won't lecture out of this more than once or twice, but it is indispensable as a reference, both during the course and afterward. The title is a bit intimidating, but take heart: this book is a practical nuts-and-bolts guide to separating tractable problems from intractable ones, including a large number of real-world examples.
Each student will be expected to do all assigned reading, to present a paper in class, and to do one or more coding homework assignments plus a small final coding project.
This is a seminar-style course: I will attempt to substitute discussion for lecture to the extent that I find it feasible. It is important that students come to class prepared to discuss the material.
|1||3/30||Introduction To Search|
|2||4/01||Review of NP-Completeness|
|3||4/06||Search Problems and Tools|
|4||4/08||Constraint Satisfaction I: Foundations|
|5||4/13||Constraint Satisfaction II: Search|
|6||4/15||``Easy'' NP-Hard Problems|
|9||4/27||Classical Planning I: Foundations|
|10||4/29||Classical Planning II: Search|
|11||5/04||One-Player Games (With Applications)|
|12||5/06||Two-Player Games (With Applications)|