Linear Programming (Introduction)
Linear Programming (Introduction)
Linear Programming (Introduction)
Linear Programming
B
B e f o r e s t u d y i n g t h i s s u p p l e m e n t y o u s h o u l d k n o w o r, i f n e c e s s a r y, r e v i e w
1. Competitive priorities, Chapter 2
2. Capacity management concepts, Chapter 9
3. Aggregate planning, Chapter 13
4. Developing a master schedule, Chapter 14
LEARNING OBJECTIVES
After studying this supplement, you should be able to
1 Describe the role of mathematical models in 6 Describe the geometry of linear programs.
operations decision making.
7 Describe the graphical solution approach.
2 Describe constrained optimization models.
8 Use the simplex algorithm.
3 Understand the advantages and disadvantages of
9 Use artificial variables.
using optimization models.
10 Describe computer solutions of linear programs.
4 Describe the assumptions of linear program-
ming.
11 Use linear programming models for decision
making.
5 Formulate linear programs.
Adapted with permission from Joseph S. Martinich, Production and Operations Management: An Applied Modern Approach, Wiley, New York, 1997.
SUPPLEMENT OUTLINE
The Role of Mathematical Models in Operations The Geometry of Linear Programs B14
Decision Making B2 The Graphical Solution Approach B15
Constrained Optimization Models B2 The Simplex Algorithm B17
Advantages and Disadvantages of Using Optimiza- Using Artificial Variables B26
tion Models B5 Computer Solutions of Linear Programs B29
Assumptions of Linear Programming Models B6 Using Linear Programming Models for Decision
Formulating Linear Programs B7 Making B32
B2 SUPPLEMENT B LINEAR PROGRAMMING
decision variables that maximize or minimize the objective function and sat-
isfy all constraints.
The following example shows how an operational problem can be represented
and analyzed using a constrained optimization model.
The Healthy Pet Food Company manufactures two types of dog food: Meaties and Yum-
mies. Each package of Meaties contains 2 pounds of cereal and 3 pounds of meat; each
package of Yummies contains 3 pounds of cereal and 1.5 pounds of meat. Healthy believes
it can sell as much of each dog food as it can make. Meaties sell for $2.80 per package and
Yummies sell for $2.00 per package. Healthy’s production is limited in several ways. First,
Healthy can buy only up to 400,000 pounds of cereal each month at $0.20 per pound. It can
buy only up to 300,000 pounds of meat per month at $0.50 per pound. In addition, a spe-
cial piece of machinery is required to make Meaties, and this machine has a capacity of
90,000 packages per month. The variable cost of blending and packing the dog food is $0.25
per package for Meaties and $0.20 per package for Yummies. This information is given in
Table B-1.
Suppose you are the manager of the Dog Food Division of the Healthy Pet Food Com-
pany. Your salary is based on division profit, so you try to maximize its profit. How should
you operate the division to maximize its profit and your salary?
Solution:
The Decision Variables. We first identify those things over which we have control: the deci-
sion variables. In this problem we have direct control over two quantities: the number of
packages of Meaties to make each month, and the number of packages of Yummies to make
each month. Within the model these two quantities appear repeatedly, so we represent them
in a simple fashion. We designate these variables by the symbols M and Y.
M number of packages of Meaties to make each month
Y number of packages of Yummies to make each month
Note that the amount of meat used each month and the amount of cereal used each
month are not good choices for the variables. First, we control these only indirectly through
our choice of M and Y. More important, using these as variables could lead to ambiguous
production plans. Determining how much cereal and meat to use in production does not
tell us how to use it—how much of each dog food to make. In contrast, after determining
the values for M and Y, we know what to produce and how much meat and cereal are
needed.
B4 SUPPLEMENT B LINEAR PROGRAMMING
Objective function. Any pair of numerical values for the variables M and Y is a produc-
tion plan. For example, M 10,000 and Y 20,000 means we make 10,000 packages of
Meaties and 20,000 packages of Yummies each month. But how do we know whether this is
a good production plan? We need to specify a criterion for evaluation—an objective func-
tion. The most appropriate objective function is to maximize monthly profit. (Actually, this
is the contribution to profit: fixed costs are ignored because any plan that maximizes rev-
enue minus variable costs maximizes profit as well.) The profit earned by Healthy is a direct
function of the amount of each dog food made and sold, the decision variables. Monthly
profit, designated as z, is written as follows:
z (profit per package of Meaties) (number of packages of Meaties made and
sold monthly) (profit per package of Yummies) (number of packages of
Yummies made and sold monthly)
The profit per package for each dog food is computed as follows:
Meaties Yummies
Selling price 2.80 2.00
Minus
Meat 1.50 0.75
Cereal 0.40 0.60
Blending 0.25 0.20
Profit per package 0.65 0.45
Finally, negative production levels do not make sense, so we require that M 0 and
Y 0. Putting all these together gives the following constrained optimization model.
Maximize z 0.65M 0.45Y
Subject to 2M 3Y 400,000
3M 1.5Y 300,000
M 90,000
M, Y 0
This type of model is called a linear programming model or a linear program A linear program has a
because the objective function is linear and functions in all the constraints are linear. linear objective function and
The optimum solution for the Healthy Pet Food problem is M 50,000, Y linear constraints.
100,000, and z $77,500. That is, Healthy should make 50,000 packages of Meaties
and 100,000 packages of Yummies each month, and it will earn a monthly profit of
$77,500. Before discussing linear programming in detail, let’s consider the advantages
and disadvantages of optimization models in general.
am1x1 am2x2 amnxn bm
Parameters
where the xj values are decision variables and cj , aij , and b i values are constants, called
Constants given in the prob- parameters or coefficients, that are given or specified by the problem assumptions.
lem assumptions. Most linear programs require that all decision variables be nonnegative.
FORMULATING LINEAR PROGRAMS B7
2. Define the objective function. Determine the criterion for evaluating alterna-
tive solutions. The objective function will normally be the sum of terms
made up of a variable multiplied by some appropriate coefficient (parame-
ter). For example, the coefficients might be profit per unit of production, dis-
tance travel per unit transported, or cost per person hired.
3. Identify and express mathematically all of the relevant constraints. It is
often easier to express each constraint in words before putting it into math-
ematical form. The written constraint is decomposed into its fundamental
components. Then substitute the appropriate numerical coefficients and
variable names for the written terms. A common mistake is using variables
that have not been defined in the problem, which is not valid. This mistake
is frequently caused by not defining the original variables precisely. The for-
mulation process is iterative, and sometimes additional variables must be
defined or existing variables redefined. For example, if one of the variables
is the total production of the company and five other variables represent
the production at the company’s five plants, then there must be a constant
that forces total production to equal the sum of the production at the
plants.
Let’s look at the formulation process for typical operations problems.
International Wool Company operates a large farm on which sheep are raised. The farm
manager determined that for the sheep to grow in the desired fashion, they need at least
minimum amounts of four nutrients (the nutrients are nontoxic so the sheep can consume
more than the minimum without harm). The manager is considering three different grains
to feed the sheep. Table B-2 lists the number of units of each nutrient in each pound of
grain, the minimum daily requirements of each nutrient for each sheep, and the cost of
each grain. The manager believes that as long as a sheep receives the minimum daily
amount of each nutrient, it will be healthy and produce a standard amount of wool. The
manager wants to raise the sheep at minimum cost.
Solution
The quantities that the manager controls are the amounts of each grain to feed each sheep
daily. We define
xj number of pounds of grain j ( 1, 2, 3) to feed each sheep daily
Note that the units of measure are completely specified. In addition, the variables are ex-
pressed on a per sheep basis. If we minimize the cost per sheep, we minimize the cost for
any group of sheep. The daily feed cost per sheep will be
(cost per lb of grain j) (lb. of grain j fed to each sheep daily)
That is, the objective function is to
Minimize z 41x1 36x2 96x3
Why can’t the manager simply make all the variables equal to zero? This keeps costs at
zero, but the manager would have a flock of dead sheep, because there are minimum nutri-
ent constraints that must be satisfied. The values of the variables must be chosen so that the
number of units of nutrient A consumed daily by each sheep is equal to or greater than 110.
Expressing this in terms of the variables yields
20x1 30x2 70x3 110
The constraints for the other nutrients are
10x1 10x2 18
50x1 30x2 90
6x1 2.5x2 10x3 110
and finally
all xjs 0
The optimal solution to this problem (obtained using a computer software package) is
x1 0.595, x2 2.008, x3 0.541, and z 148.6 cents.
It is common practice to take a model initially used for one application and apply it to
other situations. The feed mix problem is a good example of a case where one might
use the same basic structure of a model in different applications. For example, a golf
course manager can use the model to select the best mix of fertilizers to provide the
grass with the desired amounts of active chemicals (nitrogen, phosphorus, potash).
The manager’s problem is structurally the same as that faced by the manager of Inter-
national Wool.
Although the basic structure of one model may be appropriate for another ap-
plication, frequently the model needs modification. For example, suppose the U.S.
Army decides to use the feed mix model to select a cost-minimizing diet for its sol-
diers that satisfies minimum nutritional requirements. The basic feed mix problem
makes several subtle assumptions that do not apply for humans. First, issues of taste
have been ignored. Earlier, we assumed that the sheep will eat whatever grain mixture
we feed them. Humans have varying tastes to consider. Some foods may not taste
good together. Second, not all soldiers are of similar size or have the same appetite.
Third, the basic feed mix is a static model: the optimal feed mix today is the same
as that of tomorrow and the next 500 days unless some parameters change. We do not
want to feed people the same meal day after day. Let’s look at another type of prob-
lem.