Approximation Algorithms Part I

Product type

Approximation Algorithms Part I

Coursera (CC)
Logo Coursera (CC)
Provider rating: starstarstarstar_halfstar_border 7.2 Coursera (CC) has an average rating of 7.2 (out of 6 reviews)

Need more information? Get more details on the site of the provider.

Description

When you enroll for courses through Coursera you get to choose for a paid plan or for a free plan

  • Free plan: No certicification and/or audit only. You will have access to all course materials except graded items.
  • Paid plan: Commit to earning a Certificate—it's a trusted, shareable way to showcase your new skills.

About this course: Approximation algorithms, Part I How efficiently can you pack objects into a minimum number of boxes? How well can you cluster nodes so as to cheaply separate a network into components around a few centers? These are examples of NP-hard combinatorial optimization problems. It is most likely impossible to solve such problems efficiently, so our aim is to give an approximate solution that can be computed in polynomial time and that at the same time has provable guarantees on its cost relative to the optimum. This course assumes knowledge of a standard undergraduate Algorithms course, and particularly emphasizes algorithms that can be designed using linear programming, a…

Read the complete description

Frequently asked questions

There are no frequently asked questions yet. If you have any more questions or need help, contact our customer service.

Didn't find what you were looking for? See also: .

When you enroll for courses through Coursera you get to choose for a paid plan or for a free plan

  • Free plan: No certicification and/or audit only. You will have access to all course materials except graded items.
  • Paid plan: Commit to earning a Certificate—it's a trusted, shareable way to showcase your new skills.

About this course: Approximation algorithms, Part I How efficiently can you pack objects into a minimum number of boxes? How well can you cluster nodes so as to cheaply separate a network into components around a few centers? These are examples of NP-hard combinatorial optimization problems. It is most likely impossible to solve such problems efficiently, so our aim is to give an approximate solution that can be computed in polynomial time and that at the same time has provable guarantees on its cost relative to the optimum. This course assumes knowledge of a standard undergraduate Algorithms course, and particularly emphasizes algorithms that can be designed using linear programming, a favorite and amazingly successful technique in this area. By taking this course, you will be exposed to a range of problems at the foundations of theoretical computer science, and to powerful design and analysis techniques. Upon completion, you will be able to recognize, when faced with a new combinatorial optimization problem, whether it is close to one of a few known basic problems, and will be able to design linear programming relaxations and use randomized rounding to attempt to solve your own problem. The course content and in particular the homework is of a theoretical nature without any programming assignments. This is the first of a two-part course on Approximation Algorithms.

Created by:  École normale supérieure
  • Taught by:  Claire Mathieu

Language English How To Pass Pass all graded assignments to complete the course. User Ratings 4.7 stars Average User Rating 4.7See what learners said Coursework

Each course is like an interactive textbook, featuring pre-recorded videos, quizzes and projects.

Help from your peers

Connect with thousands of other learners and debate ideas, discuss course material, and get help mastering concepts.

École normale supérieure L’École normale supérieure (ENS) est un établissement d'enseignement supérieur pour les études prédoctorales et doctorales (graduate school) et un haut lieu de la recherche française. L'ENS offre à 300 nouveaux étudiants et 200 doctorants chaque année une formation de haut niveau, largement pluridisciplinaire, des humanités et sciences sociales aux sciences dures. Régulièrement distinguée au niveau international, l'ENS a formé 10 médailles Fields et 13 prix Nobel.

Syllabus


WEEK 1


Vertex cover and Linear Programming



We introduce the course topic by a typical example of a basic problem, called Vertex Cover, for which we will design and analyze a state-of-the-art approximation algorithm using two basic techniques, called Linear Programming Relaxation and Rounding. It is a simple, elementary application of powerful techniques.


8 videos, 13 readings, 7 practice quizzes expand


  1. Video: Lecture: Introduction
  2. Reading: Slides
  3. Practice Quiz: Quiz 1: P vs. NP review
  4. Reading: All slides for all chapters of Approx Algs part 1
  5. Reading: Attempt to upload slides in Keynote format
  6. Video: Lecture: Definition
  7. Reading: Slides
  8. Practice Quiz: Quiz 2
  9. Video: Lecture: Integer program
  10. Reading: Slides
  11. Practice Quiz: Quiz 3
  12. Video: Lecture: A linear programming relaxation
  13. Reading: Slides
  14. Practice Quiz: Quiz 4
  15. Video: Lecture: Approximation algorithm
  16. Reading: Slides
  17. Practice Quiz: Quiz 5
  18. Video: Lecture: Analysis
  19. Reading: Slides
  20. Practice Quiz: Quiz 6
  21. Video: Lecture: General facts
  22. Reading: Slides
  23. Practice Quiz: Quiz 7
  24. Reading: Practice Exercises
  25. Reading: PDF version of the peer-graded assignment
  26. Video: Half integrality (7:35 bug, fixed in pdf slides)
  27. Reading: Half-integrality slides
  28. Reading: All slides together in one file

Graded: Peer Graded Assignment 1

WEEK 2


Knapsack and Rounding
This module shows the power of rounding by using it to design a near-optimal solution to another basic problem: the Knapsack problem.


7 videos, 9 readings, 7 practice quizzes expand


  1. Video: Lecture: Definition
  2. Reading: Slides
  3. Practice Quiz: Quiz 1
  4. Video: Lecture: Greedy algorithm
  5. Reading: Slides
  6. Practice Quiz: Quiz 2
  7. Video: Lecture: Special dynamic program
  8. Reading: Slides
  9. Practice Quiz: Quiz 3
  10. Video: Lecture: General dynamic program
  11. Reading: Slides
  12. Practice Quiz: Quiz 4
  13. Video: Lecture: algorithm
  14. Reading: Slides
  15. Practice Quiz: Quiz 5
  16. Video: Lecture: analysis
  17. Reading: Slides
  18. Practice Quiz: Quiz 6
  19. Video: Lecture: approximation scheme
  20. Reading: Slides
  21. Practice Quiz: Quiz 7
  22. Reading: Practise Exercises
  23. Reading: All slides together in one file

Graded: Peer Assignment Knapsack

WEEK 3


Bin Packing, Linear Programming and Rounding
This module shows the sophistication of rounding by using a clever variant for another basic problem: bin packing. (This is a more advanced module.)


8 videos, 10 readings, 7 practice quizzes expand


  1. Video: Lecture: Next Fit
  2. Reading: Slides (with typo corrected)
  3. Practice Quiz: Quiz 1
  4. Video: Lecture: a linear program
  5. Reading: Slides
  6. Practice Quiz: Quiz 2
  7. Video: Lecture: small items
  8. Reading: Slides
  9. Practice Quiz: Quiz 3
  10. Video: Lecture: large items, few sizes
  11. Reading: Slides
  12. Practice Quiz: Quiz 4
  13. Reading: Slides
  14. Practice Quiz: Quiz 5
  15. Video: Large items, many sizes
  16. Video: Lecture: large items analysis
  17. Reading: Slides
  18. Practice Quiz: Quiz 6
  19. Video: Lecture: general algorithm
  20. Reading: Slides
  21. Practice Quiz: Quiz 7
  22. Video: Lecture: conclusion
  23. Reading: Slides
  24. Reading: Practice Exercises
  25. Reading: All slides together in one file

Graded: Peer Assignment: Bin-Packing

WEEK 4


Set Cover and Randomized Rounding
This module introduces a simple and powerful variant of rounding, based on probability: randomized rounding. Its power is applied to another basic problem, the Set Cover problem.


8 videos, 11 readings, 8 practice quizzes expand


  1. Video: Lecture: definition
  2. Reading: Slides
  3. Practice Quiz: Quiz 1
  4. Video: Lecture: randomized rounding
  5. Reading: Slides
  6. Practice Quiz: Quiz 2
  7. Video: Lecture: cost analysis
  8. Reading: Slides
  9. Practice Quiz: Quiz 3
  10. Video: Lecture: coverage analysis
  11. Reading: Slides
  12. Practice Quiz: Quiz 4
  13. Video: Lecture: iterated algorithm
  14. Reading: Slides
  15. Practice Quiz: Quiz 5
  16. Video: Lecture: stopping time algorithm
  17. Reading: Slides
  18. Practice Quiz: Quiz 6
  19. Video: Lecture: stopping time analysis
  20. Reading: Slides
  21. Practice Quiz: Quiz 7
  22. Video: Lecture:final remarks
  23. Reading: Slides
  24. Practice Quiz: Quiz 8
  25. Reading: A reference on this stopping time analysis
  26. Reading: Practise Exercise
  27. Reading: All slides together in one file

Graded: Peer Assig Set Cover

WEEK 5


Multiway Cut and Randomized Rounding
This module deepens the understanding of randomized rounding by developing a sophisticated variant and applying it to another basic problem, the Multiway Cut problem. (This is a more advanced module.)


5 videos, 8 readings, 5 practice quizzes expand


  1. Video: Lecture: definition
  2. Reading: Slides
  3. Practice Quiz: Quiz 1 : Some context on cuts
  4. Video: Lecture: linear programming relaxation
  5. Reading: Slides
  6. Practice Quiz: Quiz 2
  7. Video: Lecture: randomized rounding
  8. Reading: Slides
  9. Practice Quiz: Quiz 3
  10. Video: Lecture: analysis
  11. Reading: Slides
  12. Practice Quiz: Quiz 4
  13. Video: Lecture: conclusion
  14. Reading: Slides
  15. Practice Quiz: Quiz 5
  16. Reading: Practice exercise
  17. Reading: All Chapter Slides together in one file
  18. Reading: Slides for all chapters of Approx Algs Part 1 together in one file

Graded: Peer-graded assignment 5
There are no reviews yet.

    Share your review

    Do you have experience with this course? Submit your review and help other people make the right choice. As a thank you for your effort we will donate £1.- to Stichting Edukans.

    There are no frequently asked questions yet. If you have any more questions or need help, contact our customer service.