Time: WeFr 11:00AM~12:20PM
Location: Filmore 319
Credits: 3
Please sign up the course on Piazza.
Shi Li
Office: 328 Davis Hall
Email: [first name][last name initial][at][buffalo][dot][edu]
Homepage: http://www.cse.buffalo.edu/~shil/
Office hours for the course: Wed 2:00pm-3:00pm and Fri 4:00pm-5:00pm.
This course will mainly focus on approximation algorithms, which is the theoretical study of efficient heuristic algorithms for NP-hard problems with provable guarantee on the quality of the solutions. It not only provides practical algorithms for many applications, but also provides a way to measure different levels of hardness these problems exhibit. The course will present various techniques in designing approximation algorithms, such as greedy algorithm, dynamic programming, linear and semi-definite programming rounding, dual fitting, local search and metric embedding.
A prerequisite of CSE 431/531 is required. A basic knowledge of probability theory, linear programming and graph theory is expected.
There are no required textbooks, but most of the contents we will discuss are covered in the following two books:
Your final grade will be computed as follows:
No late homeworks will be accepted. You are allowed to discuss with classmates on homework problems. However, it is highly recommended that you first think about each problem for enough time before the discussion. You must write your solutions by yourself, in your own words. You need to write down the names of the students you collaborated with. Those who fail to follow these rules will be treated as cheating and violation of academic integrity. Other than getting an immediate F for the course, further actions consistent with the Department Academic Integrity Policy will be taken.
A project can be one of the following forms:
If you are using the course to satisfy the master project requirement, you need to do either 2 or 3.
Homeworks | Post Dates | Due Dates |
---|---|---|
Homework 1 | 9/22/2017 | 10/6/2017 |
Homework 2 | 10/11/2017 | 10/25/2017 |
Homework 3 | 10/30/2017 | 11/13/2017 |
Homework 4 | 11/22/2017 | 12/6/2017 |
Homework 5 | 12/9/2017 | 12/22/2017 |
Week | Date | Topics | Contents | Reading | Notes |
---|---|---|---|---|---|
1 | Aug 30 | Introduction | Administrivia, Introduction | Sec 1.1 in WS | lec1.pdf |
Sep 1 | Greedy Algorithms | k-center | Sec 2.2 in WS | lec2.pdf | |
2 | Sep 6 | Maximum coverage, set cover | Lec 3 from CC | lec3.pdf | |
Sep 8 | Scheduling on identical machines | Sec 2.3 in WS | lec4.pdf | ||
3 | Sep 13 | Dynamic Programming | Knapsack Covering and Packing | Sec 3.1 in WS | lec5.pdf |
Sep 15 | Scheduling on identical machines | Sec 3.2 in WS | lec6.pdf | ||
4 | Sep 20 | LP Rounding | Set cover, Maximum coverage | Sec 1.7 in WS | lec7.pdf |
Sep 22 | Set Cover, Maximum coverage | lec8.pdf | |||
5 | Sep 27 | Unrelated machine scheduling | Sec 11.1 in WS | lec9.pdf | |
Sep 29 | No class today due to CSE50 celebration | ||||
6 | Oct 4 | LP Rounding | Concentration bounds | Sec 5.10 in WS | lec11.pdf |
Oct 6 | Machine minimization, Congestion minimization | Sec 5.11 in WS | lec12.pdf | ||
7 | Oct 11 | Dual Fitting | Weighted Set Cover | Sec 1.5 in WS | Lec11, Lec12 from Ola Svensson's course |
Oct 13 | Uncapacitated facility location | Sec 7.6 in WS | |||
8 | Oct 18 | Uncapacitated facility location | |||
Oct 20 | Local Search | Max-cut, sub-modular function maximization | Lec12 of Chekuri | ||
9 | Oct 25 | Uncapacitated facility location | Sec 9.2 in WS | lec17.pdf | |
Oct 27 | Uncapacitated facility location | lec18.pdf | |||
10 | Nov 1 | Semi- Definite Programming | Ellipsoid method | Sec 4.3, 6.1 in WS | lec19.pdf |
Nov 3 | Goemans-Williamson algorithm for max-cut | Sec 6.2 in WS | lec20.pdf | ||
11 | Nov 8 | Multiplicate Weight Update | Multiplicative weighte update | A Survey | lec21.pdf |
Nov 10 | 0-sum game and Nash-equilibrium | lec22.pdf | |||
12 | Nov 15 | Streaming Algorithms | Computing F0 | lec23.pdf | |
Nov 17 | Computing F2 | lec24.pdf | |||
13 | Nov 22 | Fall Recess | |||
Nov 24 | |||||
14 | Nov 29 | Lower Bound via Communication Complexity | Necessity of Approximation | ||
Dec 1 | Necessity of Randomization | ||||
15 | Dec 6 | MapReduce Algorithms | MapReduce Model | Slides by Suri | |
Dec 8 | Computing Triangles |