The Revised Simplex Method
The same algorithm organised around the basis inverse rather than a full table. Multipliers are formed once per iteration, columns are priced only as they are examined, and the single direction needed for the ratio test is computed on demand. What changes is what gets stored and recomputed, not which basis sequence the method visits.
Definition
The revised simplex method carries the basis inverse
- Basic values.
, with all nonbasic variables at zero. - Multipliers.
, formed once, as a single row vector. - Pricing. For nonbasic
, , computed column by column. Stop at the first under a first-negative rule, or price every column to apply a most-negative rule. If all are nonnegative, the basis is optimal. - Direction. For the entering column alone,
. - Ratio test.
. If no , the program is unbounded. - Update. The row attaining the minimum leaves;
enters at ; the remaining basic values become ; andis updated for the new basis.
What is stored. The inverse
Why the inverse is updated, not recomputed. The new basis differs from the old in one column, so the new inverse is the old one premultiplied by an elementary matrix built from
What is identical to the tableau method. The entering rule, the ratio test, the step length, the basis sequence and the optimum. Given the same pivoting rule the two methods visit the same bases in the same order. They differ in bookkeeping, not in the path taken.
Assumptions and scope
The method starts from a basis with
invertible and . Obtaining such a basis is a separate procedure, as with any simplex variant.Pricing must cover every nonbasic column before optimality can be declared. A first-negative rule may stop early on an improving iteration, but the final iteration prices everything.
The explicit inverse is a teaching device. Implementations keep a factorisation of
and solve two linear systems per iteration instead, because repeated inverse updates accumulate rounding error. The choice of entering column may differ from a tableau run if a different pricing rule is used. The optimum is the same; the sequence of bases need not be.
Degeneracy behaves exactly as in the tableau method. A tie in the ratio test gives a degenerate basis, a zero step changes the basis without moving the point, and cycling is prevented by an anti-cycling rule rather than by the representation.
Worked material
Contrast
The same run, both ways
Take the program from the tableau unit:
| Full tableau | Revised | |
|---|---|---|
| Iteration 1, entering | scan objective row: | |
| Iteration 1, ratio test | read column 1: | |
| Iteration 1, update | row-reduce all 5 columns | update |
| Iteration 2, test | scan objective row: | |
| Result | optimal, | optimal, |
Same entering variable, same leaving variable, same step, same optimum. The reduced costs the tableau displays in its bottom row,
Where they diverge in cost. With
Where they diverge in what you can see. Reading optimality off a tableau is one glance. In the revised method it is a conclusion drawn after pricing, with nothing to look at. Conversely, asking why
Which to use when. By hand on a small program, the tableau: the state is visible and the arithmetic is mechanical. In an implementation, or on any program with many more columns than rows, the revised form. For understanding what a solver reports, the revised form again, because its quantities are the ones a solver's log and sensitivity output actually name.
Common errors
Common misconception
The revised simplex method is a different algorithm from the tableau method, so it may visit different bases, take a different number of iterations, or reach a different optimum.
Related units
Requires
Connected
- Canonical Form for a Basis (related)