MA-INF 1213: Randomized Algorithms & Probabilistic Analysis

If you have questions or remarks to Part I or the tutorials, contact Melanie Schmidt.

Lecture

When

Where

Start

Lecturer

Monday, 10:00-11:30
Wedn., 12:00-13:30

LBH / Hörsaal III.03a

April 11

Röglin (June-),
Schmidt (-June)

Schedule

Notice: The lecture notes have been updated on 28th of June.

Notice: The Lecture Notes for the complete lecture (Part I+II) appeared! This PDF is now the main course material and will be updated irregularly. The PDFs for lectures 1-13 are still available below, but are now outdated and will not be updated.

Content

The lecture has two parts. First, we consider the design and analysis of randomized algorithms. Many algorithmic problems can be solved more efficiently when allowing randomized decisions. Additionally, randomized algorithms are often easier to design and analyze than their (known) deterministic counterparts. For example, we will see an elegant algorithm for the minimum cut problem. Randomized algorithms can also be more robust on average, like randomized Quicksort.

The analysis of randomized algorithms builds on a set of powerful tools. We will get to know basic tools from probabily theory, very useful tail inequalities and techniques to analyze random walks and Markov chains. We apply these techniques to develop and analyze algorithms for important algorithmic problems like sorting and k-SAT.

Statements on randomized algorithms are either proven to hold on expectation or with high probability over the random choices. This deviates from the classical algorithm analysis but is still a worst-case analysis in its core. In the second part of the lecture, we learn about probabilistic analysis of algorithms. There are a number of important problems and algorithms for which worst-case analysis does not provide useful or empirically accurate results. One prominent example is the simplex method for linear programming whose worst-case running time is exponential while in fact it runs in near-linear time on almost all inputs of interest. Another example is the knapsack problem. While this problem is NP-hard, it is a very easy optimization problem in practice and even very large instances with millions of items can be solved efficiently. The reason for this discrepancy between worst-case analysis and empirical observations is that for many algorithms worst-case instances have an artificial structure and hardly ever occur in practical applications.

In smoothed analysis, one does not study the worst-case behavior of an algorithm but its (expected) behavior on random or randomly perturbed inputs. We will prove, for example, that there are algorithms for the knapsack problem whose expected running time is polynomial if the profits or weights are slightly perturbed at random. This shows that instances on which these algorithms require exponential running time are fragile with respect to random perturbations and even a small amount of randomness suffices to rule out such instances with high probability. Hence, it can be seen as an explanation for why these algorithms work well in practice. We will also apply smoothed analysis to the simplex method, clustering problems, the traveling salesman problem, etc.

Exams

Even though there is no formal requirement to participate in the tutorials and to submit the homework problems, it is strongly recommended to do so. Oral exams can be taken on July 27, July 28, July 29, and August 11. Please schedule your exam with Antje Bertram until June 30. The re-exams will be on September 26.