Converting a Linear Program to Standard Form
Standard form requires a minimization objective, equality constraints, and nonnegative variables. Any linear program can be converted to an equivalent standard-form program by negating a maximization objective, introducing slack or surplus variables, and splitting free variables into a difference of two nonnegative variables.
Definition
In this course, standard form means a linear program written as
The qualifier is not pedantry. Other texts fix a maximisation, or admit inequality constraints, and call that standard form; none is more correct. A conversion is only well defined once the target shape is named, and the theory built on it, the basis, the reduced costs, the optimality test, is stated for this one.
Formal statement
Assumptions and scope
Converting a maximization objective by minimizing its negation preserves the set of optimal solutions; the optimal value changes sign.
A slack or surplus variable is itself a decision variable of the converted program and carries a nonnegativity restriction.
Splitting a free variable
into with does not determineand uniquely, so the converted program may have multiple optimal solutions representing the same original solution.
Worked material
Contrast
Slack and surplus are not interchangeable
The sign on the introduced variable is determined by the direction of the inequality, and getting it wrong changes the feasible set.
Correct.
Incorrect.
Why the second fails: with
The reliable check is directional: a
Common errors
Common misconception
A greater-than-or-equal constraint is converted to an equality by adding a nonnegative variable, in the same way a less-than-or-equal constraint is.
Related units
Connected
- Transforming the Variables (best taken before)
- Extreme Points and Basic Feasible Solutions (used by)