Tentative
Course Outline
- Topic: Network Flow
- Reading: Chapter 26
- Ford-Fulkerson algorithm
- Karp-Edmonds Algorithms
- Poly-time, pseudo poly-time, and strong
poly-time
- Matroids
- Reading: Chaper 17 Greedy algorithms
- Max/Min weight independent set greedy
algorithm
- Matroid intersection algorithm (notes, notes)
- Topic: Linear Programming
- Writing network flow as a linear program
- Writing shortest path as a linear program
- Simplex greedy algorithm vs. divide and
conquer interior point methods
- Weak duality, complementary slackness and
statement of strong duality
- Writing the diet
problem as a linear program and computing its dual
- Dual of network flow
- Dual of the shortest path problem
- Topic: Average-case analysis, randomized
algorithms, and bounding tails of distributions
- Reading: Chapters 5, 7, 11
- Worst case analysis vs. Average case
analysis of Quicksort
- Linearity of expectations
- Linear time Minimum Spanning Tree
Algorithm (notes)
- Bounding Tails and Union Bounds (Chernoff
bounds)
- Analysis of streaks in Bernoulli trials
- Analysis of Quicksort
- Las Vegas vs. Monte Carlo algorithms
- Topic: Problem Complexity, Information
Theoretic and Adversarial Lower Bounds
- Time complexity of a problem
- Omega(n log n) sorting lower bound
- Element Uniqueness lower bound
- n-1 lower bound for find the maximum
- 3n/2 lower bound for computing smallest and
largest number
- Impossibility of
reaching distributed consensus in the asychronous model (reference)
- Yao's technique: randomized lower bound for
sorting for Las Vegas algorithms
- Topic: Reductions to prove relative hardness
and NP-hardness
- Reduction from 3SAT to vertex cover
- Topic: Fixed Parameter Tractability
- Reading:
MIT OpenCourseWare Notes (local copy) or Notes
from class taught by David Karger
- Bounded tree search algorithm for vertex
cover
- Kernalization algorithm for
vertex cover
- Equivalence of kernalization and fixed
parameter tractability
- Topic: Approximation algorithms
- Reading: Chapter 35
- Vertex Cover using maximal
matching lower bound
- 2 approximations
for Traveling Salesman
- Christofides 3/2 approximation for
Traveling Salesman
- Gap reductions for TSP with and without
triangle inequality to prove non-approximatability
- Maximum weight vertex cover using linear
programming lower bound
- Greedy weighted set cover using dual
feasible solution as a lower bound (skipping this semester
due to lack of time)
- Randomized 2 approximation for MAXSAT, and
derandomization using method of conditional expectations
- Pseudo-poly time dynamic program and PTAS
for knapsack
- Topic: Online problems and competitiveness
analysis
- Reading: paper
- Paging, general lower
bound and resource augmentation analysis of LRU
- Amortization and potential functions
- Reading: Chapter 17
- multipop
- Counting in binary
- Dynamic tables
- 2-competiveness of Move to Front for List
Update and general 2 lower bound on competitiveness of
deterministic algorithms
- Analysis of Round Robin Scheduling for the
objective of minimizing total response time (notes)
- Topic: Online
Learning From Experts and Regret Analysis of online problems
- Multiplicative Weights: Analysis
of the weighted majority and randomized weighted majority
algorithms (Source:
Notes by Nina Balcan. Notes from
Anupam Gupta)
- Multiplicative Weights to solve linear
programs: (notes 1, notes 2: Source: Anupam Gupta)
- Topic: Parallel and Distributed Computing
- Luby's algorithm for maximal independent set
in the CONGEST model (reference)
- Topic: Streaming Algorithms (reference)
- Count Min Sketch
- AMS frequency estimation
- Topic: Metric embeddings ?
- Fast Fourier Transform Algorithm