NDMI018 - Aproximační a online algoritmy
Approximation and Online Algorithms
LS/Spring 2022 - Jiří Sgall
Monday 10:40, S8
The tutorials
are led by Tung Anh Vu and take place on Monday 14:00 in S8.
Syllabus
For many optimization problems it is impossible to find an
optimal solution fast. In such case, it is important to study
approximation algorithms that work faster, but the solution they
find is not necessarily an optimal one. Sometimes, we also have to
react to partial input without knowledge of the complete input, by
building a solution step by step. Such algorithms are called
on-line. The subject of the course is the study of these two
classes of algorithms. We assume knowledge on the level of the Bc.
course NDMI084 Introduction to approximation and randomized
algorithms.
Contact info
E-mail: last name at iuuk.mff.cuni.cz
Phone: 951 554 293
http://iuuk.mff.cuni.cz/~sgall/
Office: 3rd floor, room 307, Malostranské nám. 25
Topics covered
- 1. (Feb 21)
- introduction, approximation ratio, examples from previous
course
- coloring 3-chromatic graphs by O(n1/2) colors
- definition: pseudopolynomial algorithms, strong NP-hardness
[WS 3, V8]
- definition: PTAS and FPTAS [WS 3, V8]
- 2. (Feb 28)
- relation of strong NP-hardness and FPTAS
- scheduling, greedy algorithm (LIST) [WS 2.3]
- (F)PTAS for scheduling on identical machines [WS 3.2, V10]
- 3. (March 7)
- bin packing, FIRST FIT [WS 3.3, V9]
- asymptotic PTAS for bin packing [WS 3.3, V9]
- shortest paths - Dijkstra's algorithm as a primal-dual one
[WS 7.3]
- 4. (March 14)
- generalized Steiner tree - 2-approximation by a primal-dual
algorithm [WS 7.4]
- semidefinite and vector programming [WS 6.1, V 26.1-26.3]
- 5. (March 21)
- MAXCUT algorithm using semidefinite programming [WS 6.2, V
26.4-26.5]
- chromatic number, algoritm for coloring 3-chromatic graphs
by O(n1/4) colors [WS 6.5, WS 13.2]
- 6. (March 28)
- chromatic number, algoritm for coloring 3-chromatic graphs
by O(n1/4) colors [WS 6.5, WS 13.2]
- 7. (April 4)
- approximation of metric spaces by tree metrics [WS 8.5]
- application of tree metrics: buy-at-bulk network design [WS
8.6]
- 8. (April 11)
- online algorithms: paging - deterministic algorithms and
lower bounds [BE 3]
- paging - 2H_k-competitive randomized algorithm [BE 4]
- paging - H_k lower bounds for randomized algorithms [BE 4]
- generalizations, weighted and file caching
- April 18 - holiday, no class
- 9. (April 25)
- k-server problem, definitions, overview of results [BE
10.1-10.4, BE 10.7]
- k-server problem on a line and tree [BE 10.4]
- k-server problem, lower bound in an arbitrary metric space
[BE 10.1-10.3]
- work function algorithm for k-server [BE 10.7, no proof]
- May 2 - spring school, no class
- 10. (May 9)
- online matching [EFFS]
- PCP theorem and its applications [WS 16.3]
- May 16 - travel, no class
- 11. (May 23 - makeup class)
- PCP theorem and its applications, gap preserving reduction,
examples [WS 16.3]
- hardness of clique
- unique games conjecture [WS 13.3, WS 16.5]
Topics covered during the last run in 2020
- 1. (Feb 27)
- introduction, approximation ratio, examples from previous
course
- coloring 3-chromatic graphs by O(n1/2) colors
- scheduling, greedy algorithm (LIST) [WS 2.3]
- definition: pseudopolynomial algorithms, strong NP-hardness
[WS 3, V8]
- definition: PTAS and FPTAS [WS 3, V8]
- 2. (March 2, by Martin Koutecký)
- shortest paths - Dijkstra's algorithm as a primal-dual one
[WS 7.3]
- generalized Steiner tree - 2-approximation by a primal-dual
algorithm [WS 7.4]
- 3. (March 9)
- (F)PTAS for scheduling on identical machines [WS 3.2, V10]
- bin packing, FIRST FIT [WS 3.3, V9]
- asymptotic PTAS for bin packing [WS 3.3, V9]
- -- (March 16 - recommended reading)
- semidefinite and vector programming [WS 6.1, V 26.1-26.3]
- MAXCUT algorithm using semidefinite programming [WS 6.2, V
26.4-26.5]
- chromatic number, algoritm for coloring 3-chromatic graphs
by O(n1/4) colors [WS 6.5, WS 13.2]
- 4. (March 23 - recorded)
- MAXCUT algorithm using semidefinite programming - review [WS
6.2, V 26.4-26.5]
- chromatic number, algoritms for coloring 3-chromatic graphs
[WS 6.5]
- 5. (March 30 - partially
recorded)
- chromatic number, algoritm for coloring 3-chromatic graphs
by O(n1/4) colors [WS 13.2]
- approximation of metric spaces by tree metrics -
introduction [WS 8.5]
- 6. (April 6 - recorded)
- approximation of metric spaces by tree metrics [WS 8.5]
- 7. (April 20 - recorded)
- application of tree metrics: buy-at-bulk network design [WS
8.6]
- online algorithms: paging - deterministic algorithms and
lower bounds [BE 3]
- 8. (April 27 - recorded)
- paging - 2H_k-competitive randomized algorithm [BE 4]
- paging - H_k lower bounds for randomized algorithms [BE 4]
- generalizations, weighted and file caching
- k-server problem, definitions, overview of results [BE
10.1-10.4, BE 10.7]
- 9. (May 4 - recorded)
- k-server problem on a line and tree [BE 10.4]
- k-server problem, lower bound in an arbitrary metric space
[BE 10.1-10.3]
- work function algorithmus for k-server [BE 10.7, no proof]
- 10. (May 11 - recorded)
- online preemptive scheduling on uniformly related machines
- exact algorithm with known optimum [ES2]
- upper bounds for deterministic and randomized algorithms
(doubling algorithms) [ES2]
- survey of results for nonpreemptive scheduling [S]
- 11. (May 18 - recorded)
- online preemptive scheduling on uniformly related machines
- lower bounds for preemptive and nonpreemptive scheduling
on related machines [ES1]
- online matching [BM]
- 12. (May 25)
- online matching - recap
- PCP theorem and its applications, gap preserving reduction,
examples [WS 16.3]
- 12. (June 1)
- unique games conjecture [WS 13.3, WS 16.5]
Study materials
For approximation algorithms the most up-to-date is the book by
Williamson-Shmoys, I also recommend lecture notes by Williamson and
the book by Vazirani. For onlines algorithm for paging and k-server
I recommend the book by Borodin and El-Yaniv. For scheduling and
online matching, I give pointers to some additional papers.
Textbooks
[WS] D. P. Williamson, D. B. Shmoys: The Design of
Approximation Algorithms, Cambridge university press, 2011.
[V] V. V. Vazirani: Approximation Algorithms, Springer, 2001.
[BE] A. Borodin, R. El-Yaniv: Online computation and competitive
analysis. Cambridge university press, 1998.
[FG] A. Fiat, G. Woeginger: Online Algorithms - The State of
the Art, LNCS 1442, Springer, 1998.
J. Hromkovic: Algorithmics for Hard Problems, Springer, 2001.
G. Ausiello et al: Complexity and Approximation, Springer, 1999.
D. S. Hochbaum (editor): Approximation algorithms for NP-hard
problems, PWS publishing company, 1997.
Papers
[EFFS] Alon Eden, Michal Feldman, Amos Fiat, Kineret Segal:
An
Economics-Based Analysis of RANKING for Online Bipartite
Matching. SOSA 2021: 107-110.
Available as arXiv:1804.06637
[BM] Benjamin Birnbaum and Claire Mathieu: On-line
bipartite matching made simple
ACM SIGACT News, Volume 39 , Issue 1 (March 2008), pp. 80-87.
[S] J. Sgall: On-line
scheduling
In Online Algorithms: The State of the Art, eds.A. Fiat
and G. J. Woeginger, Lecture Notes in Comput. Sci. 1442, pages
196-231, Springer, 1998.
[ES1] L. Epstein, J. Sgall: A lower
bound for on-line scheduling on uniformly related machines
Oper. Res. Lett., 26(1):17-22, 2000.
[ES2] T. Ebenlendr, J. Sgall: Optimal
and online preemptive scheduling on uniformly related machines
In Proc. of the 21st Ann. Symp. on Theor. Aspects of
Comput. Sci. (STACS) , Lecture Notes in Comput. Sci. 2996,
pages 199-210. Springer, 2004.
Lecture notes (online)
David Williamson - a course on approximation algorithms: http://iuuk.mff.cuni.cz/~sgall/vyuka/dw-notes2.ps
Avrim Blum - a similar course: http://www-2.cs.cmu.edu/~avrim/Approx00/
Yossi Azar - a similar course: http://www.cs.tau.ac.il/~azar/online03.html