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 A B − 1 and the current basic values, and computes everything else when it is needed. One iteration from basis B :

  1. Basic values. x B = A B − 1 b , with all nonbasic variables at zero.
  2. Multipliers. p T = c B T A B − 1 , formed once, as a single row vector.
  3. Pricing. For nonbasic j , c ¯ j = c j − p T A j , computed column by column. Stop at the first c ¯ j < 0 under a first-negative rule, or price every column to apply a most-negative rule. If all are nonnegative, the basis is optimal.
  4. Direction. For the entering column alone, u = A B − 1 A j .
  5. Ratio test. θ = min { x B ( i ) / u i : u i > 0 } . If no u i > 0 , the program is unbounded.
  6. Update. The row attaining the minimum leaves; x j enters at θ ; the remaining basic values become x B ( i ) − θ u i ; and A B − 1 is updated for the new basis.

What is stored. The inverse A B − 1 is m × m , together with the basis index list and the m basic values. Nothing of size m n is carried. Against a full tableau's ( m + 1 ) ( n + 1 ) entries this is the whole difference in memory, and on a program with n ≫ m it is a large one.

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 u and the pivot row. An O ( m 2 ) update rather than an O ( m 3 ) inversion. Practical implementations store a factorisation of A B rather than the explicit inverse, for numerical stability, and refactorise periodically as update error accumulates.

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 A B invertible and A B − 1 b ≥ 0 . 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 A B 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: min − 3 x 1 − 2 x 2 subject to x 1 + x 2 + x 3 = 4 , x 1 + 3 x 2 + x 4 = 6 , from B = { 3 , 4 } .

Full tableauRevised
Iteration 1, enteringscan objective row: c ¯ 1 = − 3 p T = ( 0 , 0 ) , price x 1 : c ¯ 1 = − 3
Iteration 1, ratio testread column 1: 4 / 1 , 6 / 1 u = A B − 1 A 1 = ( 1 , 1 ) T , ratios 4 , 6
Iteration 1, updaterow-reduce all 5 columnsupdate A B − 1 to ( 1 0 − 1 1 )
Iteration 2, testscan objective row: ( 0 , 1 , 3 , 0 ) p T = ( − 3 , 0 ) ; c ¯ 2 = 1 , c ¯ 3 = 3
Resultoptimal, x = ( 4 , 0 , 0 , 2 ) , z = − 12 optimal, x = ( 4 , 0 , 0 , 2 ) , z = − 12

Same entering variable, same leaving variable, same step, same optimum. The reduced costs the tableau displays in its bottom row, ( 0 , 1 , 3 , 0 ) , are the numbers the revised method computes as c j − p T A j when it prices. They are the same quantities, obtained differently.

Where they diverge in cost. With m = 2 and n = 4 the tableau updates 15 entries per pivot and the revised method updates 4. At m = 8 , n = 500 the tableau updates about 4,500 and the revised method 64, plus one dot product per column actually priced.

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 c ¯ 2 = 1 has an answer in the revised form, it is c 2 − p T A 2 , and p came from c B T A B − 1 , where in the tableau the entry is the result of accumulated row operations with no derivation attached.

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

Learn this topic

Used in

Sources

Results update as you type. Use the up and down arrow keys to move between results, Enter to open one, and Escape to close.

Type to search.

Settings

Appearance

Interface density

Your record

Your progress is stored in this browser and nowhere else: an identifier, the answers you have given, the mastery states and review schedule derived from them, and the lesson you last opened. Clearing it makes you a new learner on this device. It cannot be undone, and it will not affect your appearance or density settings.

Focus timer

Focus--minutes remaining

Phase

Kept in this browser only, and used to label the session in your own history.

Today

Nothing recorded yet. Finish a focus session and it will appear here.

Settings

Focus sessions between long breaks.

Sessions you are aiming for in a day.

Notifications

Your history

Sessions are stored in this browser and nowhere else. They are not evidence and never reach your mastery record.