1 PERFORMANCE EXCELLENCE IN THE WOOD PRODUCTS INDUSTRY EM 8720-E October 1998 $3.00 Using the Simplex Method to Solve Linear Programming Maximization Problems J. Reeb and S. Leavengood A key problem faced by managers is how to allocate scarce resources among activities or projects. Linear programming, or LP, is a method of allocating resources in an optimal way. It is one of the most widely used operations research (OR) tools. It has been used successfully as a decisionmaking aid in almost all industries, and in financial and service organizations. Programming refers to mathematical programming. In this context, it refers to a planning process that allocates resources labor, materials, machines, and capital in the best possible (optimal) way so that costs are minimized or profits are maximized. In LP, these resources are known as decision variables. The criterion for selecting the best values of the decision variables (e.g., to maximize profits or minimize costs) is known as the objective function. The limitations on resource availability form what is known as a constraint set. For example, let s say a furniture manufacturer produces wooden tables and chairs. Unit profit for tables is $6, and unit profit for chairs is $8. To simplify our discussion, let s assume the only two resources the company uses to About this series According to the Operations Research Society of America, Operations research [OR] is concerned with scientifically deciding how to best design and operate man-machine systems, usually under conditions requiring the allocation of scarce resources. This publication, part of a series, should be useful for supervisors, lead people, middle managers, and anyone who has planning responsibility for either a single manufacturing facility or for corporate planning over multiple facilities. Although managers and planners in other industries can learn about OR techniques through this series, practical examples are geared toward the wood products industry. produce tables and chairs are wood (board feet) and labor (hours). It takes 30 bf and 5 hours to make a table, and 20 bf and 10 hours to make a chair. James E. Reeb, Extension forest products manufacturing specialist; and Scott Leavengood, Extension agent, Klamath County; Oregon State University.
2 OPERATIONS RESEARCH Decision variables... The resources available. Constraint set... The limitations on resource availability. Objective function... The criterion for selecting the best values of the decision variables. There are 300 bf of wood available and 110 hours of labor available. The company wishes to maximize profit, so profit maximization becomes the objective function. The resources (wood and labor) are the decision variables. The limitations on resource availability (300 bf of wood and 110 hours of labor) form the constraint set, or operating rules that govern the process. Using LP, management can decide how to allocate the limited resources to maximize profits. The linear part of the name refers to the following: The objective function (i.e., maximization or minimization) can be described by a linear function of the decision variables, that is, a mathematical function involving only the first powers of the variables with no cross products. For example, 23 and 4X 16 are valid decision variable terms, while 232, 4X 163, and (4X 1 * 2X 1 ) are not. The entire problem can be expressed as straight lines, planes, or similar geometrical figures. The constraint set can be expressed as a set of linear equations. In addition to the linear requirements, nonnegativity conditions state that the variables cannot assume negative values. It is not possible to have negative resources. Without these conditions, it would be mathematically possible to use more resources than are available. In EM 8719, Using the Graphical Method to Solve Linear Programs, we use the graphical method to solve an LP problem involving resource allocation and profit maximization for a furniture manufacturer. In that example, there were only two variables (wood and labor), which made it possible to solve the problem graphically. Problems with three variables also can be graphed, but threedimensional graphs quickly become cumbersome. Problems with more than three variables cannot be graphed. Most real-world problems contain numerous objective criteria and resources, so they re too complicated to represent with only two or three variables. Thus, for all practical purposes, the graphical method for solving LP problems is used only to help students better understand how other LP solution procedures work. This publication will build on the example of the furniture company by introducing a way to solve a more complex LP problem. The method we will use is the simplex method. 2
3 SIMPLEX METHOD Overview of the simplex method The simplex method is the most common way to solve large LP problems. Simplex is a mathematical term. In one dimension, a simplex is a line segment connecting two points. In two dimensions, a simplex is a triangle formed by joining the points. A threedimensional simplex is a four-sided pyramid having four corners. The underlying concepts are geometrical, but the solution algorithm, developed by George Dantzig in 1947, is an algebraic procedure. As with the graphical method, the simplex method finds the most attractive corner of the feasible region to solve the LP problem. Remember, any LP problem having a solution must have an optimal solution that corresponds to a corner, although there may be multiple or alternative optimal solutions. Simplex usually starts at the corner that represents doing nothing. It moves to the neighboring corner that best improves the solution. It does this over and over again, making the greatest possible improvement each time. When no more improvements can be made, the most attractive corner corresponding to the optimal solution has been found. A moderately sized LP with 10 products and 10 resource constraints would involve nearly 200,000 corners. An LP problem 10 times this size would have more than a trillion corners. Fortunately, the search procedure for the simplex method is efficient enough that only about 20 of the 200,000 corners are searched to find the optimal solution. In the real world, computer software is used to solve LP problems using the simplex method, but you will better understand the results if you understand how the simplex method works. The example in this publication will help you do so. PROFITS Review of the graphical method First, let s quickly review the graphical procedure for solving an LP problem, which is presented in EM 8719, Using the Graphical Method to Solve Linear Programs. Let s say a furniture manufacturer wishes to maximize profit. Information about available resources (board feet of wood and hours of labor) and the objective criterion is presented in Table 1. For a complete, step-by-step review of the graphical method, see EM 8719 or one of the textbooks listed in the For more information section. 3
4 OPERATIONS RESEARCH Tip.. In our example, X 1 refers to tables, refers to chairs, and Z refers to profit. Table 1. Information for the wooden tables and chairs linear programming problem. Resource Table (X 1 ) Chair ( ) Available Wood (bf) Labor (hr) Unit profit $6 $8 Maximize: Z = 6X (objective function) Subject to: 30X < 300 (wood constraint: 300 bf available) 5X < 110 X 1, > 0 (labor constraint: 110 hours available) (nonnegativity conditions) Based on the above information, graphically solve the LP (Figure 1). Graph the two constraint equation lines. Then plot two objective function lines by arbitrarily setting Z = 48 and Z = 72 to find the direction to move to determine the most attractive corner. The coordinates for the most attractive corner (where the wood and labor constraint equations intersect) can be found by simultaneously solving the constraint equations with two unknowns. Chairs Wood Feasible region Labor Tables Figure 1. Determining the most attractive corner corresponding to the optimal solution. 4
5 SIMPLEX METHOD To simultaneously solve the two constraint equations, first multiply the labor equation by -2, and add it to the wood equation: 30X = 300 (wood) -2(5X = 110) (labor) 20X = 80 X 1 = 4 tables Next, substitute into either of the constraint equations to find the number of chairs. We can substitute into both equations to illustrate that the same value is found. Wood constraint Labor constraint 30(4) + 20 = 300 5(4) + 10 = = = = = = = 90 = 180/20 = 90/10 = 9 chairs = 9 chairs Now, determine the value of the objective function for the optimal solution. Substitute into the equation the number of tables and chairs, and solve for Z. Z = $6(4) + $8(9) = $96 The optimal solution is to manufacture four tables and nine chairs for a profit of $96. 5
6 OPERATIONS RESEARCH Using the simplex method By introducing the idea of slack variables (unused resources) to the tables and chairs problem, we can add two more variables to the problem. With four variables, we can t solve the LP problem graphically. We ll need to use the simplex method to solve this more complex problem. We ll briefly present the steps involved in using the simplex method before working through an example. Table 2 shows an example of a simplex tableau. Although these steps will give you a general overview of the procedure, you ll probably find that they become much more understandable as you work through the example. A list of shortcuts is found on page 23. You can refer to the six steps and shortcuts while working through the example. Step 1. Formulate the LP and construct a simplex tableau. Add slack variables to represent unused resources, thus eliminating inequality constraints. Construct the simplex tableau a table that allows you to evaluate various combinations of resources to determine which mix will most improve your solution. Use the slack variables in the starting basic variable mix. Step 2. Find the sacrifice and improvement rows. Values in the sacrifice row indicate what will be lost in per-unit profit by making a change in the resource allocation mix. Values in the improvement row indicate what will be gained in per-unit profit by making a change. Table 2. Example of a simplex tableau. Unit profit Basic mix X 1 Solution Sacrifice Current profit Improvement
7 SIMPLEX METHOD Step 3. Apply the entry criteria. Find the entering variable and mark the top of its column with an arrow pointing down. The entering variable is defined as the current non-basic variable that will most improve the objective if its value is increased from 0. If ties occur, arbitrarily choose one as the entering variable. When no improvement can be found, the optimal solution is represented by the current tableau. If no positive number appears in the entering variable s column, this indicates that one or more constraints are unbounded. Since it is impossible to have an unlimited supply of a resource, an unbounded solution indicates that the LP problem was formulated incorrectly. Step 4. Apply the exit criteria. Using the current tableau s exchange coefficient from the entering variable column, calculate the following exchange ratio for each row as: Solution value/exchange coefficient The exchange ratio tells you which variable is the limiting resource, i.e., the resource that would run out first. Find the lowest nonzero and nonnegative value. This variable is the limiting resource. The basic variable in this row becomes the exiting variable. In case of identical alternatives, arbitrarily choose one. Mark the exiting variable row with an arrow pointing left. Step 5. Construct a new simplex tableau. Constructing a new tableau is a way to evaluate a new corner. One variable will enter the basic mix (entering variable), and one variable will leave the basic mix and become a non-basic variable (exiting variable). The operation of an entering variable and an exiting variable is called a pivot operation. The simplex method is made up of a sequence of such pivots. The pivot identifies the next corner to be evaluated. The new basic mix always differs from the previous basic mix by one variable (exiting variable being replaced by the entering variable). To construct the new tableau, replace the exiting variable in the basic mix column with the new entering variable. Other basic mix variables remain unchanged. Change the unit profit or unit loss column with the value for the new entering variable. Compute the new row values to obtain a new set of exchange coefficients applicable to each basic variable. Step 6. Repeat steps 2 through 5 until you no longer can improve the solution. 7
8 OPERATIONS RESEARCH Slack variables... A mathematical representation of surplus resources. In real-life problems, it s unlikely that all resources will be used completely, so there usually are unused resources. A simplex method example: Production of wooden tables and chairs Step 1. Formulate the LP and construct a simplex tableau. From the information in Table 3, we can formulate the LP problem as before. Table 3. Information for the wooden tables and chairs linear programming problem. Resource Table (X 1 ) Chair ( ) Available Wood (bf) Labor (hr) Unit profit $6 $8 Maximize: Z = 6X (objective function) Subject to: 30X < 300 (wood constraint: 300 bf available) 5X < 110 X 1, > 0 (labor constraint: 110 hours available) (nonnegativity conditions) Slack variables Using the simplex method, the first step is to recognize surplus resources, represented in the problem as slack variables. In most real-life problems, it s unlikely that all resources (usually a large mix of many different resources) will be used completely. While some might be used completely, others will have some unused capacity. Also, slack variables allow us to change the inequalities in the constraint equations to equalities, which are easier to solve algebraically. Slack variables represent the unused resources between the left-hand side and right-hand side of each inequality; in other words, they allow us to put the LP problem into the standard form so it can be solved using the simplex method. The first step is to convert the inequalities into equalities by adding slack variables to the two constraint inequalities. With representing surplus wood, and representing surplus labor, the constraint equations can be written as: 30X = 300 (wood constraint: 300 bf) 5X = 110 (labor constraint: 110 hours) 8
9 SIMPLEX METHOD All variables need to be represented in all equations. Add slack variables to the other equations and give them coefficients of 0 in those equations. Rewrite the objective function and constraint equations as: Maximize: Z = 6X (objective function) Subject to: 30X = 300 (wood constraint: 300 bf) 5X = 110 X 1,,, > 0 (labor constraint: 110 hours) (nonnegativity conditions) We can think of slack or surplus as unused resources that don t add any value to the objective function. Thus, their coefficients are 0 in the objective function equation. Basic variable mix and non-basic variables Since there are more unknown variables (four) than equations (two), we can t solve for unique values for the X and S variables using algebraic methods. Whenever the number of variables is greater than the number of equations, the values of the extra variables must be set arbitrarily, and then the other variables can be solved for algebraically. First we ll choose which variables to solve for algebraically. These variables are defined to be in the basic variable mix. We can solve for these variables after we fix the other variables at some arbitrary level. The fixed-value variables are identified as not being in the basic mix and are called non-basic variables. We ll arbitrarily give the non-basic variables the value of 0. The algebraic solution of the constraint equations, with non-basic variables set to 0, represents a corner. For any given set of variables, there are several possible combinations of basic variables and non-basic variables. For illustration, Table 4 contains the six basic mix pairs and the corresponding nonbasic variables for the tables and chairs LP problem. Figure 2 illustrates where each corner (A through F in Table 4) lies on a graph. Basic variable mix... The variables that we choose to solve for algebraically. Non-basic variables... Variables that are arbitrarily given a value of 0 so that we can solve for the variables in the basic variable mix. 9
10 OPERATIONS RESEARCH Table 4. Basic variable mix combinations and algebraic solutions. Basic variable Non-basic Algebraic solution Corners mix variables X 1 Z($) (Figure 2) X A X B X C X D X infeasible E X infeasible F Chairs E B Wood D Labor A Figure 2. Corners corresponding to Table 4 data. C F Tables We can evaluate each corner to find the values of the basic variables and of Z: Corner A: Set X 1 = 0 and = 0 30(0) + 20(0) = 300 5(0) + 10(0) = 110 Therefore, = 300 and = 110 Solution: X 1 = 0, = 0, = 300, = 110 Profit: Z = $6(0) + $8(0) + 0(300) + 0(110) = 0 10
11 SIMPLEX METHOD Corner B: Set X 1 = 0 and = 0 30(0) (0) = 300 5(0) = 110 Therefore, 20 + = 300 and 10 = 110 Solution: X 1 = 0, = 11, = 80, = 0 Profit: Z = $6(0) + $8(11) + 0(80) + 0(0) = $88 Corner C: Set = 0 and = 0 30X (0) = 300 5X 1 +10(0) + 0(0) + = 110 Therefore, 30X 1 = 300 and 5X 1 + = 110 Solution: X 1 = 10, = 0, = 0, = 60 Profit: Z = $6(10) + $8(0) + 0(0) + 0(60) = $60 Corner D: Set = 0 and = 0 30X (0) = 300 5X (0) + 0 = 110 Therefore, 30X = 300 and 5X = 110 Solution: X 1 = 4, = 9, = 0, = 0 Profit: Z = $6(4) + $8(9) + 0(0) + 0(0) = $96 Point E is infeasible because it violates the labor constraint, and point F is infeasible because it violates the wood constraint. The simplex algorithm never evaluates infeasible corners. Remember, with slack variables added, the tables and chairs LP is now four-dimensional and is not represented by Figure 2. Points on the constraint lines in Figure 2 represent 0 slack for both wood The simplex algorithm never evaluates infeasible corners, i.e., those that violate one of the constraint equations. 11
12 OPERATIONS RESEARCH Most real-world problems are too complex to solve graphically. They have too many corners to evaluate, and the algebraic solutions are lengthy. A simplex tableau is a way to systematically evaluate variable mixes in order to find the best one. and labor resources. A feasible point off a constraint line represents positive slack and cannot be read off the two-dimensional graph. In Table 4, all corners in the LP were identified, and all feasible corners were algebraically evaluated to find the optimum solution. You can see that a graph wasn t necessary to list all variable mixes and that each variable-mix pair corresponded to a corner solution. One reason we can t use this procedure to solve most LP problems is that the number of corners for real-life LP problems usually is very large. Another reason is that each corner evaluation requires a lengthy algebraic solution. To obtain each corner solution for a 10-constraint linear program, 10 equations with 10 unknowns must be solved, which is not a simple arithmetic task. Many LP problems are formulated with many more than 10 constraints. Simplex tableau As you ll recall, we formulated the tables and chairs LP in standard form as: Maximize: Z = 6X (objective function) Subject to: 30X = 300 (wood constraint: 300 bf) 5X = 110 X 1,,, > 0 (labor constraint: 110 hours) (nonnegativity conditions) The information for the tables and chairs example can be incorporated into a simplex tableau (Table 5). A tableau is a table that allows you to evaluate the values of variables at a given corner to determine which variable should be changed to most improve the solution. Table 5. Tables and chairs simplex tableau. Unit profit Basic mix X 1 Solution The top of the tableau lists the per-unit profit for the objective function. The rows in the body of the tableau indicate the basic variable mix for the corner point being evaluated. The first row in the body of the tableau lists the coefficients of the first constraint 12
13 SIMPLEX METHOD equation (the wood constraint) in their original order. The second row lists the coefficients of the second constraint equation (the labor constraint) in their original order. The basic mix column lists the slack variables. All variables not listed in this column are designated as non-basic variables and will be arbitrarily fixed at a value of 0 when we plug them into the constraint equations. The solution column lists the values of the basic variables, = 300 and = 110. Thus, the solution mix shows that all of the resources (wood and labor) remain unused. The solutions to the two constraint equations after zeroing out X 1 and are as follows: 30(0) + 20(0) = 300 or = 300 5(0) + 10(0) = 110 or = 110 The original constraint coefficients, highlighted in the simplex tableau, are called exchange coefficients. They indicate how many units of the variable listed on the left (basic mix column) must be given up to achieve a unit increase in the variable listed at the top of the tableau. The 30 indicates that 30 board feet of unused wood can be exchanged for one table, and the 20 indicates that 20 board feet of wood can be exchanged for one chair. Likewise, 5 hours of labor can be exchanged for one table, and 10 hours of labor can be exchanged for one chair. The exchange coefficients are 0 or 1 for the basic mix variables. These numbers are not very meaningful. For example, the 1 in the first row indicates that 1 board foot of wood can be exchanged for 1 board foot of wood. The 0 in row one indicates that no unused wood is required to accommodate more unused labor. Step 2. Find the sacrifice and improvement rows. The next step is to expand the simplex tableau as in Table 6. Table 6. Expanded simplex tableau. Unit profit Basic mix X 1 Solution Sacrifice Current profit Improvement
14 OPERATIONS RESEARCH Sacrifice row... Indicates what will be lost in per-unit profit by making a change in the resource allocation mix. Improvement row... Indicates what will be gained in per-unit profit by making a change in the resource allocation mix. In the expanded tableau, list the per-unit profit for the basic variables in the far left-hand column (Unit profit). The per-unit profit for both slack variables is 0. Values in the sacrifice row indicate what will be lost in per-unit profit by making a change in resource allocation. Values in the improvement row indicate what will be gained in per-unit profit by making a change in resource allocation. The sacrifice and improvement rows help you decide what corner to move to next. Sacrifice row Values for the sacrifice row are determined by: Unit sacrifice = Unit profit column * Exchange coefficient column To obtain the first sacrifice row value, calculations are: (Unit profit column value) * (X 1 column value) 0 * 30 = * 5 = 0 Add the products 0 First value in the sacrifice row The first product is the unit profit of unused wood multiplied by the amount needed to make one table. The second product is the unit profit of unused labor multiplied by the amount needed to make one table. Together, these products are the profit that is sacrificed by the basic mix variables for producing one more table. Since both basic mix variables are slack variables, and slack refers to unused resources, zero profit is sacrificed by producing another table. The next sacrifice row value is calculated in the same manner: (Unit profit column value) * ( column value) 0 * 20 = * 10 = 0 Add the products 0 Second value in the sacrifice row 14
15 SIMPLEX METHOD The other sacrifice row values are calculated in the same manner. In the case of our example, the unit profit values are 0, so the sacrifice row values are all 0. The values in the solution column of the sacrifice row are calculated as: (Unit profit column value) * (Solution column value) 0 * 300 = * 110 = 0 Add the products 0 The sum of these products represents the current profit (Z). Improvement row Improvement row values are calculated by subtracting each value in the sacrifice row from the value found above it in the unit profit row. Therefore: Unit improvement = Unit profit - Unit sacrifice For example, the improvement for X 1 is calculated as: Unit profit = 6 - Unit sacrifice = 0 $6 (first value in the improvement row) Since all of the sacrifice values are 0 in this example, all of the improvement row values are the same as those found in the unit profit row. Step 3. Apply the entry criterion. The next step is to apply the entry criterion, that is, to determine the entering variable. The entering variable is defined as the current non-basic variable that will most improve the objective if it is increased from 0. It s called the entering variable because it will enter the basic mix when you construct your next tableau to evaluate a new corner. For profit maximization problems, you determine the entering variable by finding the largest value in the improvement row. Entering variable... The current non-basic variable that will most improve the objective if its value is increased from 0. 15
16 OPERATIONS RESEARCH In our example, the largest value in the improvement row is 8. Thus, we can increase profit (improve the current solution) by $8 per unit for each chair made. Increasing the value of from 0 to $8 is the best improvement that can be made. If we increase the value of X 1, our solution improves by only $6. Therefore, is the entering variable. The entering variable is marked by placing a downward facing arrow in the (chair) column (Table 7). Table 7. Entering variable, exchange ratios, exiting variable, and pivot element. Unit profit Exchange Basic mix X 1 Solution ratios: /20 = /10 = 11 Sacrifice Current profit Improvement Limiting resource... The resource that would run out first. Exchange ratio... Tells you which variable is the limiting resource. The lowest nonzero and nonnegative exchange ratio denotes the limiting resource. The basic variable in this row becomes the exiting variable. Step 4. Apply the exit criterion. The next step is to determine the exiting variable. The exiting variable is the variable that will exit the basic mix when you construct your next simplex tableau. We ll find the exiting variable by calculating the exchange ratio for each basic variable. The exchange ratio tells us how many tables or chairs can be made by using all of the resource for the current respective basic variable. To find the exchange ratio, divide the solution value by the corresponding exchange coefficient in the entering variable column. The exchange ratios are: and 300/20 = 15 ( basic mix row) 110/10 = 11 ( basic mix row) By using all 300 board feet of wood, we can make 15 chairs because it takes 20 board feet of wood to make a chair. By using all 110 hours of labor, we can make 11 chairs because it takes 10 hours of labor per chair. Thus, it s easy to see the plant can t manufacture 15 chairs. We have enough wood for 15 chairs but only enough labor for 11. In this case, labor is the limiting resource. If all the labor were used, there would be leftover wood. 16
17 SIMPLEX METHOD The exit criterion requires that the limiting resource (the basic mix variable with the smallest exchange ratio) exit the basic mix. In this case, the exiting variable is. Because of this, wood ( ) remains in the basic mix. Indicate the exiting variable by placing a small arrow pointing toward the (Table 7). Next circle the pivot element the value found at the intersection of the entering variable column and the exiting variable row. In this case, the value 10 ( column and row) is the pivot element. We ll use this value to evaluate the next corner point represented by exchanging and. Step 5. Construct a new simplex tableau. The next step is to create a new simplex tableau. First, let s look at the old constraint equations that represented the X 1 and rows in our original tableau: 30X = 300 5X = 110 (wood constraint) (labor constraint) Since is to replace, we need to transform the second equation so that will have a coefficient of 1. This requires some algebraic manipulation. Although the resulting equations will look different, they will be equivalent to the original constraints of the LP problem. First, we ll multiply the labor constraint equation by 1 10 (the same as dividing each of the variables by 10). We get the following equivalent equation: 1 2X = 11 Constructing a new tableau is a way to evaluate a new corner point. One variable will enter the basic mix (entering variable), and one variable will leave the basic mix and become a non-basic variable (exiting variable). The operation of an entering variable and an exiting variable is called a pivot operation. The simplex method is made up of a sequence of such pivots. This now becomes the new row. By setting the non-basic variables, X 1 and, both to 0, we get: 1 2(0) (0) = 11 = 11 We want the solution, = 11, to satisfy both constraint equations. We can do this by zeroing the term in the first equation (the wood constraint). We ll do this by multiplying the second equation by -20 and adding it to the first equation: Multiply times -20: -20( 1 2X ) = 11-10X =
18 OPERATIONS RESEARCH Add to the first equation: 30X = X = X = 80 This equation becomes the new row. Thus, our new constraint equations are: 20X = 80 (wood) 1 2X = 11 (labor) When the non-basic variables X 1 and are set to 0, the solution becomes: 20(0) (0) = 80 = 80 and 1 2(0) (0) = 11 = 11 These two new equations give us some information. Remember, represents the amount of surplus or slack wood, that is, the amount of wood not used. When 11 chairs are manufactured, 80 board feet of surplus or slack wood will remain. The new simplex tableau is shown in Table 8c. It s easier to find a solution by using the simplex tableau than by doing the algebra. An easier method The above equations can be calculated much more easily directly from the original simplex tableau than by doing the algebra. Refer to Tables 8a through 8c as we work through the example. 1. Fill in the new row. Referring to Table 8a, divide all values in the exiting variable row,, by the pivot element, 10. The calculations are 5/10, 10/10 (pivot element divided by itself), 0/10, and 1/10. Place the new values in the same location in the new tableau (Table 8b). 18
19 SIMPLEX METHOD Place the unit profit row value for, the new entering variable (8), into the unit profit column. Table 8a. Original simplex tableau. Unit profit Exchange Basic mix X 1 Solution ratios: /20 = /10 = 11 Sacrifice Current profit Improvement Table 8b. Second simplex tableau row. Unit profit Basic mix X 1 Solution Sacrifice Improvement 2. Fill in the new row. Now we ll find the values for the row. Referring to Table 8a, find the value in the row in the old tableau in the pivot element column (20). Multiply it times the first value in the new row (0.5 from Table 8b). Subtract your answer from the value in the first position of the old row. Thus, for the first value (to replace the 30 in the first tableau): (20 * 0.5) = = 20 For the second value (to replace 20 in the first tableau): (20 * 1) = = 0 For the third value in this row: 20 * 0 = = 1 (Stays the same in the new tableau.) 19
20 OPERATIONS RESEARCH For the fourth value in this row: 20 * 0.1 = = -2 For the solution column value for this row: 20 * 11 = = 80 The new row is shown in Table 8c. Table 8c. Second simplex tableau row. Unit profit Basic mix X 1 Solution Sacrifice Improvement 3. Find the sacrifice and improvement rows. Find the sacrifice and improvement rows using the same method as in the first tableau. See Table 8d. Table 8d. Second simplex tableau sacrifice and improvement rows. Unit profit Basic mix X 1 Solution Sacrifice Current profit Improvement We now see that profit has been improved from 0 to $ Complete the pivot operation (entering and exiting variables). Recall that the pivot operation results in new entering and exiting variables. The greatest per-unit improvement is 20
21 SIMPLEX METHOD 2 (X 1 column). The others offer no improvement (either 0 or a negative number). X 1 becomes the new entering variable. Mark the top of its column with an arrow (Table 8e). Remember, when no improvement can be found at this step, the current tableau represents the optimal solution. Now determine the exiting variable. To do so, first determine the exchange ratios: 80/20 = 4 and 11/0.5 = 22 Now choose the smallest nonnegative exchange ratio (4 versus 22). becomes the exiting variable. Mark that row with an arrow. Draw a circle around the pivot element, 20. (Table 8e). Table 8e. Second simplex tableau pivot operation. Unit profit Exchange Basic mix X 1 Solution ratios: /20 = /0.5 = 22 Sacrifice Improvement Construct the third tableau from the second tableau. Replace the entering variable in the basic mix where the exiting variable left. Bring over the unit profit from the top row of the old table to the new table. Fill in the pivot element row by dividing through by the pivot element (Table 8f). Table 8f. Third simplex tableau X 1 row. Unit profit Basic mix X 1 Solution 6 X Sacrifice Improvement 21
22 OPERATIONS RESEARCH Fill in the first value in the row as follows. First, multiply the previous tableau s pivot value (0.5) times the first value in the new tableau s X 1 row (1): 0.5 * 1 = 0.5 Now subtract this number from the first value in the previous tableau s row (0.5): = 0 Place this value in the first position of the new tableau s row. Repeat this process to fill in the remaining values in the new row (Table 8g). Table 8g. Third simplex tableau row. Unit profit Basic mix X 1 Solution 6 X Sacrifice Improvement Fill in the sacrifice row (Table 8h). The first value is (6 * 1) + (8 * 0) = 6. Fill in the improvement row. The first value is 6-6 = 0. Table 8h. Third simplex tableau sacrifice and improvement rows. Unit profit Basic mix X 1 Solution 6 X Sacrifice Improvement
23 SIMPLEX METHOD There are no positive numbers in the new improvement row. Thus, we no longer can improve the solution to the problem. This simplex tableau represents the optimal solution to the LP problem and is interpreted as: X 1 = 4, = 9, = 0, = 0, and profit or Z = $96 The optimal solution (maximum profit to be made) is to manufacture four tables and nine chairs for a profit of $96. Shortcuts Several shortcuts can make the construction of simplex tableaus easier. In the new tableau, only the columns for the non-basic and exiting variables change. Move the values for all other basic variables directly into the new tableau. When 0 is found in the pivot column, that row always is the same in the new tableau. When 0 is found in the pivot row, that column always is the same in the new tableau. With two exceptions, the newly entered basic variable s column will contain a zero in all locations. A 1 will go in the same location as the pivot element in the preceding tableau, and the per-unit profit or loss for this variable will appear in the sacrifice row. 23
24 OPERATIONS RESEARCH Summary In this publication, the simplex method was used to solve a maximization problem with constraints of the form of < (less than or equal to). In the next publication in this series, we will discuss how to handle > (greater than or equal to) and = (equal to) constraints. We ll also explore how to use LP as an economic tool with sensitivity analysis. Quick review of the simplex method Step 1. Formulate the LP and construct a simplex tableau. Add slack variables to represent unused resources. Step 2. Find the sacrifice and improvement rows. Values in the sacrifice row indicate what will be lost in per-unit profit by making a change in the resource allocation mix. Values in the improvement row indicate what will be gained in per-unit profit by making a change. Step 3. Apply the entry criteria. The entering variable is defined as the current non-basic variable that will most improve the objective if its value is increased from 0. Step 4. Apply the exit criteria. Using the current tableau s exchange coefficient from the entering variable column, calculate the exchange ratio for each row. Find the lowest nonzero and nonnegative value. The basic variable in this row becomes the exiting variable. Step 5. Construct a new simplex tableau. Replace the exiting variable in the basic mix column with the new entering variable. Change the unit profit or unit loss column with the value for the new entering variable. Compute the new row values to obtain a new set of exchange coefficients applicable to each basic variable. Step 6. Repeat steps 2 through 5 until you no longer can improve the solution. 24
25 SIMPLEX METHOD For more information Bierman, H., C.P. Bonini, and W.H. Hausman. Quantitative Analysis for Business Decisions (Richard D. Irwin, Inc., Homewood, IL, 1977). 642 pp. Dykstra, D.P. Mathematical Programming for Natural Resource Management (McGraw-Hill, Inc., New York, 1984). 318 pp. Hillier, F.S., and G.J. Lieberman. Introduction to Operations Research, sixth edition (McGraw-Hill, Inc., New York, 1995). 998 pp. Ignizio, J.P., J.N.D. Gupta, and G.R. McNichols. Operations Research in Decision Making (Crane, Russak & Company, Inc., New York, 1975). 343 pp. Lapin, L.L. Quantitative Methods for Business Decisions with Cases, third edition (Harcourt Brace, Jovanovich, Publishers, San Diego, 1985). 780 pp. Ravindran, A., D.T. Phillips, and J.J. Solberg. Operations Research: Principles and Practice, second edition (John Wiley & Sons, New York, 1987). 637 pp. 25
26 OPERATIONS RESEARCH PERFORMANCE EXCELLENCE IN THE WOOD PRODUCTS INDUSTRY ABOUT THIS SERIES This publication is part of a series, Performance Excellence in the Wood Products Industry. The various publications address topics under the headings of wood technology, marketing and business management, production management, quality and process control, and operations research. To view and download any of the other titles in the series, visit the OSU Extension Web site at eesc.oregonstate.edu/ then Publications & Videos then Forestry then Wood Processing and Business Management. Or, visit the OSU Wood Products Extension Web site at 26
27 SIMPLEX METHOD 27
28 1998 Oregon State University This publication was produced and distributed in furtherance of the Acts of Congress of May 8 and June 30, Extension work is a cooperative program of Oregon State University, the U.S. Department of Agriculture, and Oregon counties. Oregon State University Extension Service offers educational programs, activities, and materials without regard to race, color, religion, sex, sexual orientation, national origin, age, marital status, disability, and disabled veteran or Vietnam-era veteran status as required by Title VI of the Civil Rights Act of 1964, Title IX of the Education Amendments of 1972, and Section 504 of the Rehabilitation Act of Oregon State University Extension Service is an Equal Opportunity Employer. Published October 1998.
Solving LPs: The Simplex Algorithm of George Dantzig. Simplex Pivoting: Dictionary Format We illustrate a general solution procedure, called the simplex algorithm, by implementing it on a very simple example.
SUPPLEMENT TO CHAPTER SIX Linear Programming SUPPLEMENT OUTLINE Introduction, 2 Linear Programming Models, 2 Model Formulation, 4 Graphical Linear Programming, 5 Outline of Graphical Procedure, 5 Plotting
Simplex method summary Problem: optimize a linear objective, subject to linear constraints 1. Step 1: Convert to standard form: variables on right-hand side, positive constant on left slack variables for
Linear Programming Notes VII Sensitivity Analysis 1 Introduction When you use a mathematical model to describe reality you must make approximations. The world is more complicated than the kinds of optimization
The Graphical Method: An Example Consider the following linear program: Maximize 4x 1 +3x 2 Subject to: 2x 1 +3x 2 6 (1) 3x 1 +2x 2 3 (2) 2x 2 5 (3) 2x 1 +x 2 4 (4) x 1, x 2 0, where, for ease of reference,
Solving Linear Programs 2 In this chapter, we present a systematic procedure for solving linear programs. This procedure, called the simplex method, proceeds by moving from one feasible solution to another,
Special Situations in the Simplex Algorithm Degeneracy Consider the linear program: Maximize 2x 1 +x 2 Subject to: 4x 1 +3x 2 12 (1) 4x 1 +x 2 8 (2) 4x 1 +2x 2 8 (3) x 1, x 2 0. We will first apply the
Chapter 2 Solving Linear Programs Companion slides of Applied Mathematical Programming by Bradley, Hax, and Magnanti (Addison-Wesley, 1977) prepared by José Fernando Oliveira Maria Antónia Carravilla A
Linear Programming Notes V Problem Transformations 1 Introduction Any linear programming problem can be rewritten in either of two standard forms. In the first form, the objective is to maximize, the material
Linear Programming April 1, 005 Parts of this were adapted from Chapter 9 of i Introduction to Algorithms (Second Edition) /i by Cormen, Leiserson, Rivest and Stein. 1 What is linear programming? The first
Linear Programming Supplement E Linear Programming Linear programming: A technique that is useful for allocating scarce resources among competing demands. Objective function: An expression in linear programming
Linear Programming Problems Linear programming problems come up in many applications. In a linear programming problem, we have a function, called the objective function, which depends linearly on a number
Sensitivity Analysis 3 We have already been introduced to sensitivity analysis in Chapter via the geometry of a simple example. We saw that the values of the decision variables and those of the slack and
Chapter 1 What is Linear Programming? An optimization problem usually has three essential ingredients: a variable vector x consisting of a set of unknowns to be determined, an objective function of x to
494 CHAPTER 9 LINEAR PROGRAMMING 9. THE SIMPLEX METHOD: MAXIMIZATION For linear programming problems involving two variables, the graphical solution method introduced in Section 9. is convenient. However,
Operation Research Module 1 Unit 1 1.1 Origin of Operations Research 1.2 Concept and Definition of OR 1.3 Characteristics of OR 1.4 Applications of OR 1.5 Phases of OR Unit 2 2.1 Introduction to Linear
SOLUTION OF LINEAR PROGRAMMING PROBLEMS THEOREM 1 If a linear programming problem has a solution, then it must occur at a vertex, or corner point, of the feasible set, S, associated with the problem. Furthermore,
Duality in Linear Programming 4 In the preceding chapter on sensitivity analysis, we saw that the shadow-price interpretation of the optimal simplex multipliers is a very useful concept. First, these shadow
Linear Programming I November 30, 2003 1 Introduction In the VCR/guns/nuclear bombs/napkins/star wars/professors/butter/mice problem, the benevolent dictator, Bigus Piguinus, of south Antarctica penguins
4 UNIT FOUR: Transportation and Assignment problems 4.1 Objectives By the end of this unit you will be able to: formulate special linear programming problems using the transportation model. define a balanced
Session 7 Bivariate Data and Analysis Key Terms for This Session Previously Introduced mean standard deviation New in This Session association bivariate analysis contingency table co-variation least squares
Linear Programming: Theory and Applications Catherine Lewis May 11, 2008 1 Contents 1 Introduction to Linear Programming 3 1.1 What is a linear program?...................... 3 1.2 Assumptions.............................
Algebra 2 Chapter 3 3.1 Solve Systems Using Tables & Graphs 3.1 Solving Systems Using Tables and Graphs A solution to a system of linear equations is an that makes all of the equations. To solve a system
Section 5.1 Radical Notation and Rational Exponents 1 5.1 Radical Notation and Rational Exponents We now review how exponents can be used to describe not only powers (such as 5 2 and 2 3 ), but also roots
Website: wwwijetaecom (ISSN 2250-2459 ISO 9001:2008 Certified Journal Volume 4 Issue 4 April 2014) LU Factorization Method to Solve Linear Programming Problem S M Chinchole 1 A P Bhadane 2 12 Assistant
Math Review for the Quantitative Reasoning Measure of the GRE revised General Test www.ets.org Overview This Math Review will familiarize you with the mathematical skills and concepts that are important
Linear programming is a mathematical technique for finding optimal solutions to problems that can be expressed using linear equations and inequalities. If a real-world problem can be represented accurately
Chapter 6 LINEAR INEQUALITIES 6.1 Introduction Mathematics is the art of saying many things in many different ways. MAXWELL In earlier classes, we have studied equations in one variable and two variables
Solving quadratic equations 3.2 Introduction A quadratic equation is one which can be written in the form ax 2 + bx + c = 0 where a, b and c are numbers and x is the unknown whose value(s) we wish to find.
Introduction Linear Programming Neil Laws TT 00 A general optimization problem is of the form: choose x to maximise f(x) subject to x S where x = (x,..., x n ) T, f : R n R is the objective function, S
Section 7 Algebraic Manipulations and Solving Part 1 Expressions, Equations, and Inequalities: Simplifying and Solving Before launching into the mathematics, let s take a moment to talk about the words
LECTURE 5: DUALITY AND SENSITIVITY ANALYSIS 1. Dual linear program 2. Duality theory 3. Sensitivity analysis 4. Dual simplex method Introduction to dual linear program Given a constraint matrix A, right
8 Inequalities Concepts: Equivalent Inequalities Linear and Nonlinear Inequalities Absolute Value Inequalities (Sections 4.6 and 1.1) 8.1 Equivalent Inequalities Definition 8.1 Two inequalities are equivalent
Chapter 1 Vocabulary identity - A statement that equates two equivalent expressions. verbal model- A word equation that represents a real-life problem. algebraic expression - An expression with variables.
1. Systems of linear equations We are interested in the solutions to systems of linear equations. A linear equation is of the form 3x 5y + 2z + w = 3. The key thing is that we don t multiply the variables
December 4, 2013 MATH 171 BASIC LINEAR ALGEBRA B KITCHENS The equation 1 Lines in two-dimensional space (1) 2x y = 3 describes a line in two-dimensional space The coefficients of x and y in the equation
MTH Elementary Matrix Algebra Professor Chao Huang Department of Mathematics and Statistics Wright State University Lecture 1 Systems of Linear Equations ² Systems of two linear equations with two variables
2. Solutions of Linear Equations in One Variable 2. OBJECTIVES. Identify a linear equation 2. Combine like terms to solve an equation We begin this chapter by considering one of the most important tools
Sensitivity Analysis with Excel 1 Lecture Outline Sensitivity Analysis Effects on the Objective Function Value (OFV): Changing the Values of Decision Variables Looking at the Variation in OFV: Excel One-
of 19 9/2/2014 12:09 PM Answers Teacher Copy Plan Pacing: 1 class period Chunking the Lesson Example A #1 Example B Example C #2 Check Your Understanding Lesson Practice Teach Bell-Ringer Activity Students
Part 1: Year 9 set 1 Mathematics notes, to accompany the 9H book. equations 1. (p.1), 1.6 (p. 44), 4.6 (p.196) sequences 3. (p.115) Pupils use the Elmwood Press Essential Maths book by David Raymer (9H
66 MATHEMATICS CHAPTER 4 LINEAR EQUATIONS IN TWO VARIABLES The principal use of the Analytic Art is to bring Mathematical Problems to Equations and to exhibit those Equations in the most simple terms that
IV. ALGEBRAIC CONCEPTS Algebra is the language of mathematics. Much of the observable world can be characterized as having patterned regularity where a change in one quantity results in changes in other
MATH0 Notebook Fall Semester 06/07 prepared by Professor Jenny Baglivo c Copyright 009 07 by Jenny A. Baglivo. All Rights Reserved. Contents MATH0 Notebook 3. Solving Systems of Linear Equations........................
Chapter 9 Heart of Algebra Heart of Algebra focuses on the mastery of linear equations, systems of linear equations, and linear functions. The ability to analyze and create linear equations, inequalities,
Chapter 5 Linear Programming in Two Dimensions: A Geometric Approach Linear Inequalities and Linear Programming Section 3 Linear Programming gin Two Dimensions: A Geometric Approach In this section, we
Review of Fundamental Mathematics As explained in the Preface and in Chapter 1 of your textbook, managerial economics applies microeconomic theory to business decision making. The decision-making tools
SYSTEMS OF EQUATIONS AND MATRICES WITH THE TI-89 by Joseph Collison Copyright 2000 by Joseph Collison All rights reserved Reproduction or translation of any part of this work beyond that permitted by Sections
Mathematical Practices 1. Make sense of problems and persevere in solving them. 2. Reason abstractly and quantitatively. 3. Construct viable arguments and critique the reasoning of others. 4. Model with
Section. Linear Equations: Slope and Equations of Lines Slope The measure of the steepness of a line is called the slope of the line. It is the amount of change in y, the rise, divided by the amount of
Mathematics Before reading this section, make sure you have read the appropriate description of the mathematics section test (computerized or paper) to understand what is expected of you in the mathematics
Solving Systems of Linear Equations Using Matrices What is a Matrix? A matrix is a compact grid or array of numbers. It can be created from a system of equations and used to solve the system of equations.
Solving Polynomial Equations 3.3 Introduction Linear and quadratic equations, dealt within Sections 3.1 and 3.2, are members of a class of equations, called polynomial equations. These have the general
Chapter 4 Spline Curves A spline curve is a mathematical representation for which it is easy to build an interface that will allow a user to design and control the shape of complex curves and surfaces.
M07.A-N The Number System M07.A-N.1 M07.A-N.1.1 DESCRIPTOR Assessment Anchors and Eligible Content Aligned to the Grade 7 Pennsylvania Core Standards Reporting Category Apply and extend previous understandings
Notes for AGEC 622 Bruce McCarl Regents Professor of Agricultural Economics Texas A&M University Thanks to Michael Lau for his efforts to prepare the earlier copies of this. 1 http://ageco.tamu.edu/faculty/mccarl/622class/
Question : What is a linear function? The term linear function consists of two parts: linear and function. To understand what these terms mean together, we must first understand what a function is. The
MATH 0034 Fundamental Mathematics IV http://www.math.kent.edu/ebooks/0034/funmath4.pdf Department of Mathematical Sciences Kent State University January 2, 2009 ii Contents To the Instructor v Polynomials.
Linear Equations and Inequalities Section 1.1 Prof. Wodarz Math 109 - Fall 2008 Contents 1 Linear Equations 2 1.1 Standard Form of a Linear Equation................ 2 1.2 Solving Linear Equations......................
LECTURE 5 Solving Systems of Linear Equations Recall that we introduced the notion of matrices as a way of standardizing the expression of systems of linear equations In today s lecture I shall show how
EQUATIONS and INEQUALITIES Linear Equations and Slope 1. Slope a. Calculate the slope of a line given two points b. Calculate the slope of a line parallel to a given line. c. Calculate the slope of a line
MathsTrack (NOTE Feb 2013: This is the old version of MathsTrack. New books will be created during 2013 and 2014) Topic 4 Module 9 Introduction Systems of to Matrices Linear Equations Income = Tickets!
Fibonacci Numbers and Greatest Common Divisors The Finonacci numbers are the numbers in the sequence 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144,.... After starting with two 1s, we get each Fibonacci number
Common Core Unit Summary Grades 6 to 8 Grade 8: Unit 1: Congruence and Similarity- 8G1-8G5 rotations reflections and translations,( RRT=congruence) understand congruence of 2 d figures after RRT Dilations
Key Terms in This Session Session 6 Number Theory Previously Introduced counting numbers factor factor tree prime number New in This Session composite number greatest common factor least common multiple
Chapter 6: Sensitivity Analysis Suppose that you have just completed a linear programming solution which will have a major impact on your company, such as determining how much to increase the overall production
Degeneracy in Linear Programming I heard that today s tutorial is all about Ellen DeGeneres Sorry, Stan. But the topic is just as interesting. It s about degeneracy in Linear Programming. Degeneracy? Students
VISUAL ALGEBRA FOR COLLEGE STUDENTS Laurie J. Burton Western Oregon University VISUAL ALGEBRA FOR COLLEGE STUDENTS TABLE OF CONTENTS Welcome and Introduction 1 Chapter 1: INTEGERS AND INTEGER OPERATIONS
The verbal answers to all of the following questions should be memorized before completion of pre-algebra. Answers that are not memorized will hinder your ability to succeed in algebra 1. Number Basics
Limited Grade 6 Mathematics Performance Level Descriptors A student performing at the Limited Level demonstrates a minimal command of Ohio s Learning Standards for Grade 6 Mathematics. A student at this
Worksheet 2.4 Introduction to Inequalities Section 1 Inequalities The sign < stands for less than. It was introduced so that we could write in shorthand things like 3 is less than 5. This becomes 3 < 5.
Georgia Standards of Excellence Curriculum Map Mathematics GSE 8 th Grade These materials are for nonprofit educational purposes only. Any other use may constitute copyright infringement. GSE Eighth Grade
MATH 0110 Developmental Math Skills Review, 1 Credit, 3 hours lab MATH 0110 is established to accommodate students desiring non-course based remediation in developmental mathematics. This structure will
Solve addition and subtraction word problems, and add and subtract within 10, e.g., by using objects or drawings to represent the problem. Solve word problems that call for addition of three whole numbers
Lesson M Lesson : Student Outcomes Students solve rational equations, monitoring for the creation of extraneous solutions. Lesson Notes In the preceding lessons, students learned to add, subtract, multiply,
9.3 Solving Quadratic Equations by Using the Quadratic Formula 9.3 OBJECTIVES 1. Solve a quadratic equation by using the quadratic formula 2. Determine the nature of the solutions of a quadratic equation
Click on the links below to jump directly to the relevant section What is algebra? Operations with algebraic terms Mathematical properties of real numbers Order of operations What is Algebra? Algebra is
Solving Simultaneous Equations and Matrices The following represents a systematic investigation for the steps used to solve two simultaneous linear equations in two unknowns. The motivation for considering
(Refer Slide Time: 00:28) Managerial Economics Prof. Trupti Mishra S.J.M. School of Management Indian Institute of Technology, Bombay Lecture - 13 Consumer Behaviour (Contd ) We will continue our discussion
3 rd Grade Math Learning Targets Algebra: Indicator 1: Use procedures to transform algebraic expressions. 3.A.1.1. Students are able to explain the relationship between repeated addition and multiplication.
Grade 8 Overview View unit yearlong overview here The unit design was created in line with the areas of focus for grade 8 Mathematics as identified by the Common Core State Standards and the PARCC Model