Coursera
Coursera Logo

University of Colorado Boulder - Approximation Algorithms and Linear Programming 

  • Offered byCoursera

Approximation Algorithms and Linear Programming
 at 
Coursera 
Overview

Duration

48 hours

Total fee

Free

Mode of learning

Online

Official Website

Explore Free Course External Link Icon

Credential

Certificate

Approximation Algorithms and Linear Programming
 at 
Coursera 
Highlights

  • Earn a certificate of completion
  • Add to your LinkedIn profile
  • 18 quizzes, 1 assignment
Details Icon

Approximation Algorithms and Linear Programming
 at 
Coursera 
Course details

What are the course deliverables?
  • What you'll learn
  • Formulate linear and integer programming problems for solving commonly encountered optimization problems.
  • Develop a basic understanding of how linear and integer programming problems are solved.
  • Understand how approximation algorithms compute solutions that are guaranteed to be within some constant factor of the optimal solution
More about this course
  • This course continues our data structures and algorithms specialization by focussing on the use of linear and integer programming formulations for solving algorithmic problems that seek optimal solutions to problems arising from domains such as resource allocation, scheduling, task assignment, and variants of the traveling salesperson problem
  • Next, we will study algorithms for NP-hard problems whose solutions are guaranteed to be within some approximation factor of the best possible solutions
  • Such algorithms are often quite efficient and provide useful bounds on the optimal solutions
  • The learning will be supported by instructor provided notes, readings from textbooks and assignments
  • Assignments will include conceptual multiple-choice questions as well as problem solving assignments that will involve programming and testing algorithms
  • This course can be taken for academic credit as part of CU Boulder's Masters of Science in Computer Science (MS-CS) degrees offered on the Coursera platform
  • This fully accredited graduate degree offer targeted courses, short 8-week sessions, and pay-as-you-go tuition. Admission is based on performance in three preliminary courses, not academic history
  • CU degrees on Coursera are ideal for recent graduates or working professionals
  • MS in Computer Science: https://coursera.org/degrees/ms-computer-science-boulder
Read more

Approximation Algorithms and Linear Programming
 at 
Coursera 
Curriculum

Linear Programming

Introduction to Linear Programming

What is a Linear Program?

Example: Cake-Sharing Problem

Solving Linear Programs

Network Flow Problems and Linear Programs

Geometry of Linear Programs

Algorithms for Solving Linear Programs

Earn Academic Credit for your Work!

Course Support

Basics of Linear Programs

Solving LPs using PULP

Network Flow Problems as LPs

Geometry of Linear Programs

LP Algorithms

Linear Programming

Interactive Notes: Basics of Linear Programs

Lab: Formulate and Solve LPs using PULP

Interactive Notes: Diet Problem and Network Flow Problems

Interactive Notes on Geometry of Linear Programs and Simplex Algorithm

Integer Linear Programming

What is an Integer Linear Program?

Formal Introduction to Integer Linear Programs

NP Hardness of Integer Linear Programming

Vertex Cover as an Integer Linear Program

Linear Programming Approximations to Vertex Cover

Branch and Bound Algorithm for Solving Integer Linear Programs

Integer Linear Programming

Formulating/Solving ILPs

Vertex Cover ILP, LP Relaxation and Integrality Gap.

Branch and Bound Solvers

Vertex Cover Problem ILP formulation

Integer Linear Programs

Tutorial on solving ILPs using Python/PuLP package

Interactive Notes: Vertex Cover as an ILP

Interactive Notes: Integrality Gap for Vertex Cover

Interactive Notes: Branch and Bound Solvers for ILPs

Approximation Algorithms : Scheduling, Vertex Cover and MAX-SAT

Introduction to Approximation Algorithms

Introduction to Jobshop Scheduling and Algorithm Design

Analysis of Jobshop Scheduling

Approximation Algorithms for Vertex Cover and their Analysis

Approximation Algorithms for the Maximum Satisfiability Problem

Approximation Algorithm Basics

Job Shop Scheduling Questions

Vertex Cover

Max-SAT Approximation

Approximation Algorithms

Interactive Notes: Jobshop Scheduling

Interactive Notes on Vertex Cover Approximation Algorithms

Interactive Notes on Maximum Satisfiability Approximation

Travelling Salesperson Problem (TSP) and Approximation Schemes

Introduction to TSP and its applications

NP-Hardness of TSPs

Hardness of Approximating General TSPs

Held and Karp's Dynamic Programming Algorithm

Integer Linear Programming Formulation

Subtours and Subtour Elimination Formulation

Metric TSP and Shortcutting

Eulerian Walks for approximating TSPs

Christofides Algorithm and its Analysis

Heuristics for TSPs

Full Polynomial Time Approximation Scheme and Knapsack

TSP Basics

Held-Karp Algorithm

TSP Integer Programming

Approximations for Metric TSPs

Fully Polynomial Time Approximation Scheme

Travelling Salesperson Problems (TSP)

Interactive Notes on TSP Basics, NP-Hardness and Inapproximability

Interactive Notes on Exact Approaches to TSP

Interactive Notes: Approximations for Metric TSPs

Other courses offered by Coursera

– / –
3 months
Beginner
– / –
20 hours
Beginner
– / –
2 months
Beginner
– / –
3 months
Beginner
View Other 6719 CoursesRight Arrow Icon
qna

Approximation Algorithms and Linear Programming
 at 
Coursera 

Student Forum

chatAnything you would want to ask experts?
Write here...