In operations research, the Big M method is a method of solving linear programming problems using the simplex algorithm. The Big M method extends the power of the simplex algorithm to problems that contain "greater-than" constraints. It does so by associating the constraints with large negative constants which would not be part of any optimal solution, if it exists.
The Algorithm
The simplex algorithm is the original and still one of the most widely used methods for solving linear maximization problems. However, to apply it, the origin (all variables equal to 0) must be a feasible point. This condition is satisfied only when all the constraints (except non-negativity) are less-than constraints with a positive constant on the right-hand side. The Big M method introduces surplus and artificial variables to convert all inequalities into that form. The "Big M" refers to a large number associated with the artificial variables, represented by the letter M.
The steps in the algorithm are as follows:
1). Multiple the inequality constraints to ensure that the right hand side is positive.
2). If the problem is of minimization, multiply the objective by -1
3). For any greater-than constraints, introduce surplus and artificial variables (as shown below)
4). Choose a large positive M and introduce a term in the objective of the form -M multiplying the artificial variables
5). For less-than or equal constraints, introduce slack variables so that all constraints are equalities
6). Solve the problem using the usual simplex method.
For example x + y ≤ 100 becomes x + y + s1 = 100, whilst x + y ≥ 100 becomes x + y − a1 = 100. The artificial variables must be shown to be 0. The function to be maximised is rewritten to include the sum of all the artificial variables. Then row reductions are applied to gain a final solution.
The value of M must be chosen sufficiently large so that the artificial variable would not be part of any feasible solution.
For a sufficiently large M, the optimal solution contains any artificial variables in the basis (i.e. positive values) if and only if the problem is not feasible.