This graduate-level seminar course will cover algorithmic concepts and techniques in the research frontier in algorithm design. There are three main themes for the course:
The main goal of course is not to give an in-depth coverage of tools and techniques for any of these themes, but rather, to let students have a taste of these different models for algorithm design and some of the basic ideas used to tackle problems in these models. Some topics of the course are:
The course is based on student and instructor presentations of research papers and book chapters/sections. Each student needs to give a presentation once (unless he/she registered the course only for 2 credits). Students can always volunteer to give more presentations. The instructor will give the presentations when a lecture is not assigned to any student.
Students should have mastery of basic mathematical tools such as mathematical induction, probability theory and matrix multiplication, and should be comfortable with mathematical proofs. The course is intended for graduate students who are already or are interested in pursuing research in theoretical computer science. Exceptional undergraduate students who have strong interest in research in algorithms and have taken CSE331 can ask the instructor for permission to register the course.
The grading contains 3 parts:
The final score for the course will be S/U (S means satisfactory; U means unsatisfactory). You may choose to register the course for 1 credit, 2 credits or 3 credits. To get an "S" with 3 credits, you need to get at least 75 total score. If you registered the course for 2 credits, you can choose between part B and part C. To get an "S" with 2 credits, your score for part A plus the maximum of your score for part B and for part C must be at least 45. To get an "S" for 1 credit, your score for part A must be at least 15.
Participation of class is required and graded. Each lecture (except for the first and last lectures) is worth 10 points:
The score will be scaled so the maximum possible score for this part is 20.
The score for a presentation is based on how well the presentation is organized and how clear the presenter delivers the ideas and techniques. If you give more than one presentations, your score for this part will be the best score of all presentations. The presenter for a lecture should also design a homework problem for the rest of the class.
It is recommended that the presenter meets and discusses the papers/sections he/she will present with the instructor on Tuesday, the day before the presentation day. The discussion does not affect the score of the presentation on Wednesday; so the presenter is encouraged to ask as many questions as possible.
The final project can be one of the following forms:
Please refer to the university Academic Integrity Policy regarding academic dishonesty:
Lec# | Date | Content | Reading Material | Presenter |
---|---|---|---|---|
1 | Sep 3 | Introduction | Shi Li | |
2 | Sep 9 | TSP and k-center | Section 1.1, 2.2, 2.4 of WS book | Shi Li |
3 | Sep 16 | LP rounding for set cover | Section 1.2, 1.3, 1.7 of WS book | Rohit Dubey |
4 | Sep 23 | Greedy and primal-dual for set cover | Section 1.4, 1.5, 1.6 of WS book | Sai Vikneshwar |
5 | Sep 30 | FPTAS for knapsack problem | Chapter 8 of Vaz book | Erika Santos |
6 | Oct 7 | LP rounding for multi-cut | Section 8.3 of WS book | Poonam Kumari |
7 | Oct 14 | SDP rounding for max-cut | Section 6.1, 6.2 of WS book | Chaowen Guan |
8 | Oct 21 | Online paging problem | Chapter 1,2, 3.1 of BRICS minicourse | Shiva Mariswamy Subramnir |
9 | Oct 28 | Move-to-front algorithm for list-accessing | ST paper | Sathish Kumar Deivasigamani |
10 | Nov 4 | KVV online algorithm for bipartite matching | KVV paper | Dhinesh Nakkeerar |
11 | Nov 11 | Streaming algorithm for estimating L_0 norm | Lecture Notes by Tim Roughgarden Section 1,2,3,5 | Sahajdeep Singh Bedi |
12 | Nov 18 | Streaming algorithm for estimating L_2 norms | Lecture Notes by Tim Roughgarden Section 4 | Subramanian Madhanagopal Sivasankaran |
13 | Dec 2 | Lower bound via communication complexity | Lecture Notes by Tim Roughgarden Section 6,7,8,9 | |
14 | Dec 9 | Summary |
You can choose one of the following topics. For the topic you selected, read one paper from the list. You can either write a 5-10 page report, or implement the algorithm in the paper. The report should be self-contained and should contain formal proofs. If you choose to implement the algorithm, you need to provide some necessary comments in your source files and some sample inputs and ouputs. If you have any questions, do not hestitate to ask the instructor.
You can find the list of topics and papers here.