Schedule

CS 482 - Spring 2007

This schedule will be updated periodically throughout the term.  Last update: May 11

Readings and, in some cases, web-links are given for each of the topics listed below.  Readings are from the course text unless otherwise noted.

Text: Algorithm Design by Jon Kleinberg and Eva Tardos

Mondays   Wednesdays   Fridays
Date Topics Reading   Date Topics Reading   Date Topics Reading
Jan 22 General Course Info; Stable Matching Chapter 1: Introduction   Jan 24 Some Representative Problems Review Chapters 2 & 3: 
Basics of Algorithm Analysis
& Graphs
  Jan 26 Divide & Conquer (MergeSort; Integer Multiplication) Chapter 5 (exclude 5.6): Divide and Conquer
Jan 29 Divide & Conquer (Closest Pair)     Jan 31 Divide & Conquer (Selection)     Feb 2 Dynamic Programming (Matrix Chain Multiplication) Chapter 6 (exclude 6.5, 6.7, and 6.10)
Dynamic Programming
Feb 5 Dynamic Programming (Min Wt Polygon Triangulation)     Feb 7 Dynamic Programming (Protein Sequence Alignment)     Feb 9 Greedy Algorithms (Interval Scheduling; staying ahead vs. exchange arguments) Chapter 4 (exclude 4.7 - 4.9): Greedy Algorithms
Feb 12 Greedy Algorithms (Minimum Spanning Trees; Kruskal's vs. Prim's Algorithm)     Feb 14 Greedy Algorithms (Union/Find motivated by Kruskal's MST Algorithm)     Feb 16 Greedy Algorithms  
Feb 19 Dynamic Programming (Shortest Paths with Negative Cycles; Distance Vector Protocols) 6.9   Feb 21 Review for Prelim I (Thursday, Feb 22 at 7:30pm in Upson B17)     Feb 23 Network Flow Chapter 7 (exclude 7.4, 7.11, 7.12, and 7.13): Network Flow
Feb 26 Network Flow (Ford-Fulkerson Algorithm; Bipartite Matching)     Feb 28 Network Flow (Max Flow vs. Min Cut)     Mar 2 Network Flow (Image Segmentation)  
Mar 5 Network Flow (Airline Scheduling)     Mar 7 Network Flow (Protein Sequence Design)     Mar 9 NP & Computational Intractability Chapter 8: NP and Computational Intractability
Mar 12 Polynomial Time Reductions (3-SAT; Independent Set; Vertex Cover; Set Cover)     Mar 14 NP-Completeness (Certifiers)     Mar 16 NP-Completeness (Circuit SAT)  
Mar 19 Spring Break       Spring Break       Spring Break  
Mar 26 NP-Completeness (Graph Coloring)     Mar 28 NP-Completeness (Hamiltonian Cycle; TSP)     Mar 30 Finish NP-Completeness (Subset Sum)  
Apr 2 Co-NP

PSPACE: A Class of Problems Beyond NP
Chapter 9 (only 9.1, 9.2, and 9.3): PSPACE: A Class of Problems Beyond NP   Apr 4 Extending the Limits of Tractability (Small Vertex Covers; Independent Set on Trees) Chapter 10 (exclude 10.3, 10.4, and 10.5): Extending the Limits of Tractability   Apr 6 Overview of NP-Completeness  
Apr 9 Review for Prelim II (Tuesday, Apr 10 at 7:30pm in Hollister B14)     Apr 11 Lecture cancelled (due to illness)     Apr 13 Approximation Algorithms 
(Load Balancing = Min Makespan)
Chapter 11 (only 11.1, 11.2, 11.3, 11.6, and 11.8): Approximation Algorithms
Apr 16 Approximation Algorithms (Center Selection)     Apr 18 Approximation Algorithms (Use of Linear Programming)     Apr 20 Approximation Algorithms (Knapsack)  
Apr 23 Randomized Algorithms (Max 3-SAT; Review of expectation) Chapter 13 (13.1 through 13.5, and 13.7): Randomized Algorithms   Apr 25 Randomized Algorithms (Contention Resolution)     Apr 27 Randomized Algorithms (Global Min Cut)  
Apr 30 Randomized Algorithms (Backwards analysis for Closest Pair of Points)     May 2 Randomized Algorithms (Selection); Algorithms that Run Forever
(Packet Switching Networks)
Epilogue: Algorithms that Run Forever   May 4 Last Day (Review; What I Do)  

Our Final Exam is scheduled for Thu, May 17, 9:00 - 11:30 am, in Hollister B14.