9.11. Linear ProgrammingΒΆ

9.11.1. Linear Optimization ProblemΒΆ

9.11.1.1. General FormΒΆ

Definition 9.38 (Linear optimization problem)

A convex optimization problem where the objective and constraint functions are all affine is known as a linear optimization problem or a linear program.

A general linear program has the following form:

(9.27)ΒΆminimize cTx+dsubject to Gxβͺ―hAx=b

where

  1. x∈Rn is the optimization variable.

  2. f(x)=cTx+d is an affine objective function.

  3. G∈RmΓ—n and h∈Rm describe the m affine inequality constraints.

  4. A∈RpΓ—n and b∈Rp describe the p affine equality constraints.

Note

  1. Minimizing cTx+d is same as minimizing cTx with the scalar d only being an offset for the optimal value. Thus, the affine objective can be replaced as a linear objective.

  2. The problem of maximizing cTx+d is same as the problem of minimizing βˆ’cTxβˆ’d which is also an affine functional. Thus, an affine maximization problem with affine constraints is also a linear program.

  3. The feasible set of a linear program is a polyhedron. Recall from Definition 8.18 that a polyhedron is the solution set of a finite number of linear inequalities and linear equations. In this case, we have m linear inequalities and p linear equations.

9.11.1.2. Standard FormΒΆ

Definition 9.39 (Linear programming standard form)

The standard form for linear programming is given by

(9.28)ΒΆminimize cTxsubject to Ax=bxβͺ°0.

Note

This form has

  1. A linear objective function.

  2. A system of linear equations as equality constraints.

  3. Component wise nonnegativity constraints on the optimization variable x.

Observation 9.12 (Converting general form into standard form)

We show how the general form (9.27) can be converted to an equivalent standard form (9.28) linear programming problem.

  1. We first introduce slack variables to the linear inequalities s∈Rm. We get the form

    minimize cTx+dsubject to Gx+s=hAx=bsβͺ°0.
  2. We next split the optimization variable x∈Rn as the difference between two nonnegative variables x+ and xβˆ’. x=x+βˆ’xβˆ’ where both x+,xβˆ’βˆˆR+n. The optimization problem becomes:

    minimize cTx+βˆ’cTxβˆ’+dsubject to Gx+βˆ’Gxβˆ’+s=hAx+βˆ’Axβˆ’=bx+βͺ°0,xβˆ’βͺ°0,sβͺ°0.
  3. This is an LP in standard form with the optimization variables being x+, xβˆ’, and s.

    1. We can drop the scalar d to get a linear objective function.

    2. We can introduce an optimization variable y∈R2n+m as the concatenation of x+, xβˆ’, and s and require that yβͺ°0 be the unified inequality constraint.

    3. We can then write Gx+βˆ’Gxβˆ’+s=h as

      [Gβˆ’GIm]y=h.
    4. Similarly, the objective function can be written as

      [cβˆ’c0m]Ty.

9.11.1.3. Inequality FormΒΆ

Definition 9.40 (Linear programming inequality form)

The standard form for linear programming is given by

(9.29)ΒΆminimize cTxsubject to Axβͺ―b.

Note

This form has

  1. A linear objective function.

  2. A system of linear inequalities as inequality constraints.

  3. No equality constraints.