COMP-362: Honours Algorithm Design

Fall 2011

 

Lecture topics and suggested readings

 

Lecture 1 (1 September):

            Course introduction

            A tour through course ideas as illustrated by Shotgun DNA Sequencing and Shortest Common Superstring

 

Lecture 2 (6 September):

            Intro to dynamic programming

            Fibonacci, Optimal triangulation of a convex polygon

            Read KT 6.2, 6.4, 6.5  (RNA secondary structure has similarities with triangulation)

 

Lecture 3 (8 September):

            Shortest paths (Bellman-Ford)

            Testing for the presence of negative weight cycles

            Read KT 6.8 and KT 6.10

 

Lecture 4 (13 September):

            Advanced dynamic programming techniques (using Longest Common Subsequence as an example)

            Hirschberg’s trick (space efficiency): read KT 6.7

            Read KT 6.8 and KT 6.10

 

Lecture 5 (15 September):

            Additional advanced DP: Exploiting sparseness (time efficiency)

            Introduction to matroids

 

Lecture 6 (20 September):

            Matroids: proof that greedy works

            Transversal matroids

            Read CLRS 16.4

 

Lecture 7 (22 September):

            Intro to linear programming

            Duality

            Read CLRS 29.1, 29.2 and 29.3 (can omit proof of strong duality for now)

 

Lecture 8 (27 September):

            Linear programming duality for fractional knapsack

            Intro to flows and cuts

            Read KT 7.1 and 7.2

 

Lecture 9 (29 September):

            Linear programming dual of max-flow is min-cut

           

Lecture 10 (4 October):

            Ford-Fulkerson algorithm

            Edmonds-Karp (fat pipes)

            Read 7.3

 

Lecture 11 (6 October):

            Dinitz (short pipes)

            Disjoint paths and Menger’s theorem (KT 7.6)

            Circulations (KT 7.7)

            Applications:

Survey design (KT 7.8)

Image segmentation (KT 7.10)

Project selection (KT 7.11)

 

Lecture 12 (11 October):

            Baseball elimination (KT 7.12)

            Hall’s theorem (KT 7.5)

            Konig-Egervary theorem