4. Basic feasible solutions and vertices of polyhedra Due to the fundamental theorem of Linear Programming, to solve any LP it suffices to consider the vertices (finitely many) of the polyhedron P of the feasible solutions. x.. P x 2 Since the geometrical definition of vertex cannot be exploited algorithmically, we need an algebraic characterization. E. Amaldi -- Foundations of Operations Research -- Politecnico di Milano
Which are the vertices of P ={ x R n : Ax b, x } with only inequalities? x 2 c Example min - x - x 2 s.t. x + x 2 6 (I) 2x + x 2 8 (II) x, x 2 P (II) Vertex corresponds to the intersection of the hyperplanes associated to n inequalities. Example: n=2 Vertex (6) is the intersection of hyperplanes of (I) and (II), i.e., intersection of equations x + x 2 = 6 and 2x + x 2 = 8. 2) ) ) 6) 5) 4) (I) x E. Amaldi -- Foundations of Operations Research -- Politecnico di Milano 2
What about the vertices of polyhedra expressed in standard form? P ={x R n : Ax = b, x }? We want to solve LPs in standard form Easier to describe if we start from a polyhedron P ={x R n : Ax b, x }, transform it into standard form P ={x R n : Ax + s = b, x, s } and rename: A:= [ A I ], x := [ x s ]. E. Amaldi -- Foundations of Operations Research -- Politecnico di Milano
Example: (P) x + x 2 6 (I) 2x + x 2 8 (II) x, x 2 (P ) x + x 2 + s = 6 2x + x 2 + s 2 = 8 x, x 2, s, s 2 P 2) ) x 2 ) 6) 5) 4) (II) (I) x Taking the intersection of (I) and (II) in P, amounts in P to let s = s 2 =. Observation: Every constraint in P corresponds to a variable in P, when the variable is set to the constraint is satisfied with =. Example: s x + x 2 6, x x Vertex of P is the intersection of n inequalities in P corresponding variables in P to. E. Amaldi -- Foundations of Operations Research -- Politecnico di Milano setting the 4
Example (continued): Compute all the intersections x 2 x + x 2 + s = 6 (I) 2x + x 2 + s 2 = 8 (II) x, x 2, s, s 2 ) x =, x 2 = s = 6, s 2 = 8 2) x =, s = x 2 = 6, s 2 = 2 ) x =, s 2 = x 2 = 8, s = -2 4) x 2 =, s = x = 6, s 2 = -4 5) x 2 =, s 2 = x = 4, s = 2 6) s =, s 2 = x = 2, x 2 = 4 P 2) ) ) 6) 5) 4) (II) (I) x The intersections where some x j or s i are < yield infeasible solutions. E. Amaldi -- Foundations of Operations Research -- Politecnico di Milano 5
Which are the vertices of a polyhedron in standard form? Visualize the example P={x R : x +x 2 +x =, x } Property: For any polyhedron P ={ x R n : Ax = b, x } the facets (edges in R 2 ) are obtained by setting a variable to, the vertices are obtained by setting n-m variables to. In the example: -=2 variables set to for vertices. E. Amaldi -- Foundations of Operations Research -- Politecnico di Milano 6
Algebraic characterization of the vertices Consider any P ={x R n : Ax = b, x } in standard form. Assumption: A R m n with m n of rank m redundant constraints. there are no Example: 2 x + x 2 + x = 2 (I) Since (I) = (II) + (III), x + x 2 = (II) then (I) can be dropped. x + x = (III) x, x 2, x If m = n, unique solution of Ax = b. ( x = A - b ) If m < n, solution of Ax = b: the system has n-m degrees of freedom (n-m variables can be fixed arbitrarily). If we fix them to, we get a vertex. E. Amaldi -- Foundations of Operations R.search -- Politecnico di Milano 7
P ={x R n : Ax = b, x } n variables, m constraints, A in R m n Definition: A basis of such a matrix A is a subset of m columns of A that are linearly independent and form an m m non singular matrix B. A = B N m n-m First permute the columns of A, then partition A into [B N] E. Amaldi -- Foundations of Operations Research -- Politecnico di Milano 8
Let x = x B x N m components n-m components Any system Ax = b can be written as B x B + N x N = b B is nonsigular For any set of values for x N, we have Definitions: x B = B - b B - N x N A basic solution is a solution obtained by setting x N = and, consequently, letting x B = B - b. A basic solution with x B is a basic feasible solution. The variables in x B are the basic variables and those in x N are the non basic variables. E. Amaldi -- Foundations of Operations Research -- Politecnico di Milano 9
Note: x B satisfies Ax = b by construction. Theorem: x R n is a basic feasible solution P ={ x R n : Ax b, x }. x is a vertex of E. Amaldi -- Foundations of Operations Research -- Politecnico di Milano
min z = 2x + x 2 + 5x s.t. x + x 2 + x + x 4 = 4 x + x 5 = 2 x + x 6 = x 2 + x + x 7 = 6 x i i =,, 7 E. Amaldi -- Foundations of Operations Research -- Politecnico di Milano Example: 6 2 4 b A Choosing columns 4, 5, 6, 7, we have: B B - = B x B = B - b = b basic feasible solution
2 min z = 2x + x 2 + 5x s.t. x + x 2 + x + x 4 = 4 x + x 5 = 2 x + x 6 = x 2 + x + x 7 = 6 x i i =,, 7 E. Amaldi -- Foundations of Operations Research -- Politecnico di Milano Example (continued): Choosing columns 2, 5, 6, 7, we have: B 6 2 4 b A B x B = feasible 2 4-6
Number of basic feasible solutions One for each choice of n-m variables out of n (nonbasic variables) # basic feasible solutions n n! n n m ( n m )! ( n ( n m ))! m E. Amaldi -- Foundations of Operations Research -- Politecnico di Milano