Management Science – MNG221
description
Transcript of Management Science – MNG221
Management Science – MNG221
Linear Programming – The Simplex Method
The Simplex Method
• The Simplex Method, is a general mathematical solution technique for solving linear programming problems.
• The model is put into the form of a table, and then a number of mathematical steps are performed on the table.
• It replicates the process in graphical analysis of moving from one extreme point on the solution boundary to another.
The Simplex Method
• Unlike the graphical method, in which we could simply search through all the solution points to find the best one, the simplex method moves from one better solution to another until the best one is found, and then it stops.
• The first step in solving a linear programming model manually with the simplex method is to convert the model into standard form
Linear Programming: Model Formulation
Objective of Firm: Maximize Profits
Beaver Creek Pottery Company
Maximization Problem: Simplex Procedure
Resource Requirements
Product Labour(Hr/Unit)
Clay(Lb/Unit)
Profit$/Unit
Bowl 1 4 40Mug 2 3 50
Step 1: Define the decision variablesx1 – number of bowlsx2 – number of mugs
Step 2: Define the objective functionZ = 40x1 + 50x2
Step 3: Define the constraintsx1 + 2x2 ≤ 404x1 + 3x2 ≤ 120
Non-negativity constraintsx1, x2 ≥ 0
Step 4: Solve the problem
There are 40 labour hours and 120 pounds of clay available
The Simplex Method
• We convert this model into standard form by adding slack variables to each constraint as follows.
Maximize Z = 40 x1 + 50x2 + 0s1 + 0s2
Wherex1 + 2x2 + s1 = 40
4x1 + 3x2 + s2 = 120
x1 ,x2, s1, s2 ≥ 0• The slack variables, s1 and s2, represent the amount of unused labor
and clay, respectively.
The Simplex Method
• Slack variables are added to constraints and represent unused resources.
• If no bowls and mugs are produced, and x1 = 0 and x2 = 0, then the solution to the problem is:
x1 + 2x2 + s1 = 400 + 2(0) + s1 = 40 s1 = 40 hrs of Labour
and 4x1 + 3x2 + s2 = 1204(0) + 3(0) + s2 = 120
s2 = 120 lbs of clay
The Simplex Method
• Since unused resources contribute nothing to profit, the profit is zero.
Z = $40x1 + 50x2 + 0s1 + 0s2
Z = 40(0) + 50(0) + 0(40) + 0(120)Z = $0
• It is at this point that we begin to apply the simplex method with the inequality constraints converted to equations for solution .
The Simplex Method –The Solution of Simultaneous Equations
• The equations should be solved simultaneously to determine the values of the variables at every possible solution point.
• Our Example problem has two equations and four unknowns (i.e., two decision variables and two slack variables)
• This situation makes direct simultaneous solution impossible.
The Simplex Method –The Solution of Simultaneous Equations
• The simplex method alleviates this problem by assigning some of the variables a value of zero.
• The number of variables assigned values of zero is n - m, where:
n = the number of variables m = the number of constraints (excluding the non-negativity constraints).
n = 4 variables & m = 2 constraints;
• Therefore, two of the variables are assigned a value of zero (i.e., 4 - 2 = 2).
The Simplex Method –The Solution of Simultaneous Equations
• For example, letting x1 = 0 and s1 = 0 results in the following set of equations:
x1 + 2x2 + s1 = 404x1 + 3x2 + s2 = 120
and 0 + 2x2 + 0 = 40 4(0) + 3x2 + s2 = 120
• First, solve for x2 in the first equation:2x2 = 40 x2 = 20
The Simplex Method –The Solution of Simultaneous Equations
• Then, solve for s2 in the second equation:3x2 + s2 = 1203(20) + s2 = 120 s2 = 60
At point A, x1 = 0, x2 = 20, s1 = 0, and s2 = 60, is the solution obtained by solving simultaneous Equations and is referred to as a basic feasible solution
The Simplex Method –The Solution of Simultaneous Equations
• A basic feasible solution satisfies the model constraints and has the same number of variables with non-negative values as there are constraints.
• Consider a second example where x2 = 0 and s2 = 0x1 + 2x2 + s1 = 404x1 + 3x2 + s2 = 120
and x1 + 2(0) + s1 = 40 4x1 + 3(0) + 0 = 120
The Simplex Method –The Solution of Simultaneous Equations
• First, Solve for x1 4x1 + 3(0) + 0 = 1204x1 = 120x1 = 30
• Then solve for s1
x1 + 2(0) + s1 = 4030 + s1 = 40s1 = 10
• This basic feasible solution corresponds to point C where x1 = 30, x2 = 0, s1 = 10, and s2 = 0.
The Simplex Method –The Solution of Simultaneous Equations
• Consider another example where s1 = 0 and s2 = 0 x1 + 2x2 + s1 = 40
4x1 + 3x2 + s2 = 120and
x1 + 2x2 + 0 = 404x1 + 3x2 + 0 = 120
• The equations can be solved using Row Operations• Row Operations are used to solve simultaneous
equations where equations are multiplied by constants and added or subtracted from each other.
The Simplex Method –The Solution of Simultaneous Equations
• First, multiply the 1st equation by 4 to get 4x1 + 8x2 = 160
• Then subtract the 2nd equation from the 1st : 4x1 + 8x2 = 160 - 4x1 - 3x2 = -120
5x2 = 40 x2 = 8
• Next, sub. this value of x2 into either one of the constraints.x1 + 2(8) = 40x1 = 24
• This solution corresponds to point B on the graph, where x1 = 24, x2 = 8, s1 = 0, and s2 = 0, which is the optimal solution point.
The Simplex Method –The Solution of Simultaneous Equations
• All three of these example solutions meet our definition of basic feasible solutions.
• However, two specific questions are raised by the identification of these solutions.
1. In each example, how was it known which variables to set equal to zero?
2. How is the optimal solution identified?
• The simplex method is a set of mathematical steps that determines at each step which variables should equal zero and when an optimal solution has been reached.
To get ebook
THE SIMPLEX METHODLINEAR PROGRAMMING
The Simplex Method
• The steps of the simplex method are carried out within the framework of a table, or tableau.
• The tableau organizes the model into a form that makes applying the mathematical steps easier.
• The simplex method is a set of mathematical steps for solving a linear programming problem carried out in a table called a simplex tableau.
The Simplex Method
• The Beaver Creek Pottery Company exampleMaximize Z = 40 x1 + 50x2 + 0s1 + 0s2
Subject tox1 + 2x2 + s1 = 404x1 + 3x2 + s2 = 120x1 ,x2, s1, s2 ≥ 0
The Simplex Method
cj Basic
Variables Qty
x1 x2 s1 s2
zj
cj - zj
This is the initial simplex tableau for this model, with the various column and row headings
The Simplex Method
• Cj Row – The Coefficients of the Objective Function
• Cj Column –Contribution to Profit of Basic Feasible Solution
• Basic Variables Column – Basic Feasible Solution Variables• Quantity Column – Quantity of Basic Feasible Solution• Zj Row – Profit
• Cj – Zj Row – Contribution to Profit
• X1, X2, S1, and S2 Columns – Decision Variables and Slack Variables
The Simplex Method
cj Basic
Variables Qty
x1 x2 s1 s2
zj cj - zj
• The first step in filling the table is to record the model variables along the second row from the top.
• The two decision variables are listed first, in order of their subscript magnitude, followed by the slack variables, also listed in order of their subscript magnitude. x1, x2, s1, and s2
The Simplex Method• The next step is to determine a basic feasible
solution• The basic feasible solution in the initial simplex
tableau is the origin where all decision variables equal zero.
• The Simplex Method, instead of arbitrarily selecting a point, selects the origin as the initial basic feasible solution because the values of the decision variables at the origin are always known in all linear programming problems.
• At that point x1 = 0 and x2 = 0;
The Simplex Method• Thus, the variables in the basic feasible solution are
s1 and s2. x1 + 2x2 + s1 = 40
0 + 2(0) + s1 = 40 s1 = 40hr
And4x1 + 3x2 + s2 = 1204(0) + 3(0) + s2 = 120
s2 = 120lb
• In other words, at the origin, where there is no production, all resources are slack, or unused.
The Simplex Method
Basic Variables Quantity
cj x1 x2 s1 s2
s1 40
s2 120
zj
cj - zj
• In other words, at the origin, where there is no production, all resources are slack, or unused.
• At the initial basic feasible solution at the origin, only slack variables have a value greater than zero.
• The quantity column values are the solution values for the variables in the basic feasible solution.
The Simplex Method• The top two rows and bottom two rows are standard
for all tableaus; • However, the number of middle rows is equivalent to
the number of constraints in the model.• This is because the n variables minus m constraints
equals the number of variables with values of zero.• Therefore, it has two middle rows corresponding to s1
and s2 in the initial solution.• The number of columns in a tableau is equal to the
number of variables (including slacks, etc.) plus three.
The Simplex Method• The next step is to fill in the cj values, which are the objective
function coefficients, representing the contribution to profit (or cost) for each variable xj or sj in the objective function, that is 40, 50, 0, and 0 are inserted.
• The values for Cj Column are the contributions to profit of only those variables in the basic feasible solution, in this case s1 and s2
Basic
Variables Quantity
40 50 0 0
cj x1 x2 s1 s2
0 s1 40
0 s2 120
zj
cj - zj
The Simplex Method• The columns under each variable (i.e., x1, x2, s1, and s2) are
filled in with the coefficients of the decision variables and slack variables in the model constraint equations.
• That is the s1 row represents the 1st constraint; the coefficient for x1=1, x2= 2, s1= 1, s2= 0. The s2 row are the 2nd constraint equation coefficients, 4, 3, 0, and 1.
Basic Variables Quantity
40 50 0 0
cj x1 x2 s1 s2
0 s1 40 1 2 1 0
0 s2 120 4 3 0 1
zj
cj - zj
The Simplex Method• Steps of the simplex method (maximization model):1. First, transform all inequalities to equations
by adding slack variables.2. Develop a simplex tableau with the number
of columns equaling the number of variables plus three, and the number of rows equaling the number of constraints plus four.
3. Set up table headings that list the model decision variables and slack variables.
The Simplex Method• Steps of the simplex method (maximization model):
4. Insert the initial basic feasible solution, which are the slack variables and their quantity values.
5. Assign cj values for the model variables in the top row and the basic feasible solution variables on the left side.
6. Insert the model constraint coefficients into the body of the table.
THE SIMPLEX METHODLINEAR PROGRAMMING
Computing the zj and cj - zj Rows
The Simplex Method- Computing the zj and cj - zj Rows -
• The values in the zj row are computed by multiplying each cj column value (on the left side) by each column value under Quantity, x1, x2, s1, and s2 and then summing each of these sets of values.
Basic Variables Quantity
40 50 0 0
cj x1 x2 s1 s2
0 s1 40 1 2 1 0
0 s2 120 4 3 0 1
zj 0 0 0 0 0
cj - zj
The Simplex Method- Computing the zj and cj - zj Rows -
• For example, the value in the zj row under the quantity column is found as follows.
Cj x Qty 0 x 40 = 00 x 120 = 0
Zj = 0 • The value in the zj row under the x1 column is found similarly. Cj x x1
0 x 1 = 0 0 x 2 = 0
Zj = 0
The Simplex Method- Computing the zj and cj - zj Rows -
• Now the cj-zj row is computed by subtracting the zj row values from the cj (top) row values.
• For example, in the x1 column the cj-zj row value is computed as 40 - 0 = 40.
Basic Variables Qty
40 50 0 0
cj x1 x2 s1 s2
0 s1 40 1 2 1 0
0 s2 120 4 3 0 1 zj 0 0 0 0 0
cj - zj 40 50 0 0
The Simplex Method- Computing the zj and cj - zj Rows -
• This tableau represents the solution at the origin, where x1 = 0, x2 = 0, s1 = 40, and s2 = 120.
• This solution is obviously not optimal because no profit is being made.
• Thus, we want to move to a solution point that will give a better solution.
The Simplex Method- Computing the zj and cj - zj Rows -
• In other words, we want to produce either some bowls (x1) or some mugs (x2).
• One of the nonbasic variables (i.e., variables not in the present basic feasible solution) will enter the solution and become basic.
THE SIMPLEX METHODLINEAR PROGRAMMING
The Entering Non-basic Variable
The Simplex Method- The Entering Non-basic Variable -
• The variable with the largest positive cj-zj value is The Entering Variable.
• The cj-zj row values represent the net increase per unit of entering a nonbasic variable into the basic solution.
The Simplex Method- The Entering Non-basic Variable -
• Because the objective is to maximize profit we enter the variable that will give the greatest net increase in profit per unit.
• We select variable x2 as the entering basic variable because it has the greatest net increase in profit per unit, $50 the highest positive value in the cj-zj row.
The Simplex Method- The Entering Non-basic Variable -
• At the origin nothing is produced.
• In the simplex method we move from one solution point to an adjacent point
• That is one variable in the basic feasible solution is replaced with a variable that was previously zero.
The Simplex Method- The Entering Non-basic Variable -
• We can move along either the x1 axis or the x2 axis in order to seek a better solution.
• Because an increase in x2
will result in a greater profit, we choose x2.
The Simplex Method- The Entering Non-basic Variable -
• The x2 column, highlighted, is referred to as the pivot column.
• The pivot column is the column corresponding to the entering variable.
Basic Variables Quantity
40 50 0 0
cj x1 x2 s1 s2
0 s1 40 1 2 1 0
0 s2 120 4 3 0 1 zj 0 0 0 0 0
cj - zj 40 50 0 0
THE SIMPLEX METHODLINEAR PROGRAMMING
The Leaving Basic Variable
The Simplex Method- The Leaving Basic Variable -
• Since each basic feasible solution contains only two variables with nonzero values,
• One of the two basic variables present, s1 or s2, will have to leave the solution and become zero.
• Since we have decided to produce mugs (x2), we want to produce as many as possible or, in other words, as many as our resources will allow.
The Simplex Method- The Leaving Basic Variable -
• First, in the labor constraint we will use all the labor to make mugs (because no bowls are to be produced, x1 = 0; and because we will use all the labor possible and s1 = unused labor resources, s1 = 0 also).
1x1 + 2x2 + s1 = 40hr1(0) + 2x2 + 0 = 40hr x2 = 40hr 2hr/mug = 20mugs
The Simplex Method- The Leaving Basic Variable -
• In other words, enough labor is available to produce 20 mugs.
• Next, perform the same analysis on the constraint for clay.
4x1 + 3x2 + s2 = 120lbs4(0) + 3x2 + 0 = 120lbs x2 = 120lbs 3 lbs/mug x2 = 40 mugs
The Simplex Method- The Leaving Basic Variable -
The Simplex Method- The Leaving Basic Variable -
• This indicates that there is enough clay to produce 40 mugs. But there is enough labor to produce only 20 mugs.
• We are limited to the production of only 20 mugs because there is not enough labor for more mugs.
The Simplex Method- The Leaving Basic Variable -
• Moving out the x2 axis, we can move from the origin to either point A or point R.
• Point A is selected because it is the most constrained and thus feasible, whereas point R is infeasible.
The Simplex Method- The Leaving Basic Variable -
• This analysis is performed in the simplex method by dividing the quantity values of the basic solution variables by the pivot column values. For this tableau,
• The leaving variable is determined by dividing the quantity values by the pivot column values and selecting the minimum possible value or zero.
Basic Variables Quantity x2
s1 40 ÷ 2 = 20, the leaving basic variables2 120 ÷ 3 = 40
The Simplex Method- The Leaving Basic Variable -
• The s1 row, highlighted is referred to as the pivot row.• The pivot row is the row corresponding to the leaving
variable.• The pivot number is the number at the intersection of
the pivot column and row.
Basic Variables Quantity
40 50 0 0
cj x1 x2 s1 s2
0 s1 40 1 2 1 0
0 s2 120 4 3 0 1 zj 0 0 0 0 0
cj - zj 40 50 0 0
THE SIMPLEX METHODLINEAR PROGRAMMING
Developing a Tableau
The Simplex Method- Developing The New Tableau -
• The initial new simplex tableau with the new basic feasible solution variables of x2 and s2 and their corresponding cj values is as follows.
Basic Variables Quantity
40 50 0 0
cj x1 x2 s1 s2
50 x2
0 s2
zj
cj - zj
The Simplex Method- Developing The New Tableau -
• The various row values in the second tableau are computed using several simplex formulas.
• First, the x2 row, called the new tableau pivot row, is computed by dividing every value in the pivot row of the first (old) tableau by the pivot number.
The Simplex Method- Developing The New Tableau -
• Formula
B V Qty
40 50 0 0cj x1 x2 s1 s2
50 x220 1/2 1 1/2 0
0 s2
zj
cj - zj
The Simplex Method- Developing The New Tableau -
• To compute all remaining row values (in this case there is only one other row), another formula is used.
• Formula
The Simplex Method- Developing The New Tableau -
• Table Computations
The Simplex Method- Developing The New Tableau -
• The second simplex tableau is completed by computing the zj and cj zj row values the same way they were computed in the first tableau.
• The zj row is computed by summing the products of the cj column and all other column values.
The Simplex Method- Developing The New Tableau -
Column Qty zj = (50) (20) + (0) (60) = 1000x1 z1 = (50) (1/2) + (0) (5/2) = 25x2 z2 = (50) (1) + (0) (0) = 50s1 z3 = (50) (1/2) + (0) (3/2) = 25s2 z4 = (50) (0) + (0) (1) = 0
Basic Variables Quantity
40 50 0 0
cj x1 x2 s1 s2
50 x220 1/2 1 1/2 0
0 s260 5/2 0 3/2 1
zj
cj - zj
The Simplex Method- Developing The New Tableau -
• The zj row values and the cj-zj row values are added to the tableau to give the completed second simplex tableau.
• The value of 1,000 in the zj row is the value of the objective function (profit) for this basic feasible solution.
Basic Variables Quantity
40 50 0 0
cj x1 x2 s1 s2
50 x220 1/2 1 1/2 0
0 s260 5/2 0 3/2 1
zj 1000 25 50 25 0
cj - zj 15 0 -25 0
THE SIMPLEX METHODLINEAR PROGRAMMING
The Simplex Tableau
The Simplex Method- The Optimal Simplex Tableau -
• The steps that we followed to derive the second simplex tableau are repeated to develop the third tableau.
• First, the pivot column or entering basic variable is determined.
The Simplex Method- The Optimal Simplex Tableau -
• Because 15 in the cj-zj row represents the greatest positive net increase in profit, x1 becomes the entering nonbasic variable.
• Dividing the pivot column values into the
values in the quantity column indicates that s2 is the leaving basic variable and corresponds to the pivot row.
The Simplex Method- The Optimal Simplex Tableau -
The Simplex Method- The Optimal Simplex Tableau -
• The pivot row, pivot column, and pivot number are indicated in the table below:
Basic Variables Quantity
40 50 0 0
cj x1 x2 s1 s2
50 x220 1/2 1 1/2 0
0 s260 5/2 0 3/2 1
zj 1000 25 50 25 0
cj - zj 15 0 -25 0
The Simplex Method- The Optimal Simplex Tableau -
• The new tableau pivot row (x1) in the third simplex tableau is computed dividing all old pivot row values by 5/2, the pivot number.
• The values for the other row (x2) are computed as follows:
The Simplex Method- The Optimal Simplex Tableau -
• The Third Simplex Tableau:
B V Qty40 50 0 0
cj x1 x2 s1 s2
50 x28 0 1 4/5 1/5
40 x124 1 0 3/5 2/5
zj 1360 40 50 16 6 cj - zj 0 0 -16 -6
The Simplex Method- The Optimal Simplex Tableau -
• Observing the cj-zj row to determine the entering variable, we see that a nonbasic variable would not result in a positive net increase in profit, as all values in the cj-zj row are zero or negative.
• This means that the optimal solution has been reached.
The Simplex Method- The Optimal Simplex Tableau -
• The solution is:
• The solution is optimal when all cj-zj values ≤ 0,
• Which corresponds to point B
x1 = 24 bowls
x2 = 8 mugs
Z = $1,360 profit
THE SIMPLEX METHODLINEAR PROGRAMMING
The Simplex Method- Summary-
1. Transform the model constraint inequalities into equations.
2. Set up the initial tableau for the basic feasible solution at the origin and compute the zj and cj-zj row values.
3. Determine the pivot column (entering nonbasic solution variable) by selecting the column with the highest positive value in the cj-zj row.
4. Determine the pivot row (leaving basic solution variable) by dividing the quantity column values by the pivot column values and selecting the row with the minimum nonnegative quotient.
The Simplex Method- Summary-
5. Compute the new pivot row values using the formula
6. Compute all other row values using the formula
The Simplex Method- Summary-
7. Compute the new zj and cj-zj rows.8. Determine whether or not the new solution is optimal by
checking the cj-zj row. • If all cj-zj row values are zero or negative, the solution is
optimal. • If a positive value exists, return to step 3 and repeat the
simplex steps