Learn
Lesson · The Simplex Method · Behind the tableau

Termination and the Klee-Minty Cube

Finiteness is not efficiency. A smallest-index rule proves the method stops; a deformed n-dimensional cube makes the most-negative rule visit all 2ⁿ of its corners, taking exactly 2ⁿ - 1 pivots; and ordinary problems finish in a small multiple of the number of rows. Those three statements are each true, none implies another, and saying all three is the honest status of the algorithm.

terminates finitely many bases, and under Bland's rule none repeats the cube, n dims: 2ⁿ vertices, and the most-negative rule visits them all pivots 3, 7, 15 at n = 2, 3, 4 = 2ⁿ - 1 smallest index on the same cube: 3, 5, 9 greatest improvement: 1 at every n in practice a small multiple of the number of rows finite, exponential in the worst case, fast in practice - three claims
Three true statements about the same algorithm

Core ideas

What this lesson establishes

The hard idea is a negative one: three facts about the method are independent, and almost every confident sentence about simplex speed is one of them being used to imply another.

1

Termination is a finiteness argument and nothing more

There are finitely many bases and a smallest-index rule never repeats one, so the run ends. That argument says nothing whatever about how many of those bases get visited, and the number available grows combinatorially. “It stops” and “it stops soon” are different claims and only the first has been proved.

2

The worst case is constructed, and exact

A deformed cube can be built whose 2ⁿ vertices the most-negative rule visits every one of, costing 2ⁿ - 1 pivots: 3, 7, 15 at n = 2, 3, 4. The coefficients run from 1 to 10ⁿ⁻¹ and the comparisons that pick the entering column have to land exactly. Round one of them the other way and the count collapses, taking the example with it.

3

The pivot count belongs to the rule and the objective, never the region

Keep the same cube and the same optimal vertex, turn the objective coefficients round, and the most-negative rule walks straight there in one pivot. The smallest-index rule takes exactly what it took before, because it never reads a coefficient. Same region, same answer, counts from 1 to 15.

The material

What terminates, what the worst case is, and what neither one proves

The cube, the counts under four rules, the two false implications this lesson exists to separate, and the sentence that is actually true.

“Degeneracy, Cycling and Bland’s Rule” closed with a guarantee: with the smallest-index rule the method reaches an optimal basis or a certificate of unboundedness in finitely many pivots. That guarantee is a counting argument over the set of bases, and the set of bases is large: n choose m, which for a hundred rows and two hundred columns is a number with more than fifty digits. Finiteness on its own promises nothing useful.

Definition · The Klee-Minty cube

For n ≥ 2, the programme maximise Σ 10ⁿ⁻ʲ x_j subject to 2 Σ_{j < i} 10ⁱ⁻ʲ x_j + x_i ≤ 100ⁱ⁻¹ for i = 1, …, n, with x ≥ 0. Its feasible region is a deformed n-cube with 2ⁿ vertices, its optimum is 100ⁿ⁻¹, and the most-negative entering rule starting from the origin visits every vertex, taking 2ⁿ - 1 pivots.

At n = 3 that is maximise 100x₁ + 10x₂ + x₃ subject to x₁ ≤ 1, 20x₁ + x₂ ≤ 100 and 200x₁ + 20x₂ + x₃ ≤ 10000. Eight vertices, seven pivots, optimum 10000 at (0, 0, 10000) — which the method reaches by walking through all eight.

n = 3 max 100x1 + 10x2 + x3 x1 <= 1 20x1 + x2 <= 100 200x1 + 20x2 + x3 <= 10000 most-negative rule, from the origin after x1 x2 x3 z start 0 0 0 0 1 1 0 0 100 2 1 80 0 900 3 0 100 0 1000 4 0 100 8000 9000 5 1 80 8200 9100 6 1 0 9800 9900 7 0 0 10000 10000 8 vertices, 8 corners stood at, 7 pivots = 2³ - 1 pivots taken, by rule n vertices 2ⁿ - 1 most negative smallest index greatest improvement 2 4 3 3 3 1 3 8 7 7 5 1 4 16 15 15 9 1 optimum 100ⁿ⁻¹ : 100, 10000, 1000000

The doubling is the whole point, and it is already plain at 15. At n = 5 the count is 31 against 15, and there is no new information in watching it, which is why the lab’s dimension control stops at four.

The count is a property of the rule and the objective

Keep the region exactly as it is and reverse the objective coefficients — 1, 10, 100 instead of 100, 10, 1. The optimal vertex does not move. The most-negative rule now takes one pivot at every n. The smallest-index rule takes 3, 5, 9 as before, unchanged, because it never looks at a coefficient at all.

So 2ⁿ - 1 is not a fact about cubes and not a fact about the simplex method. It is a fact about one rule on one objective over one region, and the construction is exactly the work of arranging all three to be adversarial together. That is what “worst case” means, and it is why worst cases have to be built rather than found.

The two false implications

The first is “the simplex method is exponential, so it is slow”. The premise is about a worst case over all inputs and the conclusion is about the inputs anyone actually has. Observed pivot counts on real problems run at a small multiple of the number of rows, which is why the method was in production use for decades before anyone knew whether linear programming was tractable at all.

The second is its mirror: “linear programming is polynomial, so the simplex method is”. Linear programming is solvable in polynomial time — the ellipsoid method established it and interior-point methods made it practical — and those are different algorithms. A problem being in a complexity class says nothing about a particular algorithm for it, any more than sorting being possible in n log n time makes bubble sort fast.

The words in both sentences are borrowed: “worst case”, “polynomial” and “input size” are defined in “P, NP and NP-Completeness” on the Discrete Mathematics path. That is a citation rather than a prerequisite — nothing on this course needs anything else from there, and a reader who has not taken it loses only the formal definitions of three phrases used here in their ordinary sense.

What is actually true

Three statements, each true, none implying another. The method is finite, because under a smallest-index rule no basis repeats and there are finitely many. It is exponential in the worst case, because this cube exists and the count on it is exactly 2ⁿ - 1. It is fast in practice, because problems like this cube are constructed rather than met. Reporting all three is the honest status of the algorithm, and dropping any one of them produces a sentence that is wrong in a direction someone will act on.

One last thing this course has to say about its own arithmetic. Neither of the two famous results is reproducible in floating point at all. The cycling example returns to its starting tableau entry for entry only if nothing has been rounded, and the count 2ⁿ - 1 holds only if the comparisons among coefficients from 1 to 10ⁿ⁻¹ land exactly. Every figure on these nine pages is an exact fraction, and in these two lessons that is the content rather than the style.

Interactive

Termination, and the cube that makes it expensive

Finite is not fast: the pivot count measured against two to the n minus one, under four rules

The cube that costs two to the na squashed n-cube whose every vertex Dantzig's rule visits, counted here rather than quoted
the measured pivot countthe bound two to the n minus oneanother rule, fewer pivotsthe count that does not survive rounding

Method

Saying how fast the method is, honestly

Four questions, asked separately. Most wrong statements about simplex speed come from answering one of them and reporting the answer as another.

1

Ask whether it terminates, and on what rule

The smallest-index rule terminates on every programme; the most-negative rule can cycle. That is a yes-or-no question about the rule, answered by a counting argument, and it has no numbers in it.

2

Ask what the worst case is, and name the construction

“Exponential” here means: there is a family of programmes on which this rule takes 2ⁿ - 1 pivots. Name the family, because a worst case with no construction attached is a rumour, and the construction is what shows the objective is doing as much work as the region.

3

Ask what happens on the problems you actually have

Run the method and count. Observed counts on ordinary models are a small multiple of the number of rows, which is a measurement rather than a theorem, and it is the number that decides whether the method is usable.

4

Keep the algorithm and the problem apart

Linear programming is solvable in polynomial time by other methods. That is a statement about the problem, it does not transfer to the simplex method, and the reverse transfer — from the simplex worst case to the difficulty of linear programming — fails as well.

5

Report all three claims when asked which one is true

They are all true. Finite, exponential in the worst case, fast in practice: a summary that keeps only the first is useless, only the second is alarmist, and only the third is unjustified.

Finite, exponential, fast: which is which

Score 0 / 0

The three-dimensional cube: seven pivots, then one

Eight vertices and every one of them visited. The same region and the same optimal vertex are then solved in a single pivot by turning the objective coefficients round, which is the clearest statement of what the count actually depends on.

max 100x1 + 10x2 + x3 x1 <= 1 20x1 + x2 <= 100 200x1 + 20x2 + x3 <= 10000 MOST-NEGATIVE RULE pivot in out vertex reached z start (0, 0, 0) 0 1 x1 s1 (1, 0, 0) 100 2 x2 s2 (1, 80, 0) 900 3 s1 x1 (0, 100, 0) 1000 4 x3 s3 (0, 100, 8000) 9000 5 x1 s1 (1, 80, 8200) 9100 6 s2 x2 (1, 0, 9800) 9900 7 s1 x1 (0, 0, 10000) 10000 7 pivots = 2³ - 1, 8 distinct vertices out of 2³ = 8 SAME REGION, OBJECTIVE REVERSED: max x1 + 10x2 + 100x3 pivot 1 x3 in, s3 out (0, 0, 10000) z = 1000000 the same vertex, in 1 pivot smallest index on the reversed objective: 5 pivots, exactly as before ALL FOUR RULES, ALL THREE DIMENSIONS n vertices 2ⁿ-1 most neg. smallest idx greatest impr. largest idx 2 4 3 3 3 1 1 3 8 7 7 5 1 1 4 16 15 15 9 1 1 optimum at every n: 100ⁿ⁻¹ = 100, 10000, 1000000 n = 5 would be 31 against 15; the doubling is already plain at 15

Read the reversal carefully, because it is the whole lesson in two lines. The constraints did not change. The optimal vertex did not change — (0, 0, 10000) both times. Only the objective coefficients were turned round, and the most-negative rule went from seven pivots to one, while the smallest-index rule took exactly what it took before because it never reads a coefficient. 2ⁿ - 1 is a property of a rule and an objective together, not of a shape.

None of these counts survives rounding. The coefficients at n = 4 run from 1 to 1000, the right-hand sides to 1000000, and the comparisons that choose the entering column have to land exactly; in floating point one of them lands the other way, the count collapses, and the example goes with it. That is why the cube is here rather than in a footnote — it can only be shown on a page whose arithmetic is exact.

For a faded rehearsal, set the lab to n = 4 and work through the three questions separately before looking at the panel. The supplied first move is the bound: 2⁴ - 1 = 15. Predict the most-negative count, then the smallest-index count, then the greatest-improvement count; then reverse the objective and predict all three again. Finally write one sentence about the speed of the simplex method that would still be true if all six predictions were wrong.

Common mistakes

1
Reading the worst case as a statement about ordinary problems“Exponential in the worst case” means a family of programmes exists on which the count is 2ⁿ - 1, and that family had to be constructed by making the region, the objective and the rule adversarial together. Observed counts on real models are a small multiple of the number of rows. Both facts are true and neither one is evidence about the other.
2
Transferring a complexity class from the problem to the algorithmLinear programming is solvable in polynomial time; the simplex method with the most-negative rule is not one of the algorithms that does it. A class constrains the best available algorithm and says nothing about any particular one — which is the same error as concluding that bubble sort is efficient because sorting can be done in n log n time.
3
Reading 2ⁿ - 1 as a property of the regionReverse the objective on the same cube and the most-negative rule takes one pivot to the same optimal vertex, while the smallest-index rule takes exactly what it took before. The count belongs to the rule and the objective together; the region only supplies the corners that a badly matched pair can be marched around.

Check your understanding

✓
Finish when you can state all three claims and say which of them the other two do not imply.

You should be able to state the termination argument and what it does not deliver, run the cube at two dimensions and count the pivots against 2ⁿ - 1, change the rule and the objective and explain the new counts, separate the two false implications about polynomial time, and say why neither famous result is reproducible in floating point.

Note: That completes the algorithm: a start, a pivot, a stopping rule, a diagnosis for each way it can refuse to finish, and an honest count. One object from the final tableau has been named three times and never used — c_BᵀB⁻¹, the row of numbers sitting under the columns that started as the identity. “Duality and Sensitivity Analysis” is about that row: what each of its entries is worth, over what range of the data it stays worth that, and the second linear programme it solves.

Kept in this browser only, for you. Nothing is sent anywhere and nothing checks it. Carry it to another device.

Feedback and recommendations

Something to change about this lesson? Write it down, tick it off when it is handled, and export the list when you want to act on it. Kept in this browser only: nothing is sent anywhere, and nobody is notified.

No recommendations yet for this lesson.