CS 420/520: Graph theory with applications to computer science
Instructor:
Amir Nayyeri (Office hours: Thr 3:30pm-4:30pm at KEC 3061)
TA:
Pingan Zhu (Office hours: Mon 2:00pm-3:00pm at Kelley Atrium)
Lectures: Tue, Thr 2:00pm-3:20pm in COVL 221
Course description: The course covers efficeient (exact or approximation) algorithms for fundamental graph optimization problems such as minimum spanning trees, shortest paths, maximum matching, planar separators, Steiner trees and traveling salesmans problem.
Tentative topic list:
- Minimum spanning trees, the Brouvka algorithm, the Karger-Klein-Tarjan randomized algorithm
- Shortes paths, the Bellman-Ford algorithm, Goldberg's algorithm
- Maximum matching in bipartite graphs, the Hopkroft-Karp algorithm for bipartite graphs, the randomized algorithm of Goel, Kapralov and Khanna for regular bipartite graphs.
- Random walks, Markov chains, Random walks relation to electrical circuits
- Approximation algorithms, constant factor approximations for the Steiner tree problem, the traveling salesman problem and the multiway cut problem.
- Planar graphs, a quadratice algorithm for planarity testing, the Euler formula, the planar separator theorem and its applications, nessted dissection.
Course requirement: There will be four problem sets.
Prerequisites: (CS 325 or CS 325H) and MTH 232
Homework:
Lectures:
- Thr 1/9: Introduction, minimum spanning trees, the Brouvka algorithm.
References: (1) Basic graph properties, section 18.1, Jeff Erickson. (2) Minimum spanning trees, sections 1 - 4, Uri Zwick.
- Tue 1/14: Probability and computing (an overview).
References: (1) Michael Mitzenmacher and Eli Upfal. 2005. Probability and Computing: Randomized Algorithms and Probabilistic Analysis. Cambridge University Press, New York, NY, USA, first two chapters.
- Thr 1/16: A randomized linear time algorithm to find MST.
References: (1) Minimum spanning trees, sections 5 - 7, Uri Zwick. (2) A randomized linear-time algorithm to find minimum spanning trees, Karger, Klein, Tarjan, 1995.
- Tue 1/21: Single source shortest path.
References: (1) Shortest Paths , Jeff Erickson. (2) Computing shortest paths and detecting negative cycles , Uri Zwick.
- Thr 1/23: Goldberg's scaling algorithm for the shortest paths problem.
References: (1) Computing shortest paths and detecting negative cycles , Uri Zwick. (2) Scaling algorithms for the shortest paths problem , Andrew V. Goldberg, 1995.
- Tue 1/28: Finishing Goldberg's algorithm.
References: (1) Computing shortest paths and detecting negative cycles , Uri Zwick. (2) Scaling algorithms for the shortest paths problem , Andrew V. Goldberg, 1995.
- Thr 1/30: Maximum matching in bipartite graphs.
References: (1) Maximum matching in bipartite and non-bipartite graphs , Uri Zwick. (2) Matching algorithms , Piotr Sankowski and Stefano Leonardi.
- Tue 2/4: Maximum matching in bipartite graphs, the Hopcroft-Karp algorithm.
References: (1) Maximum matching in bipartite and non-bipartite graphs , Uri Zwick. (2) Matching algorithms , Piotr Sankowski and Stefano Leonardi.
- Thr 2/6: No class, OSU campus is closed due to snow.
- Tue 2/11: Randomized perfect matching in regular bipartite graphs.
References: (1) Randomized perfect bipartite matching , Daniel A. Spielman. (2) Perfect matchings in O(n log n) time in regular bipartite graphs , Ashish Goel, Michael Kapralov, Sanjeev Khanna, 2010.
- Thr 2/13: Perfect matching via Tutte matrix.
References: (1) Testing polynomials and perfect matching , Alistair Sinclair.
- Tue 2/18: (Guest Lecturer: Glencora Borradaile) Minor closed property, planar embedding, duality, tree-cotree, Euler's formula, reanalysis of Boruvka for planar graphs.
References: (1) Planar graphs , Jeff Erickson.
- Thr 2/20: The planar separator theorem.
References: (1) Planar separator I, II , Guy Blelloch. (2) A planar separator for planar graphs , Richard Lipton, Robert Tarjan, 1979.
- Tue 2/25: Finishing planar separator theorem, another (probabilistic) proof of the separator theorem.
References: (1) A Simple Proof of the Existence of a Planar Separator , Section 1, Sariel Har-Peled. (2) Separators for Sphere-Packings and Nearest Neighbor Graphs , Gary Miller, Shang-Hua Teng, William Thurston, Stephen Vavasis, 1997.
- Thr 2/27: Planar separator theorem, applications.
References: (1) Planar separator theorem and its applications , the applications section, Ran Duan. (2) Applications of a planar separator theorem , Sections 3 and 7, Richard Lipton, Robert Tarjan, 1980. (3) Planar separator theorem on Wikipedia.
- Tue 3/4: Introduction to property testing.
References: (1) Introduction to sublinear algorithms , Dana Ron. (2) Sublinear algorithms , Sofya Raskhodnikova.
- Thr 3/6: Testing graph connectivity.
References: (1) Property testing of graphs , Dana Ron. (2) Sublinear algorithms , Sofya Raskhodnikova.
- Tue 3/11: The traveling salesman problem (TSP), an exact algorithm using dynamic programming.
References: (1) A dynamic programming approach to sequencing problems , subsection 1.2, Michael Held, Richard Karp, 1962.
- Thr 3/13: The traveling salesman problem (TSP), a 2-approximation, a 1.5-approximation.
References: (1) Optimization Paradigms , chapter 2, Serge Plotkin.