0 ratings0% found this document useful (0 votes) 719 views16 pagesGoal Programming AMPL
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content,
claim it here.
Available Formats
Download as PDF or read online on Scribd
CHAPTER 8
Goal Programming
Chapter Guide. The LP models presented in the preceding chapters are based on the
optimization of a single objective function, There are situations where multiple (con-
{Micting) objectives may be more appropriate. For example, politicians promise to re-
duce the national debt and, simultaneously, offer income tax relief. In such situations it
is impossible to find a single solution that optimizes these two conflicting goals. What
goal programming does is seek a compromise solution based on the relative impor-
tance of eack objective,
‘The main prerequisite for this chapter is a basic understanding of the simplex
method. There are two methods for solving goal progeamis: The weights method forms a
Single objective function consisting of the weighted sum of the goals and the
Preemptive method optimizes the goals one at a time starting with the highest-priority
Boal and terminating with the lowest, never degrading the quality of a higher:priorty
goal. The solution using the weights method is just like any ordinary linear program,
The preemptive method entails “additional” algorithmic considerations that are very
‘much within the realm of the simplex method of Chapter 3. The chapter includes an
AMPL model that applies the preemptive method interactively to any goal program,
simply by changing the input data, You are encouraged to study this model because it
Will assist you in understanding the details of the preemptive method.
‘This chapter includes a summary of 1 real-life application, 4 solved examples, 1
AMPL model, 25 end-of-section problems, and 2 cases. The cases are in Appendix E on
the CD. The AMPL/Excel/Solver/TORA programs are in folder ch8Files.
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 uni-
Versal. 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 anuuat
budget and each province pays physicians retrospectively using a fee-for-service fund-
ing mechanism. This funding arrangement limits the availability of hospital facilities
(eg, operating rooms), which in turn would curb physicians’ tendency to boost personal
333334
841
Chapter — Goal Programming
gain through overservice to patients. The objective of the study is to determine an eq-
uitable daily schedule for the use of available operating rooms. The problem is mod-
eled using a combination of goal and integer programming, Case 6 in Chapter 24 on
the CD provides the details of the study.
A GOAL PROGRAMMING FORMULATION
‘The idea of goal programming is illustrated by an example.
Example 87-7 (Tax Planning)"
Fairville is a small city with a population of about 20,000 residents. The city council is in the
process of developing an equitable city tax rate table. The annual taxation base for real estate
property is $550 million. The annual taxation bases for food and drugs aad for general sales are
$35 million and $55 million, respectively. Annual locai gasoline consumption is estimated at 7.5
million gallons. The city councif wants to develop the tax rates based on four main goals.
L. 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
3. General sales taxes cannot exceed 20% of all taxes collected,
4, Gasoline tax cannot exceed 2 cents per gallon,
Let the variables x», x,, and x, represent the tax rates (expressed as proportions of taxation
bases) for property, food and drug, and general sales, and define the variable x, as the gasoline tax
in cents per gallon, The goals of the city council are then expressed as.
50x, + 35xy + 55c, + OTSx,= 16 (Tax revenue)
5 1(550x, + 35xy + 55x5 + .075x,) _ (Food/drug tax)
55x, = 2(550x, + 35x, + 55x, + 075x,) (General tax)
52 (Gasoline tax)
Xp kp Xnty =O
These constraints are then simplified as
550xp + 35xy + 55x, + O75x, 2 16
S5xy ~ 31Sxy + 55x, + 0075x, = 0
10x, + 7x; — 44x, + 015x, = 0
Xpu¥ps og =O
"This example is based on Chissman and Associates, 1989.8.1 AGoal Programming Formulation 335
Each of the inequalities of the model represents a goal that the city council aspires to satis-
fy. Most likely, however, the best that can be done is a compromise solution among these con-
Bicting goals.
‘The manner in which goal programming finds a compromise solution is to convert each in-
quality into a exible goal in which the corresponding constraint may be violated, if necessary.
{In terms of the Fairville model, the flexible goals are expressed as follows:
S50xy + 35xy + 55x, + O7Sxy + 57 - sf = 16
S5xp ~ B1Sxy + 55x, + O07Sx, + 5; - sf = 0
MOx, + Ixy ~ 442, + O1Sx, + 55 - 3 = 0
xy tsi-sh=2
0
Em XpiXn Xe
Fes} = 08 1,2,3,4
The nonnegative variables s7 and si, i = 1,2,3,4, are called deviational variables because they
represent the deviations below and above the right-hand side of constraint i.
‘The deviational variables 57 and sj are by definition dependent, and hence cannot be
basic variables simultaneously. This means that in any simplex 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 5; > 0, then the ith goal is satisfied; otherwise, if s7 >> 0, goal fis not satisfied,
In essence, the definition of sj and 5 alfows meeting or violating the ith goal at will. This is
the type of flexibitity that characterizes goal programming when it seeks a compromise solu,
fion. Naturally, a good compromise solution aims at minimizing, as much as possible, 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 57,7, s5 and sf (shown in the model in
bold) represent the amounts by which the respective goals are violated, Thus, the compromise
Solution tries to satisfy the following four objectives as much as possible:
Minimize Gy
Minimize G;
Minimize G, = 55
Minimize Gy = sf
‘These functions are minimized subject to the constraint equations of the model.
How can we optimize a multiobjective model with possibly conflicting goals? Two
methods have been developed for this purpose: (1) the weights method and (2) the pre.
emptive method. Both methods, which are based on converting the multiple objectives
into a single function, are detailed in Section 8.2.336 Chapter 8 Goal Programming
i PROBLEM SET 8.18
+1, Formulate the Fairville tax problem, assuming that the town! council is specifying an addli-
tional goal, Gs, that requires gasoline tax to equal at least 10% of the total tax bill
i 2. ‘The NW Shopping Mall conducts special events to attract potential patrons, Among the
i events that seem to attract teenagers, the young/middle-aged group, and senior citizens,
the two most popular are band concerts and art shows. Their costs per presentation are
{$1500 and $3000, respectively. The total (strict) annual budget allocated to the two events
is $15,000. The mall manager estimates the attendance as follows:
‘Number attending pet presentation
Event Teenagers Youngémiddle age Seniors
Band concert 200 100 0
Art show 0 400 250
Astshow 8
i “The manager has set minimum goals of 1000, 1200, and 800 for the attendance of
: teenagers the youngimidale-aged group, and seniors respectively. Formulate the problem
i as. goal programming model,
43. Ozark University admission office is processing freshman applications for the upcoming
‘cademic year. The applications fall into three categories: in-state, out-of-state, and inter-
ational. The male-female ratios for in-state and out-of-state applicants are 1:1 and 3:2,
respectively. For international students, the corresponding ratio is 8:1. The American Col-
{ege Test (ACT) score isan important factor in accepting new students The statistics
gathered by the university indicate thatthe average ACT scores for in-state, out-of-state,
gad international students are 27,26, ané.23, respectively. The committee on admissions
hhas established the following desirable goals for the new freshman class:
(a) The incoming class is a least 1200 freshmen.
(b) The average ACT score for all incoming students is atleast 25.
(©) International students constitute at least 10% of the incoming class
(a) ‘Tre female-male ratio is atleast 34
3 (e) Out-of-state students constitute at least 20% of the incoming class
Formulate the problem as a goal programming model,
4. Circle K farms consumes 3 tons of special feed daily. The feed—a mixtore af limestone,
corn, and soybean meal—must satisfy the following nutritional requirements:
Calcium. At ieast 0.8% but not more than 1.2%
Protein. Atleast 22%.
Fiber. At most5%
‘The following table gives the nutrtionsl eoatent of the feed ingredients,
1b per Ib of ingredient
Ingredient Calcium — Provein ‘Fiber
eee
Limestone 380 00 0
Com. oO 09 2
Soybean meal 2 50 08
Sovtean net5,
8.1 AGoal Programming Formulation 337
Formulate the problem as a goal programming model, and state your opinion regarding
the applicability of goal programming to this situation.
‘Mantel produces a toy carriage, whose final assembly must include four wheels and cwo
seals. The factory producing the parts operates three shifts a day. The following table pro-
vides the amounts produced of each part in the three shifts.
Units produced per run
Shift Wheels Seats
1 soo 300
2 600 280
3 640 360
Ideally, the number of wheels produced is exactly twice that of the number of seats. How-
ever, because production rates vary from shift to shift, exact balance in production may
not be possible, Mantel is interested in determining the number of production rans in
each shift that minimizes the imbatance in the production of the parts, The capacity limi-
tations restrict the number of runs to between 4 and 5 for shift 1, 10 and 20 for shift 2,
and 3 and 5 for shift 3. Formulate the problem as a goal programming model
Camyo Manufacturing produces four parts that require the use of a lathe and a drill
press. The two machines operate 10 hours a day. The following table provides the time in
minutes required by each part:
Production time in min
Part Lathe Drill press
1 3 3
2 6 2
3 4 6
4 7 4
Itis desired to balance the two machines by limiting the difference between their total
operation times to at most 30 minutes. The market demand for each partis et least
10 units. Additionally, the number of units of part 1 may not exceed that of part 2. Formu-
late the problem as a goal programming model.
‘Two products are manufactured on two sequential machines. The following table gives
‘he machining times in minutes per unit for the two products.
‘Machining time in win,
Machine Product! Product
1 5 3
2 6 2
‘The daily production quotas for the two products are 80 and 60 units, respectively. Each
‘machine runs 8 hours a day. Overtime, though not desirable, may be wed if necessary to
meet the production quota. Formulate the problem as a goal programming model.338
82
B24
Chapter 8 Goal Programming
8. Vista City hospital plans the short-stay assignment of surplus beds (those that are not al-
ready oceupied) 4 days in advance. Daring the 4-day planning period about 30,25, and 20
patients will equire 1-,2-,or 3-day stays, respectively. Surplus beds during the same pert
2G are estimated at 20, 30,30, and 30. Use goal programming to resolve the problem of
overadmission and underadmission in the hospital,
9, The Von Trapp family isin the process of moving to a new city where both parents have
acoepted new jobs In tying to find an ideal location for their new home, the Von Trapps
list the following goals:
{@) shoal be as close as possible to Mrs. Von Trapp’ place of work (within mile.
(b) It should be as far as possible from the noise ofthe airport (at least 10 mies).
(©) Itshould be reasonably close to a shopping mall (within 1 mile).
Mr. and Mrs. Von Trapp use a landmark in the city as a reference point and locate
the (29) coordinates of work, airport, and shopping mall at (1, 1) (20, 15),and 4.7) #@-
spectively (all distances are in miles) Formulate the problem as a goal programming
model. [Note:The resulting constraints are not finear.}
40, Regression analysis. Ina laboratory experiment, suppose that ys the ith observed (inde-
pendent) yield associated with the dependent observational measurements
Bd a Le2yensgmta] = 1,2yoeooM It isdesived to determine a linear regression fhe
ttuse data points Let by, j = 0,1,...,7, be the regression coefficients. It is desired to de
termine all, such tat the sum ofthe absolete deviations between the observed and the
etimated yields is minimized. Formulate the problem as a goal programming model
14. Chebyshev Problem. An alternative goal forthe regression model in Problem 10 is 0
minimize over bythe maximum of the absolute deviations. Formulate the problem as 2
goal programming model.
GOAL PROGRAMMING ALGORITHMS
This section presents two algorithms for solving goal programming, Both methods are
based on representing the raultiple goals by a single objective function. In the weights
method, 2 single objective function is formed as the weighted sum of the functions repre
senting the goals of the problem. The preemptive method starts by prioritizing the goals in
order of importance. The model is then optimized, using one goal ata time such that the
optimum value of a higher-priority goal is never degraded by a lower-priority goal
“The proposed two methods are different because they do not generally produce
the same solution. Neither method, however, is superior to the other, because each
technique is designed to satisfy certain decision-making preferences,
The Weights Method
Suppose that the goal programming model has n goals and that the ith goal is given as
Minimize G,i = 1,2,....7
“The combined objective function used in the weights method is then defined as
Minimize z= wyG, + W2Gp +--+ Gn
‘The parameters w,i = 1,2,--.” are positive weights that reflect the decision
maker's preferences regarding the relative importance of each goal. For example,
to, = 1, forall signifies that all goals carry equal weights. The determination of the
specific values of these weights is subjective. Indeed, the apparently sophisticated analytic1as
sion
ple,
the
ytic
82 Goal Programming Algorithms 339
procedures developed in the literature (see, ¢., Cohon, 1978) are still rooted in sub-
jective assessments.
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 number
of people reached by cach type of advertisement and the cost and labor requirements
Data/min advertisement
Radio Tetevision
[Exposure (in millions of persons) 4 8
Cost (in thousands of dollars) 8 cy
Assigned employees 1 2
‘The contract prohibits TopAd from using more than 6 minutes of radio advestisement. Addi-
tionally, radio and television advertisements need to reach at least 45 million people, TopAAd has
a budget goal of $100,000 for the project. How many minutes of radio and television advertise-
ment should TopAd use?
Let x, and xy be the minutes allocated to radio and television advertisements. The goal pro-
gramming formulation for the problem is given as,
Minimize Gy = 5; (Satisfy exposure goat)
Minimize G, = s$ (Satisfy budget goal)
subject to
4, + By tay st
45 (Exposure goal)
8x + 24x +s] —s§ = 100 (Budget goal)
xt Qn = 10 (Personnel limit)
a = 6 (Radio timit)
Xp Xa, STs ST, 87, 53 = 0
‘TopAd’s management assumes that the exposure goal is twice as important as the budget
goal. The combined objective function thus becomes
Minimize z = 2G, + G; = 2s; + st
‘The optimum solution is z = 10, x, = 5 minutes, x» = 2.5 minutes, sj = 5 million persons. All
the remaining variables are zero.
‘The fact that the optimum value of z is not zero indicates that at least one of the goals is not
met. Specifically, s; = 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 s$ = 0.340
Chapter 8 Goal Programming
Goal programming yields only an efficient, rather than optimum, solution to the problem.
Forexample,the solution = 6.ané x) = 2 yields the samme exposure (4 x 6 + 8 X 2 = 40mil-
tion persons), but costs less (8 X 6 + 24 X 2 = $96,000). Is essence, whet goal programming
doesis to find a solution that simply satisfies the goals of the model with no regard to optimiiza-
tion, Such “deficiency” in finding an optimum solution may raise doubts about the viability of
goal programming as an optimizing technique (see Example 8.2-3 for further discussion}.
PROBLEM SET 8.24
#1. Consider Problem 1, Set 8.1a dealing with the Fairville tax situation. Solve the problem,
assuming that all five goals have the same weight. Does the solution satisfy all the goals?
2, In Problem 2, Set 8.1a, suppose that the goal of attracting young/middle-aged people is
twice as important as for either of the other two categories {teens and seniors). Find the
associated solution, and check if all the goals have been met,
In the Ozark University admission situation described in Problem 3, Set 8.12, suppose
‘hat the limit on the size of the incoming freshmen class must be met, but the remaining
requirements can be treated as flexible goals. Further, assume that the ACT score goal is
twice as important as any of the remaining goa!s
{a) Solve the problem, and specify whether oF not all the goals are satisfied.
(b) hin addition, the size of the incoming class can be treated as a flexible gos! that is
twice as important as the ACT goal, how would this change affect the solution?
"4, In the Circle K model of Problem 4, Set 8.1a,is it possible to satisfy all the nutritional
requirements?
5, In Problem 5, Set 81a, determine the soluti
duction of wheels and seats can be balanced.
In Problem 6, et 8.12, suppose that the market demand goal is twice as important as that
‘of balancing the two machines, and that no overtime is allowed. Solve the problem, and
determine if the goals are met
“7, In Problem 7, Set 8.1a, suppose that production sirives to meet the quota for the two
products, using overtime if necessary. Find a solution to the problem, and specify the
‘amount of overtime, if any, needed to meet the production quota.
& In the Vista City Hospital of Problem 8, Set 8.12, suppose that only the bed limits repre~
sent flexible goals and that all the goals have equal weights. Can all the goals be met?
9. ‘The Malco Company has compiled the following table from the fites af five of its em-
ployees to study the impact on income of three factors: age, education (expressed in
Tumber of college years completed), and experience (expressed in number of years ia
‘the business)
n,and specify whether or not the daily pro-
«
ee
30. 4 5 40,000
39 3 10 48,000
a 2 “ 38,000
8 ° 8 3600
3” 3 ° ‘1000
J822
8.2 Goal Programming Algorithms 341
Use the goal programming formulation in Problem 10, Set 8.14, to fit the data into
‘the linear equation y = by + byx, + Bux + bax
10. Solve Problem 9 using the Chebyshev method proposed in Problem11, Set 8.1.
The Preemptive Method
In the preemptive method, the decision maker must rank the goals of the problem in.
order of importance. Given an n-goal situation, the abjectives of the problem are
written as
Minimize G, = p; (Highest priority)
Minimize G, = p, (Lowest priority)
‘The variable p; is the component of the deviational variables, s; or sf, that represents
goal i For example, in the TopAd model (Example 8.2-1),p: = sj and p = 83-
‘The solution procedure considers one goal at a time, starting with the highest pri-
ority, Gy, and terminating with the lowest, G,. The process is carried out such that the so-
lution obtained from a lower-priority goal never degrades any higher-priority solutions.
‘The literature on goal programming 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 x; with nonzero re-
duced cost (z; — cj ¥ 0) from the optimal tableau of goal G;, before solving the prob-
Jem of goal Gy.1. The Tule recognizes that such nonbasic variables, if elevated above
zero level in the optimization of succeeding goals, can degrade (but never improve) the
quality of a higher-priority goal. The procedure requires modifying the simplex tableau
to include the objective functions of all the goals of the model.
The proposed column-dropping modification needlessly complicates goal pro-
Bramming. 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:
Gi = pr > Ga= pp > > Ga = Pn
Seti =1.
Step 1. Solve LP; that minimizes G;, and let p; = p} define the corresponding op’
mum value of the deviational variable p. If = n, stop; LP, solves the n-goal
program. Otherwise, add the constraint p; = p; to the constraints of the
Grproblem to ensure that the value of p will not be degraded in future prob-
fems. Seti = i + 1, and repeat step i
‘The successive addition of the special constraints p;
theoretically as the column-dropping rule. Nevertheless,
sult. More important, it is easier to understand.
Some may argue that the column-dropping rule offers computational advantages.
Essentially, the rule makes the problem smaller successively by removing variables,
whereas our procedure makes the problem larger by adding new constraints, However,
y] may not be as “elegant”
achieves the exact same re-342
Chapter 8 Goal Programming
considering the nature of the additional constraints (p: = af), we should be able to
modify the simplex algorithm to implement the additional constraint implicitly
through direct substitution of the variable pj. This substitution affects only the con-
straint in which p, appears and, in effect, reduces the number of variables as we move
from one goal to the next. Aiternatively, we can use the bounded simplex method of
Section 7.42 by repiacing p; = p! with p; = p;, in which case the additional constraints
are accounted for implicitly. In this regard, the column-dropping rule, theoretical ap-
peal aside, does not appear to offer a particular computational advantage. For the sake
Ef completeness, however, we will demonstrate in Example 82-3 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.
Step0. Gy > G
Gx Minimize sj (Satisfy exposure goal)
Gx: Minimize 53 (Satisfy budget goal)
Step 1. Solve LP,
Minimize G, = st
subject to
4x, +82 + 57 -5T 45 (Exposure goal)
100 (Budget goal)
8x, + 24x +-s
w
xy 2x 40 (Personnel mit)
W
n 6 (Radio limit)
di kasi Shs SE =O
‘The optimum solution (determined by TORA) is x, = 5 minutes, x2 = 2.5 minutes
sj = 5 million people, with the remaining variables equal to zero. The solution shows
that the exposure goal, Gis violated by 5 million persons
fn LP, we have p, = 57. Thus, the additional constraint we use with the Gr-
problem is s7 = 5 (or, equivalently, 5; = 5)
Step 2. We need to solve LP,, whose objective function is
Minimize Gy = 53
subject to the same set of constraint as in step 1 plus the additional constraint si ~ 5-
((We can replace the new constraint conveniently in TORA's MODIFY, option by as-
signing 5 to the lower and upper bounds of 57.)
“The optimization of LP, is not necessary, because the optimum solution to problem
G; already yields $$ = 0. Hence, the solution of LP; is automatically optimum for LPs a5
‘well. The solution s} = 0 shows that Ga is satisfied.»
qi
f
s
e
82 Goal Programming Algorithms 343
‘The additional constraint sj = 5 can also be accounted for by substituting out sj
in the first constraint. The result is that the right-hand side of the exposure goal con-
straint will be changed from 45 to 40, thus reducing LP) to
Minimize G2 = sf
subject to
4x + 8x — sf = 40 (Exposure goal)
Bx, + 2x, + sy — sf = 100 (Budget goal)
x,t 2% = 10(Personnel limit)
x 6 (Radio limit)
rn inshsnesd = 0
‘The new formulation is one variable less than the one in LPI, which is the general idea
advanced by the column-dropping rule.
Example 82-3. (Column-Dropping Rule)
In this example, we show that a better solution for the problem of Examples 82-1 and 82-2 can
be obtained if the preemptive method is used to optimize objectives rather than to satisfy goals
‘The example also serves to demonstrate the column-dropping rule for solving goal programs.
‘The goals of Example 8.2-1 can be restated as
Priority 1: Maximize exposure (Pi)
Priority 2: Minimize cost (P2)
Mathematically, the two objectives are
nas
Maximize P= 4x, + 8x (Exposure)
Minimize P, = 8x, + 24x, (Cost)
‘The specific goal limits for exposure and cost (=45 and 100) 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 Py = 4x; + 8x
Minimize P, = 8% + 24x,
subject to
2 + 2x = 10
x <6
xia = 0344 Chapter 8 Goal Programming
We first solve the problem using the procedure introduced in Example 82-2
Step. Solve LP,
Maximize Py = 4x + 8
subject to
x +2 S10
x <6
xpn20
‘The optimum solution (obtained by TORA) is x = 0, x2 = 5 with Pr ~ 40, which
shows that the most exposure we can get is 40 million persons.
Step2 Add the constraint 4x; + 8x; = 40 10 ensure that goal Gy is not degraded. Thus we
solve LP, as
Minimize Py = 8x, + 24x2
subject to
xy hm = 10
a =6
dx; + 8x) = 40 (additional constraint)
Heo
“The optimum solution of LP, is P; = $96,000, x, = 6 minutes, and x, = 2 minutes It yields
the same exposure (P; = 40 million people) but ata smaller cost than the one in Example 82-2,
‘where the main objective is to satisfy rather than optimize the goals.
“The same problem is solved now by using the colunur-dropping rule. The rule calls for carry-
ing the objective rows associated with all the goals inthe simplex tableau, 2s we will show Pelow.
LLY; (Exposure Maximization): ‘The LP; simplex tableau carries both objective rows, P, and Fs
“The optimality condition appties to the P.-objective row only. The P,-row plays a passive role in
LLP, but must be updated with the rest ofthe simplex tableawin preparation for the optimization
of LPs,
LP, is solved in two iterations as follows:
ee
Iteration Basic =x __Solution82 Goal Programming Algorithms 345
‘The column-dropping rule calls for eliminating any nonbasic variable x, with 2; — ¢, # 0
from the optimum tableau of LP, before LP. is optimized. The reason for doing so is that these
variables, if left unchecked, could become positive in lower-priority optimization problems,
which would degrade the quality of higher-priority solutions.
LP, (Cost Minimization): The columa-dropping rule eliminates y (with 2; ~ ¢ = 4).We can see
from the Prrow that if 5; is not eliminated, it will be the entering variable at the start of the
Priterations and will yield the optimum solution x, = 2 = 0, which will degrade the optimum ob-
jective value of the F,-problem from P; = 40to Py = 0. (Try it})
‘The f2-problem is of the minimization type. Following the elimination of s;, the variable x,
with z; — ¢ = 4 (> 0) can improve the value of F. The following table shows the LP» iterations
‘The Fi-row has been deleted because it no longer serves a purpose in the optimization of LP,
Keaton Bue =
7
4 oa
» EOL 0
sie 1
2 Pi
mo 6 “4
= Od 4
m1 0
‘The optimum solution (x, = 6, x
P, = 961s the same as obtained earlier.
2) with a total exposure of P, = 40 anda total cost of,
AMPL Moment
AMPL lends itself readily to applying the idea presented in Example 8.2-2, where sim-
ple constraints are added to ensure that higher-priority solutions are not degraded.
Figure 8.1 provides a generic AMPL code that allows the application of the preemptive
method interactively (file amaplEx8.1-L.txt).
‘The design of the model is standard except for the provisions that allow applying
the preemptive method interactively. Specifically, the model assumes that the first r
constraints are goal constraints and the remaining m — r — 1 are strict constraints. The
mode! has r distinct goal objective functions, which can be included in the same model
by using the following indexed AMPL statement (only an indexed name is allowed for
multiple objective functions):
minimize 2 in 1..r):ptsninus [i)+a*splus4)
The given definition of the objective function accounts for minimizing 2;
s} by setting (p = 1,q = 0) and (p = 0, q = 1), respectively.
Instead of adding a new constraint cach time we move from one priority level to the
next, We use a programming trick that allows modifying the upper bounds on the devia-
tional variables. The parameters um{il and up{i] represent the upper bounds on
‘sminus [i] (s/) and splus [il (sf), respectively. These parameters are modified to im-
pose implicit constraints of the type sminus{il<=um{i] and splus[i}<=upfil, re-
spectively. The values of um and up in priority goal i are determined from the solutions
of the problems of priority goals 1,2, and i ~ 1. The initial (default) value for un and up
is infinity.346 Chapter 8 Goal Programming
param n
param m;
param r:
param p:
param @:
param a(1--m2..n);
param b(..-m);
param um(1..m} default 190000;
param up(i.-m} default 100000;
var x(1.-m) >=
var sainus(t in 1, r}o«d,#0,<-up[il
minimize 2(i in 1.x): p*sminus(i}+a*splus (1)
subject to
cL) in Li-x):sum(j im 1. .n)a(i,j)*x(3] +sminus (i) -splus (4]=b(3)
c2{i im reteombs sum(S in 2..n) ali.3)*x(3)GQr>Ga>G
‘The implementation of AMPL model thus proceeds in the following manner: For Ga
set p= Land q = O because we are minimizing 22} =sminus 2]. The following com-
mands are used to carry out the calculations:
ampl: model amplix8.1-1. txt;
ampl: let pr=lylet @
anpi: objective (217
Smpi: solve; display 2(2), x, sminus, splus;82 Goal Programming Algorithms 347
‘These commands produce the following results:
2i21 = 0
x sminus splus
1 2.6236le-28 16 0
2 0 oo
3 8.2868e-28, 2 0
ao 2 0
‘The solution (x, = 0, x2 = 0,.x3 = 0, and x4 = 0) shows that goal G, is satisfied
because 212] = 0 (that is, sy = 0). However, the next-priority goal, Gy, is not satisfied
because sy = 16. Hence, we need to optimize goal G; without degrading the solution
of Gz. This requires changing the upper bounds on s3 to the value specified by the so-
lution of G,—namely, zero. Fat goal Gi, current p = 1 and q = 0 from G, remain un-
changed because we are minimizing sj. The following interactive AMPL commands
achieve this result:
ampl: Let un[2]:=0;
ampl: objective z{1]; solve; display 2[1],x, eminus, splus;
‘The ouput is
za) =0
x sminus splus =
1 0,0203536 0 0
2 010457183 0
3 o.ose18i8 a0
ao 2 0
‘The solution shows that all the remaining goals are satisfied. Hence, no further opti
mization is needed. The goal programming solution is x, = .0203636, xy = 0457143,
2, = .0581818, and x, = 0.
Remarks.
1. We can replace let um(2] :=0; with either fix sminus(2]:=0; or et smi-
nus {2} :=0; with equal end result.
2, The interactive session can be totally automated using a commands file that auto-
matically selects the current goal to be optimized and imposes the proper restric-
tions before solving the next priority goal. The use af this file (which we name
amplCmdstxt) requires making some modifications in the original model as
shown in file amplEx8.1-1A.txt. To be completely versatile, the data of the model
are stored in a separate file named amp!Data.txt. In this case, the execution of the
mode] requires issuing three command lines:
ampl: model. anplEx8.1-1A. txt,
anpl: data ampiData. txt;
ampl: commande amplCnds.txt;
See Section A.7 for more information about the use of commands.348 Chapter 8 Goal Programming
PROBLEM SET 8.287
1. In Example 82-2, suppose that the budget goal is increased to $110,000, The exposure
goal remains unchanged at 45 million persons. Show how the preemptive method will
reach a solution.
2. Solve Problem 1, Set 8.La, using the following priority ordering for the goals:
G, > G, > G> Ge > Gs
+3, Consider Problem 2, et8.1a, which deals with the presentation of band concerts and art
hows at the NW Mall. Suppose that the goals set for teens, the young/middle-aged
troup, and seniors are referred to as G;, Gz, and Gp, respectively. Solve the problem for
‘each of the following priority orders:
@) G>Ga>G
@) G > >
Show that the satisfaction of the goals (or lack of it) can be a function of the priority
order.
4. Solve the Ozark University model (Problem 3, Set 8.1a) using the preemptive method,
‘assuming that the goals are prioritized in the same order given in the problem.
REFERENCES
Chissman, JT: Fey, G. Reeves, H. Lewis, and R. Weinstein, “A Multiobjective Linear Prograry-
ming Methodology for Public Sector Tax Planning,” Interfaces, Vol 19, No-5, pp. 13-22, 1989.
Cohon,T.L., Muldobjective Programming and Planning, Academic Press, New York, 1978
Tenizi 1. P, and TM. Cavalier, Linear Programming, Prentice Hall, Upper Saddle River, N¥
1994.
Steuer, R.E., Multiple Criteria Optimization: Theory, Computations, and Application, Wiley, New
York, 1986.
You may find it computationally convenient to use interactive AMPL to solve the problems ofthis set