6.856J Randomized Algorithms
Studies how randomization can be used to make algorithms simpler and more efficient via random sampling, random selection of witnesses, symmetry breaking, and Markov chains. Models of randomized computation. Data structures: hash tables, and skip lists. Graph algorithms: minimum spanning trees, shortest paths, and minimum cuts. Geometric algorithms: convex hulls, linear programming in fixed or arbitrary dimension. Approximate counting; parallel algorithms; online algorithms; derandomization techniques; and tools for probabilistic analysis of algorithms.
6.856J will be offered this semester (Spring 2019). It is instructed by D. R. Karger.
This class counts for a total of 12 credits. This is a graduate-level class.
© Copyright 2015 Yasyf Mohamedali