Tentative schedule (it will be updated if changes occur):
|days and tasks||Lecture Contents:||textbook
|Introduction to the course.
Introduction to the theory of NP completeness.
Turing machines and the RAM model.
Review of formal languages.
Polynomial time and the class P.
Polynomial time verification and the class NP.
|my notes (pdf,ps)
CLR2 34.1, 34.2 (CLR1 36.1,36.2)
|Sep 23 (A1 out)
|NP-completeness and reducibility.
CIRCUIT-SAT is NP-hard.
|CLR2 34.3 (CLR1 36.3)|
|NP-completeness proofs : SAT and 3-CNF.||CLR2 34.4 (CLR1 36.4)|
|Oct 07||NP-complete problems: clique and vertex cover.||CLR2 34.5.1,34.5.2 (CLR1 36.5.1,36.5.2)|
|Oct 10 (A1 in)||NP-complete problems: TSP.||CLR2 34.5.4 (CLR1 36.5.5)|
|Oct 14||thanksgiving holiday||-|
|Oct 17 (A1 in)||NP-complete problems: hamiltonian cycle||CLR2 34.5.3 (CLR1 36.5.4 different!)|
|Oct 21||Midterm Test Review||-|
|Oct 24 (A2 out)||MIDTERM TEST||-|
|Oct 28||Approximation algorithms.
An approximation algorithm for the vertex-cover.
|CLR2 intro35, 35.1 (CLR1 intro37,37.1)|
|Oct 31||An approximation algorithm for the
TSP with triangle inequality.
|CLR2 35.2 (CLR1 37.2)|
|Nov 01||Non-approximabiblity for general TSP||CLR2 35.2 (CLR1 37.2)|
|Nov 04||Midterm Test Solution||-|
Nov 14 (A2 in/ A3 out)
|An approximation algorithm for
the set-covering problem.
Course evaluation questionaire.
|CLR2 35.3 (CLR1 37.3)|
|Nov 18||An approximation algorithm for the weighted
vertex cover using linear programming
|CLR2 35.4 (not in CLR1)|
|Nov 21||The backtracking approach and the n queens.||NN 5.1, 5.2|
|Nov 25||Backtracking for graph colouring, hamiltonian path.||NN 5.5, 5.6, 5.7|
|Nov 28 (A3 in)
All or less topics of (TBA later):
The branch-and-bound (B&B) technique
(breadth-first and best-first).
B&B for the 0-1 knapsack.
|NN 6.1, 6.2|
|Background references:||textbook sections|
|Basic notions: Sets, relations, functions, graphs
Growth of functions
Representations of graphs
|CLR2 App.B (CLR1 5)
CLR2 3 (CLR1 2)
CLR2 22.1 (CLR1 23.1)