Home Course Information Announcements Assignments, Solutions and Notes

Scheduling problems form a large part of resource allocation problems where sparse resources have to be assigned over time to complete tasks and optimize over one or multiple objectives. Such problems are ubiquitous in industrial manufacturing, operations research, economics and computer science. This course will cover the basics of scheduling theory from an algorithmic perspective. In particular, we will study efficient algorithms to solve various scheduling problems stressing on proofs of correctness rather than focussing on heuristics. The course will also contain a brief overview of computational complexity and various techniques for the design of efficient exact and approximate algorithms.

MATH 239/249 and either CO350 or CO352; or CO 355. Students should be familiar with discrete math, and an introductory course on algorithms will be advantageous. If in doubt, talk with the instructor.

There is no required textbook. The book

There will be bi-weekly assignments which will count for 30% towards the final marks. There will be one midterm in the third week of June counting for 25% and a final counting for 45% of the total marks. Students who are unable to take the midterm must submit an university regulated reason (for instance a medical certificate) for not doing so in which case some alternative will be discussed with the instructor.