0% found this document useful (0 votes)
13 views

1-Goal-Programming (1)

Chapter 8 discusses goal programming (GP) and its application in optimizing the allocation of operating room time at Mount Sinai Hospital in Canada. It explains the formulation of GP through examples, including tax planning and advertising strategies, emphasizing the need to balance conflicting goals. Two methods for solving GP, the weights method and the preemptive method, are introduced, highlighting their distinct approaches to achieving compromise solutions in multi-objective scenarios.

Uploaded by

angelmaee.palas
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
13 views

1-Goal-Programming (1)

Chapter 8 discusses goal programming (GP) and its application in optimizing the allocation of operating room time at Mount Sinai Hospital in Canada. It explains the formulation of GP through examples, including tax planning and advertising strategies, emphasizing the need to balance conflicting goals. Two methods for solving GP, the weights method and the preemptive method, are introduced, highlighting their distinct approaches to achieving compromise solutions in multi-objective scenarios.

Uploaded by

angelmaee.palas
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 9

Chapter 8

Goal programming

Real-Life Application—Allocation of Operating Room Time in Mount Sinai Hospital


The situation takes place in Canada, where health-care insurance is mandatory
and universal. Funding, which is based on a combination of premiums and taxes, is
controlled by the individual provinces. Under this system, hospitals are advanced a
fixed annual budget, and each province pays physicians retrospectively using a fee-
for-service funding mechanism. This funding arrangement limits the availability of
hospital facilities (e.g., operating rooms), which in turn curbs physicians’ tendency
to boost personal gain through overservice to patients. The objective of the study is
to determine an equitable daily schedule for the use of available operating rooms.
The problem is modeled using a combination of goal and integer programming. The
case at the end of the chapter provides the details of the study.

8.1 A GOAL PROGRAMMinG FORMuLATiOn


The idea of goal programming (GP) is illustrated by Example 8.1-1.

Example 8.1-1 (Tax Planning)1


Fairville is a small city with a population of about 20,000 residents. The annual taxation base
for real estate property is $550 million. The annual taxation bases for food and drugs and for
general sales are $35 million and $55 million, respectively. Annual local gasoline consumption
is estimated at 7.5 million gallons. The city council wants to develop the tax rates based on four
main goals:
1. Tax revenues must be at least $16 million to meet the city’s financial commitments.
2. Food and drug taxes cannot exceed 10% of all taxes collected.

1
This example is based on Chissman and Associates, 1989.

341
342 Chapter 8 Goal Programming

3. General sales taxes cannot exceed 20% of all taxes collected.


4. Gasoline tax cannot exceed 2 cents per gallon.

Let the variables xp, xf , and xs represent the tax rates (expressed as proportions of taxation
bases) for property, food and drug, and general sales and define the variable xg as the gasoline
tax in cents per gallon. The goals of the city council are then expressed as

550xp + 35xf + 55xs + .075xg Ú 16 1Tax revenue2


35xf … .11550xp + 35xf + 55x3 + .075xg 2 1Food/drug tax2
55xs … .21550xp + 35xf + 55xs + .075xg 2 1General tax2
xg … 2 1Gasoline tax2
xp, xf , xs, xg Ú 0

These constraints are then simplified as

550xp + 35xf + 55xs + .075xg Ú 16


55xp - 31.5xf + 5.5xs + .0075xg Ú 0
110xp + 7xf - 44xs + .015xg Ú 0
xg … 2
xp, xf , xs, xg Ú 0

Each of the inequalities of the model represents a goal that the city council aspires to
satisfy. Most likely, however, the best that can be done is a compromise solution involving these
conflicting goals.
The manner in which GP finds a compromise solution is to convert each inequality into a
flexible goal in which the corresponding constraint may be violated, if necessary. In terms of the
Fairville model, the flexible goals are expressed as follows:

550xp + 35xf + 55xs + .075xg + s1- - s1+ = 16


55xp - 31.5xf + 5.5xs + .0075xg + s2- - s2+ = 0
110xp + 7xf - 44xs + .015xg + s3- - s3+ = 0
xg + s4- - s4+ = 2
xp, xf , xs, xg Ú 0
si-, si+ Ú 0, i = 1, 2, 3, 4

The nonnegative variables si- and si+ , i = 1, 2, 3, 4, are deviational variables representing the de-
viations below and above the right-hand side of constraint i.
The deviational variables si- and si+ are by definition dependent, and hence cannot be basic
variables simultaneously (per the theory of the simplex method). This means that in any sim-
plex iteration, at most one of the two deviational variables can assume a positive value. If the
original ith inequality is of the type … and its si- Ú 0, then the ith goal is satisfied; otherwise,
goal i is not satisfied. In essence, the definition of si- and si+ allows meeting or violating the ith
goal at will. This is the type of flexibility that characterizes GP when it seeks a compromise
8.2 Goal Programming Algorithms 343

solution. Logically, a good compromise solution seeks to minimize the amount by which each
goal is violated.
In the Fairville model, given that the first three constraints are of the type Ú and the fourth
constraint is of the type … , the deviational variables s1-, s2-, s3- , and s4+ (shown in the model in
bold) represent the amounts by which the respective goals are violated. Thus, the compromise
solution seeks to satisfy the following four objectives as much as possible:

Minimize G1 = s1-
Minimize G2 = s2-
Minimize G3 = s3-
Minimize G4 = s4+

These functions are minimized subject to the constraint equations of the model.
How can we optimize a multiobjective model with conflicting goals? Two methods have
been developed for this purpose: (1) the weights method and (2) the preemptive method. Both
methods are based on converting the multiple objectives into a single function. Section 8.2
provides the details.

8.2 GOAL PROGRAMMinG ALGORiTHMS


This section presents two algorithms for solving GP. Both methods are based on rep-
resenting the multiple goals by a single objective function. In the weights method, the
single objective function is the weighted sum of the functions representing the goals of
the problem. The preemptive method starts by prioritizing the goals in order of impor-
tance. The model then optimizes the goals one at a time in order of priority and in a
manner that does not degrade a higher-priority solution.
The proposed two methods do not generally produce the same solution. Neither
method, however, is superior to the other, because the two techniques entail distinct
decision-making preferences.

8.2.1 The Weights Method


Suppose that the GP model has n goals and that the ith goal is given as

Minimize Gi, i = 1, 2, c, n

The combined objective function used in the weights method is then defined as

Minimize z = w1G1 + w2G2 + g + wnGn

The parameters wi, i = 1, 2, c, n, are positive weights that reflect the decision
maker’s preferences regarding the relative importance of each goal. For example,
wi = 1, for all i, signifies that all goals are of equal importance. The determination of
the specific values of these weights is subjective. Indeed, the apparently sophisticated
analytic procedures developed in the literature (see, e.g., Cohon, 1978) are still rooted
in subjective assessments.
344 Chapter 8 Goal Programming

Example 8.2-1
TopAd, a new advertising agency with 10 employees, has received a contract to promote a new
product. The agency can advertise by radio and television. The following table gives the num-
ber of people reached daily by each type of advertisement and the cost and labor requirements.

Radio Television

Exposure (in millions of persons)/min 4 8


Cost (in thousands of dollars)/min 8 24
Assigned employees/min 1 2

The contract prohibits TopAd from using more than 6 minutes of radio advertisement.
Additionally, radio and television advertisements need to reach at least 45 million people. TopAd
has a budget goal of $100,000 for the project. How many minutes of radio and television adver-
tisement should TopAd use?
Let x1 and x2 be the minutes allocated to radio and television advertisements. The GP for-
mulation for the problem is given as

Minimize G1 = s1- 1Satisfy exposure goal2


Minimize G2 = s2+ 1Satisfy budget goal2

subject to

4x1 + 8x2 + s1- - s1+ = 45 1Exposure goal2


8x1 + 24x2 + s2- - s2+ = 100 1Budget goal2
x1 + 2x2 … 10 1Personnel limit2
x1 … 6 1Radio limit2
x1, x2, s1-, s1+, s2-, s2+ Ú 0

TopAd’s management estimates that the exposure goal is twice as important as the budget
goal. The combined objective function thus becomes

Minimize z = 2G1 + G2 = 2s1- + s2+

The optimum solution is z = 10, x1 = 5 min, x2 = 2.5 min, s1- = 5 million persons, s1- = 0,
and s2- = 0.
The fact that the optimum value of z is not zero indicates that at least one of the goals is not
met. Specifically, s1- = 5 means that the exposure goal (of at least 45 million persons) is missed
by 5 million individuals. Conversely, the budget goal (of not exceeding $100,000) is not violated,
because s2+ = 0.

Aha! Moment: Satisficing versus Maximizing, or How Long to Age Wine!


In his book Science of the Artificial, American Nobel Laureate Herbert A. Simon (1916–2001)
coined the verb satisfice (a combination of satisfy and suffice) as an alternative goal to maximize
in decision making. The difference is explained by the dilemma of an immortal (presumably
8.2 Goal Programming Algorithms 345

expecting eternal life) in possession of a bottle of fine wine. The wine gets tastier with age and the
immortal must decide when to consume it. The satisficer would choose a reasonable future time
to open the bottle but the maximizer would say never!
Though GP is presented in the context of optimized linear programs, its end result
seeks a satisficing rather than an optimum solution. This conclusion can be demonstrated by
Example 8.2-1, where the “optimum” GP solution yields x1 = 5 min and x2 = 2.5 min with ex-
posure of 40 million persons and a cost $100,000. By contrast, the feasible solution x1 = 6 min
and x2 = 2 min yields the same exposure 14 * 6 + 8 * 2 = 40 million persons2 but costs less
18 * 6 + 24 * 2 = $96,0002. In essence, what GP does is to find a satisficing rather than an
optimum solution. The failure to find the best solution raises doubts about the viability of GP as
an optimization technique (see Example 8.2-3 for further discussion).

8.2.2 The Preemptive Method


In the preemptive method, the decision maker ranks the goals of the problem in
order of importance. Given an n-goal situation, the objectives of the problem are
written as

Minimize G1 = r1 1Highest priority2


f
Minimize Gn = rn 1Lowest priority2

The variable ri is the component of the deviational variables, si- or si+, representing
goal i. For example, in the TopAd model (Example 8.2-1), r1 = s1- and r2 = s2+.
The solution procedure starts with optimizing the highest priority, G1, and termi-
nates with optimizing the lowest, Gn. The preemptive method is designed such that a
lower-priority solution never degrades a higher-priority solution.
The literature on GP presents a “special” simplex method that guarantees the
nondegradation of higher-priority solutions. The method uses the column-dropping
rule that calls for eliminating a nonbasic variable xj with nonzero reduced cost
1zj - cj ≠ 02 from the optimal tableau of goal Gk prior to solving the problem of goal
Gk + 1. The rule recognizes that such nonbasic variables, if elevated above zero level in
the optimization of succeeding goals, may degrade (but never improve) the quality of a
higher-priority goal. The procedure requires including the objective functions of all the
goals in the simplex tableau of the model.
The proposed column-dropping modification needlessly complicates GP. In this
presentation, we show that the same results can be achieved in a more straightforward
manner using the following steps:

Step 0. Identify the goals of the model and rank them in order of priority:

G1 = r1 ≻ G2 = r2 ≻ g ≻ Gn = rn

Set i = 1.
General Step. Solve LPi that minimizes Gi, and let ri = r*i define the correspond-
ing optimum value of the deviational variable ri. If i = n, stop; LPn solves
346 Chapter 8 Goal Programming

the n-goal program. Otherwise, add the constraint ri = r*i to the constraints
of the Gi-problem to ensure that the value of ri is not degraded in future
problems. Set i = i + 1, and repeat step i.

The successive addition of the special constraints ri = r*i may not be as “elegant”
theoretically as the column-dropping rule. Nevertheless, it achieves the exact same
result. More importantly, it is easier to implement and to understand.

remarks. Some may argue that the column-dropping rule offers computational
advantage because the rule makes the problem successively smaller by removing vari-
ables, whereas our procedure makes the problem larger by adding new constraints.
Considering the nature of the additional constraints 1ri = r*i 2, we can modify the sim-
plex algorithm to implement the additional constraint implicitly by substituting out
ri = r*i . The substitution (affecting only the constraint in which ri appears) reduces the
number of variables as the algorithm moves from one goal to the next. Alternatively, we
can use the bounded simplex method of Section 7.4.2 by replacing ri = r*i with ri … r*i ,
in which case the additional constraints are accounted for implicitly. In this regard, the
column-dropping rule, theoretical appeal aside, does not appear to offer a particular
computational advantage.
For the sake of completeness, Example 8.2-3 will illustrate how the column-
dropping rule works.

Example 8.2-2
The problem of Example 8.2-1 is solved by the preemptive method. Assume that the exposure
goal has a higher priority.

Step 0. G1 ≻ G2

G1: Minimize s1- 1Satisfy exposure goal2


G2: Minimize s2+ 1Satisfy budget goal2

Step 1. Solve LP1.

Minimize G1 = s1-

subject to

4x1 + 8x2 + s1- - s1+ = 45 1Exposure goal2


8x1 + 24x2 + s2- - s2+ = 100 1Budget goal2
x1 + 2x2 … 10 1Personnel limit2
x1 … 6 1Radio limit2
x1, x2, s1-, s1+, s2-, s2+ Ú 0

The optimum solution (determined by TORA) is x1 = 5 min, x2 = 2.5 min, s1- = 5


million people, with the remaining variables equal to zero. The solution shows that
8.2 Goal Programming Algorithms 347

the exposure goal, G1, is violated by 5 million persons. The additional constraint to be
added to the G2-problem is s1- = 5 1or, equivalently, s1- … 52.

Step 2. The objective function of LP2 is

Minimize G2 = s2+

The constraints are the same as in step 1 plus the additional constraint s1- = 5.
(TORA’s MODIFY option can be used conveniently to represent the new constraint
by assigning 5 to both the lower and upper bounds of s1- .)
In general, the additional constraint s1- = 5 can also be accounted for by substitut-
ing out s1- in the first constraint. The result is that the right-hand side of the exposure
goal constraint will be changed from 45 to 40, thus reducing LP2 to

Minimize G2 = s2+

subject to

4x1 + 8x2 - s1+ = 40 1Exposure goal2


8x1 + 24x2 + s2- - s2+ = 100 1Budget goal2
x1 + 2x2 … 10 1Personnel limit2
x1 … 6 1Radio limit2
x1, x2, s1+, s2-, s2+ Ú 0

The new formulation is one variable less than the one in LP1, which is the general idea
advanced by the column-dropping rule.
Actually, the optimization of LP2 is not necessary in this problem, because the op-
timum solution to problem G1 already yields s2+ = 0; that is, it is already optimum for
LP2. Such computational-saving opportunities should be exploited during the course
of implementing the preemptive method.

Example 8.2-3 (Column-Dropping Rule)


In this example, we show that a better solution for the problem of Examples 8.2-1 and 8.2-2 can
be obtained if the preemptive method is used to optimize objectives rather than to satisfice goals.
Later on, the same example is solved using the column-dropping rule.
The goals of Example 8.2-1 can be restated as

Priority 1: Maximize exposure 1P1 2


Priority 2: Minimize cost 1P2 2

Mathematically, the two objectives are given as

Maximize P1 = 4x1 + 8x2 1Exposure2


Minimize P2 = 8x1 + 24x2 1Cost2
348 Chapter 8 Goal Programming

The specific goal limits for exposure and cost 1 = 45 and 1002 in Examples 8.2-1 and 8.2-2
are removed, because we will allow the simplex method to determine these limits optimally.
The new problem can thus be stated as

Maximize P1 = 4x1 + 8x2


Minimize P2 = 8x1 + 24x2
subject to

x1 + 2x2 … 10
x1 … 6
x1, x2 Ú 0

We first solve the problem using the procedure introduced in Example 8.2-2.

Step 1. Solve LP1.

Maximize P1 = 4x1 + 8x2

subject to

x1 + 2x2 … 10
x1 … 6
x1, x2 Ú 0

The optimum solution (obtained by TORA) is x1 = 0, x2 = 5 with P1 = 40, which


shows that the most exposure we can get is 40 million persons.

Step 2. Add the constraint 4x1 + 8x2 Ú 40 to ensure that goal G1 is not degraded. Thus, we
solve LP2 as
Minimize P2 = 8x1 + 24x2

subject to

x1 + 2x2 … 10
x1 … 6
4x1 + 8x2 Ú 40 1additional constraint2
x1, x2 Ú 0

The optimum solution of LP2 is P2 = $96,000, x1 = 6 min, and x2 = 2 min. It yields the
same exposure (P1 = 40 million people) but at a smaller cost than the one in Example 8.2-2,
where we seek to satisfy rather than optimize the goals.
The same problem is solved now by using the column-dropping rule. The rule calls for carry-
ing the objective rows associated with all the goals in the simplex tableau, as we will show below.
8.2 Goal Programming Algorithms 349

Lp1 (exposure maximization). The LP1 simplex tableau carries both objective rows
P1 and P2. The optimality condition applies to the P1-objective row only. The P2-row
plays a passive role in LP1 but must be updated (using the simplex row operations)
with the rest of the simplex tableau in preparation for the optimization of LP2.
LP1 is solved in two iterations as follows:

Iteration Basic x1 x2 s1 s2 Solution

1 P1 -4 -8 0 0 0
P2 -8 - 24 0 0 0
s1 1 2 1 0 10
s2 1 0 0 1 6
2 P1 0 0 4 0 40
P2 4 0 12 0 120
x2 1 1 1 0 5
2 2
s2 1 0 0 1 6

The last tableau yields the optimal solution x1 = 0, x2 = 5, and P1 = 40.


The column-dropping rule calls for eliminating any nonbasic variable xj with
zj - cj ≠ 0 from the optimum tableau of LP1 before LP2 is optimized. The reason is
that these variables, if left unchecked, could become positive in lower-priority optimi-
zation problems, which can degrade the quality of higher-priority solutions.

Lp2 (Cost minimization). The column-dropping rule eliminates s1 (with zj - cj = 4 in


LP1). We can see from the P2-row that if s1 is not eliminated, it will be the entering vari-
able at the start of the P2-iterations and will yield the optimum solution x1 = x2 = 0,
which will degrade the optimum objective value of the P1-problem from P1 = 40 to
P1 = 0. (Try it!)
The P2-problem is of the minimization type. Following the elimination of s1, the
variable x1 with zj - cj = 41 7 -02 can improve the value of P2. The following table
shows the LP2 iterations. The P1-row has been deleted because it serves no purpose in
the optimization of LP2.

Iteration Basic x1 x2 s1 s2 Solution

1 P1 40
P2 4 0 0 120
x2 1 1 0 5
2
s2 1 0 1 6
2 P1 40
P2 0 0 -4 96
x2 0 1 - 12 2
x1 1 0 1 6

The optimum solution 1x1 = 6, x2 = 22 with a total exposure of P1 = 40 and a


total cost of P2 = 96 is the same as obtained earlier.

You might also like