Randomized Algorithms

Prerequisites: Basic algorithms and elementary probability.

Objective: To understand how fundamental probabilistic tools can be applied to the design and analysis of algorithms.

Class Timings and Venue:

Textbooks:

Other references: (to be updated over time)

Grading Policy: TBD

Lecture #1: Introduction to the course. Polynomial identity testing and distinct element problem in streaming as examples.

Lecture #2 and #3: Random variable, expectation and its properties, Quick Sort, Selection, Geometric random variable, Coupon collector problem, Markov inequality, Las Vegas and Monte Carlo algorithms.

Lecture #4 and #5: Approximate Max-Cut algorithm, Approximate Max-3-Sat algorithm, Algorithm for large independent set, Connection to probabilistic method, Overview of Karger's Min-Cut algorithm.

Lecture #6: Karger’s Min-Cut algorithm and counting the number of minimum cuts, the Galton–Watson process, Fast-Cut algorithm.

Lecture #7 and #8: Jensen's Inequality, Conditional expectation and its properties, Analysis of Quicksort and Selection using conditional expectation, High probability bound for Quicksort. Variance and Chebyshev inequality.