Algorithms II
CS-450
Media
CS-450 Advanced Algorithms
Lecture 26
03.06.2021, 16:51
Lecture 25
03.06.2021, 16:46
Lecture 24
03.06.2021, 16:37
Lecture 23
25.05.2021, 10:23
Lecture 22
20.05.2021, 20:33
Lecture 21
20.05.2021, 18:56
Lecture 20
11.05.2021, 10:47
Lecture 19
07.05.2021, 15:22
Lecture 18
07.05.2021, 15:20
Lecture 17
29.04.2021, 18:03
Lecture 16
27.04.2021, 10:45
Lecture 15
27.04.2021, 10:29
Lecture 14
27.04.2021, 10:26
Lecture 13
15.04.2021, 16:30
Lecture 12
13.04.2021, 10:32
Lecture 11
12.04.2021, 17:07
Lecture 10
12.04.2021, 17:05
Lecture 9
23.03.2021, 14:38
Lecture 8
22.03.2021, 15:59
Lecture 7
22.03.2021, 15:57
Lecture 6
22.03.2021, 15:54
Lecture 5
22.03.2021, 15:51
Lecture 4
22.03.2021, 15:51
Lecture 3
22.03.2021, 15:45
Lecture 2
22.03.2021, 15:39
Lecture 1
22.03.2021, 15:32
Media
CS-450 Advanced Algorithms
Lecture 26
03.06.2021, 16:51
Lecture 25
03.06.2021, 16:46
Lecture 24
03.06.2021, 16:37
Lecture 23
25.05.2021, 10:23
Lecture 22
20.05.2021, 20:33
Lecture 21
20.05.2021, 18:56
Lecture 20
11.05.2021, 10:47
Lecture 19
07.05.2021, 15:22
Lecture 18
07.05.2021, 15:20
Lecture 17
29.04.2021, 18:03
Lecture 16
27.04.2021, 10:45
Lecture 15
27.04.2021, 10:29
Lecture 14
27.04.2021, 10:26
Lecture 13
15.04.2021, 16:30
Lecture 12
13.04.2021, 10:32
Lecture 11
12.04.2021, 17:07
Lecture 10
12.04.2021, 17:05
Lecture 9
23.03.2021, 14:38
Lecture 8
22.03.2021, 15:59
Lecture 7
22.03.2021, 15:57
Lecture 6
22.03.2021, 15:54
Lecture 5
22.03.2021, 15:51
Lecture 4
22.03.2021, 15:51
Lecture 3
22.03.2021, 15:45
Lecture 2
22.03.2021, 15:39
Lecture 1
22.03.2021, 15:32
Goals:
To learn the main techniques for analyzing and designing algorithms while also building a repertory of basic algorithmic solutions to problems in many domains.
Prerequisites:
Basic data structures (arrays, lists, stacks, queues, trees) and algorithms (binary search; sorting, including mergesort; graph connectivity; graph search); basic discrete mathematics (proof methods, induction, enumeration and counting, basic graph theory); data abstraction.
Topics:
Algorithm analysis techniques: worst-case, average-case, randomized, competitive, approximation, space. Basic algorithm design techniques: greedy, dynamic programming, divide-and-conquer, convex optimization, spectral techniques, submodular function optimization, and randomization. For more topics, see the course webpage.
Times and Places:
Lectures on Mondays 13-15 (CE 12) and Tuesdays 13-15 (CM 13); exercise session on Mondays 15-17 (BC02, BC04, INM201, INM203); office hours on Tuesdays 15-16 (GRA331, GRA332, GRC001).
Exams and Homework:
There will be two exams. One midterm exam and one final exam during the exam session.
In addition, there will be two homeworks. The first homework will take place during mid-October and the second homework in mid-December. The homeworks can be made in groups in up to three students and the solutions must be handed in as a single PDF file for each group.
Grading:
The grade will be based on quizzes [5%], two homeworks [25%], midterm [30%], and final [40%].
TAs: Davide Mazzali <davide.mazzali@epfl.ch>, Ekaterina Kochetkova <ekaterina.kochetkova@epfl.ch>, Miltiadis Stouras <miltiadis.stouras@epfl.ch>, Radu Vintan <radu.vintan@epfl.ch>, Lukas Vogl <lukas.vogl@epfl.ch>, Weronika Wrzos-Kaminska <weronika.wrzos-kaminska@epfl.ch>,
Course videos from before: https://mediaspace.epfl.ch/channel/CS-450+Advanced+Algorithms/29357
- Introduction to the course, administrivia, topics, prerequisites, etc.
- When does the simplest algorithm work, i.e., greedy? The answer is captured by matroids.
- Matroid intersection and arborescences.
- Intro slides (File)
- Notes for Lecture 1 (File)
- Notes for Lecture 2 (File)
- Exercise Set 1 (File)
- Exercise Set 1 with solutions (File)
- Notes for Lecture 4 (File)
- Notes for Lecture 5 (File)
- Exercise Set 2 (File)
- Exercise Set 2 with solutions (File)
- Live scribes for Lecture 4 (URL)
- Live scribes for Lecture 5 (URL)
- Notes for Lecture 6 (File)
- Notes for Lecture 7 (File)
- Exercise Set 3 (File)
- Exercise Set 3 with Solutions (File)
- Notes for Lecture 8 (File)
- Notes for Lecture 9 (File)
- Live Scribes for Lecture 8 (URL)
- Live Scribes for Lecture 9 (URL)
- Exercise Set 4 (File)
- Exercise Set 4 with Solutions (File)
- Midterm 16-17 (File)
- Midterm 17-18 (File)
- Midterm 18 - 19 (File)
- Midterm 20-21 (File)
- Midterm 2023 Autumn (File)
- Midterm 16-17 with Solutions (File)
- Midterm 17-18 with Solutions (File)
- Midterm 18-19 with Solutions (File)
- Midterm 20-21 with Solutions (File)
- Midterm 2023 Autumn with Solutions (File)
- Room assignment for midterm (and placement within rooms) (File)
For lecture 10, we use the lecture notes from Lecture 9.
- Lecture 11 (File)
- Exercise Set 5 (File)
- Exercise Set 5 with solutions (File)
- Live Scribes for Lecture 10 (URL)
- Live Scribes for Lecture 11 (URL)
- OIa's notes for Lecture 12 (File)
- Ola's notes for Lecture 13 (File)
- Live Scribes for Lecture 12 (URL)
- Live Scribes for Lecture 13 (URL)
- Exercise Set 6 (File)
- Exercise Set 6 with Solutions (File)
- Notes for Lecture 14 (File)
- Exercise set 7 (File)
- Exercise set 7 with Solutions (File)
- Notes for Lecture 15 (File)
For lecture 19 we continue with LSH (see notes for Lecture 18).
- Notes for Lecture 16 (File)
- Exercise set 8 (File)
- Midterm with Solutions (File)
- Exercise set 8 with solutions (File)
- Notes for Lecture 17 (File)
For Lecture 21, see the notes of Lecture 20: we will continue with the minimization of submodular functions and do some problem solving if we have time.
- Notes for Lecture 18 (File)
- Exercise set 9 (File)
- Exercise set 9 with solutions (File)
- Notes for Lecture 19 (File)
- Notes for Lecture 20 (File)
- Notes for Lectures 21 - 22 (File)
- Exercise Set 10 (File)
- Exercise Set 10 with Solutions (File)
- Live Scribes for Lecture 20 (URL)
- Live Scribes for Lecture 21 (URL)
For the notes of Lecture 22 (see last week)
- Notes for Lecture 23 (File)
- Exercise Set 11 (File)
- Exercise Set 11 with Solutions (File)
- Moran Feldman's Notes on Submodular Functions (File)
- Live Scribes for Lecture 22 (URL)
- Live Scribes for Lecture 23 (URL)
16 December - 20 December
- Notes for Lecture 24 (File)
- Exercise set 12 (File)
- Exercise set 12 with solutions (File)
- Notes for Lecture 25 (File)