Skip to content
심플렉스법 계산기 심플렉스법 계산기
← 블로그로 돌아가기
Simplex Tableau Explained: How to Set Up, Read and Update It

Simplex Tableau Explained: How to Set Up, Read and Update It

게시일 October 16, 2026 · 작성자 Simplex Method Calculator Editorial Team

The simplex tableau is a table that holds everything the simplex method needs at one step: the current solution, the constraint coefficients, and the information that tells you whether the solution can still improve. Once you can read a tableau, the rest of the simplex method is just repeating the same pivot until the tableau says stop.

This guide explains each part of the tableau, then follows one problem through all four of its tableaus. The simplex tableau calculator builds exactly these tables for any problem you enter.

The Example Problem

  • Maximize Z = 3x1 + 2x2
  • Subject to 2x1 + x2 ≤ 18
  • 2x1 + 3x2 ≤ 42
  • 3x1 + x2 ≤ 24
  • x1, x2 ≥ 0

Add slack variables s1, s2 and s3 to turn the constraints into equations:

  • 2x1 + x2 + s1 = 18
  • 2x1 + 3x2 + s2 = 42
  • 3x1 + x2 + s3 = 24

Parts of a Simplex Tableau

PartWhat it contains
Basis columnThe basic variables, one per row. Their values are the current solution.
Cb columnThe objective coefficient of each basic variable.
Variable columnsThe coefficients of every variable (decision, slack, surplus, artificial) in each equation.
RHS columnThe current value of each basic variable. All non-basic variables are 0.
Cj rowThe objective coefficient of each variable, written above the columns.
Zj rowFor each column, the sum of Cb times the entries in that column. Under RHS it gives the current Z.
Cj − Zj rowThe net gain in Z from bringing one unit of that variable into the basis.

The two rows at the bottom are what drive the method. The Zj and Cj − Zj guide explains the calculation in more detail.

The Initial Tableau

With only slack variables in the basis, every Cb is 0, so the Zj row is all zeros and Cj − Zj equals the objective coefficients.

BasisCbx1x2s1s2s3RHS
s102110018
s202301042
s303100124
Zj000000
Cj − Zj32000

How to read it: the solution is s1 = 18, s2 = 42, s3 = 24 and x1 = x2 = 0, so Z = 0. x1 has the largest Cj − Zj (3), so it enters. Ratio test: 18/2 = 9, 42/2 = 21, 24/3 = 8. The smallest is 8, so s3 leaves and the pivot element is 3.

Tableau 2

Divide the s3 row by 3 to make the pivot 1, then subtract multiples of it from the other rows so the rest of the x1 column becomes 0.

BasisCbx1x2s1s2s3RHS
s1001/310−2/32
s2007/301−2/326
x1311/3001/38
Zj3100124
Cj − Zj0100−1

How to read it: x1 = 8, s1 = 2, s2 = 26 and Z = 24. x2 still has a positive Cj − Zj of 1, so it enters. Ratios: 2 / (1/3) = 6, 26 / (7/3) = 78/7 (about 11.1), 8 / (1/3) = 24. s1 leaves.

Tableau 3

BasisCbx1x2s1s2s3RHS
x220130−26
s2000−71412
x1310−1016
Zj3230−130
Cj − Zj00−301

How to read it: x1 = 6, x2 = 6 and Z = 30. Something interesting happens here: the slack variable s3, which left the basis in the first pivot, now has a positive Cj − Zj of 1. A variable that left can come back. Ratios use only positive entries in the s3 column: 12/4 = 3 for row s2 and 6/1 = 6 for row x1. s2 leaves.

Tableau 4: The Optimal Tableau

BasisCbx1x2s1s2s3RHS
x2201−1/21/2012
s3000−7/41/413
x13103/4−1/403
Zj325/41/4033
Cj − Zj00−5/4−1/40

Every Cj − Zj is now zero or negative, so the tableau is optimal.

Reading the Final Tableau

  • Optimal solution: x1 = 3, x2 = 12, with maximum Z = 3(3) + 2(12) = 33.
  • Slack values: s1 = 0 and s2 = 0 (not in the basis), s3 = 3. The first two constraints are binding; the third has 3 units of unused capacity. Check: 3(3) + 12 = 21, which is 3 below the limit of 24.
  • Shadow prices: the Zj values under the slack columns are 5/4 for constraint 1, 1/4 for constraint 2 and 0 for constraint 3. One more unit of the first resource would raise Z by 5/4; extra units of the third resource are worth nothing because it is not fully used.
  • Uniqueness: the only zeros in the Cj − Zj row belong to basic variables, so this optimal solution is unique. A zero under a non-basic variable would signal multiple optimal solutions.

Tableau Rules at a Glance

  1. Every basic variable has a unit column: a 1 in its own row and 0 everywhere else.
  2. The RHS column is never negative in the primal simplex method. A negative RHS means an error in the ratio test (or a problem for the dual simplex method).
  3. Zj under RHS always equals the current objective value.
  4. Maximization stops when all Cj − Zj ≤ 0; minimization stops when all Cj − Zj ≥ 0.

Build the Tableaus Automatically

Writing four tableaus by hand takes time and one wrong fraction spoils every table after it. Enter 3x1 + 2x2 and the three constraints in the simplex tableau calculator to generate the same initial, intermediate and final tableaus, with the pivot column, pivot row and pivot element shown at each step.