Tentative List of Topics for the Semester
- Graph algorithms: matchings and flows
- Parallel algorithms for algebraic and graph problems
- NP-Complete problems
- Linear and convex programming
- Approximation algorithms
- Submodular functions
- Spectral methods
- Markov chains and random sampling
Lecture Schedule
Links to video recordings of the lectures will be posted here for asynchronous viewing.
8/25— Matchings I: The Maximum Matching Problem (Video; Notes)
Reading: Lecture notes on matchings, §1.1
8/27— Matchings II: Augmenting paths (Video; Notes)
Reading: Lecture notes on matchings, §1.2-1.3
8/29— Matchings III: Hopcroft-Karp Algorithm (Video; Notes)
Reading: Lecture notes on matchings, §1.4
9/1—
NO CLASS DUE TO LABOR DAY
9/3—
Matchings IV: Analysis of Hopcroft-Karp (Video;
Notes)
Reading: Lecture notes on matchings, §1.4
9/5— Matchings V: Bipartite Min-Cost Perfect Matching (Video; Notes)
Reading: Lecture notes on matchings, §3.1
9/8— Matchings VI: LP relaxation of min-cost matching (Video; Notes)
Reading: Lecture notes on matchings, §3.2
9/10— Linear Programming I: Relation with min-cost matching (Video; Notes)
Reading: Lecture notes on linear programming, §1
9/12— Linear Programming II: Weak duality (Video; Notes)
Reading: Lecture notes on linear programming, §2
9/15— Linear Programming III: Strong duality (Video; Notes)
Reading: Lecture notes on linear programming, §2
9/17— Linear Programming IV: Proof of strong duality (Video; Notes)
Reading: Lecture notes on linear programming, §2
9/19— Linear Programming V: Simplex method (Video; Notes)
Reading: Lecture notes on linear programming, §1
9/22— Matchings VII: Online matching (Video; Notes)
Reading: Lecture notes on matchings, §4
9/24— Matchings VIII: Primal-dual analysis of online matching (Video; Notes)
Reading: Lecture notes on matchings, §4
9/26—
IN-CLASS MIDTERM 1
9/29—
Matchings IX: Waterfilling analysis (Video;
Notes)
Reading: Lecture notes on matchings, §4.4
10/1— Matchings X: Ranking algorithm, Introducing permanent vs. determinant (Video; Notes)
Reading: Lecture notes on matchings, §5.1-5.2
10/3— Matchings XI: Algebraic Algorithms for Matching (Video; Notes)
Reading: Lecture notes on matchings, §5.1-5.2
10/6— Network Flow I: Definitions (Video; Notes)
Reading: Lecture notes on network flow, §1
10/8— Network Flow II: Ford-Fulkerson (Video; Notes)
Reading: Lecture notes on network flow, §2-3
10/10— Network Flow III: Max-Flow Min-Cut (Video; Notes)
Reading: Lecture notes on network flow, §2-3
10/13—
NO CLASS DUE TO FALL BREAK
10/15—
Network Flow IV: Dinitz's Algorithm (Video;
Notes)
Reading: Lecture notes on network flow, §4
10/17— Network Flow V: Finishing Dinitz's Algorithm (Video; Notes)
Reading: Lecture notes on network flow, §4
10/20— Network Flow VI: Applications (Video; Notes)
Reading: Lecture notes on network flow, §6
10/22— Approximation Algorithms I: Vertex Cover (Video; Notes)
Reading: Lecture notes on approximation algorithms, §1 and §2.1-2.2
10/24— Approximation Algorithms II: Weighted Vertex Cover and Set Cover (video not recorded) (Notes)
Reading: Lecture notes on approximation algorithms, §2.3
10/27— Approximation Algorithms III: Analyzing Greedy Set Cover using Dual Fitting (Video; Notes)
Reading: Lecture notes on approximation algorithms, §2.3
10/29— Multicommodity Flow I: Sparsest Cut and Multicommodity Flow Problems (Video; Notes)
Reading: Lecture notes on multicommodity flows, §3.1, 4.1
10/31— Multicommodity Flow II: Approximate Max-Flow Min-Cut (Video; Notes)
Reading: Lecture notes on multicommodity flows, §4.2-4.3
11/3— Multicommodity Flow III: Proof of Approximate Max-Flow Min-Cut (Video; Notes)
Reading: Lecture notes on multicommodity flows, §4.2-4.3
11/5— Multiplicative Weights I: Investment vs. Gambling (Video; Notes)
Reading: Lecture notes on multicommodity flows, §1
11/7—
IN-CLASS MIDTERM 2
11/10—
Multiplicative Weights II: The Hedge Algorithm (Video;
Notes)
Reading: Lecture notes on multicommodity flows, §1
11/12— Multiplicative Weights III: Solving Zero-Sum Games (guest lecture by Éva Tardos) (Video; Notes)
Reading: Lecture notes on multicommodity flows, §5
11/14— Multiplicative Weights IV: Solving Multicommodity Flow (video not recorded) (Notes)
Reading: Lecture notes on multicommodity flows, §3
11/17— Spectral Graph Theory I: The Graph Laplacian (Video; Notes)
Reading: Lecture notes on spectral graph theory, §1-2
11/19— Spectral Graph Theory II: Normalized Laplacian, Self-adjointness, Eigenvalues (Video; Notes)
Reading: Lecture notes on spectral graph theory, §1-2
11/21— Spectral Graph Theory III: Sparsity, Expansion, Cheeger's Lower Bound (Video; Notes)
Reading: Lecture notes on spectral graph theory, §2.1-4
11/24— Spectral Graph Theory IV: Cheeger's Upper Bound (Video; Notes)
Reading: Lecture notes on spectral graph theory, §5
12/1— Markov Chains I: Markov Chains and stationary distributions (Video; Notes)
Reading: Lecture notes on Markov chains, §1
12/3— Markov Chains II: Reversibility and Metropolis-Hastings (Video; Notes)
Reading: Lecture notes on Markov chains, §2
12/5— Markov Chains III: Mixing times and coupling
Reading: Lecture notes on Markov chains, §3-4
12/8— Markov Chains IV: Analyzing mixing times using canonical paths
Reading: Lecture notes on Markov chains, §5 (to be written)