The standard Simplex Method, as introduced in the previous article, operates from a convenient starting point: when all constraints are of the ≤ type, adding a slack variable to each constraint immediately provides an initial basic feasible solution, the all-slack basis, in which every decision variable is zero, and every slack variable equals its constraint’s right-hand side. This is the algebraic equivalent of doing nothing: zero production, all resources idle.
Many real-world optimisation problems, however, are not so obligingly structured. Constraints of the ≥ type ‘the output must be at least this much’ and equality constraints ‘the total allocation must be exactly this amount’ arise whenever the problem involves minimum requirements, regulatory floors, or balance conditions. For these constraint types, slack variables cannot provide an initial feasible basis; the all-zero decision variable solution would violate the constraints from the outset. The simplex method needs a different starting point.
Meaning of the Two-Phase Method
The Two-Phase Method is a variant of the Simplex algorithm designed to solve linear programming problems whose constraints include ≥ inequalities or exact equalities (= constraints), which prevent the construction of an obvious initial basic feasible solution. In such problems, the feasible region may not include the origin (the point where all decision variables equal zero), which means the standard simplex starting point is infeasible.
The method addresses this by introducing artificial variables, non-negative dummy variables added to ≥ and = constraints to create an initial basis of identity vectors. Artificial variables have no physical meaning; they are mathematical scaffolding that provides the simplex method with a legitimate starting structure. The central task is then to drive these variables out of the solution to zero before proceeding with the real optimisation.
Phase I achieves this by constructing an auxiliary objective function, the sum of all artificial variables, and minimising it using the simplex method. If this sum can be driven to zero, it means a genuine feasible solution has been found, and Phase II can begin with the original objective function. If the minimum value of the auxiliary objective is strictly positive, that is, at least one artificial variable cannot be eliminated, the original problem has no feasible solution, and the analysis stops.
Phase II begins where Phase I ends: it discards the artificial variables from the tableau, reinstates the original objective function, and applies simplex iterations to find the optimal solution within the feasible region identified in Phase I.
Characteristics of the Two-Phase Method
The Two-Phase Method shares the foundational properties of the Simplex Method but has several distinctive characteristics arising from its two-stage architecture.
1. Extension of the Simplex Method to infeasible-origin problems
The Two-Phase Method extends the Simplex framework to problems where the standard starting basis (all-zero decision variables) is infeasible. It does not replace the simplex algorithm but rather wraps it in a two-stage structure that first guarantees feasibility before pursuing optimality.
2. Clean separation of feasibility and optimality
By assigning Phase I exclusively to the feasibility problem and Phase II exclusively to the optimisation problem, the method maintains a clear analytical separation between two distinct questions: ‘does a solution exist?’ and ‘among all solutions, which is best?’ This separation is both conceptually transparent and practically valuable: a Phase I result of infeasibility provides a definitive answer (no feasible solution exists) without the ambiguity that can arise in the Big-M method when M is not chosen sufficiently large.
3. Systematic elimination of artificial variables
The auxiliary objective function in Phase I directly penalises the presence of artificial variables: minimising their sum forces the simplex method to drive them to zero. This is a more principled approach than the Big-M method, which penalises artificials indirectly through the original objective function and requires careful choice of the penalty constant M.
4. Numerical stability advantage over Big-M
Because the Two-Phase Method keeps the two objective functions separate, it avoids the numerical conditioning problems that arise when the big-M penalty is added to relatively small objective function coefficients. For large problems solved on computers, this numerical stability difference is commercially significant.
5. Iterative in both phases
Both Phase I and Phase II use the standard simplex pivot operation. The iterations in Phase I minimise the auxiliary objective; those in Phase II maximise (or minimise) the original objective. The tableau mechanics are identical in both phases; only the objective function row differs.
6. Infeasibility detection
The Two-Phase Method provides a clear infeasibility test: if the minimum value of the Phase I auxiliary objective is greater than zero, no feasible solution exists for the original problem. This is a diagnostic result of considerable practical value, as it indicates that the constraints as specified are mutually inconsistent.
Variable Types in the Two-Phase Method
Before walking through the step-by-step procedure, it is essential to understand the three types of auxiliary variables used to convert a linear programming problem into standard form.
|
Variable Type |
Constraint Direction |
Purpose |
Fate in Final Solution |
|
Slack (s) |
≤ constraint |
Absorbs unused capacity; provides initial basis variable |
May remain at a positive value (unused resource) |
|
Surplus (s) |
≥ constraint |
Measures excess over the minimum requirement; subtracted to convert
to equality |
Zero in the optimal solution if the constraint is binding |
|
Artificial (a) |
≥ or = constraint |
Provides an initial feasible starting point (identity column in
basis) |
Must equal zero by the end of Phase I; dropped before Phase
II |
The logic of variable introduction is as follows. For a ≤ constraint, a slack variable s is added: the inequality x₁ + 2x₂ ≤ 40 becomes x₁ + 2x₂ + s = 40. For a ≥ constraint, a surplus variable s is subtracted, and an artificial variable a is added: the inequality 2x₁ + x₂ ≥ 30 becomes 2x₁ + x₂ − s + a = 30. For an equality constraint, only an artificial variable is added: the equation x₁ + x₂ = 50 becomes x₁ + x₂ + a = 50. In each case, the artificial variable provides the identity column that makes the initial basis identity matrix solvable.
Steps in the Two-Phase Method
The procedure is illustrated throughout with the following worked example.
Worked Example Problem Statement
A chemical plant produces two compounds, P and Q. The production process imposes the following requirements: at least 20 units of a combined input (1 unit of P and 2 units of Q) must be processed daily to meet a contractual minimum; at least 30 units of a second combined input (3 units of P and 1 unit of Q) must be processed to meet safety regulations. The plant wishes to maximise revenue, with a unit revenue of ₹7 for P and ₹5 for Q.
Formally: Maximise Z = 7x₁ + 5x₂, subject to: x₁ + 2x₂ ≥ 20 (contractual minimum) and 3x₁ + x₂ ≥ 30 (safety regulation), with x₁, x₂ ≥ 0.
Both constraints are ≥ type, so the origin (x₁ = x₂ = 0) violates both: producing nothing would breach both the contract and the safety regulation. An initial feasible basis cannot be constructed from slack variables alone. The Two-Phase Method is required.
Phase I: Finding a Basic Feasible Solution
Step 1: Formulate the Problem
The problem is already formulated above. The decision variables are x₁ (units of P) and x₂ (units of Q). The objective is to maximise 7x₁ + 5x₂. The constraints impose minimum production levels and non-negativity.
Step 2: Convert to Standard Form
Each ≥ constraint receives a surplus variable (subtracted to convert to equality) and an artificial variable (added to provide a basis column). There are no ≤ constraints in this example, so no slack variables are needed.
x₁ + 2x₂ − s₁ + a₁ = 20 (contractual minimum; s₁ is surplus, a₁ is artificial)
3x₁ + x₂ − s₂ + a₂ = 30 (safety regulation; s₂ is surplus, a₂ is artificial)
All variables are non-negative: x₁, x₂, s₁, s₂, a₁, a₂ ≥ 0. The initial basis consists of {a₁, a₂}, with a₁ = 20 and a₂ = 30.
Step 3: Construct the Auxiliary Objective Function (Phase I Objective)
The Phase I objective is to minimise W = a₁ + a₂ (the sum of artificial variables). Minimising W to zero is equivalent to finding a point where all artificial variables are zero, a genuine feasible solution to the original problem. The Phase I objective function row is constructed by expressing W in terms of non-basic variables, which requires eliminating the basic variables (a₁ and a₂) from the W row using row operations.
From the two constraint equations: a₁ = 20 − x₁ − 2x₂ + s₁ and a₂ = 30 − 3x₁ − x₂ + s₂. Substituting into W = a₁ + a₂: W = 50 − 4x₁ − 3x₂ + s₁ + s₂, or equivalently W − (−4x₁ − 3x₂ + s₁ + s₂) = 50 after rearrangement. The W row in the initial tableau has coefficients −4, −3, 1, 1 for x₁, x₂, s₁, s₂, respectively, with RHS = −50 (or equivalently, the auxiliary objective starts at W = 50 to be minimised to 0).
Step 4: Set Up the Initial Phase I Tableau and Apply Simplex Iterations
|
Basis |
x₁ |
x₂ |
s₁ |
s₂ |
a₁ |
a₂ |
W (min) |
RHS |
|
a₁ |
1 |
2 |
−1 |
0 |
1 |
0 |
0 |
20 |
|
a₂ |
3 |
1 |
0 |
−1 |
0 |
1 |
0 |
30 |
|
W row |
−4 |
−3 |
1 |
1 |
0 |
0 |
1 |
−50 |
Simplex iterations are applied to the Phase I tableau with the objective of driving W to zero. The entering variable is selected from the most negative W-row coefficient (x₁, coefficient −4); the leaving variable is determined by the minimum ratio test. The iterations continue until no negative coefficients remain in the W row.
After the required pivot operations (whose full row arithmetic is omitted here for brevity but is executed through standard elementary row operations), the Phase I optimal tableau is reached when W = 0.
|
Basis |
x₁ |
x₂ |
s₁ |
s₂ |
a₁ |
a₂ |
W |
RHS |
|
x₁ |
1 |
0 |
−1/5 |
−2/5 |
… |
… |
0 |
8 |
|
x₂ |
0 |
1 |
3/5 |
−1/5 |
… |
… |
0 |
6 |
|
W row |
0 |
0 |
0 |
0 |
… |
… |
1 |
0 |
Step 5: Check Feasibility
The minimum value of W is 0, which confirms that a basic feasible solution exists. The artificial variables a₁ and a₂ are both zero and have left the basis. The current basis variables are x₁ = 8 and x₂ = 6, a feasible solution to the original problem (both contractual and safety constraints are satisfied). Phase I is complete.
If W had remained positive, it would mean no combination of x₁ and x₂ can simultaneously satisfy both constraints, the problem would be declared infeasible, and the analysis would terminate here.
Phase II: Optimising the Original Objective Function
Step 1: Set Up the Phase II Tableau
The artificial variable columns (a₁ and a₂) are dropped entirely from the tableau; they served their purpose in Phase I and have no role in Phase II. The W-row is deleted and replaced with the original objective function row for Z = 7x₁ + 5x₂.
The original objective function row must be updated to be consistent with the current basis (x₁ and x₂ in the basis). This requires eliminating x₁ and x₂ from the Z row using row operations (since basic variables should have zero coefficients in the objective row). The initial Phase II Z row is written with the original coefficients −7 and −5 (for maximisation), and then row operations are performed to zero out the basic variable columns.
Step 2: Apply Phase II Simplex Iterations
With the feasible basis {x₁ = 8, x₂ = 6} inherited from Phase I and the original objective function installed, Phase II iterations proceed exactly as in the standard Simplex Method. At each step, the most negative coefficient in the Z row identifies the entering variable; the minimum ratio test identifies the leaving variable; and elementary row operations update the tableau.
For this example, after updating the Z row for the current basis, inspection reveals that all Z-row coefficients of non-basic variables (s₁ands₂) are already non-negative, which means the Phase I solution is already optimal for the original problem; no further iterations are needed. (This occurs because the constraints in this problem are ≥ type, and the feasible region’s extreme point encountered in Phase I happens to be the revenue-maximising corner.)
Step 3: Interpret the Optimal Solution
|
Basis |
x₁ |
x₂ |
s₁ |
s₂ |
RHS |
|
x₁ |
1 |
0 |
−1/5 |
−2/5 |
8 |
|
x₂ |
0 |
1 |
3/5 |
−1/5 |
6 |
|
Z (max) |
0 |
0 |
1/5 |
3/5 |
62 |
Reading from the optimal tableau: x₁ = 8 (produce 8 units of compound P per day) and x₂ = 6 (produce 6 units of compound Q per day). The optimal daily revenue is Z = 7(8) + 5(6) = 56 + 30 = ₹86. Both constraints are binding (s₁ = s₂ = 0), meaning both the contractual minimum and the safety regulation are satisfied with no margin above the requirement.
The Z-row values for s₁ (= 1/5) and s₂ (= 3/5) are shadow prices: relaxing the contractual minimum constraint by one unit would increase maximum revenue by ₹1/5; relaxing the safety regulation by one unit would increase it by ₹3/5. These shadow prices are actionable if regulatory authorities or clients were willing to adjust the minimums in exchange for compensation below these thresholds; accepting such adjustments would increase the plant’s net revenue.
Applications of the Two-Phase Method
The Two-Phase Method’s value lies in its ability to handle problems whose constraint structure prevents the standard simplex method from finding an initial feasible solution.
1. Production Planning with Minimum Output Requirements
Manufacturing operations frequently operate under minimum production commitments, contractual obligations to deliver at least a specified volume to customers, or government-mandated minimum production of socially important goods. These commitments generate ≥ constraints that the standard simplex method cannot handle directly. The Two-Phase Method identifies the minimum-cost or maximum-revenue production plan that simultaneously satisfies all capacity limits and output floor requirements.
2. Transportation and Assignment Problems with Equality Constraints
Classical transportation problems require that total supply from each source exactly equals total demand at each destination, a system of equality constraints. While the transportation simplex method (a specialised algorithm exploiting the network structure) handles balanced transportation problems efficiently, general assignment and multi-modal logistics problems with mixed constraint types (≥, =, and ≤ simultaneously) require the Two-Phase Method applied to the full LP formulation.
Indian Railways’ freight allocation problem across major commodity corridors coal from Jharkhand mines to power plants in Maharashtra and Gujarat, steel from Odisha to ports in Andhra Pradesh, grain from Punjab to public distribution system godowns across India involves a large LP with both supply capacity constraints (≤, reflecting maximum wagon availability) and demand fulfilment requirements (≥ or = reflecting minimum delivery commitments to power plants and PDS networks). The Two-Phase approach enables the Centre for Railway Information Systems (CRIS) to verify that a feasible allocation exists across all commodity flows before optimising for minimum total transport cost.
3. Portfolio Optimisation with Regulatory Minimum Constraints
Financial regulatory frameworks in India and globally impose minimum allocation requirements on institutional investors: the Statutory Liquidity Ratio (SLR) requires banks to maintain a minimum percentage of their net demand and time liabilities in government securities; SEBI’s investment regulations for mutual funds specify minimum cash and liquid asset levels; pension fund regulations mandate minimum allocations to government bonds. These minimum requirements are ≥ constraints on portfolio composition that, combined with the equality constraint that all funds must be allocated (total allocation = 100%), prevent the use of the standard simplex method without an artificial variable structure.
4. Workforce and Operations Scheduling
Service operations in hospitals, call centres, retail branches, and transport depots face staffing problems with mandatory minimum shift coverage requirements. Each shift must be staffed by at least a minimum number of qualified personnel (≥ constraints), the total number of staff assigned must equal the available workforce (= constraint), and individual staff cannot be assigned to more than a specified number of shifts (≤ constraints). The mixed constraint structure requires artificial variables and, therefore, the Two-Phase Method to find an initial feasible assignment before optimising for minimum overtime cost or maximum service coverage.
Conclusion
The Two-Phase Method is an essential extension of the Simplex algorithm that expands the range of linear programming problems that can be solved to include those with minimum-requirement and exact-equality constraints.
The method’s applications span every domain in which real-world decision-making involves mandatory minimum requirements or exact balance conditions blending mandates in manufacturing, regulatory minimum allocations in finance, exact supply-demand balance in transportation, and minimum staffing levels in service operations. In each case, the Two-Phase Method provides both the verification that a compliant solution exists and the identification of the optimal one within the feasible set.

0 Comments