Textbook:
The following book is recommended: Fundamentals
of Algorithmics, Gilles Brassard & Paul Bratley, Prentice-Hall,
1996 (ISBN 0-13-335068-1).
Other books:
Randomized Algorithms, Rajeev
Motwani & Prabhakar Raghavan, Cambridge University Press, 2000,
(ISBN
0-521-47465-5).
Approximation algorithms, Vijay V.
Vazirani, Springer-Verlag, 2003, (ISBN 3-540-65367-8).
Approximation Algorithms for NP-Hard
Problems,
Edited
by Dorit S. Hochbaum, PWS Publishing Company, 1997, (ISBN
0-534-94968-1).
Also provided:
Class notes, references to web sites, articles and
other material.
Course's objective:
The course can be understood as having two
sections: Fundamentals and Applications. In the fundamentals, we first
review a few essential concepts of algorithm analysis & design
(seen
in cs208). Then, we spend some time making connections between real
life
application problems and their mathematical representations
(mathematical
modeling). Algorithms are designed based on mathematical
representations
of real life problems, a requirement when using the scientific method.
To some extend, you will be on familiar ground as mathematical
representations
play a similar role in science as data structures for algorithms. Next,
for a few lectures, we make a digression from algorithm analysis &
design in order to introduce Complexity Theory. This theory provides a
classification of computational problems based on what seems to be
their
inherent time (space) requirement for classical computers. This
classification
identifies some problems as inherently difficult to solve by computers,
problems for which it is unlikely we will ever find any efficient
algorithm.
On the other hand, solving many of these problems is crucial for the
well
been of our society. In the Applications section, we study different
algorithm
design techniques often used to tackle those computationally hard
problems:
search techniques, randomized and approximation algorithms. About 1/4
of
the semester will be dedicated to the fundamentals and 3/4 to algorithm
design techniques.
Outline of topics covered:
Midterm:
Final:
Marking Scheme:
Academic Dishonesty: