linear programming is a mathematical technique for mathematical optimization of a linear objective function that is subject to linear equality and linear inequality constraints. It is a special case of constrained, convex optimization, which implies that

Standard form of linear program

Standard form of linear programming has a maximization objective function and requires all decision variables to be non-negative.

  • is the vector of decision variables
  • is the vector of coefficients for the objective function.
  • is the matrix representing the coefficients of the constraints.
  • is the vector representing the right-hand side of the constraints.

Convert a linear program to standard form

(Camarena, n.d.)

Change minimizing the objective function , to maximizing

Change lower-bound constraint to upper-bound constraint by flipping signs on two sides

An equality  is equivalent to the system of inequalities  and 

A variable is not constrained to be non negative (i.e. there is no ). A good strategy is introducing new variables since the difference between two non-negative variables and could have any sign. Substitute these new variables into the objective function and constraints.

Augmented form (with slack variables)

Use slack variables to turn inequality constraints into equality constraints

Solution characteristics

Solution exists

  • If exists, the global optimum is generally located at one of the vertices of the feasible region (convex polyhedron)

No solution exists