Randomized and Approximation Algorithms

Advanced Course, 2 + 2

Basic Information

Coordinator:Danupon Nanongkai
Lecturers:Evangelos Kipouridis and Tomasz Kociumaka
Time:Wednesday, 14:00-15:30, E1 4, Room 024
First lecture:October 15th
Office hours:Thursday, 15:30-16:30, E1 4, 3rd floor
Tutors:Anouk Duyster and Yonggang Jiang
Time:Tuesday, 16:15-17:45, E1 4, Room 024
First tutorial:October 21st
Credits:6
Grade formula:The grade is fully determined by the written exam. To qualify for the exam, 50% points in the exercise sheets are required.
Exam:February 16th (14:00-18:00); re-exam March 16th (14:00-18:00)
Prerequisites:Basic knowledge of Algorithms and Probability Theory.
Moodle:https://moodle.mpi-sws.org/course/view.php?id=86
You can view the contents as a guest. If you do not have a Moodle account (needed to submit assignments), fill in this Google form.
Feedbacks:We welcome any anonymous feedback (lectures, tutorials, assignments) through this Google form to help us improve the quality of this course.

Description

Several practically relevant algorithmic problems are unfortunately not known to have deterministic efficient algorithms. More specifically, for several important problems, it is highly unlikely that an efficient algorithm exists that produces an optimal solution on every input instance. Since often such problems are too important to be left unadressed, there are several "relaxations" being used to adress such problems. Two of them are:

  • Approximation Algorithms: One can relax the objective of searching for the optimal solution and instead design an efficient algorithm that produces solutions which are provably "close" in value to the optimal one.
  • Randomized Algorithms, and Probabilistic Analysis of Algorithms: Often, allowing an algorithm to make random choices during its execution leads to significantly more efficient computation (possibly with the drawback that the efficiency is only guaranteed with some probability, or that the output is correct only with some probability). Especially in the context of approximation algorithms, such randomized methods provide powerful tools.  Furthermore, many problems are known to be difficult only in specific, pathetic instances whereas for instances apearing in practice efficient algorithms may exist. Probabilistic analysis of algorithms can, in many cases, give a theoretical explanation of this phenomenon.

In this course we will focus on several techniques for designing and analyzing randomized and approximation algorithms. We will also see a couple of interesting recent results in the area.

 

Tentative Schedule

DateSpeakerTopicAlgorithmsAssignment
Oct 15TomaszIntroduction to the Course and to Randomized AlgorithmsGlobal Min-Cut algorithm. Univariate Polynomial Identity Testing [M+U, Ch. 1]Link
Oct 22TomaszBasic Tools (Independence, Linearity of Expectation) and their ApplicationsMax3SAT approximation, QuickSort analysis [M+U, Ch. 2] Link
Oct 29TomaszConcentration I: Applications of Markov's and Chebyshev's InequalitiesFrom Las Vegas to Monte Carlo, Floyd-Rivest median selection [M+U, Ch. 3] Link
Nov 5TomaszConcentration II: Applications of Chernoff's InequalityFrequency estimation, set discrepancy, maximum bin load [M+U, Ch. 4 & 5.1]Link, Solution
Nov 12TomaszHashing: Dictionaries and FiltersPerfect hashing [M+U, Ch. 15.3], partial Bloom filters, Bloom filters via negative correlation; cf. [M+U, Ch. 5.5]Link
Nov 19TomaszDerandomizationMax-Cut [M+U, Ch. 6.2.1], Independent Set [M+U, Ch. 6.4.1], Set DiscrepancyLink
Nov 26TomaszRandom Walks2-SAT & 3-SAT [M+U, Ch. 7.1]Link
Dec 3EvangelosIntroduction to Approximation Algorithms. Greedy AlgorithmsVertex Cover 2-apx (Maximal Matchings), Set Cover O(logn)-apx [W+S, Ch. 1.6]Link
Dec 10EvangelosLocal SearchScheduling on Identical Parallel Machines [W+S, Ch. 2.3], Edge Coloring [W+S, Ch. 2.7]Link
Dec 17EvangelosDynamic Programming in Approximation Algorithms, Approximation SchemesFPTAS for Knapsack [W+S, Ch. 3.1]Link
Jan 7EvangelosIntroduction to Linear ProgrammingIntro to Linear Programming, LP 2-apx for Vertex Cover, LP 4-apx for Correlation Clustering [W+S, Ch. 1.6, Appendix A]Link
Jan 14EvangelosLinear Programming, Randomized RoundingIntegrality Gaps, Randomized Rounding, Intro to Duality [W+S, Ch. 5.1, 5.3, 5.4, 5.6] 
Jan 21EvangelosLinear Programming, DualityPrimal-Dual: Synchronized Increases, Dual-Fitting 
Jan 28EvangelosAdvanced topics in approximation algorithmsEllipsoid Method, Semidefinite Programming, PCP 
Feb 4Simon and MartinAdvanced Topics  

Bibliography

  • M. Mitzenmacher, E. Upfal. Probability and Computing. Second edition. Cambridge University Press, 2017.
  • D.P. Williamson, D.B. Shmoys. The Design of Approximation Algorithms. Cambridge University Press, 2011.