Motivations and Objectives: : In many domains the input arrives over time and an algorithm is
required to make its current decision without knowing the future in its entirety. This requirement---of
online decision making with uncertain inputs---naturally appears in various real-world settings,
such as ad allocations and job scheduling. This course will cover multiple algorithmic approaches that
have been developed for dealing with such algorithmic problems involving uncertainty. These techniques
are quite diverse and span several research areas including (i) competitive analysis of algorithms, (ii)
regret minimization and online convex optimization in theoretical machine learning, (iii) stochastic
approaches such as multi-armed bandits and prophet inequalities.
In this course, we address both classical works and several recent developments in these fields. Another
goal of the course will be to understand the strengths and weakness (lower bounds) of various design
methodologies.
Course Methodology: The course will have a significant project component. This will engage the students to explore active research fronts in the above-mentioned topics.
Intended audience: Graduate students in computer science and mathematics with theoretical interests. Interested undergraduate students with very strong mathematical skills.
Prerequisites: E0 225 (Design and Analysis of Algorithms) is a soft prerequisite. Alternatively, a foundational understanding of algorithms and sufficient mathematical maturity will suffice.
Grading: 50% HW, 20% Projects, 30% Final.
The following topics will likely be covered in the course: