Fall 2019 - CMPT 409 D100

Special Topics in Theoretical Computing Science (3)

Algorithms of Optimization

Class Number: 9581

Delivery Method: In Person


  • Course Times + Location:

    Sep 3 – Dec 2, 2019: Tue, 11:30 a.m.–1:20 p.m.

    Sep 3 – Dec 2, 2019: Thu, 11:30 a.m.–12:20 p.m.

  • Exam Times + Location:

    Dec 13, 2019
    Fri, 12:00–3:00 p.m.

  • Prerequisites:

    CMPT 307.



Current topics in theoretical computing science depending on faculty and student interest.


This course is cross-listed with CMPT 815
Most interesting optimization problems are NP-hard. For an NP-hard problem, it is impossible to have an algorithm which gives an optimal solution efficiently (in polynomial time) for any input instance of the problem unless P=NP. Approximation are powerful and widely used approaches for tackling hard optimization problems. An approximation algorithm finds a near-optimal solution with guaranteed accuracy efficiently for any input instance. Randomized algorithms are another powerful and widely used approach to tackle problems for which efficient deterministic algorithms are not known. The course will cover the fundamentals on the design and analysis of approximation and randomized algorithms for discrete optimization problems. By completing this course, students are expected to be able to design approximation and randomized algorithms for their own problems, prove and analyze the correctness and efficiency of their algorithms, and apply theoretical analysis to the study of heuristics.


  • Basic probability: linearity of expectation, concentration inequalities
  • Approximation algorithms for discrete optimization problems
  • Randomized algorithms
  • Linear programming
  • Semidefinite programming
  • Sublinear time algorithms
  • PCP theorem and hardness of approximation



To be discussed in class.

Registrar Notes:

SFU’s Academic Integrity web site http://www.sfu.ca/students/academicintegrity.html is filled with information on what is meant by academic dishonesty, where you can find resources to help with your studies and the consequences of cheating.  Check out the site for more information and videos that help explain the issues in plain English.

Each student is responsible for his or her conduct as it affects the University community.  Academic dishonesty, in whatever form, is ultimately destructive of the values of the University. Furthermore, it is unfair and discouraging to the majority of students who pursue their studies honestly. Scholarly integrity is required of all members of the University. http://www.sfu.ca/policies/gazette/student/s10-01.html