Polyhedral Optimization Lecture 1 – Part 2 M. Pawan Kumar Slides available online

Slides:



Advertisements
Similar presentations
1 LP Duality Lecture 13: Feb Min-Max Theorems In bipartite graph, Maximum matching = Minimum Vertex Cover In every graph, Maximum Flow = Minimum.
Advertisements

Introduction to Algorithms
1 NP-completeness Lecture 2: Jan P The class of problems that can be solved in polynomial time. e.g. gcd, shortest path, prime, etc. There are many.
1 NP-Complete Problems. 2 We discuss some hard problems:  how hard? (computational complexity)  what makes them hard?  any solutions? Definitions 
Basic Feasible Solutions: Recap MS&E 211. WILL FOLLOW A CELEBRATED INTELLECTUAL TEACHING TRADITION.
CSC5160 Topics in Algorithms Tutorial 2 Introduction to NP-Complete Problems Feb Jerry Le
Computability and Complexity 13-1 Computability and Complexity Andrei Bulatov The Class NP.
Totally Unimodular Matrices Lecture 11: Feb 23 Simplex Algorithm Elliposid Algorithm.
1 Introduction to Linear and Integer Programming Lecture 9: Feb 14.
Introduction to Linear and Integer Programming Lecture 7: Feb 1.
NP-Complete Problems Reading Material: Chapter 10 Sections 1, 2, 3, and 4 only.
The Theory of NP-Completeness
Analysis of Algorithms CS 477/677
Exploiting Duality (Particularly the dual of SVM) M. Pawan Kumar VISUAL GEOMETRY GROUP.
CSE 421 Algorithms Richard Anderson Lecture 27 NP Completeness.
Chapter 11: Limitations of Algorithmic Power
Chapter 11 Limitations of Algorithm Power Copyright © 2007 Pearson Addison-Wesley. All rights reserved.
Polyhedral Optimization Lecture 3 – Part 3 M. Pawan Kumar Slides available online
Polyhedral Optimization Lecture 3 – Part 2
C&O 355 Lecture 2 N. Harvey TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: A A.
The Theory of NP-Completeness 1. Nondeterministic algorithms A nondeterminstic algorithm consists of phase 1: guessing phase 2: checking If the checking.
The Theory of NP-Completeness 1. What is NP-completeness? Consider the circuit satisfiability problem Difficult to answer the decision problem in polynomial.
Nattee Niparnan. Easy & Hard Problem What is “difficulty” of problem? Difficult for computer scientist to derive algorithm for the problem? Difficult.
C&O 355 Mathematical Programming Fall 2010 Lecture 4 N. Harvey TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: A A A.
The Complexity of Optimization Problems. Summary -Complexity of algorithms and problems -Complexity classes: P and NP -Reducibility -Karp reducibility.
Discrete Optimization Lecture 2 – Part I M. Pawan Kumar Slides available online
Week 10Complexity of Algorithms1 Hard Computational Problems Some computational problems are hard Despite a numerous attempts we do not know any efficient.
CSE 024: Design & Analysis of Algorithms Chapter 9: NP Completeness Sedgewick Chp:40 David Luebke’s Course Notes / University of Virginia, Computer Science.
CS38 Introduction to Algorithms Lecture 16 May 22, CS38 Lecture 16.
EMIS 8373: Integer Programming NP-Complete Problems updated 21 April 2009.
CSCI 3160 Design and Analysis of Algorithms Tutorial 10 Chengyu Lin.
1 The Theory of NP-Completeness 2 Cook ’ s Theorem (1971) Prof. Cook Toronto U. Receiving Turing Award (1982) Discussing difficult problems: worst case.
§1.4 Algorithms and complexity For a given (optimization) problem, Questions: 1)how hard is the problem. 2)does there exist an efficient solution algorithm?
NP-Complete Problems. Running Time v.s. Input Size Concern with problems whose complexity may be described by exponential functions. Tractable problems.
Optimization - Lecture 4, Part 1 M. Pawan Kumar Slides available online
Design and Analysis of Algorithms - Chapter 101 Our old list of problems b Sorting b Searching b Shortest paths in a graph b Minimum spanning tree b Primality.
CS 3343: Analysis of Algorithms Lecture 25: P and NP Some slides courtesy of Carola Wenk.
CPSC 536N Sparse Approximations Winter 2013 Lecture 1 N. Harvey TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AAAAAAAAAA.
Discrete Optimization Lecture 6 – Part 2 M. Pawan Kumar
Strings Basic data type in computational biology A string is an ordered succession of characters or symbols from a finite set called an alphabet Sequence.
Discrete Optimization Lecture 4 M. Pawan Kumar
Discrete Optimization Lecture 4 – Part 1 M. Pawan Kumar
NP-completeness NP-complete problems. Homework Vertex Cover Instance. A graph G and an integer k. Question. Is there a vertex cover of cardinality k?
Chapter 11 Introduction to Computational Complexity Copyright © 2011 The McGraw-Hill Companies, Inc. Permission required for reproduction or display. 1.
NP Completeness Piyush Kumar. Today Reductions Proving Lower Bounds revisited Decision and Optimization Problems SAT and 3-SAT P Vs NP Dealing with NP-Complete.
Discrete Optimization Lecture 6 – Part 1 M. Pawan Kumar
Optimization - Lecture 5, Part 1 M. Pawan Kumar Slides available online
Submodularity Reading Group Submodular Function Minimization via Linear Programming M. Pawan Kumar
The Theory of NP-Completeness 1. Nondeterministic algorithms A nondeterminstic algorithm consists of phase 1: guessing phase 2: checking If the checking.
C&O 355 Lecture 19 N. Harvey TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: A A A A A A A A A A.
TU/e Algorithms (2IL15) – Lecture 12 1 Linear Programming.
Linear Programming Chap 2. The Geometry of LP  In the text, polyhedron is defined as P = { x  R n : Ax  b }. So some of our earlier results should.
Linear Programming Piyush Kumar Welcome to CIS5930.
COSC 3101A - Design and Analysis of Algorithms 14 NP-Completeness.
Approximation Algorithms based on linear programming.
The NP class. NP-completeness Lecture2. The NP-class The NP class is a class that contains all the problems that can be decided by a Non-Deterministic.
Submodularity Reading Group Matroid Polytopes, Polymatroid M. Pawan Kumar
Discrete Optimization MA2827 Fondements de l’optimisation discrète Material from M. Pawan Kumar, E. Demaine.
Chapter 10 NP-Complete Problems.
Lap Chi Lau we will only use slides 4 to 19
Discrete Optimization
Topics in Algorithms Lap Chi Lau.
NP-Completeness Yin Tat Lee
Polyhedron Here, we derive a representation of polyhedron and see the properties of the generators. We also see how to identify the generators. The results.
Polyhedron Here, we derive a representation of polyhedron and see the properties of the generators. We also see how to identify the generators. The results.
Linear Programming and Approximation
Linear Programming Duality, Reductions, and Bipartite Matching
Chapter 11 Limitations of Algorithm Power
CS 3343: Analysis of Algorithms
The Theory of NP-Completeness
Presentation transcript:

Polyhedral Optimization Lecture 1 – Part 2 M. Pawan Kumar Slides available online

Computational Complexity Convex Sets and Functions Linear Programming Outline

f(n)  O(g(n)) There exists k > 0 and n 0 such that f(n) ≤ k g(n) for all n ≥ n 0 f(n) = 5n 2 + 3nlog(n) g(n) = n 2 f(n) = 5n 3 + 3nlog(n) g(n) = n 2 ✔✗

f(n)  Ω(g(n)) There exists k > 0 and n 0 such that f(n) ≥ k g(n) for all n ≥ n 0 f(n) = 5n 2 + 3nlog(n) g(n) = n 2 f(n) = 5n 3 + 3nlog(n) g(n) = n 2 ✔✔

f(n)  Θ(g(n)) There exists k 1 > 0, k 2 > 0 and n 0 such that k 1 g(n) ≤ f(n) ≤ k 2 g(n) for all n ≥ n 0 f(n) = 5n 2 + 3nlog(n) g(n) = n 2 ✔

Computational Complexity –Decision Problems (Answered by ‘yes’ or ‘no’) –P and NP –NP-Complete –NP-Hard –Combinatorial Optimization Problems Convex Sets and Functions Linear Programming Outline

Finite set Σ called alphabet of size ≥ 2 –{0,1} –{a,b,c,d,e,…,x,y,z} Set Σ* of all finite length strings (called words) –0, 1, 00, 01, 10, 11, 000,…. –discrete, optimization Size of word size(w) = number of letters –size(00) = 2 –size(discrete) = 8 Decision Problem

Problem Π is a subset of Σ* –All words with the answer “yes” Informal problem –Given input word x  Σ*, does x  Π ? Polynomial-time solvable problem Π –There exists a polynomial-time algorithm for the informal problem –Polynomial in size(x) Decision Problem

Minimum Sum Subset Given a set of ‘n’ real numbers S Is there a non-empty subset X ⊆ S such that ∑ x ∈ X x ≤ C

Minimum Sum Subset Real numbers  Σ {  Σ }  Σ,  Σ {1, 2, 3, 4, 5, 6, 7}, -5  Σ* ∉ Π∉ Π

Minimum Sum Subset Real numbers  Σ {  Σ }  Σ,  Σ {1, 2, 3, 4, 5, 6, 7}, 5  Σ*  Π Π

Subset Sum Given a set of ‘n’ real numbers S Is there a non-empty subset X ⊆ S such that ∑ x ∈ X x = 0

Subset Sum Real numbers  Σ {  Σ }  Σ,  Σ {1, 2, 3, 4, 5, 6, 7}  Σ* ∉ Π∉ Π

Subset Sum Real numbers  Σ {  Σ }  Σ,  Σ {1, 2, 3, 4, 5, 6, -7}  Σ*  Π Π

Shortest Path Given graph G and and a path P from u to v Is the path a shortest u-v path, which minimizes ∑ e ∈ P length(e)

Shortest Path v 0,v 1,v 2 … v n  Σ {  Σ 0,1,2, … N  Σ }  Σ,  Σ {v 0,v 1,v 2,v 3,v 4,v 5 }, {{v 0,v 1 },{v 0,v 3 },{v 1,v 2 },{v 2,v 3 },{v 2,v 4 },{v 3,v 4 }}, {3,5,5,4,6,1}, v1v1 v1v1 v0v0 v0v0 v2v2 v2v2 v3v3 v3v3 v4v4 v4v {v 0,v 3,v 4,v 2 }  Σ*

Shortest Path v 0,v 1,v 2 … v n  Σ {  Σ 0,1,2, … N  Σ }  Σ,  Σ {v 0,v 1,v 2,v 3,v 4,v 5 }, {{v 0,v 1 },{v 0,v 3 },{v 1,v 2 },{v 2,v 3 },{v 2,v 4 },{v 3,v 4 }}, {3,5,5,4,6,1}, v1v1 v1v1 v0v0 v0v0 v2v2 v2v2 v3v3 v3v3 v4v4 v4v {v 0,v 3,v 2 }  Σ*

Shortest Path v 0,v 1,v 2 … v n  Σ {  Σ 0,1,2, … N  Σ }  Σ,  Σ {v 0,v 1,v 2,v 3,v 4,v 5 }, {{v 0,v 1 },{v 0,v 3 },{v 1,v 2 },{v 2,v 3 },{v 2,v 4 },{v 3,v 4 }}, {3,5,5,4,6,1}, v1v1 v1v1 v0v0 v0v0 v2v2 v2v2 v3v3 v3v3 v4v4 v4v {v 0,v 1,v 2 }  Σ*

Shortest Path v 0,v 1,v 2 … v n  Σ {  Σ 0,1,2, … N  Σ }  Σ,  Σ {v 0,v 1,v 2,v 3,v 4,v 5 }, {{v 0,v 1 },{v 0,v 3 },{v 1,v 2 },{v 2,v 3 },{v 2,v 4 },{v 3,v 4 }}, {3,5,5,4,6,1}, v1v1 v1v1 v0v0 v0v0 v2v2 v2v2 v3v3 v3v3 v4v4 v4v {v 0,v 1,v 2 }  Π

Computational Complexity –Decision Problems –P and NP –NP-Complete –NP-Hard –Combinatorial Optimization Problems Convex Sets and Functions Linear Programming Outline

P Polynomial-time solvable problem Π –There exists a polynomial-time algorithm that decides whether x  Σ* belongs to Π or not. –Polynomial in size(x) P = {all Π, Π is polynomial time solvable} For example –Minimum Sum Subset Problem

NP NP is not “not polynomial” NP stands for non-deterministic polynomial Easy to verify “yes” words

NP Π  NP –There exists a problem Π’  P –There exists a polynomial p –There exists an x, size(x) ≤ p(size(w)) such that –w  Π if and only if wx  Π’ Polynomial-time checkable ‘certificate’ For example –Subset Sum Problem

NP Relationship between P and NP? P is a subset of NP Is P = NP? –Open Problem –One of Clay Institute’s Millennium Prize problems

If P = NP … If P=NP, then the world would be a profoundly different place than we usually assume it to be. There would be no special value in "creative leaps," no fundamental gap between solving a problem and recognizing the solution once it's found. Everyone who could appreciate a symphony would be Mozart; everyone who could follow a step-by-step argument would be Gauss; … Scott Aaronson

Computational Complexity –Decision Problems –P and NP –NP-Complete –NP-Hard –Combinatorial Optimization Problems Convex Sets and Functions Linear Programming Outline

NP-Complete Hardest problems in NP –All problems in NP can be reduced to an NP- complete problem Π is reducible to Λ –There exists a polynomial time algorithm –Given w, returns x –w  Π if and only if x  Λ If Λ  P then Π  P

NP-Complete Hardest problems in NP –All problems in NP can be reduced to an NP- complete problem Π is reducible to Λ –There exists a polynomial time algorithm –Given w, returns x –w  Π if and only if x  Λ If Λ  NP then Π  NP

NP-Complete Hardest problems in NP –All problems in NP can be reduced to an NP- complete problem Π is reducible to Λ –There exists a polynomial time algorithm –Given w, returns x –w  Π if and only if x  Λ If Λ  NP-complete and Λ  P, then P = NP

NP-Complete Is there an NP-Complete problem? SAT: Is a Boolean expression satisfiable? Cook’s Theorem: SAT is NP-Complete In more detail …

Alphabet Σ containing variables x 1,x 2,…,x n And special symbols (, ), ∧, ∨,~ And not containing 0 and 1 A variable is a Boolean expression Boolean Expression

Alphabet Σ containing variables x 1,x 2,…,x n And special symbols (, ), ∧, ∨,~ And not containing 0 and 1 If v and w are Boolean expressions then –(v ∧ w) is a Boolean expression Boolean Expression

Alphabet Σ containing variables x 1,x 2,…,x n And special symbols (, ), ∧, ∨,~ And not containing 0 and 1 If v and w are Boolean expressions then –(v ∨ w) is a Boolean expression Boolean Expression

Alphabet Σ containing variables x 1,x 2,…,x n And special symbols (, ), ∧, ∨,~ And not containing 0 and 1 If v and w are Boolean expressions then –~v is a Boolean expression –~w is a Boolean expression Boolean Expression

Alphabet Σ containing variables x 1,x 2,…,x n And special symbols (, ), ∧, ∨,~ And not containing 0 and 1 For example, f(x 1,x 2,…,x n ) –((x 2 ∧ x 3 ) ∨ ~(x 3 ∨ x 5 ) ∧ x 2 ) ∨ ~(x 2 ∧ x 5 ) –~(~x 2 ∨ ~x 3 ) ∧ ~x 1 Boolean Expression

f(x 1,x 2,…,x n ) is satisfiable if –there exists an assignment x 1 = α 1, …, x n = α n –where α i  {0,1} –such that f(x 1,x 2,…,x n ) = 1 The following identities hold –0 ∧ 0 = 0, 0 ∧ 1 = 0, 1 ∧ 0 = 0, 1 ∧ 1 = 1 –0 ∨ 0 = 0, 0 ∨ 1 = 1, 1 ∨ 0 = 1, 1 ∨ 1 = 1 –~0 = 1, ~1 = 0 –(0) = 0, (1) = 1 Satisfiability

Given the alphabet Σ Given the identities for 0 and 1 SAT is a subset of Σ* that is satisfiable Informal Problem –Given a Boolean expression w, is w satisfiable SAT

Karp’s 21 NP-Complete Problems If SAT is reducible to Π, Π is NP-complete SAT, 0-1 integer programming, Clique, Set Packing, Vertex Cover, Set Covering, Feedback node set, Feedback arc set, Directed Hamilton circuit, Undirected Hamilton circuit, 3-SAT, Chromatic number, Clique cover, Exact cover, Hitting set, Steiner tree, 3- dimensional matching, Knapsack, Job sequencing, Partition, Max cut

A special case of SAT Given variables x 1,x 2,…,x n  Σ –B 1 consists of x 1,~x 1,…,x n,~x n –B 2 consists of (w 1 ∨ … ∨ w k ), w i  B 1, 1≤k≤3 –B 3 consists of w 1 ∧ w 2 ∧ … ∧ w m, w i  B 2 –e.g., (x 1 ∨ ~x 2 ∨ x 3 ) ∧ (x 2 ∨ ~x 3 ∨ x 4 ) ∧ (~x 1 ∨ ~x 2 ) 3-SAT is the subset of B 3 that is satisfiable 3-SAT

x 1 = x 2 ∨ x 3 –(x 1 ∨ ~x 2 ) ∧ (x 1 ∨ ~x 3 ) ∧ (~x 1 ∨ x 2 ∨ x 3 ) x 1 = x 2 ∧ x 3 –(~x 1 ∨ x 2 ) ∧ (~x 1 ∨ x 3 ) ∧ (x 1 ∨ ~x 2 ∨ ~x 3 ) x 1 = ~x 2 –(x 1 ∨ x 2 ) ∧ (~x 1 ∨ ~x 2 ) SAT is reducible to 3-SAT

NP-Complete Problems Today, we know several such problems complete_problemshttp://en.wikipedia.org/wiki/List_of_NP- complete_problems No proof if they are in P No proof if they are not in P

Computational Complexity –Decision Problems –P and NP –NP-Complete –NP-Hard –Combinatorial Optimization Problems Convex Sets and Functions Linear Programming Outline

NP-hard Need not be in NP –No polynomial-time checkable certificate –Not even a decision problem (e.g. optimization) At least as hard as NP-complete problems Λ  NP-hard –There exists Π  NP-complete –Π is reducible to Λ

NP-hard Image Courtesy of Wikipedia

Computational Complexity –Decision Problems –P and NP –NP-Complete –NP-Hard –Combinatorial Optimization Problems Convex Sets and Functions Linear Programming Outline

Combinatorial Optimization Problem Given a discrete set of feasible solutions And a measure of the quality of each solution Find the best quality solution

Combinatorial Optimization Problem I = set of instances of a problem Given an instance i ∈ I Discrete set of feasible solutions F i Measure of quality m i : F i → Real max x m i (x), x ∈ F i

Minimum Sum Subset Given a set of ‘n’ real numbers S Find a non-empty subset X ⊆ S that minimizes ∑ x ∈ X x

Minimum Sum Subset Given a set of ‘n’ real numbers S Find a non-empty subset X ⊆ S that maximizes -∑ x ∈ X x

Minimum Sum Subset Instance Given a set of ‘n’ real numbers S Find a non-empty subset X ⊆ S that maximizes -∑ x ∈ X x {-28, 53, -58, -99, 13, 27, -55, -31, -91, 12, -87, -68} Feasible solutions F i ? Measure m i ?

Subset Sum Given a set of ‘n’ real numbers S Find a non-empty subset X ⊆ S that minimizes | ∑ x ∈ X x |

Subset Sum Instance Given a set of ‘n’ real numbers S Find a non-empty subset X ⊆ S that minimizes | ∑ x ∈ X x | {-28, 53, -58, -99, 13, 27, -55, -31, -91, 12, -87, -68} Feasible solutions F i ? Measure m i ?

Shortest Path Given graph G and vertices u and v Find the path from u to v that minimizes ∑ e ∈ P length(e)

Shortest Path Instance v1v1 v1v1 v0v0 v0v0 v2v2 v2v2 v3v3 v3v3 v4v4 v4v Feasible solutions F i ? Measure m i ?

Complexity Easy problems have polynomial-time solution P optimization problems Hard problems ∉ P optimization problems NP-hard problems

Computational Complexity Convex Sets and Functions –Convex Set –Convex Hull and Convex Cone –Polyhedron and Polytope –Convex Function Linear Programming Outline

Convex Set x1x1 x2x2 λ x 1 + (1 - λ) x 2 λ  [0,1] Line Segment Endpoints

Convex Set x1x1 x2x2 All points on the line segment lie within the set For all line segments with endpoints in the set

Non-Convex Set x1x1 x2x2

Examples of Convex Sets x1x1 x2x2 Line Segment

Examples of Convex Sets x1x1 x2x2 Line

Examples of Convex Sets Hyperplane a T x - b = 0

Examples of Convex Sets Halfspace a T x - b ≤ 0

Examples of Convex Sets Second-order Cone ||x|| ≤ t t x2x2 x1x1

Examples of Convex Sets Semidefinite Matrices {X | X 0} a T Xa ≥ 0, for all a  R n All eigenvalues of X are non-negative a T X 1 a ≥ 0 a T X 2 a ≥ 0 a T (λX 1 + (1-λ)X 2 )a ≥ 0

Operations that Preserve Convexity Intersection

Operations that Preserve Convexity Affine Transformation x  Ax + b

Separating Hyperplane Closed Convex Set C z ∉ C

Property For any closed convex set C, and z ∉ C There exists a separating hyperplane Proof?

Proof Sketch Let y = argmin x ∈ C ||z-x|| Define a = z - yb = (||z|| 2 - ||y|| 2 )/2 We can show that a T z > b We can show that a T x < b, for all x ∈ C

Proof Sketch a T z = (z-y) T z > (z-y) T z - ||z-y|| 2 /2 = b

Proof Sketch Let a T x ≥ b, for all x ∈ C a T y < a T y + ||a|| 2 /2 = b Therefore, there exists 0 < λ ≤ 1 λ < 2a T (x-y)/||x-y|| 2 Let w = λx + (1-λ)y We can show ||w-z|| 2 < ||y-z|| 2 Contradiction

Closed Convex Set C is a closed convex set C is an intersection of halfspaces The two statements are equivalent Proof?

Computational Complexity Convex Sets and Functions –Convex Set –Convex Hull and Convex Cone –Polyhedron and Polytope –Convex Function Linear Programming Outline

Convex Hull Intersection preserves convexity Given a set X Smallest convex set containing X exists Convex Hull

Convex Hull of a Convex Set

Convex Hull of Vectors

Convex Hull x belongs to the convex hull of X There exists a natural number t x = λ 1 x 1 + λ 2 x 2 + … + λ t x t xi ∈ Xxi ∈ X λ 1 + λ 2 + … + λ t = 1λ i > 0 Proof?

Convex Cone Convex Set C If x 1 and x 2 belong to C λ 1 x 1 + λ 2 x 2 ∈ C For all λ 1, λ 2 ≥ 0

Cone x belongs to the cone(X) There exists a natural number t x = λ 1 x 1 + λ 2 x 2 + … + λ t x t xi ∈ Xxi ∈ X λ i > 0 Given a set X cone(X): Smallest convex cone containing X

Computational Complexity Convex Sets and Functions –Convex Set –Convex Hull and Convex Cone –Polyhedron and Polytope –Convex Function Linear Programming Outline

Polyhedron a 1 T x ≤ b 1 a 2 T x ≤ b 2 a m T x ≤ b m......

Polyhedron Ax ≤ b A : m x n matrix b: n x 1 vector

Bounded Polyhedron

Vertex Formal definition?

Vertex z is a vertex of P = {x, Ax ≤ b} z is not a convex combination of two points in P There does not exist x, y ∈ P and 0 < λ < 1 x ≠ z and y ≠ z such that z = λ x + (1-λ) y

Vertex z is a vertex of P = {x, Ax ≤ b} A z is a submatrix of A Contains all rows of A such that a i T z = b i Recall A is an m x n matrix

Vertex z is a vertex of P Rank of A z = n Proof?

Proof Sketch: Necessity Let z be a vertex of P Suppose rank(A z ) < nA z c = 0 for some c ≠ 0 Then there exists a d > 0 such that z - dc ∈ Pz + dc ∈ P Contradiction

Proof Sketch: Sufficiency Suppose rank(A z ) = n but z is not a vertex of P z = (x+y)/2 for some x, y ∈ P, x ≠ y ≠ z For each a in A z Implies A z (x-z) = 0Contradiction a T x ≤ b = a T za T y ≤ b = a T z

Polytope Convex hull of a finite number of vectors

Polytope and Polyhedron P is a polytope P is a bounded polyhedron Skipping the proof (available on webpage)

Computational Complexity Convex Sets and Functions –Convex Set –Convex Hull and Convex Cone –Polyhedron and Polytope –Convex Function Linear Programming Outline

Convex Function x g(x) Blue point always lies above red point x1x1 x2x2

Convex Function x g(x) g( c x 1 + (1 - c) x 2 ) ≤ c g(x 1 ) + (1 - c) g(x 2 ) x1x1 x2x2 Domain of g(.) has to be convex

Convex Function x g(x) x1x1 x2x2 -g(.) is concave g( c x 1 + (1 - c) x 2 ) ≤ c g(x 1 ) + (1 - c) g(x 2 )

Convex Function Once-differentiable functions g(y) +  g(y) T (x - y) ≤ g(x) x g(x) (y,g(y)) g(y) +  g(y) T (x - y) Twice-differentiable functions  2 g(x) 0

Convex Function and Convex Sets x g(x) Epigraph of a convex function is a convex set

Examples of Convex Functions Linear function a T x p-Norm functions (x 1 p + x 2 p + x n p ) 1/p, p ≥ 1 Quadratic functions x T Q x Q 0

Operations that Preserve Convexity Non-negative weighted sum x g 1 (x) w1w1 x g 2 (x) + w 2 + …. x T Q x + a T x + b Q 0

Operations that Preserve Convexity Pointwise maximum x g 1 (x) max x g 2 (x), Pointwise minimum of concave functions is concave

Computational Complexity Convex Sets and Functions Linear Programming Outline Examples taken from the slides of Ziv Bar-Yossef (Technion)

Linear Program Maximize a linear function Over a polyhedral feasible region s.t. A x ≤ b max x c T x A: m x n matrix b: m x 1 vector c: n x 1 vector Objective function Constraints x: n x 1 vector

Example 4x 1 – x 2 ≤ 8 max x x 1 + x 2 2x 1 + x 2 ≤ 10 5x 1 - 2x 2 ≥ -2 x 1 ≥ 0 x 2 ≥ 0 s.t. What is c? A?b?

Example x 1 ≥ 0 x 2 ≥ 0

Example 4x 1 – x 2 = 8 x 1 ≥ 0 x 2 ≥ 0

Example 4x 1 – x 2 ≤ 8 x 1 ≥ 0 x 2 ≥ 0

Example 4x 1 – x 2 ≤ 8 2x 1 + x 2 ≤ 10 x 1 ≥ 0 x 2 ≥ 0

Example 4x 1 – x 2 ≤ 8 2x 1 + x 2 ≤ 10 5x 1 - 2x 2 ≥ -2 x 1 ≥ 0 x 2 ≥ 0

Example 4x 1 – x 2 ≤ 8 2x 1 + x 2 ≤ 10 5x 1 - 2x 2 ≥ -2 x 1 ≥ 0 x 2 ≥ 0 max x x 1 + x 2 x 1 + x 2 = 0

Example 4x 1 – x 2 ≤ 8 2x 1 + x 2 ≤ 10 5x 1 - 2x 2 ≥ -2 x 1 ≥ 0 x 2 ≥ 0 max x x 1 + x 2 x 1 + x 2 = 8 Optimal solution

Computational Complexity Convex Sets and Functions Linear Programming –Duality –Complementary Slackness –Solving the LP Outline

Example 2x 1 + 2x 2 + 5x 3 ≤ 24 max x 3x 1 + x 2 + 2x 3 4x 1 + x 2 + 2x 3 ≤ 36 -x 1 ≤ 0, -x 2 ≤ 0, -x 3 ≤ 0 x 1 + x 2 + 3x 3 ≤ 30 s.t. 3 x 2 x 7 x Scale the constraints, add them up 3x 1 + x 2 + 2x 3 ≤ 90 Upper bound on solution

Example 2x 1 + 2x 2 + 5x 3 ≤ 24 max x 3x 1 + x 2 + 2x 3 4x 1 + x 2 + 2x 3 ≤ 36 -x 1 ≤ 0, -x 2 ≤ 0, -x 3 ≤ 0 x 1 + x 2 + 3x 3 ≤ 30 s.t. 1 x Scale the constraints, add them up 3x 1 + x 2 + 2x 3 ≤ 36 Upper bound on solution

Example 2x 1 + 2x 2 + 5x 3 ≤ 24 max x 3x 1 + x 2 + 2x 3 4x 1 + x 2 + 2x 3 ≤ 36 -x 1 ≤ 0, -x 2 ≤ 0, -x 3 ≤ 0 x 1 + x 2 + 3x 3 ≤ 30 s.t. 1 x Scale the constraints, add them up 3x 1 + x 2 + 2x 3 ≤ 36 Tightest upper bound?

Example 2x 1 + 2x 2 + 5x 3 ≤ 24 max x 3x 1 + x 2 + 2x 3 4x 1 + x 2 + 2x 3 ≤ 36 -x 1 ≤ 0, -x 2 ≤ 0, -x 3 ≤ 0 x 1 + x 2 + 3x 3 ≤ 30 s.t. y4y4 y1y1 y2y2 y3y3 y5y5 y6y6 y 1, y 2, y 3, y 4, y 5, y 6 ≥ 0 We should be able to add up the inequalities

Example 2x 1 + 2x 2 + 5x 3 ≤ 24 max x 3x 1 + x 2 + 2x 3 4x 1 + x 2 + 2x 3 ≤ 36 -x 1 ≤ 0, -x 2 ≤ 0, -x 3 ≤ 0 x 1 + x 2 + 3x 3 ≤ 30 s.t. y4y4 y1y1 y2y2 y3y3 y5y5 y6y6 -y 1 + y 4 + 2y 5 + 4y 6 = 3 Coefficient of x 1 should be 3

Example 2x 1 + 2x 2 + 5x 3 ≤ 24 max x 3x 1 + x 2 + 2x 3 4x 1 + x 2 + 2x 3 ≤ 36 -x 1 ≤ 0, -x 2 ≤ 0, -x 3 ≤ 0 x 1 + x 2 + 3x 3 ≤ 30 s.t. y4y4 y1y1 y2y2 y3y3 y5y5 y6y6 -y 2 + y 4 + 2y 5 + y 6 = 1 Coefficient of x 2 should be 1

Example 2x 1 + 2x 2 + 5x 3 ≤ 24 max x 3x 1 + x 2 + 2x 3 4x 1 + x 2 + 2x 3 ≤ 36 -x 1 ≤ 0, -x 2 ≤ 0, -x 3 ≤ 0 x 1 + x 2 + 3x 3 ≤ 30 s.t. y4y4 y1y1 y2y2 y3y3 y5y5 y6y6 -y 3 + 3y 4 + 5y 5 + 2y 6 = 2 Coefficient of x 3 should be 2

Example 2x 1 + 2x 2 + 5x 3 ≤ 24 max x 3x 1 + x 2 + 2x 3 4x 1 + x 2 + 2x 3 ≤ 36 -x 1 ≤ 0, -x 2 ≤ 0, -x 3 ≤ 0 x 1 + x 2 + 3x 3 ≤ 30 s.t. y4y4 y1y1 y2y2 y3y3 y5y5 y6y6 min y 30y y y 6 Upper bound should be tightest

Dual min y 30y y y 6 s.t. y 1, y 2, y 3, y 4, y 5, y 6 ≥ 0 -y 1 + y 4 + 2y 5 + 4y 6 = 3 -y 2 + y 4 + 2y 5 + y 6 = 1 -y 3 + 3y 4 + 5y 5 + 2y 6 = 2 Original problem is called primal Dual of dual is primal

Dual s.t. A x ≤ b max x c T x

Dual - y T (A x – b)max x c T x min y≥0 KKT Condition?A T y = c min y≥0 bTybTy s.t. A T y = c

min y≥0 bTybTy s.t. A T y = c s.t. A x ≤ b max x c T x Primal Dual

Strong Duality min y≥0 bTybTy s.t. A T y = c s.t. A x ≤ b max x c T x Primal Dual p = d = If p ≠ ∞ or d ≠ ∞, then p = d. Skipping the proof (available on webpage) Think back to the intuition of dual

Question s.t. A 1 x ≤ b 1 max x c T x A 2 x ≥ b 2 A 3 x = b 3 Dual?

Computational Complexity Convex Sets and Functions Linear Programming –Duality –Complementary Slackness –Solving the LP Outline

Weak Duality Let x be a feasible solution of the primal c T x ≤ b T y Objective of any primal ≤ Objective of any dual Think back to the intuition of dual Proof? Let y be a feasible solution of the dual

Proof Sketch cTxcTx = (A T y) T x When does equality hold? Optimal primal and dual solutions: x* and y* = y T Ax ≤ y T b = b T y

Equality (y*) T Ax* - (y*) T b = 0 Recall that y* ≥ 0 Recall that Ax* ≤ b If y* j > 0 a j T x* = b j Complementary slackness Necessary and sufficient for optimality

Computational Complexity Convex Sets and Functions Linear Programming –Duality –Complementary Slackness –Solving the LP Outline

Graphical Solution 4x 1 – x 2 ≤ 8 2x 1 + x 2 ≤ 10 5x 1 - 2x 2 ≥ -2 x 1 ≥ 0 x 2 ≥ 0 max x x 1 + x 2 x 1 + x 2 = 8 Optimal solution at a vertex

Graphical Solution 4x 1 – x 2 ≤ 8 2x 1 + x 2 ≤ 10 5x 1 - 2x 2 ≥ -2 x 1 ≥ 0 x 2 ≥ 0 max x x 1 x 1 = 3 Optimal solution at a vertex

Graphical Solution 4x 1 – x 2 ≤ 8 2x 1 + x 2 ≤ 10 5x 1 - 2x 2 ≥ -2 x 1 ≥ 0 x 2 ≥ 0 max x x 2 x 2 = 6 Optimal solution at a vertex

Graphical Solution 4x 1 – x 2 ≤ 8 2x 1 + x 2 ≤ 10 5x 1 - 2x 2 ≥ -2 x 1 ≥ 0 x 2 ≥ 0 An optimal solution always at a vertex Proof? max x c T x

Dantzig (1951): Simplex Method –Search over vertices of the polyhedra –Worst-case complexity is exponential –Smoothed complexity is polynomial Khachiyan (1979, 1980): Ellipsoid Method –Polynomial time complexity –LP is a P optimization problem Karmarkar (1984): Interior-point Method –Polynomial time complexity –Competitive with Simplex Method Solving the LP

Optimization vs. Feasibility s.t. A x ≤ b max x c T x Optimization Feasibility asks if there exists an x such that c T x ≥ K A x ≤ b Optimization via binary search on K Feasible solution For a given K

Feasibility via Ellipsoid Method Feasible region of LP

Feasibility via Ellipsoid Method Ellipsoid containing feasible region of LP

Feasibility via Ellipsoid Method Centroid of ellipsoid

Feasibility via Ellipsoid Method Separating hyperplane for centroid

Feasibility via Ellipsoid Method Smallest ellipsoid containing “truncated” ellipsoid

Feasibility via Ellipsoid Method Centroid of ellipsoid

Feasibility via Ellipsoid Method Separating hyperplane for centroid

Feasibility via Ellipsoid Method Smallest ellipsoid containing “truncated” ellipsoid

Feasibility via Ellipsoid Method Centroid of ellipsoid

Feasibility via Ellipsoid Method Terminate when feasible solution is found

Separating hyperplane in polynomial time –Check each of the ‘m’ LP constraints in O(n) time New ellipsoid in polynomial time –Shor (1971), Nemirovsky and Yudin (1972) Polynomial iterations (Khachiyan) –Volume of ellipsoid reduces exponentially Only requires a separation oracle –Constraint matrix A can be very large Ellipsoid Method Useful Fact !!

Questions?