[course description
| lectures
| assignments
| related material]
Instructor: James Lee,
CSE 640, tel. 616 4368
Office hours: Tuesdays and Thursdays, 4:30-5:30pm, or by appointment
Teaching assistant: Ning Chen, CSE 310
Office hours: Thursdays at 4:30pm
Classes are Tuesdays and Thursdays, 10:30-11:50am, EEB 025
Course evaluation: Bi-weekly 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.
Courses at other schools:
Suggested references: