CIS 6930: Approximation Algorithms
Announcements   |       Syllabus       |        Schedule        |       Lecture Notes        |     Assignments 
  General Information
  Instructor Information
  • Name: Dr. My T. Thai
  • Office: E438 CISE
  • Phone: 352-392-6842
  • Email:
  • Office Hours: 10:30 - 11:30am MW or by appointments
  Course Description
  • For many optimization problems, it is almost unfeasible to find an exact solution. Since approximation algorithms can provide techniques for near-optimal solutions, the study of this area is significantly important. This course covers several techniques to design and analyze many approximation algorithms for computationally hard problems, divided into three parts: (a) Combinatorial algorithms, (b) Linear programming based algorithms, and (c) Randomized algorithms. This course also addresses many other problems existing in the networking and computational biology research literature, such as connected dominating set, Steiner trees, pooling designs, and DNA sequencing.
  Course Objectives
  • Understand the essential techniques to design and analyze approximation algorithms, including the following:
    • Combinatorial methods
    • Linear programming
    • Primal-dual and relaxation methods
    • Semidefinite programming
    • Randomized algorithms
    • Hardness of approximation
  • Able to model and solve many practical problems raising in our real life applications
  • Grasp the key ideas of graph theory
  • There is no formal prerequisite for this course. However, students should have a solid background in algorithms and the theory of NP-completeness.
  • Required Textbook:
    • Vijay Vazirani, Approximation Algorithms, Springer-Verlag, 2001, ISBN: 3-540-65367-8
  • Recommended Textbooks:
    • Vasek Chvatal, Linear Programming, W. H. Freeman Company, 1st ed., 1983, ISBN: 0716711958
    • Michael R. Garey and David S. Johnson, Computers and Intractability: A Guide to the Theory of NP-Completeness, W. H. Freeman Company, 1990, ISBN: 0716710455
  • Appropriate lecture notes will be provided to cover some topics not covered in the text books
  Grading Policies
  • Homework Assignments:
    • 5 homework assignments, each weighs 10%
    • Due at the beginning of the lecture on the due date
    • No late assignment will be accepted
  • Midterm Exam:
    • One midterm exam,  weighs 20%
    • In class, open books, open notes
  • Final Exam:
    • Weighs 30%
    • Take home
  • Cut-off points:
    • A >= 85%, 85% > B+ >= 80%, 80% > B >= 75%, 75% > B- >= 70%, 70% > C+ >= 65%
  Other Policies
  • Academic Integrity Policy:
  • Collaboration:
    • You may discuss with other students on solutions of homework assignments. However, you must write up solutions on your own independently
    • Cite any sources that you use to help obtain your solutions
    • The final exam must be done individually, no discussion is allowed!
CIS 6930: Approximation Algorithms - 2342  Turlington Hall