CS599: Randomized Algorithms
Most recent message posted:
- Time and Location: Tuesday and Thursday, from 12:30-1:50, in room
- Instructor: David Kempe
- Office hours: by appointment
- There are no TAs.
Scope of Course
For many important problems, randomized algorithms are the fastest or
simplest known algorithms, often both. Hence, randomization has become
one of the central paradigms of modern algorithm design.
At the same time, randomization is commonly used in modeling the real
world, leading to a detailed study of random structures. Not only are
models including randomness important in their own right, but they
also often serve to prove the existence of structures previously not
known to exist (Probabilistic Method).
This class will cover a variety of the techniques for analyzing
randomized algorithms and models of random structures. Particular
emphasis will be placed on efficient or novel algorithms.
The following is a preliminary list of topics that will be covered in
terms of techniques. It may be expanded or shortened based on time
- Expectation, Variance, simple bounds, and applications
- Tail Bounds (Chernoff/Hoeffding, Martingale) and applications
- MiniMax Principle and applications
- Probabilistic Method and Random Graphs
- Markov Chains, Rapid Mixing, Sampling and Counting
- Sampling and VC dimenstion
- CS 570 (grade at least B in the PhD version, or at least A in the
MS version) or explicit permission of instructor.
- familiarity with mathematical reasoning, in particular
probability theory (sample spaces, random variables,
expectation, higher moments).
The following textbook is required:
R. Motwani and P. Raghavan: Randomized Algorithms (Cambridge University Press)
In addition, we will occasionally reference recent (and not-so-recent)
research or survey papers.
Other useful sources of information (in some cases covering material
beyond the scope of this course) are the following:
For reviewing prerequiste material, see:
- M. Mitzenmacher and E. Upfal: Probability and Computing (Cambridge
- N. Alon and J. Spencer: The Probabilistic Method (Wiley).
- M. Habib, C. McDiarmid, J. Ramirez-Alfonsin and B. Reed (Editors):
Probabilistic Methods for Algorithmic Discrete Mathematics
The following papers will be covered in depth in class:
- J. Kleinberg and E. Tardos: Algorithm Design (Addison-Wesley).
- S. Dasgupta, C. Papadimitriou, U. Vazirani: Algorithms (McGraw Hill).
- T. Cormen, C. Leiserson, R. Rivest and C. Stein: Introduction to
Algorithms (MIT Press).
M. Jerrum: A very simple algorithm for estimating the number of
k-colourings of a low-degree graph.In Random Structures and
Algorithms 7(2), 1995, pages 157-165. The particularly
relevant sections are 1 and 4.
J. Fakcharoenphol, S. Rao, K. Talwar:
A tight bound on approximating arbitrary metrics by tree metrics.
In Proc. of STOC 2003, full version to appear in JCSS.
- Y. Bartal:
Probabilistic Approximation of Metric Spaces and its Algorithmic Applications.
In Proc. of FOCS 1996.
- Y. Bartal:
On Approximating Arbitrary Metrics by Tree Metrics.
In Proc. of STOC 1998.
- D. Haussler and E. Welzl. Epsilon-nets and simplex range
queries. Discrete and Computational Geometry, 2 (1987), pages
- H. Brönnimann and M. Goodrich: Almost Optimal Set Covers in Finite VC-Dimension.
In Proc. 10th ACM SCG, 1994, pages 293-302.
- J. Kleinberg: Detecting a Network Failure . In Proc. 41st IEEE FOCS, 2000, pages 231-239.
Assignments and Grading
There will be about 4-5 homework assignments, one takehome midterm,
and one takehome final. The homeworks will cumulatively count for
40% of the grade, the midterm for 25%, and the final for 35%. All
assignments will be posted here once issued.
Homeworks should be predominantly done individually. However,
limited interaction is appropriate, so long as it is clearly
marked on the homework who you discussed ideas with. The midterm
and final must be solved individually.
All students are expected to maintain the utmost level of academic
integrity. Passing off anyone else's (whether it be a fellow
student or someone outside the university) work as your own is a
serious infraction, and will lead to appropriate
sanctions. Similarly, any collaboration during exams is
prohibited. Please consult the USC
Student Conduct Code
for details on what is and is not appropriate, and for the possible
consequences of infractions.
- 05/15/2009: The final course grades have been entered and
submitted. The overall distribution was 4*A, 1*A-, 1*B-, 1*C+.
At this point, I will only change grades if I made a
serious error, e.g., entered the wrong person's grade, or
added incorrectly. Other than that, these grades are
final. Have a great summer!
- 04/29/2009: The final exam has been
posted. It is due in David's office by noon on Wednesday,
- 04/20/2009: The fifth homework has been
posted. It is due in class on Thursday, 04/30.
- 04/06/2009: The fourth homework has been
posted. It is due in class on Tuesday, 04/14.
- 03/11/2009: The midterm has been posted. It
is due in David's office by Friday, 03/27, noon.
- 03/11/2009: For those of you who want to read more on VC-dimension:
the topics we are currently covering are from the three papers listed above
by Haussler/Welzl, Brönnimann/Goodrich, and Kleinberg.
- 02/26/2009: The third homework has been
posted. It is due in class on Thursday, 03/05.
- 02/11/2009: The second homework has been
posted. It is due in class on Thursday, 02/19.
- 01/25/2009: The first homework has been
posted. It is due in class on Tuesday, 02/03.
- 01/14/2009: Starting immediately, the classroom is VHE 210
(instead of the previous RTH 321).
- 12/09/2008: This is where announcements about homeworks and other
class-related issues will be posted. Check back
frequently. (Note that the Blackboard Page will not be used.)