Extract File 20230411 141647
Extract File 20230411 141647
Linear programming (LP) is a tool for solving optimization problems. In 1947, George Dantzig de-
veloped an efficient method, the simplex algorithm, for solving linear programming problems (also
called LP). Since the development of the simplex algorithm, LP has been used to solve optimiza-
tion problems in industries as diverse as banking, education, forestry, petroleum, and trucking. In
a survey of Fortune 500 firms, 85% of the respondents said they had used linear programming.
As a measure of the importance of linear programming in operations research, approximately 70%
of this book will be devoted to linear programming and related optimization techniques.
In Section 3.1, we begin our study of linear programming by describing the general char-
acteristics shared by all linear programming problems. In Sections 3.2 and 3.3, we learn how
to solve graphically those linear programming problems that involve only two variables. Solv-
ing these simple LPs will give us useful insights for solving more complex LPs. The remainder
of the chapter explains how to formulate linear programming models of real-life situations.
Giapetto’s Woodcarving, Inc., manufactures two types of wooden toys: soldiers and trains.
A soldier sells for $27 and uses $10 worth of raw materials. Each soldier that is manu-
factured increases Giapetto’s variable labor and overhead costs by $14. A train sells for
$21 and uses $9 worth of raw materials. Each train built increases Giapetto’s variable la-
bor and overhead costs by $10. The manufacture of wooden soldiers and trains requires
two types of skilled labor: carpentry and finishing. A soldier requires 2 hours of finishing
labor and 1 hour of carpentry labor. A train requires 1 hour of finishing and 1 hour of car-
pentry labor. Each week, Giapetto can obtain all the needed raw material but only 100 fin-
ishing hours and 80 carpentry hours. Demand for trains is unlimited, but at most 40 sol-
diers are bought each week. Giapetto wants to maximize weekly profit (revenues costs).
Formulate a mathematical model of Giapetto’s situation that can be used to maximize Gi-
apetto’s weekly profit.
Solution In developing the Giapetto model, we explore characteristics shared by all linear pro-
gramming problems.
Decision Variables We begin by defining the relevant decision variables. In any linear
programming model, the decision variables should completely describe the decisions to
be made (in this case, by Giapetto). Clearly, Giapetto must decide how many soldiers and
trains should be manufactured each week. With this in mind, we define
x1 number of soldiers produced each week
x2 number of trains produced each week
Objective Function In any linear programming problem, the decision maker wants to max-
imize (usually revenue or profit) or minimize (usually costs) some function of the deci-
sion variables. The function to be maximized or minimized is called the objective func-
tion. For the Giapetto problem, we note that fixed costs (such as rent and insurance) do
not depend on the values of x1 and x2. Thus, Giapetto can concentrate on maximizing
(weekly revenues) (raw material purchase costs) (other variable costs).
Giapetto’s weekly revenues and costs can be expressed in terms of the decision vari-
ables x1 and x2. It would be foolish for Giapetto to manufacture more soldiers than can
be sold, so we assume that all toys produced will be sold. Then
Weekly revenues weekly revenues from soldiers
weekly revenues from trains
dollars sold iers
soldier week
dollars
train
week
trains
27x1 21x2
Also,
Weekly raw material costs 10x1 9x2
Other weekly variable costs 14x1 10x2
Then Giapetto wants to maximize
(27x1 21x2) (10x1 9x2) (14x1 10x2) 3x1 2x2
Another way to see that Giapetto wants to maximize 3x1 2x2 is to note that
Weekly revenues weekly contribution to profit from soldiers
weekly nonfixed costs weekly contribution to profit from trains
contribution to profit
soldier
sold iers
week
contribution to profit
train
trains
week
Also,
Contribution to profit
27 10 14 3
Soldier
Contribution to profit
21 9 10 2
Train
Then, as before, we obtain
Weekly revenues weekly nonfixed costs 3x1 2x2
Thus, Giapetto’s objective is to choose x1 and x2 to maximize 3x1 2x2. We use the vari-
able z to denote the objective function value of any LP. Giapetto’s objective function is
Maximize z 3x1 2x2 (1)
(In the future, we will abbreviate “maximize” by max and “minimize” by min.) The co-
efficient of a variable in the objective function is called the objective function coefficient
of the variable. For example, the objective function coefficient for x1 is 3, and the objec-
tive function coefficient for x2 is 2. In this example (and in many other problems), the ob-
jective function coefficient for each variable is simply the contribution of the variable to
the company’s profit.
Constraints As x1 and x2 increase, Giapetto’s objective function grows larger. This means
that if Giapetto were free to choose any values for x1 and x2, the company could make an
arbitrarily large profit by choosing x1 and x2 to be very large. Unfortunately, the values of
x1 and x2 are limited by the following three restrictions (often called constraints):
Constraint 1 Each week, no more than 100 hours of finishing time may be used.
Constraint 2 Each week, no more than 80 hours of carpentry time may be used.
Constraint 3 Because of limited demand, at most 40 soldiers should be produced each
week.
The amount of raw material available is assumed to be unlimited, so no restrictions have
been placed on this.
The next step in formulating a mathematical model of the Giapetto problem is to ex-
press Constraints 1–3 in terms of the decision variables x1 and x2. To express Constraint
1 in terms of x1 and x2, note that
Total finishing hrs.
Week
finishing hrs. soldier s made
soldier week
finishing hrs. trains made
train week
2(x1) 1(x2) 2x1 x2
Now Constraint 1 may be expressed by
2x1 x2 100 (2)
Note that the units of each term in (2) are finishing hours per week. For a constraint to
be reasonable, all terms in the constraint must have the same units. Otherwise one is
adding apples and oranges, and the constraint won’t have any meaning.
To express Constraint 2 in terms of x1 and x2, note that
Total carpentry hrs.
Week
carpentry hrs. sold iers
solider week
carpentry hrs. trains
train week
1(x1) 1(x2) x1 x2
Then Constraint 2 may be written as
x1 x2 80 (3)
Again, note that the units of each term in (3) are the same (in this case, carpentry hours
per week).
Finally, we express the fact that at most 40 soldiers per week can be sold by limiting the
weekly production of soldiers to at most 40 soldiers. This yields the following constraint:
x1 40 (4)
Thus (2)–(4) express Constraints 1–3 in terms of the decision variables; they are called
the constraints for the Giapetto linear programming problem. The coefficients of the de-
cision variables in the constraints are called technological coefficients. This is because
the technological coefficients often reflect the technology used to produce different prod-
ucts. For example, the technological coefficient of x2 in (3) is 1, indicating that a soldier
requires 1 carpentry hour. The number on the right-hand side of each constraint is called
DEFINITION ■ A linear programming problem (LP) is an optimization problem for which we
do the following:
1 We attempt to maximize (or minimize) a linear function of the decision vari-
ables. The function that is to be maximized or minimized is called the objective
function.
2 The values of the decision variables must satisfy a set of constraints. Each con-
straint must be a linear equation or linear inequality.
3 A sign restriction is associated with each variable. For any variable xi, the sign
restriction specifies that xi must be either nonnegative (xi 0) or unrestricted in
sign (urs). ■
Because Giapetto’s objective function is a linear function of x1 and x2, and all of Gia-
petto’s constraints are linear inequalities, the Giapetto problem is a linear programming
problem. Note that the Giapetto problem is typical of a wide class of linear programming
problems in which a decision maker’s goal is to maximize profit subject to limited resources.
The fact that the objective function for an LP must be a linear function of the decision
variables has two implications.
1 The contribution of the objective function from each decision variable is proportional
to the value of the decision variable. For example, the contribution to the objective func-
tion from making four soldiers (4 3 $12) is exactly four times the contribution to
the objective function from making one soldier ($3).
2 The contribution to the objective function for any variable is independent of the val-
ues of the other decision variables. For example, no matter what the value of x2, the man-
ufacture of x1 soldiers will always contribute 3x1 dollars to the objective function.
Analogously, the fact that each LP constraint must be a linear inequality or linear equa-
tion has two implications.
1 The contribution of each variable to the left-hand side of each constraint is propor-
tional to the value of the variable. For example, it takes exactly three times as many fin-
ishing hours (2 3 6 finishing hours) to manufacture three soldiers as it takes to man-
ufacture one soldier (2 finishing hours).
2 The contribution of a variable to the left-hand side of each constraint is independent
of the values of the variable. For example, no matter what the value of x1, the manufac-
ture of x2 trains uses x2 finishing hours and x2 carpentry hours.
The first implication given in each list is called the Proportionality Assumption of Lin-
ear Programming. Implication 2 of the first list implies that the value of the objective
function is the sum of the contributions from individual variables, and implication 2 of
the second list implies that the left-hand side of each constraint is the sum of the contri-
butions from each variable. For this reason, the second implication in each list is called
the Additivity Assumption of Linear Programming.
For an LP to be an appropriate representation of a real-life situation, the decision vari-
ables must satisfy both the Proportionality and Additivity Assumptions. Two other as-
sumptions must also be satisfied before an LP can appropriately represent a real situation:
the Divisibility and Certainty Assumptions.
The Divisibility Assumption
The Divisibility Assumption requires that each decision variable be allowed to assume
fractional values. For example, in the Giapetto problem, the Divisibility Assumption im-
plies that it is acceptable to produce 1.5 soldiers or 1.63 trains. Because Giapetto can-
not actually produce a fractional number of trains or soldiers, the Divisibility Assump-
tion is not satisfied in the Giapetto problem. A linear programming problem
in which some or all of the variables must be nonnegative integers is called an integer
programming problem. The solution of integer programming problems is discussed in
Chapter 9.
In many situations where divisibility is not present, rounding off each variable in the
optimal LP solution to an integer may yield a reasonable solution. Suppose the optimal
solution to an LP stated that an auto company should manufacture 150,000.4 compact cars
during the current year. In this case, you could tell the auto company to manufacture
150,000 or 150,001 compact cars and be fairly confident that this would reasonably ap-
proximate an optimal production plan. On the other hand, if the number of missile sites
that the United States should use were a variable in an LP and the optimal LP solution
said that 0.4 missile sites should be built, it would make a big difference whether we
rounded the number of missile sites down to 0 or up to 1. In this situation, the integer
programming methods of Chapter 9 would have to be used, because the number of mis-
sile sites is definitely not divisible.
The Certainty Assumption is that each parameter (objective function coefficient, right-
hand side, and technological coefficient) is known with certainty. If we were unsure of the
exact amount of carpentry and finishing hours required to build a train, the Certainty As-
sumption would be violated.
Two of the most basic concepts associated with a linear programming problem are feasi-
ble region and optimal solution. For defining these concepts, we use the term point to
mean a specification of the value for each decision variable.
DEFINITION ■ The feasible region for an LP is the set of all points that satisfies all the LP’s
constraints and sign restrictions. ■
For example, in the Giapetto problem, the point (x1 40, x2 20) is in the feasible
region. Note that x1 40 and x2 20 satisfy the constraints (2)–(4) and the sign re-
strictions (5)–(6):
Constraint (2), 2x1 x2 100, is satisfied, because 2(40) 20 100.
Constraint (3), x1 x2 80, is satisfied, because 40 20 80.
Constraint (4), x1 40, is satisfied, because 40 40.
Restriction (5), x1 0, is satisfied, because 40 0.
Restriction (6), x2 0, is satisfied, because 20 0.
On the other hand, the point (x1 15, x2 70) is not in the feasible region, because even
though x1 15 and x2 70 satisfy (2), (4), (5), and (6), they fail to satisfy (3): 15 70
is not less than or equal to 80. Any point that is not in an LP’s feasible region is said to
be an infeasible point. As another example of an infeasible point, consider (x1 40,
x2 20). Although this point satisfies all the constraints and the sign restriction (5), it
is infeasible because it fails to satisfy the sign restriction (6), x2 0. The feasible region
for the Giapetto problem is the set of possible production plans that Giapetto must con-
sider in searching for the optimal production plan.
Most LPs have only one optimal solution. However, some LPs have no optimal
solution, and some LPs have an infinite number of solutions (these situations are
discussed in Section 3.3). In Section 3.2, we show that the unique optimal solution to
the Giapetto problem is (x1 20, x2 60). This solution yields an objective function
value of
z 3x1 2x2 3(20) 2(60) $180
When we say that (x1 20, x2 60) is the optimal solution to the Giapetto problem, we
are saying that no point in the feasible region has an objective function value that exceeds
180. Giapetto can maximize profit by building 20 soldiers and 60 trains each week. If Gi-
apetto were to produce 20 soldiers and 60 trains each week, the weekly profit would be
$180 less weekly fixed costs. For example, if Giapetto’s only fixed cost were rent of $100
per week, then weekly profit would be 180 100 $80 per week.
PROBLEMS
Group A
1 Farmer Jones must determine how many acres of corn produced and x2 number of bushels of wheat produced,
and wheat to plant this year. An acre of wheat yields 25 reformulate Farmer Jones’s LP.
bushels of wheat and requires 10 hours of labor per week.
An acre of corn yields 10 bushels of corn and requires 4 4 Truckco manufactures two types of trucks: 1 and 2.
hours of labor per week. All wheat can be sold at $4 a Each truck must go through the painting shop and assembly
bushel, and all corn can be sold at $3 a bushel. Seven acres shop. If the painting shop were completely devoted to
of land and 40 hours per week of labor are available. painting Type 1 trucks, then 800 per day could be painted;
Government regulations require that at least 30 bushels of if the painting shop were completely devoted to painting
corn be produced during the current year. Let x1 number Type 2 trucks, then 700 per day could be painted. If the
of acres of corn planted, and x2 number of acres of wheat assembly shop were completely devoted to assembling truck
planted. Using these decision variables, formulate an LP 1 engines, then 1,500 per day could be assembled; if the
whose solution will tell Farmer Jones how to maximize the assembly shop were completely devoted to assembling truck
total revenue from wheat and corn. 2 engines, then 1,200 per day could be assembled. Each
Type 1 truck contributes $300 to profit; each Type 2 truck
2 Answer these questions about Problem 1. contributes $500. Formulate an LP that will maximize
a Is (x1 2, x2 3) in the feasible region? Truckco’s profit.
b Is (x1 4, x2 3) in the feasible region?
c Is (x1 2, x2 1) in the feasible region? Group B
d Is (x1 3, x2 2) in the feasible region? 5 Why don’t we allow an LP to have
or constraints?
3 Using the variables x1 number of bushels of corn
The Graphical Solution of Two-Variable Linear Programming Problems
Any LP with only two variables can be solved graphically. We always label the variables
x1 and x2 and the coordinate axes the x1 and x2 axes. Suppose we want to graph the set
of points that satisfies
2x1 3x2 6 (7)
Because moving downward on the graph decreases x2 (see Figure 1), the set of points that
satisfies (8) and (7) lies on or below the line x2 2 23x1. This set of points is indicated
by darker shading in Figure 1. Note, however, that x2 2 23x1, 3x2 6 2x1, and 2x1
3x2 6 are all the same line. This means that the set of points satisfying (7) lies on or be-
low the line 2x1 3x2 6. Similarly, the set of points satisfying 2x1 3x2 6 lies on or
above the line 2x1 3x2 6. (These points are shown by lighter shading in Figure 1.)
Consider a linear inequality constraint of the form f(x1, x2) b or f(x1, x2) b. In
general, it can be shown that in two dimensions, the set of points that satisfies a linear in-
equality includes the points on the line f(x1, x2) b, defining the inequality plus all points
on one side of the line.
There is an easy way to determine the side of the line for which an inequality such as
f(x1, x2) b or f(x1, x2) b is satisfied. Just choose any point P that does not satisfy the line
f(x1, x2) b. Determine whether P satisfies the inequality. If it does, then all points on the
same side as P of f(x1, x2) b will satisfy the inequality. If P does not satisfy the inequality,
then all points on the other side of f(x1, x2) b, which does not contain P, will satisfy the in-
equality. For example, to determine whether 2x1 3x2 6 is satisfied by points above or be-
low the line 2x1 3x2 6, we note that (0, 0) does not satisfy 2x1 3x2 6. Because (0,
0) is below the line 2x1 3x2 6, the set of points satisfying 2x1 3x2 6 includes the
line 2x1 3x2 6 and the points above the line 2x1 3x2 6. This agrees with Figure 1.
x2
5
x2 = 2 – 2 x1
3
2
x1
–2 –1 (0, 0) 1 2 3 4
FIGURE 1
Graphing a Linear –1
Inequality
Finding the Feasible Solution
We illustrate how to solve two-variable LPs graphically by solving the Giapetto problem.
To begin, we graphically determine the feasible region for Giapetto’s problem. The feasi-
ble region for the Giapetto problem is the set of all points (x1, x2) satisfying
2x1 x2 100 (Constraints) (2)
x1 x2 80 (3)
x1 x2 40 (4)
x1 x2 0 (Sign restrictions) (5)
x1 x2 0 (6)
For a point (x1, x2) to be in the feasible region, (x1, x2) must satisfy all the inequalities
(2)–(6). Note that the only points satisfying (5) and (6) lie in the first quadrant of the x1–x2
plane. This is indicated in Figure 2 by the arrows pointing to the right from the x2 axis
and upward from the x1 axis. Thus, any point that is outside the first quadrant cannot be
in the feasible region. This means that the feasible region will be the set of points in the
first quadrant that satisfies (2)–(4).
Our method for determining the set of points that satisfies a linear inequality will also
identify those that meet (2)–(4). From Figure 2, we see that (2) is satisfied by all points
below or on the line AB (AB is the line 2x1 x2 100). Inequality (3) is satisfied by all
points on or below the line CD (CD is the line x1 x2 80). Finally, (4) is satisfied by
all points on or to the left of line EF (EF is the line x1 40). The side of a line that sat-
isfies an inequality is indicated by the direction of the arrows in Figure 2.
From Figure 2, we see that the set of points in the first quadrant that satisfies (2), (3),
and (4) is bounded by the five-sided polygon DGFEH. Any point on this polygon or in
its interior is in the feasible region. Any other point fails to satisfy at least one of the in-
equalities (2)–(6). For example, the point (40, 30) lies outside DGFEH because it is above
the line segment AB. Thus (40, 30) is infeasible, because it fails to satisfy (2).
x2
B
100
(2)
Feasible region
D
80
(4)
60 G
40
(40, 30)
z = 100
(3)
20 F
z = 60
FIGURE 2 z = 180
Graphical Solution of E A C
x1
Giapetto Problem H 10 20 40 50 60 80
Having identified the feasible region for the Giapetto problem, we now search for the op-
timal solution, which will be the point in the feasible region with the largest value of z
3x1 2x2. To find the optimal solution, we need to graph a line on which all points have
the same z-value. In a max problem, such a line is called an isoprofit line (in a min prob-
lem, an isocost line). To draw an isoprofit line, choose any point in the feasible region
and calculate its z-value. Let us choose (20, 0). For (20, 0), z 3(20) 2(0) 60. Thus,
(20, 0) lies on the isoprofit line z 3x1 2x2 60. Rewriting 3x1 2x2 60 as x2
30 32x1, we see that the isoprofit line 3x1 2x2 60 has a slope of 32. Because all
isoprofit lines are of the form 3x1 2x2 constant, all isoprofit lines have the same
slope. This means that once we have drawn one isoprofit line, we can find all other iso-
profit lines by moving parallel to the isoprofit line we have drawn.
It is now clear how to find the optimal solution to a two-variable LP. After you have
drawn a single isoprofit line, generate other isoprofit lines by moving parallel to the drawn
isoprofit line in a direction that increases z (for a max problem). After a point, the iso-
profit lines will no longer intersect the feasible region. The last isoprofit line intersecting
(touching) the feasible region defines the largest z-value of any point in the feasible re-
gion and indicates the optimal solution to the LP. In our problem, the objective function
z 3x1 2x2 will increase if we move in a direction for which both x1 and x2 increase.
Thus, we construct additional isoprofit lines by moving parallel to 3x1 2x2 60 in a
northeast direction (upward and to the right). From Figure 2, we see that the isoprofit line
passing through point G is the last isoprofit line to intersect the feasible region. Thus, G
is the point in the feasible region with the largest z-value and is therefore the optimal so-
lution to the Giapetto problem. Note that point G is where the lines 2x1 x2 100 and
x1 x2 80 intersect. Solving these two equations simultaneously, we find that (x1
20, x2 60) is the optimal solution to the Giapetto problem. The optimal value of z may
be found by substituting these values of x1 and x2 into the objective function. Thus, the
optimal value of z is z 3(20) 2(60) 180.
Once the optimal solution to an LP has been found, it is useful (see Chapters 5 and 6) to
classify each constraint as being a binding constraint or a nonbinding constraint.
DEFINITION ■ A constraint is binding if the left-hand side and the right-hand side of the
constraint are equal when the optimal values of the decision variables are
substituted into the constraint. ■
The feasible region for the Giapetto problem is an example of a convex set.
DEFINITION ■ A set of points S is a convex set if the line segment joining any pair of points in
S is wholly contained in S. ■
Figure 3 gives four illustrations of this definition. In Figures 3a and 3b, each line seg-
ment joining two points in S contains only points in S. Thus, in both these figures, S is
convex. In Figures 3c and 3d, S is not convex. In each figure, points A and B are in S, but
there are points on the line segment AB that are not contained in S. In our study of linear
programming, a certain type of point in a convex set (called an extreme point) is of great
interest.
DEFINITION ■ For any convex set S, a point P in S is an extreme point if each line segment that
lies completely in S and contains the point P has P as an endpoint of the line
segment. ■
For example, in Figure 3a, each point on the circumference of the circle is an extreme
point of the circle. In Figure 3b, points A, B, C, and D are extreme points of S. Although
point E is on the boundary of S in Figure 3b, E is not an extreme point of S. This is be-
cause E lies on the line segment AB (AB lies completely in S), and E is not an endpoint of
the line segment AB. Extreme points are sometimes called corner points, because if the
set S is a polygon, the extreme points of S will be the vertices, or corners, of the polygon.
The feasible region for the Giapetto problem is a convex set. This is no accident: It can
be shown that the feasible region for any LP will be a convex set. From Figure 2, we see
that the extreme points of the feasible region are simply points D, F, E, G, and H. It can
be shown that the feasible region for any LP has only a finite number of extreme points.
Also note that the optimal solution to the Giapetto problem (point G) is an extreme point
of the feasible region. It can be shown that any LP that has an optimal solution has an
extreme point that is optimal. This result is very important, because it reduces the set of
points that yield an optimal solution from the entire feasible region (which generally con-
tains an infinite number of points) to the set of extreme points (a finite set).
S = shaded area
A B
A E B
A B
FIGURE 3 C D
Convex and Nonconvex
Sets a b c d
Dorian Auto manufactures luxury cars and trucks. The company believes that its most
likely customers are high-income women and men. To reach these groups, Dorian Auto
has embarked on an ambitious TV advertising campaign and has decided to purchase
1-minute commercial spots on two types of programs: comedy shows and football games.
Each comedy commercial is seen by 7 million high-income women and 2 million high-
income men. Each football commercial is seen by 2 million high-income women and 12
million high-income men. A 1-minute comedy ad costs $50,000, and a 1-minute football
ad costs $100,000. Dorian would like the commercials to be seen by at least 28 million
high-income women and 24 million high-income men. Use linear programming to deter-
mine how Dorian Auto can meet its advertising requirements at minimum cost.
Solution Dorian must decide how many comedy and football ads should be purchased, so the de-
cision variables are
x1 number of 1-minute comedy ads purchased
x2 number of 1-minute football ads purchased
Then Dorian wants to minimize total advertising cost (in thousands of dollars).
Total advertising cost cost of comedy ads cost of football ads
cost
total
comedy ad comedy ads
cost
football ad football
total
ads
50x1 100x2
Thus, Dorian’s objective function is
min z 50x1 100x2 (9)
HIW
HIW
comedy ad comedy
total
ads football ad football ads
HI W total
7x1 2x2
HIM
HIM
comedy ad comedy
total
ads football ad football ads
HIM total
2x1 12x2
Constraint 1 may now be expressed as
7x1 2x2 28 (10)
The sign restrictions x1 0 and x2 0 are necessary, so the Dorian LP is given by:
min z 50x1 100x2
s.t. 7x1 2x2 28 (HIW)
s.t. 2x1 12x2 24 (HIM)
x 1, x 2 0
This problem is typical of a wide range of LP applications in which a decision maker
wants to minimize the cost of meeting a certain set of requirements. To solve this LP
graphically, we begin by graphing the feasible region (Figure 4). Note that (10) is satis-
fied by points on or above the line AB (AB is part of the line 7x1 2x2 28) and that
x2
14 B
12
10
(10)
8
(4, 4)
4
z = 320
z = 600
2 E
FIGURE 4 D (11)
Graphical Solution of A C
x1
Dorian Problem 2 4 6 8 10 12 14
Does the Dorian model meet the four assumptions of linear programming outlined in
Section 3.1?
For the Proportionality Assumption to be valid, each extra comedy commercial must
add exactly 7 million HIW and 2 million HIM. This contradicts empirical evidence, which
indicates that after a certain point advertising yields diminishing returns. After, say, 500
auto commercials have been aired, most people have probably seen one, so it does little
good to air more commercials. Thus, the Proportionality Assumption is violated.
We used the Additivity Assumption to justify writing (total HIW viewers) (HIW
viewers from comedy ads) (HIW viewers from football ads). In reality, many of the
same people will see a Dorian comedy commercial and a Dorian football commercial. We
are double-counting such people, and this creates an inaccurate picture of the total num-
ber of people seeing Dorian commercials. The fact that the same person may see more
than one type of commercial means that the effectiveness of, say, a comedy commercial
depends on the number of football commercials. This violates the Additivity Assumption.
If only 1-minute commercials are available, then it is unreasonable to say that Dorian
should buy 3.6 comedy commercials and 1.4 football commercials, so the Divisibility As-
sumption is violated, and the Dorian problem should be considered an integer program-
ming problem. In Section 9.3, we show that if the Dorian problem is solved as an integer
programming problem, then the minimum cost is attained by choosing (x1 6, x2 1)
or (x1 4, x2 2). For either solution, the minimum cost is $400,000. This is 25% higher
than the cost obtained from the optimal LP solution.
Because there is no way to know with certainty how many viewers are added by each type
of commercial, the Certainty Assumption is also violated. Thus, all the assumptions of lin-
ear programming seem to be violated by the Dorian Auto problem. Despite these drawbacks,
analysts have used similar models to help companies determine their optimal media mix.†
†
Lilien and Kotler (1983).