Skip to content

Linear Programming and Optimization

1 Intro to LP

1.1 Definitions

Linear programming asks to optimize a linear objective with constraints of inequalities and equalities. It captures the essence of a variety of practical problems. It can also serve as a different point of view to some combinatorial problems.

In general a LP is in the form of:

max/mincTxAxeBxfCx=g

It's worth noting that all the constraints only involve closed constraints, i.e. no inequalities like: Ax<e.

To simplify it, we propose a canonical form:

maxcTxAxbx0

It's not hard to transform a general LP into canonical one. The only tricky part is that the canonical part requires non-negative solution, which can be achieved by replacing a un-constrainted x with x+x.

The advantage of non-negativitiy is that we can guarantee the feasible area cannot contain a straight line, which is a useful property in the future analysis.

1.2 Different Types

We conclude LPs into three types:

  1. Finite Optimum
  2. Unbounded
  3. Infeasible

The definition is implied in the name.

An LP solver should return:

  1. A certificate of optimality together with the optimal value. In Simplex Method we will finally come up with a formula opt=cTx+d where c0.
  2. A certificate of unbound-ness, i.e. a half-line, basically a vector/direction v with a starting point y, such that y is feasible and y+λv are feasible for all λ, cTv>0. Notice that in canonical form y+λv are all feasible is equivalent to say Av0.
  3. A certificate of infeasibility. This might seem a bit obscure: how could one give a proof or certificate for infeasibility? By making use of duality, we can show that it's enough to give a certificate of unbound-ness of the dual problem.

1.3 Example: Shortest Path

A classical example of LP is s-t shortest path problem. It can be modeled in this way:

maxdtds=0dvdu+w(u,v)edge fromutov

It's not straightforward to understand why we are trying to maximize the objective while we are looking for a shortest path.

2 Polyhedra and Convex Geometry

LP is optimizing on a polyhedron so the study of polyhedra and convex geomotry enables us to have a geometrical view of the problem which is usually insightful and intuitional.

2.1 Definitions

Half-space & Hyperplane

A hyperplane is a set of the form {x|αTx=β} for αRn{0} and βRn.
A half-space is a set of the form {x|αTxβ} for αRn{0} and βRn.
A polyhedron is a finite intersection of half-spaces. Moreover, a bounded polyhedron is called a polytope.

Some more defs:

The dimension of a polyhedron P is the dimension of a smallest dimensional affine subspace containing P.

A supporting hyperplane for polyhedron P is a hyperplane s.t. PH and P is contained in one of the half-space defined by the hyperplane H, i.e. either H+ or H.

Important def:

Let P be a non-empty polyhedron.

  1. A face is either P itself or intersection with a supporting hyperplane.
  2. A vertex is a 0-dimensional face.
  3. An edge is a 1-dimensional face.
  4. An facet is a (dim(P)1)-dimensional face.

Some very important propositions:

Let P={xRn:Axb} be a polyhedron with ARm×n, let FP, then these statements are equivalent:
1. F is a face of P.
2. cRn s.t. δ=max{cTx:xP} is finite and F={xP:cTx=δ},
3. F={xP:A¯x=b¯} where A¯ is an inequality subsystem.

Always try to prove it before proceeding since the proof involves some basic methods showed up frequently in other problems.

Important proposition:

Let P={xRn:AxB} be a polyhedron and yP. Then the following statements are equivalent:

  1. y is a vertex of P.
  2. y is the unique solution to A¯x=b¯, where A¯xb¯ is the subsystem tight on y.
  3. y is an extreme point.

From 1 to 3:

Since y is a vertex, by previous proposition there exists c s.t. y is the only point that maximizes cTx. Assume y is not extreme point then there exists y+ϵP and yϵP. Then cTy=(cT(y+ϵ)+cT(yϵ))/2. Either one is at least as large as y.

From 3 to 2:

Assume y is not the unique solution, which means there exists v s.t. A¯v=0.

Then consider y±ϵv with ϵ small enough. We have A¯(y±ϵv)=b.

Since A¯ is the tight subsystem, with ϵ small enough the un-tight inequality will not be broken.

In summary, y±ϵvP, which contradicts with y being extreme point.

From 2 to 1:

We immediately have {y}={xP:A¯x=b¯}, by previous proposition {y} is a face. It's obvious 0-dimension so it's a vertex.

Comments