We meet on Tuesdays and Thursdays 8.30-10AM in KEC 1005. Problem solving session questions are available here.

Prof. Borradaile will not hold fixed office hours this quarter. If you have a quick question, please drop by my office If you would like a longer meeting, please email me and suggest a couple of times that works for both of us. You can see when I am busy here.


This schedule is subject to change.

1 Beyond worse-case analysis
Approximation algorithms
Specifically: TSP is hard to approximate, but metric TSP isn't; two approximation algorithms for metric TSP, lower bounds and showing that an analysis is tight.
Reference: Section 2.4 of Design of Approximation Algorithms
2 Problem solving session A on Tuesday: problems 1 & 2
LP-based approximation
Reference: Section 1.7 & 1.8 of Design of Approximation Algorithms
3 Class cancelled on Tuesday
LP duality
Reference: Jeff Erickson's notes
4 Dual-fitting
Reference: Section 1.6 of Design of Approximation Algorithms
Problem-solving session B on Thursday: problems 3 & 4
5 Ellipsoid method notes c/o Michel Goemans
Max-cut reference: Section 5.1 of Design of Approximation Algorithms
SDP-based approximation
6 Problem-solving session C on Tuesday & Thursday: problems 5 & 6

Planar graphs and duality: poly-time max cut
Reference: Original max-cut in planar graphs paper
PTAS for max independent set in planar graphs
Reference: Lecture notes by Jeff Erickson

8 Treewidth and dynamic programming
Reference: review of dynamic programming techniques, Lecture notes by Jeff Erickson, especially Section 5.7

Problem-solving session D on Thursday: problem 7

9 Online algorithms and competitive analysis
Reference: Claire Mathieu's ski rental notes and Luca Trevisan's online algorithms notes
10 Planted and stable analyses
Reference: Tim Roughgarden's notes

Problem-solving session E on Thursday: problem 8
Write-ups for session D are due Wednesday!

11 Exam week: last writeup due Thursday at the latest for final grade to be submitted on time.


There will be two main components to this course, and you will be graded as such:


  • Discussion of problem solutions: It is expected that you will come to class with a solution to the assigned problem. Or a partial solution. Or questions that highlight where you got stuck or need help. You are highly encouraged to work together to solve these problems. The goal during class is to make sure that everyone understands the solution to these problems.
  • Evaluation: How helpful you are in helping the class solve problems and understand material? You will evaluate yourself and your classmates after each problem solving session. Participation is important both inside and outside class. If your participation is above average, your grade will be moved up a level (e.g. B+ to A-) or two (e.g. B to A-); if your participation is below average, your grade will be moved down a level or two; if your participation is near average, your grade won't be moved.


  • You will submit roughly 5 written assignments over the course of the quarter. The questions will be taken from those discussed in class. Therefore, the emphasis will be not on correctness (as correct and complete solutions should be obtained during class), but on style. Of course, if your solution is not correct, that will affect your grade.
  • Evaluation: It is my goal to give each student feedback that will improve the quality of their formal, written arguments over the course of the term. There is no final exam, but the final written assignment may be submitted during week 10 or finals week. These written assignments will account for 100% of your final grade, with adjustments made according to your participation as described above. Your goal should be to improve over the course of the term and this grade will reflect that. It is possible for everyone to improve the quality of their written mathematical arguments (even myself).
  • Each assignment is mandatory (the lowest grade will not be dropped) and written solutions must be prepared individually.
  • Late assignments will be accepted within reason, habitual tardiness will cause the revocation of this exception. Written solutions should be turned in within 2-3 days of the problem solving session.

Feedback on your overall performance in the course will be provided mid-way through the quarter.