CS 223 -- Random Processes and Algorithms
Preliminary Syllabus
Instructor: Michael Mitzenmacher
E-mail: michaelm@eecs.harvard.edu
Office: Maxwell Dworkin 331
Phone: 496-7172
Office Hours: By appointment.
Syllabus: www.eecs.harvard.edu/~michaelm/CS223/syllabus.html
Handouts: www.eecs.harvard.edu/~michaelm/CS223/index.html
Objectives
The goal of this course is to provide you with a solid foundation
in the basic techniques used to analyze randomized algorithms and
probabilistic processes. The course is designed for advanced
undergraduates with an appropriate theory background (such as CS 124)
and first year graduate students. Graduate students in disciplines
outside theory are welcome and encouraged to take the course.
The course will primarily be lecture-based, although we will also read
and discuss some research papers.
Course content
The course emphasizes theoretical foundations. Topics to be
covered are expected to include the following:
- Expectation, Variance.
- Tail Bounds: Markov, Chevyshev, Chernoff.
- Balls and Bins Problems; the Poisson Distribution.
- Markov Chains: Uses and Examples.
- Random Graphs. Average-Case Analysis of Algorithms.
- The Probabilistic Method: Existence of Combinatorial Objects.
- Continuous Random Variables. Queues, Exponential Distributions.
- Entropy. Shannon's Theorem.
- Markov Chain Monte Carlo Simulation.
- Limited (Pairwise) Independence.
- Coupling.
Prerequisites
Students should have taken at least CS 124 or its equivalent.
Students should be able to program in a standard programming language;
C or C++ is preferred.
Knowledge of probability will be extremely helpful; however, the
necessary probability will be covered in class. Students with less
probability background may find it helpful to undertake some extra
reading and preparation on their own outside of class.
Assessment
The course will have homework assignments due roughly every week.
The assignments will primarily consist of theoretical problems, but
there will also be some programming exercises. The homework will
be worth roughly 2/3 of your grade. The remainder will be based on a
take-home final exam.
All assignments will be due at the beginning of class on the
appropriate day. Late assignments are not acceptable without the
prior consent of the instructor. Consent will be given for reasonable
extenuating circumstances, including medical crises, job interviews, attending
conferences, family situations, visiting potential graduate schools, etc.
Required Text
The class will be based on a book written by the instructor.
The book is Probability and Computing: Randomized Algorithms and
Probabilistic Analysis. There is an Amazon link available on the
instructors home page.
For students who want more background in probability, there are many
basic standard texts in the library. Sheldon Ross has written several
introductory books; my personal favorite is "Introduction to
Probability Models."
Class Information/Notes
Class notes, homework assignments, and other information will be made
available on the Web when possible. For access go to the class web
site. Generally this information will be available in Postscript
and/or PDF. In many cases, the class web site may be the only
location where information is posted or available, so look in from
time to time!
Student Lunches
In order to ensure that all students have a chance to interact
with me, I plan to arrange at least one day every other week where
I will be available to go to lunch with students at the dining hall.
Feel free to invite me! I'd be happy to talk about applying to
graduate school, thesis topics, or whatever you want to talk about.