Linear Programming CHAPTER 26 Linear programming is a quantitative technique that can optimally allocate an agency s resources under conditions of certainty. The agency may be in the public or nonprofi t (or for-profi t) sector. Before we discuss the techniques for linear programming, some situations in which it can be used will be noted. A prison nutritionist needs to determine the proper mix of foods to buy so that a given level of nutrition is met at the least cost. An Air Force logistics officer needs to supply six bases in Europe from four supply depots at the minimum cost to the Air Force. A parks supervisor wants to assign her personnel to various parks so that she can maximize productivity given her budget constraints. The head of the local food bank wants to transport food to homeless shelters throughout the city in such a way that nutritional requirements are met at each shelter at the least cost. The director of the nonprofit botanical garden seeks to determine the optimal mix of public lectures, classes, special exhibits, and children s activities that will maximize attendance given the organization s resource constraints. The executive director of the nonprofi t healthcare alliance would like to know how to staff its various clinics in the city to make sure that they serve the most clients given the budgetary limitations of the alliance. These are all linear programming problems. In each case we want to fi nd the optimal mix of resources. Variables that the manager can control which foods to buy, which depots to use, where to assign personnel are called decision variables because the manager can decide how to allocate these variables. Constraints are variables that limit the choices of the manager: in the previous examples, a given nutrition level must be met; all six bases must be supplied; the park supervisor has only X employees. Some constraints are in the form of inequalities: For example, vitamin C intake level must be at least 5 milligrams; no more than 247 people can be used. Finally, output variables are those that the manager seeks to maximize or minimize cost, productivity, and so on. Linear programming seeks to optimize output variables by manipulating decision variables, subject to the restrictions of the constraints. Linear programming can work only under conditions of certainty. The manager must know the constraints and the precise relationships among all decision variables and the output variables. The Air Force officer must know, for example, the number of items each base needs, the number of items each depot has, the cost of transporting an 26-1
26-2 Chapter 26 Linear Programming item from every depot to every base, and so on. Unless such certainty exists, linear programming can be used only as a way of thinking about problems. Linear programming is a special form of programming in which all the relationships are linear. Other, more advanced forms of programming are available, but they are well beyond the scope of this text. Linear programming assumes, as we noted, that all relationships are linear (or proportional). If one apple and a sandwich contain units of B 14, then two apples and two sandwiches contain 200 units of B 14. Linear programming also assumes that all inputs and outputs are infinitely divisible. Mowing the grass in one-half of a park or feeding every prisoner one-fourth of an apple are examples of solutions that linear programming models typically find. Finally, linear programming assumes that the processes are interchangeable. If the parks department can either mow 1,200 acres of grass or trim 4,000 feet of hedges, it can also mow 600 acres of grass and trim 2,000 feet of hedges. In this chapter, we introduce the techniques of linear programming. An Example The Ware County Library maintains a book repair division in the basement of its central library. The repair unit has two functions: It puts hardcover bindings on paperback books, and it reconditions damaged hardcover books. The unit has more work than it can handle. Any excess work is farmed out to Orva s Bindery. Orva charges $12 to cover a paperback and $15 to repair a hardcover book. The repair unit has four processes. Labeling is the process of writing the call numbers on the spine of the book. The labeling people can label 500 books a month; the distinction between hardcover and paperback does not affect them. The binding people can bind 400 paperback books a month or rebind (an easier process) 600 repaired hardbacks. The cover-cutting people can cut 350 covers a month; covers are used only on the paperback books. The repair people can process either 1,000 paperbacks or 450 hardback books a month. Step 1: Decide what the agency wants to maximize or minimize. At Orva s, covering a paperback costs $12 and repairing a hardback costs $15, so the value of the repair unit s activities is $12 for every paperback re-covered and $15 for every hardback repaired. So let X 1 5 the number of paperbacks covered X 2 5 the number of hardbacks repaired The Ware County Library would like to maximize $12X 1 1 $15X 2 The decision will tell the library how many paperbacks to re-cover and how many hardbacks to repair to maximize the payoff. Step 2: Determine the constraints on each process. If the labeling people label only newly bound paperbacks, they can label 500 per month. Each paperback they label takes 1/500 of their total time. Similarly, each re-bound
An Example 26-3 paperback requires 1/400 of the binding time, 1/350 of the cover- cutting time, and 1/ of the repair time. Each repaired hardcover requires 1/500 of the labeling time, 1/600 of the binding time, and 1/450 of the repair time. The labeling constraint on the repair unit can be expressed as 500 bx 1 1 500 bx 2 # 1 That is, the number of paperbacks re-bound and the number of hardbacks repaired cannot exceed total labeling capacity. The other constraints are as follows: binding: 400 bx 1 1 600 bx 2 # 1 cover cutting: 350 bx 1 1 0X 2 # 1 repair: bx 1 1 450 bx 2 # 1 Two other constraints must be noted, particularly if one uses computer routines to do linear programming. Both the number of paperbacks covered and the number of hardbacks repaired must be greater than or equal to zero (this may be logical to you, but it is not to the computer). Thus, X 1 $ 0 X 2 $ 0 Step 3: Give the problem to your linear programmer to solve. In the current situation, with only two output variables (paperbacks and hardbacks), the problem can be solved by graphing. Draw a graph with one axis (say, the horizontal) representing the number of paperbacks and the other axis representing the number of hardbacks (see Figure 26.1). This graph will be used to depict the constraints on the repair unit. To graph the labeling constraint, note that labeling can process either 500 paperbacks and 0 hardbacks or 0 paperbacks and 500 hardbacks. Find these two points on the graph, and connect them with a straight line. See Figure 26.2. This line represents the labeling constraints on the repair unit. Every point on the graph below and to the left of the line (including points on the line) is within the capacity of the repair unit. Point A, for example 300 hardbacks and 200 p aperbacks is within the capacity of the repair unit. Point B, however 250 hardbacks and 350 paperbacks lies beyond the line and, thus, exceeds the repair unit s capacity. The next step is to graph all the constraints on the same graph. This graph is shown in Figure 26.3. On the constraints graph, the only options that are open to management are those in the shaded area of the graph. One point within this area is the optimal ratio of hardbacks to paperbacks. The question is,
26-4 Chapter 26 Linear Programming Figure 26.1 Axis Labels Number of Hardbacks Repaired (X 2 ) 800 700 600 500 400 300 200 0 200 300 400 500 600 700 800 Number of Paperbacks Covered (X 1 ) 900 0 Figure 26.2 Line for the Labeling Constraint Number of Hardbacks Repaired (X 2 ) 800 700 600 500 400 300 200 0 A B Labeling 200 300 400 500 600 700 800 Number of Paperbacks Covered (X 1 ) 900 0 which one? We will find the optimal point much as the computer does by trial and error. Start the trial-and-error process by setting the expression $12X 1 1 $15X 2 equal to some value say, $4,200. $4,200 5 $12X 1 1 $15X 2 The repair shop could produce $4,200 worth of repairs by covering either 350 paperbacks (4,200 4 12) or 280 hardbacks (4,200 4 15).
An Example 26-5 Figure 26.3 Constraints Graph Number of Hardbacks Repaired (X 2 ) 800 700 600 500 400 300 200 0 Cover Cutting Binding Repair Labeling 200 300 400 500 600 700 800 Number of Paperbacks Covered (X 1 ) 900 0 These values are plotted on the graph in Figure 26.4 and are connected with a line. Any value above and to the right of this line will yield a greater payoff than any value on this line. Because many of the values above and to the right of this line are within the shaded area, a production value of more than $4,200 is possible. The computer tries several lines until it fi nds a line that has only one point within the shaded area. In this problem, the only line with only one point within the shaded area is $7,227.30 5 $12X 1 1 $15X 2 This line touches the shaded area only where the labeling constraint and the repair constraint intersect (see Figure 26.4). The optimal point will always be at the intersection of two or more constraints. The next step is to determine the values of X 1 and X 2 at the optimal point. The labeling constraint is 500 bx 1 1 500 bx 2 # 1 The repair constraint is 1,000 bx 1 1 450 bx 2 # 1
26-6 Chapter 26 Linear Programming Figure 26.4 Finding the Optimal Ration Number of Hardbacks Repaired (X 2 ) 800 700 600 500 400 300 200 0 Optimal Area $4200 $7227.30 200 300 400 500 600 700 800 Number of Paperbacks Covered (X 1 ) 900 0 Multiply the repair constraint by 2 to get a 2 1,000 bx 1 1 a 2 450 bx 2 # 2 500 bx 1 1 a 2 450 bx 2 # 2 Subtract the labeling constraint from the new repair constraint. 500 bx 1 1 a 2 450 bx 2 # 2 2 500 bx 1 2 500 bx 2 #21 0X 1 1 a 2 450 bx 2 2 500 bx 2 # 1 a 40 9,000 bx 2 2 8 9,000 bx 2 # 1 a 22 9,000 bx 2 # 1 X 2 # 409.1
Linear Programming with More than Two Variables 26-7 To fi nd the value for X 1, simply substitute 409 for X 2 in the labeling constraint. 500 bx 1 1 450 b409 # 1 500 bx 1 1 409 500 # 1 500 bx 1 1.818 # 1 500 bx 1 #.182 X 1 # 91 The optimal production point is to repair 409 hardcover books per month and to bind 91 paperbacks per month. This will return a value of $7,227. If the mathematics to solve this problem is intimidating, you can always use the graph to eyeball the answer. Alternatively (and preferably), once the decision variables, output variables, and constraints are entered, a computer can solve the linear programming problem and generate the optimal values. Linear Programming with More than Two Variables Rarely will a linear programming problem be so simple that a solution can be found graphically. But a public or nonprofit manager s function is not to solve linear programming problems. The manager s first function is to recognize problems that can be solved through linear programming. Any time a manager wants to maximize or minimize some value that is determined by some mix of inputs subject to constraints and the manager is operating under conditions of certainty (in regard to costs, relationships, and so on), linear programming is a useful technique. The second managerial function in linear programming is to identify the constraints and relationships for the analyst. The third managerial function is to determine whether the optimal solution is feasible. Certain political constraints that could not be incorporated into the model, for example, might make the optimal solution impossible to achieve. In short, linear programming is a tool that provides valuable inputs into a manager s decision; it is not a decision-making device. After all, when was the last time a linear programming model was fired?
26-8 Chapter 26 Linear Programming Chapter Summary Linear programming is used to allocate inputs in order to maximize some outputs within constraints when conditions of certainty exist. This chapter illustrated a very elementary version of linear programming that can be instructive in public and nonprofit management. Variables that the manager can control are called decision variables. Constraints are variables that limit the choices of the manager. Output variables are those that the manager wishes to maximize or minimize. Linear programming seeks to optimize output variables by manipulating decision variables, subject to the restrictions of the constraints. Three basic steps are involved in linear programming. First, decide what it is you wish to maximize or minimize. Second, determine the constraints on each process. Third, if the problem is simple enough, solve it by graphing (otherwise an analyst trained in linear programming must be brought in to solve the problem). Note that the public or nonprofit manager s function is not to solve linear programming problems but, rather, to recognize that a problem can be solved by using these techniques and to identify the constraints and the relationships for the analyst. Problems 26.1 An Air Force logistics offi cer has to transport 850 planes in the United States (500 at Minot Air Force Base and 350 at Offutt) to the Pacifi c. Of these 850 planes, 200 must go to Kadena, 150 to Guam, 400 to Osan, and to Hickam. The costs of fl ying between these points are listed in the accompanying table. How can the officer transport these planes at the least cost? Set up the variables you want to minimize and the constraints on these variables. From To Minot Offutt Kadena $600 $900 Guam 700 600 Osan 800 1, Hickam 400 300 26.2 Beaver Falls City Hall has two incinerators to burn city hall trash. Together they burn tons of trash per day, but the city hall produces 200 tons. The remaining trash is buried a more expensive method. Incinerator X can burn 40 tons of trash per day, but it releases 5 pounds of particles per ton and 12 units of hydrocarbons per ton. Incinerator Y can burn 60 tons of trash per day, but it releases 3 pounds of particles and 16 units of hydrocarbons per ton. If the EPA will allow city hall to emit no more than 40 pounds of particles and 130 units of hydrocarbons, what is the most efficient use of the incinerators?
Problems 26-9 26.3 The Conrad, North Carolina, Parks Department has been allocated 50 Comprehensive Employment and Training Act (CETA) employees for 3 months. These employees will be used to trim hedges and mow lawns. Normally these functions are contracted out to Greenthumb Lawn Care Company at a cost of $12 per acre of grass and $8 per 50 feet of hedges. One person can mow 6.5 acres of grass per day or trim 500 feet of hedges. The city has 38 lawn mowers and 35 hedge trimmers. How can the city use its CETA employees to its best advantage if there is more grass and there are more hedges than 50 workers can possibly service? Set up this problem and solve it graphically. 26.4 Several years ago, an economist applied a linear programming model to a university. The output the university was to maximize was the earning power of its graduates, subject to constraints of money, faculty, buildings, and so on. Is this an appropriate use of linear programming? Why or why not? 26.5 The General Services Administration buys brand X and brand Y desktop computers for use at four locations, as follows: Location Brand X Brand Y Boston 2,400 1,200 Atlant,200 3,000 Seattle 6,000 200 Dallas 3,000 2,000 Numerous desktop computers must be shipped from these offices to the federal regional office centers. The centers needs are as follows: Center Brand X Brand Y Kansas City 3,500 800 Denver 1,500 700 Chicago 2,700 2,400 Cincinnati 4,600 1, The desktop computers cost the same amount to ship, regardless of whether they are brand X or brand Y, as follows: To From K.C. Denver Chicago Cincinnati Boston $18 $24 $13 $9 Atlanta 21 32 17 11 Seattle 17 10 18 24 Dallas 4 14 12 15 Set up the linear programming problem to move the brand X desktop computers from the four warehouses to the four regional centers at the least cost. 26.6 Refer to Problem 26.5. Set up the problem to move the brand Y desktop computers from the four warehouses to the four regional centers at the least cost.