CSC473 (Winter 2020): Advanced Algorithms

General Info

The lectures allow us to explain new material, how it relates to the rest of the course (and what you've learned in other courses), and to show examples of applying the material. Lecture notes that go into more details will be made available on this page.

Students often learn a lot from working with one another. You are encouraged to meet with other students from class for this purpose.

Lectures roughly fall into four main topics: randomized algorithms; linear programming and primal-dual algorithms; approximation algorithms; streaming algorithms.

Tentative Schedule of Lectures

Week Topic Readings
Week 1: Jan 6 –12 Monte Carlo Algorithms:
Global Min-Cut
From "Algorithm Design" by Kleinberg and Tardos:
Min Cut
Week 2: Jan 13–19 Finish Min Cut
Las Vegas Algorithms:
Closest Pair of Points
Karger-Stein Algorithm
From "Algorithm Design" by Kleinberg and Tardos:
Closest Pair of Points
Finding triangles
Week 3: Jan 20–Jan 26 Approximate Near Neighbours
Fingerprinting for String Matching
Approximate Near Neighbour Search
CLRS Section 32.2.
Lecture Notes on Karp-Rabin
Week 4: Jan 27–Feb 2 Finish Approximate Near Neighbours
Approximate Near Neighbour Search
Streaming Algorithms
Week 5: Feb 3–9 Streaming Algorithms Variance and Chebyshev Worksheet
Streaming Algorithms
Week 6: Feb 10–16 Finish Streaming Algorithns
Random Walks and Markov Chains
Streaming Algorithms
Section 3.3. of this book chapter cover Randomized Selection.
Markov Chains
You can also read the intro section of Chapter 4 of this book.
Section 4.8 of the book covers PageRank.
Linear Algebra Review Sheet
Feb 17–23 NO CLASS: Reading Week
Week 7: Feb 24–March 1 Random Walks and Markov Chains
Markov Chains
Couplings Worksheet
Week 8: March 2–8 Linear Programming Linear Programming
Week 9: March 9–15 LP Duality and Complementary Slackness
Linear Programming
Examples of LP formulations.
Week 10: March 16–22 Matchings and the Hungarian Algorithm Goemans's lecture notes.
Slides
Week 11: March 23–March 29 Finish Matchings
Deterministic and Randomized Rounding Algorithms
Goemans's matchings lecture notes.
Matchings slides
Sections 1.7, 5.1 of the Williamson and Shmoys book.
All of Chapter 1 of the book is recommended.
Rounding slides
Week 12: March 30–April 3 Derandomization and Chernoff bounds Section 5.2, 5.10-5.12 of the Williamson and Shmoys book.
Derandomization slides
Chernoff bounds slides
Chapter 4 of the Motwani-Raghavan book has more information on tail inequalities.

Suggested Exercises

In addition to the exercises below, always attempt the exercises in the posted readings and lecture notes above.

Learning Objectives

By the end of this course, you should be able to:

Further Reading

Below you can find some surveys and research articles related to the topics in this course. The research articles may be challenging for you, and this is normal. As a start, you can just read the introduction and try to understand the statements of results.