Approximation Algorithms (CS458)

Algorithmic Techniques in Approximation and Randomized Algorithms

Course description: We will primarily focus on techniques that are used to design approximation algorithms for computationally hard problems. These include linear programming based techniques. In the second part of the course, we will spend more emphasis on designing randomized algorithms.

Class timings: Wed (9:30 - 10:30), Thursday (10:30 - 11:30), Friday (11:30 AM - 1:20 PM) at M3

Prerequisites: Algorithms (CS301). Some familiarity with linear algebra and probability will be assumed.

References: Will provide pointers to books or lecture notes for the topics we cover in class.

Grading: 2 class tests (30%), Mid-sem (25%), End-sem (40%), class participation (5%).

Please find some practice problems here.

Announcements

Lectures: 


Week 8 and 9: Mid-semester exams and semester break


For the rest of the course, we will focus on designing randomized algorithms.