Advanced Algorithms: Markov Chains

Instructor:   Ivona Bezakova,   email:   my_initials at cs.rit.edu (humans please replace my_initials by ib)
Class meets:   Tu/Th   12-1:50pm,   room 70-3000
Office hours:   Tu 4-5pm, Th 3-5pm, Fr 3-4pm, office 70-3645 (if I am not in my office at 3pm on Thursday or Friday, I am probably still copying student work for the 4003-242 course - please look for me in the faculty copy room, right opposite to the 70-3435 classroom);
e-mail works for many, please allow about 24h reply time


0. Homework and Reading Assigments

For information about topics covered in the class, reading and homework assignments, follow this link.


1. Text

Mark Jerrum: Counting, Sampling and Integrating: Algorithms and Complexity, Birkhäuser, 2003, ISBN: 978-3764369460 (required textbook).

Other recommended books:


This webpage will contain additional materials, includins pdf's of the slides from the lectures.


2. Course description and intended learning outcomes.

General course description: This course focuses on advanced algorithms and data structures in a specialized area of computer science or in a specific scientific domain. Both practical and theoretical aspects of algorithms will be explored to provide coverage of the state of the art and shortcomings of computing in the specialized area. This includes proofs of correctness and complexity analysis of the algorithms. Students will write a term paper that explores the current state of research in the area or reports on the student's implementation and experiments with algorithms for a chosen problem. Students will also be required to make presentations.

This section's description: Markov chain Monte Carlo is a popular technique for sampling, counting, and integrating, used in many scientific disciplines including statistics, statistical physics, and many areas of computer science. A Markov chain is a random process that, starting from any configuration, keeps performing small random changes to the configuration until it eventually reaches a completely random configuration. The process can often be used to not only obtain a random sample, but also to count all possible configurations (in physics the weighted version of counting is called the partition function). Students will learn about the design and analysis of Markov chains and their connection to counting problems. The course emphasizes discrete structures and analysis of the mixing time of Markov chains (i.e. how many steps guarantee a random configuration).

Intended learning outcomes:

3. Grading Policy
4. Topics
5. Technical issues