CSE 525: Randomized Algorithms and Probabilistic Analysis (WI 08)

[course description | lectures | assignments | related material]

course description

Instructor: James Lee, CSE 640, tel. 616 4368
Time: Mondays and Wednesdays in CSE 403, 12-1:20pm
Office hours:  By appointment

Teaching assistant: Alexander Jaffe
Office hours: M 230-330, W 130-230

Course evaluation: Scribe notes, a few homeworks, and a final exam.

About this course:
Randomization and probabilistic analysis have become fundamental tools in modern Computer Science, with applications ranging from combinatorial optimization to machine learning to cryptography to complexity theory to the design of protocols for communication networks. Often randomized algorithms are more efficient, and conceptually simpler and more elegant than their deterministic counterparts.

We will cover some of the most widely used techniques for the analysis of randomized algorithms and the behavior of random structures from a rigorous theoretical perspective. A (non-random) sample of topics to be covered includes elementary examples like randomized pattern matching and primality testing, large-deviation inequalities, the probabilistic method, martingales, random graphs, random geometric algorithms, and the analysis of Markov chains. Tools from discrete probability will be illustrated via their application to problems like randomized rounding, hashing of high-dimensional data, and load balancing in distributed systems.

Here is the template for the scribe notes.

schedule of classes

rough overview:
  1. Introduction - types of randomized algorithms, elementary examples
  2. Linearity of expectation, Markov's inequality, and the probabilistic method
  3. Variance, Chebyshev's inequality, and threshold phenomena in graphs
  4. The Laplace transform, Chernoff bounds, and applications: Low-congestion routing, randomized rounding
  5. Balls in bins, the power of two choices, load balancing
  6. Geometric concentration, random projections, dimension reduction
  7. More geometry: High-dimensional search and compressed sensing
  8. The Lovasz Local Lemma
  9. Martingales: Doob, Azuma, and applications
  10. Random walks and Markov chain Monte Carlo
[Note: These scribe notes have not been proofread or corrected. Read at your own risk.]
  1. January 7 [pdf] Randomness in computation, polynomial identity testing, and perfect matchings.
    Look here for the MVV parallel matching algorithm based on determinants of the Tutte matrix.
  2. January 9 [pdf] Fingerprints and pattern matching, start of primality testing.
    Terry Tao's description of Wigderon's lecture on randomness in computation.
    The AKS deterministic primality testing algorithm.
  3. January 14 [pdf] Miller-Rabin algorithm for primality testing, linearity of expectation, Markov's inequality.
  4. Jaunary 16 [pdf] The probabilistic method, crossing numbers, monotone circuits for majority
  5. January 21 MLK day - no class
  6. January 23 [pdf] Threshold phenomena in random graphs and Chebyshev's inequality
  7. January 28 [pdf] Chernoff bounds
  8. January 30 [pdf] Randomized rounding, min-congestion routing, and L_2 congestion in planar graphs.
  9. Feburary 4 [pdf] Routing in the hypercube.
  10. February 6 [pdf] Concentration of measure, isoperimetric inequalities, and tail bounds. The Johnson-Lindenstrauss lemma.
  11. February 11 [pdf] Hoeffding-Azuma inequality, proof of JL with discrete random matrices.
  12. February 13 [pdf] The power of two choices.
  13. February 25 Introduction to martingales, Azuma's inequality.
  14. February 27 Random geometric TSP. Doob-Kolmogorov inequality.
  15. March 3 Random walks on graphs and electrical networks.
  16. March 5 Markov chains and mixing times.
  17. March 10 Rapid mixing and coupling arguments.
  18. March 12 Sampling random graph colorings.

related material

Required text:
Probability and Computing: Randomized Algorithms and Probabilistic Analysis by Michael Mitzenmacher and Eli Upfal.

Courses at other schools:

Suggested references:


  1. Homework #1 due Monday, Feb 11.
  2. Homework #2 due Wednesday, Feb 27.
  3. Homework #3 due Wednesday, Mar 12.