PSU CS410/510 Search and Scheduling
Winter 1999
Course Syllabus

When: 1800-2150 (6:00-10:00PM) Tuesdays
Where: Lincoln Hall, Room 247
Who: Bart Massey <bart@cs.pdx.edu>
Office Hour:Tuesday 3:00PM-4:00PM or by e-mail appointment. I will probably make it by appointment only after no one shows up for several weeks in a row.

What: This course covers techniques in combinatorial search and their application in ``scheduling'': assigning times to tasks under constraints. Those of you who took my CS410/510 last year will recognize some of the material, but this course is a bit more applied and has a much stronger scheduling emphasis.

Prerequisites:

Readings and Texts

Required Text: An unpublished book by Dr. Richard Korf, entitled Heuristic Search. It is still under development, so we will be trying to give Dr. Korf some feedback as we use the text in the course. Available at Clean Copy for about $15.00.

Supplementary Text (not required): Scheduling Algorithms, 2nd ed. by Peter Brucker. On library reserve, or you can order it from any decent online bookseller for about $90.00.

Other Texts and Readings:

Assigned Papers:

[npart]
Richard E. Korf. A Complete Anytime Algorithm For Number Partitioning. J. Art. Int. 106(1998) pp. 181-203.
[mcnfl]
Mark D. Johnston and Steven Minton. Analyzing A Heuristic Strategy For Constraint-Satisfaction And Scheduling. In [zwefox], pp. 257-289.
[rcps]
James M. Crawford. An Approach To Resource Constrained Project Scheduling. Proc. 1996 Artificial Intelligence and Manufacturing Research Planning Workshop. [PostScript] [Compressed PostScript] [Acrobat PDF]
[swo]
David E. Joslin and David P. Clements. ``Squeaky Wheel'' Optimization. J. Art. Int. Res. 10(1999), pp. 353-373. [PostScript] [Compressed PostScript] [Acrobat PDF]
[loc]
Laurent Michel and Pascal Van Hentenryck. Job-Shop Scheduling in Localizer. Brown University Technical Report CS-98-03, April 1998. [PostScript] [Compressed PostScript] [Acrobat PDF]

There also will be some web stuff and a variety of other readings. Handouts will be provided for all required readings except the Korf text; however, you may want to go to the library and look at other material in the reserve texts, or even purchase some of these texts.

Coursework

The current plan is for the coursework to consist of one brief writing assignment, two small programming projects, and a somewhat larger course project at the end.

You may choose to do the course project by yourself or with a small (2-3 person) group. Results will be presented (briefly) in class.

No quizzes or examinations are currently planned, but I reserve the option to schedule them at a later date.

Course Schedule

DateTopicsReadingsHW
1/11 Introduction to Scheduling, Combinatorial Search, and Constraint Satisfaction Korf ch. 1, 12.0-12.1
Brucker ch. 1
HW 1: Find A Scheduling Problem
1/18 Problems, Instances, and Complexity Classes
Bin Packing and Simple Scheduling
Brute Force Search
Garey and Johnson ch. 2
Korf ch. 2
HW 2: Brute Force Bin Packing
1/25 Systematic and Local Search Techniques Korf ch. 3, 4, 12.2-12.5
Brucker ch. 3.4
2/1 Scheduling Spaces and Heuristics Korf: Number Partitioning [npart]
Johnston and Minton: Min-Conflicts [mcnfl]
HW 3: Solving A Simple Scheduling Problem
2/8 Realistic Scheduling Problems Brucker ch. 6 (except 6.2.2, 6.3.1, 6.4.1-6.4.3,6.5-6.6)
2/15 Case Study: The Aircraft Assembly Problem At CIRL Crawford: CIRL RCPS Scheduler [rcps] Project
2/22 Case Study: Squeaky Wheel Optimization Joslin and Clements: ``Squeaky Wheel'' Optimization [swo]
2/29 Project Presentations
3/7 Project Presentations


This course was a lot of fun last time, and I'm sure it will be again. Please let me know if you have further questions I can answer.

Bart Massey <bart@cs.pdx.edu>