Learn · NPTEL

Course10610435649 lectures

Linear programming and its applications to computer science

Prof. Rajat Mittal · IIT Kanpur

Start with lecture 1 At NPTEL

About

Linear programming is a special class of mathematical optimization problems where the constraints as well as the cost function is linear. This class of problems have known efficient algorithms, deep structural properties and wide applications in various fields.

In this course we not only introduce and learn about linear programming, but also see its uses in different areas of computer science (algorithms, algorithmic game theory, theoretical computer science, machine learning).

Intended audience: Senior undergraduate (3rd or 4th year) and masters/phd students in CSE

Prerequisites: Linear algebraBasic Linear Algebra - https://nptel.ac.in/courses/111101115Linear Algebra - https://nptel.ac.in/courses/111104137https://nptel.ac.in/courses/111106135

Lectures

Week 1

  1. Lecture 1 : Linear programming, an example YouTube
  2. Lecture 2 : Introduction to linear programming YouTube
  3. Lecture 3 : Gaussian elimination with examples YouTube
  4. Lecture 4 : Summary of Gaussian elimination YouTube

Week 2

  1. Lecture 5: Vector space over real numbers YouTube
  2. Lecture 6: Linear operators YouTube
  3. Lecture 7: Solutions of linear equations YouTube
  4. Lecture 8: Resource allocation as LP YouTube
  5. Lecture 9: Approximate degree as LP YouTube
  6. Lecture 10: Equivalent LP's YouTube

Week 3

  1. Lecture 11: Introduction to convexity YouTube
  2. Lecture 12: Different kind of convex sets YouTube
  3. Lecture 13: Feasible region of LP YouTube
  4. Lecture 14: Proof of Weyl's theorem YouTube
  5. Lecture 15: Definition of convex functions YouTube
  6. Lecture 16: Properties of convex functions and examples YouTube

Week 4

  1. Lecture 17: Basic feasible solution YouTube
  2. Lecture 18: BFS and vertices YouTube
  3. Lecture 19: Simplex algorithm YouTube
  4. Lecture 20: Details of simplex algorithm YouTube
  5. Lecture 21: Starting BFS YouTube
  6. Lecture 22: Degeneracy YouTube
  7. Lecture 23: Introduction to duality YouTube

Week 5

  1. Lecture 24: Hyperplane separation theorems YouTube
  2. Lecture 25: Farkas Lemma YouTube
  3. Lecture 26: How to take dual YouTube
  4. Lecture 27: Examples of taking dual YouTube
  5. Lecture 28: Strong Duality YouTube
  6. Lecture 29: Proof of strong duality YouTube
  7. Lecture 30: Complementary slackness YouTube

Week 6

  1. Lecture 31: Introduction to algorithmic game theory YouTube
  2. Lecture 32: Nash equilibrium YouTube
  3. Lecture 33: Minimax and Nash equilibrium YouTube
  4. Lecture 34: Deterministic communication complexity YouTube
  5. Lecture 35: Randomized communication complexity YouTube
  6. Lecture 36: Yao's minimax theorem YouTube
  7. Lecture 37: Lower bounds using Yao's minimax YouTube

Week 7

  1. Lecture 38: Set disjointness problem YouTube
  2. Lecture 39: LP for max flow problem YouTube
  3. Lecture 40: LP for min cut problem YouTube
  4. Lecture 41: max flow = min cut YouTube
  5. Lecture 42: Primal dual approach YouTube
  6. Lecture 43: Primal dual for max flow YouTube

Week 8

  1. Lecture 44: Set cover problem YouTube
  2. Lecture 45: Rounding for set cover YouTube
  3. Lecture 46: Analysis of rounding YouTube
  4. Lecture 47: Algorithm for set cover YouTube
  5. Lecture 48: Linear regression through LP YouTube
  6. Lecture 49: Linear classifiers through LP YouTube

Syllabus and materials

At NPTEL, as the course publishes them.

Credits and licence

Institution
IIT Kanpur
Department
Computer Science and Engineering
Teacher
Prof. Rajat Mittal
Level
Undergraduate
Language
English
Subjects
Computer science, Engineering
Source
NPTEL
Licence
CC BY-NC-SA, as NPTEL states it. Non-commercial use only. NPTEL's terms
Attribution
NPTEL states: "Distributed under Creative Commons Attribution-ShareAlike / CC BY - NC - SA", beside a BY-NC-SA badge.
Who can watch
NPTEL gives no rating. Invisible Network shows it to Tweens profiles and older, judged from what the source says about it. How courses are placed