190 likes | 208 Views
Learn about the Simplex Method and its application in solving complex linear programming problems. Explore basic terms like slack, surplus, and artificial variables. Understand procedures for maximization and minimization problems, dealing with mixed constraints, and handling special cases such as degeneracy, unbounded problems, and multiple optimal solutions.
E N D
LINEAR PROGRAMMING SIMPLEX METHOD
Introduction • With only two decision variables it is possible to use graphical methods to solve LP problems • But most real life LP problems are too complex for simple graphical procedures • We need a more powerful procedure called the simplex method • The simplex method examines the corner points in a systematic fashion using basic algebraic concepts • It does this in an iterative manner until an optimal solution is found • Each iteration moves us closer to the optimal solution
Basic Terms • Slack Variables – A variable added to convert an inequality of equal to or less than type (≤) to equality. • Surplus Variable – A variable subtracted to convert an equality of equal to or greater than type (≥) to equality. • Artificial Variable – A fictitious variable included in the case of inequality of (≥) type and equality (=), to satisfy the non negativity condition of a basic feasible solution.
Procedure for Maximization Problems • Set up the inequalities describing the problem constraints. • Introduce slack variables and convert inequalities into equations. • Enter the equalities into the simplex table. • Calculate the Zj and Cj – Zj value for this solution. • Determine the entering variable by choosing the highest Cj – Zj.
Determine the row to be replaced from the minimum ratio column (only compute the ratios for rows whose element is greater than zero). • Compute the value of the new key row. • Compute the values for remaining rows. • Calculate Cj and Zj value for this solution. • If there is non-negative Cj – Zj value and return to step 5 above. • If there is no non – negative Cj – Zj values the final solution has been obtained.
Procedure for Minimization Problems • Set up the inequalities describing the problem constraints. • Convert any inequalities to equalities by introducing surplus variables. • Add artificial variable to all equalities involving surplus variables. • Enter the resulting equalities in the simplex table. • Calculate Cj – Zj value for this solution.
Determine the entering variable selecting the one with the largest negative Cj – Zj values. • Determine the departing row by choosing the smallest non – negative ratio ignoring infinity and negative. Zero is positive for the purpose. • Compute the values for the new key row. • Calculate the values for the remaining rows. • Calculate the Cj – Zj value for this solution. • If there is negative element in the Cj – Zj row then return to step 6. If there is no negative Cj – Zj then final solution has been obtained.
Simplex Problem (Mixed Constraints) • A situation may arise when the constraints are ≥ type or ≤ type or = type i.e. mixed constraints. • If any constraint has –ve constant at the RHS, then multiply both sides with -1 and it will reverse the directions of inequalities. • Introduce slack variable, in case of ≤ type constraint. • Introduce surplus variables and artificial variables in case of ≥ type constraints.
Introduce artificial variables if the constraint is ‘=‘ type. • Assign zero co-efficient to the slack variables and surplus variables in the objective function. • Assign +M in case of minimization and –M in case of maximization problems to the artificial variables in the objective function. • In case of maximization, stop where Cj – Zj row contains zero or negative elements. • In case of minimization, stop where Cj – Zj row contains all elements zero or positive values.
Special Cases • Tie for key column • Tie for key row (Degeneracy) • Unbounded problems • Multiple optimal solutions • Infeasible problems • Redundant constraints • Unrestricted variables
1. Tie for key column • Problem can arise in case of tie between identical Cj – Zjvalues, i.e., two or more columns. • In such a case, selection for key column can be made arbitrarily. • There is no wrong choice, although selection of one variable may result in more iteration.
2. Tie for key row (Degeneracy) Degeneracy occurs when there is tie for minimum ratio for choosing the departing variable. Methods to select the key row: • Choose arbitrarily. • Use alternate method.
Alternate Procedure for Degeneracy • Locate the rows in which smallest non-negative ratio are tied (equal). • Find the coefficient of the slack variables and divide each coefficient by the corresponding positive numbers of the key column in the row, starting from left to right in order to break the tie. • If the ratios do not break the tie, find the similar ratios for the coefficients of decision variables. • Compare the resulting ratio, column by column. • Select the row which contains smallest ratio. This row becomes the key row. • After the resolving of this tie, simplex method is applied to obtain the optimum tie.
3. Unbounded problems • It is a situation when key row cannot be selected because minimum ratio column contains all negative or infinity, the solution is unbounded. • The table does not indicate optimal solution, yet the simplex process is prohibited from continuing.
4. Multiple optimal solutions • In the final simplex table, if the index row indicates the value of Cj – Zjfor a non-basic variable to be zero, there exists an alternative optimum solution.
5. Infeasible problems • It is a situation when an artificial variable is present as a basic variable in the final solution. • This condition occurs when the problem has incompatible constraints.
6. Redundant constraints • When on constraint is less restrictive than the other, it is redundant constraint. For example 4x1 + 3x2<12 4x1+ 3x2<16 (Redundant)
7. Unrestricted variables • Unrestricted variable is that decision variable which does not carry any value. • This variable can take positive, negative and zero values. • To solve the problem, this variable can take two values one +ve and one –ve because difference between these two is zero.