Andrew McGregor

Associate Professor

Welcome to the Fall 2012 homepage for CMPSCI 611 - Advanced Algorithms.

  • Instructor:
    • Andrew McGregor. Email: mcgregor at cs.
    • Office hours: Wednesday 10-11 in CMPS 334 or by appointment.

  • TA:
    • Kun Tu. Email: kuntu at cs.
    • Office hours: Monday 1-2 in Common Room (Computer Science Department) or by appointment.

  • Textbook: The required textbook will be "Lecture Notes from CMPSCI 611" by Prof. Micah Adler and this will be available from the Textbook Annex. See here for a list corrections and typos. Other books you might find generally useful include:
    • Introduction to Algorithms by Cormen, Leiserson, Rivest, and Stein (Library has the e-book)
    • Algorithm Design by Kleinberg and Tardos
    • Algorithms by Dasgupta, Papadimitriou, Vazirani (See here for penultimate draft.)
    You may also find sections of the following books helpful:
    • Randomized Algorithms by Motwani and Raghavan (Library has the e-book)
    • Probability and Computing by Mitzenmacher and Upfal (Library has the e-book)
    • Approximation Algorithms by Vazirani (Library has the e-book if you can read French)

  • Homeworks and Exams:
    Late Policy: Homeworks are due at the start of class by email. Late policy is that you're allowed to hand in at most one of the homework 48 hours late. You don't even need a good excuse! However, if later in the semester you don't hand in a homework on time, even if you have the best excuse in the world, then you'll get no credit for the second homework. Therefore, since you can't tell what might happen in the future, I'd suggest that you don't use your "lifeline" prematurely.

    Honesty and Collaboration Policy: Violating any of the following rules risks an automatic F. Ask if you're unsure about any of the policies.
    • Homework: Collaborating with at most two other students in the homework is allowed but answers must be written independently and you should mention who you worked with. You're not allowed to use material from the web (or indeed any material except from that listed on the course page) or talk about the homework with anybody outside your collaboration group (aside from the lecturer or TA.)
    • Quizzes: No collaboration! But you can consult any material you like.
    • Exams: Closed book and no collaboration.

  • Schedule and Slides: Here's an approximate schedule for the course. Note that this'll be updated as we go along depending on our progress and, hopefully, we'll get to squeeze in a couple of extra topcs. I'll add slides after each class (some links will be dead until the slides are added).

    Lecture Date Topic Reading and Background Assigned Due
    1 4 Sept Preliminaries, Mergesort, Master Theorem Section 1, 2.1, 2.2
    2 6 Sept Strassen's Matrix Multiplication Algorithm, Closest Pairs Section 2.3, 2.4. A blog post describing recent progress on matrix multiplication. Q1
    3 11 Sept The Fast Fourier Transform Section 2.5 HW1 Q1
    4 13 Sept Minimum Spanning Trees, Subset Systems Section 3.1, 3.2
    5 18 Sept Matroids Section 3.3
    6 20 Sept Bipartite Matchings Section 3.4
    7 25 Sept The Union-Find Problem, Kruskal's Algorithm Section 3.5 Q2 HW1
    8 27 Sept Knapsack Problem, Dynamic Programming, Floyd-Warshall Section 4.1-4.4 HW2 Q2
    9 2 Oct Dijkstra Section 4.5
    10 4 Oct Seidel Section 4.6
    - 9 Oct No Class (Monday Schedule)
    11 11 Oct Network Flow, Ford-Fulkerson Algorithm Section 5.1-5.4 HW2
    - 16 Oct Midterm First five chapters.
    12 18 Oct Quicksort, Karger's Algorithm Section 6.1 HW3
    - 23 Oct No Class
    - 24 Oct Distinguished Department Lecture: Algorithms, Graph Theory, and the Solution of Laplacian Linear Equations (Daniel Spielman, Yale) A video about Daniel Spielman's MacArthur Fellowship
    13 25 Oct Karger's Algorithm and Polynomial Identities Section 6.2, 6.3
    14 30 Oct Tail Inequalities and Lazy Select Section 6.5
    15 1 Nov Chernoff Bounds and Balls and Bins Section 6.5, Video showing concentration of binomial distribution HW3
    16 6 Nov Hash Functions and Count-Min Sketch Original Paper HW4
    17 8 Nov NP-Completeness Section 7.1-7.3.4, A Vote on P=NP
    18 13 Nov Subset Sum and Approximation Algorithms
    19 15 Nov P versus NP, Approximations, Independent Set Problem
    20 20 Nov More Approximations, Metric TSP Problem HW5, Q3 HW4
    - 22 Nov No class (Thanksgiving) Q3
    21 27 Nov Set Cover Problem, Poly-Time Approximation Scheme
    22 29 Nov Linear Programming, Simplex Method Q4
    23 4 Dec Analysis of the Simplex Method Q4
    24 6 Dec Review and Any Question HW5
    - 13 Dec 10:30am - 12:30pm Final Exam First nine chapters.