Approximation Algorithms Part I
Skills:
Algorithm Basics90%
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.
Watch on Coursera ↗
(saves to browser)
Sign in to unlock AI tutor explanation · ⚡30
More on: Algorithm Basics
View skill →Related AI Lessons
⚡
⚡
⚡
⚡
The Rise of Lean Tech Companies: Smaller Teams, Bigger Growth
Medium · Startup
Still Thinking About Quitting Your 9-to-5 to Start a Business? Here’s What You Need to Hear.
Medium · Startup
Silicon Holler: What Happens When the Brain Drain Finally Stops
Dev.to · Marsulta
The Ultimate Exit: How to Build a Digital Business That Is Ready to Be Sold
Medium · Startup
🎓
Tutor Explanation
DeepCamp AI