Are you sure?
This action might not be possible to undo. Are you sure you want to continue?
“GOAL PROGRAMMING”
Assoc. Prof. Dr. Y. İlker Topcu
Acknowledgements: I would like to acknowledge Prof. W.L. Winston's "Operations Research: Applications and Algorithms“ (slides submitted by Brooks/Cole, a division of Thomson Learning, Inc.) and Prof. J.E. Beasley's lecture notes which greatly influence these notes... I retain responsibility for all errors and would love to hear from readers...
www.isl.itu.edu.tr/ya
Assoc. Prof. Dr. Y. İlker Topcu (www.ilkertopcu.net)
CONTENTS GOAL PROGRAMMING 1. 2. 3. MULTIPLE OBJECTIVES........................................................................................ 2 DEVIATIONAL VARIABLES ................................................................................... 4 PREEMPTIVE GOAL PROGRAMMING .................................................................. 5 3.1 3.2 Graphical Solution .........................................................................................................6 Goal Programming Simplex .........................................................................................9
Assoc. Prof. Dr. Y. İlker Topcu (www.ilkertopcu.net)
1
GOAL PROGRAMMING 1. MULTIPLE OBJECTIVES In some situations, a decision maker may face multiple objectives, and there may be no point in an LP’s feasible region satisfying all objectives. In such a case, how can the decision maker choose a satisfactory decision? Goal Programming, a variation of LP considering more than one objective (goals) in the objective function, is one technique that can be used in such situations. Example 1. Priceler The Leon Burnit Adveritsing Agency is trying to determine a TV advertising schedule for Priceler Auto Company. Priceler has three goals: • • • Its ads should be seen by at least 40 million highincome men (HIM). Its ads should be seen by at least 60 million lowincome people (LIP). Its ads should be seen by at least 35 million highincome women (HIW).
Leon Burnit can purchase two types of ads: those shown during football games and those shown during soap operas. At most, $600,000 can be spent on ads. The advertising costs and potential audiences of a oneminute ad of each type are shown. Millions of Viewers Ad Football Soap Opera HIM 7 3 LIP 10 5 HIW 5 4 Cost (S) 100,000 60,000
Leon Burnit must determine how many football ads and soap opera ads to purchase for Priceler.
Assoc. Prof. Dr. Y. İlker Topcu (www.ilkertopcu.net)
2
Answer Let x1 = # of minutes of ads shown during football games x2 = # of minutes of ads shown during soap operas Then any feasible solution to the following LP would meet Priceler’s goals: min (or max) z=0x1 + 0x2 s.t. 7x1 + 3x2 ≥ 40 10x1 + 5x2 ≥ 60 5x1 + 4x2 ≥ 35 100x1 + 60x2 ≤ 600 x1, x2 ≥ 0 (HIM constraint) (LIP constraint) (HIW constraint) (Budget constraint)
No point that satisfies the budget constraint meets all three of Priceler’s goals infeasible
LP is
Since it is impossible to meet all of Priceler’s goals, Burnit might ask Priceler to identify, for each goal, a cost that is incurred for failing to meet the goal. Penalties Each million exposures by which Priceler falls short of • • • the HIM goal costs Priceler a $200,000 penalty the LIP goal costs Priceler a $100,000 penalty the HIW goal costs Priceler a $50,000 penalty
because of lost sales
Assoc. Prof. Dr. Y. İlker Topcu (www.ilkertopcu.net)
3
Revised Answer Burnit can then formulate an LP that minimizes the cost incurred in deviating from Priceler’s three goals. The trick is to transform each inequality constraint that represents one of Priceler’s goals into an equality constraint. Because it is not known whether a given solution will undersatisfy or oversatisfy a given goal, we need to define the following variables. si+ = amount by which the ith goal level is exceeded. si = amount by which the ith goal level is underachieved The si+ and si are referred to as deviational variables. At least one or both deviational variables in a goal constraint must equal zero. Burnit can minimize the penalty from Priceler’s lost sales by solving the following LP. min z = 200s1 + 100s2 + 50s3s.t. 7x1 + 3x2 + s1  s1+ = 40 10x1 + 5x2 + s2  s2+ = 60 5x1 + 4x2 + s3  s3+ = 35 100x1 + 60x2 Optimal Sol’n and Report The optimal solution to this LP is z=250, x1=6, x2=0, s1+=2, s2+=0, s3+=0, s1=0, s2=0, s3=5 6 minutes of ads should be shown during football games. This meets goal 1 and goal 2 but fails to meet the least important goal (goal 3). 30 mio HIW sees Priceler’s ads. ≤ 600 All variables nonnegative (HIM constraint) (LIP constraint) (HIW constraint) (Budget constraint)
2. DEVIATIONAL VARIABLES If failure to meet goal i occurs when the attained value of an attribute is numerically smaller than the desired value of goal i, then a term involving si will appear in the objective function.
Assoc. Prof. Dr. Y. İlker Topcu (www.ilkertopcu.net)
4
If failure to meet goal i occurs when the attained value of an attribute is numerically larger than the desired value of goal i, then a term involving si+ will appear in the objective function. Also, if we want to meet a goal exactly and a penalty is assessed for going both over and under a goal, then terms involving si, si+ will appear in the objective function. Example 2. Modified Priceler Suppose Priceler regards the budget restriction as a goal. Priceler identifies a $1 penalty for each dollar by which this goal is unmet. Answer Then the appropriate goal programming formulation would be: min z = 200s1 + 100s2 + 50s3 + 50s4+ s.t. 7x1 + 3x2 + s1  s1+ = 40 10x1 + 5x2 + s2  s2+ = 60 5x1 + 4x2 + s3  s3+ = 35 100x1 + 60x2 + s4  s4+ = 600 All variables nonnegative Optimal Sol’n & Report The optimal solution to this LP is z=100/3, x1=13/3, x2=10/3, s1+=1/3, s2+=0, s3+=0, s4+=100/3, s1=0, s2=0, s3=0, s4=0 13/3 minutes of ads should be shown during football games and 10/3 minutes of ads should be shown during soap operas This meets all three advertising goals by going $100/3 thousand over budget. (HIM constraint) (LIP constraint) (HIW constraint) (Budget constraint)
3. PREEMPTIVE GOAL PROGRAMMING In many situations, a decision maker may not be able to determine precisely the relative importance of the goals. When this is the case, preemptive goal programming (PGP) may prove to be a useful tool.
Assoc. Prof. Dr. Y. İlker Topcu (www.ilkertopcu.net)
5
To apply PGP, the decision maker must rank her or his goals from the most important (goal 1) to least important (goal n). The objective function coefficient Pi represents the weight of goal i: P1 >>> P2 >>> ... >>> Pn This definition ensures that the decision maker first tries to satisfy the most important goal. Then among all points that satisfy goal 1, the decision maker tries to come as close as possible to satisfying goal 2, and so forth. We continue in this fashion until the only way we can come closer to satisfying a goal is to increase the deviation from a higher priority goal.
3.1 Graphical Solution When a PGP problem involves only two decision variables, the optimal solution can be found graphically. Example 2. Beaver Creek Pottery (Taylor 9, p. 358) maximize z=40x1 + 50x2 subject to x1 + 2x2 ≤ 40 hours of labor 4x1 + 3x2 ≤ 120 pounds of clay x 1 , x2 ≥ 0 where x1 = number of bowls produced x2 = number of mugs produced Adding objectives (goals) in order of importance, the company: • • • • does not want to use fewer than 40 hours of labor per day; would like to achieve a satisfactory profit level of $1,600 per day; prefers not to keep more than 120 pounds of clay on hand each day; would like to minimize the amount of overtime
Assoc. Prof. Dr. Y. İlker Topcu (www.ilkertopcu.net)
6
Answer Labor goal constraint (1, not less than 40 hours labor): minimize P1d1Add profit goal constraint (2, achieve profit of $1,600): minimize P1d1, P2d2Add material goal constraint (3, avoid keeping more than 120 pounds of clay on hand): minimize P1d1, P2d2, P3d3+ Labor goal constraint (4, minimum overtime): minimize P1d1, P2d2, P3d3+, P4d1+ Complete goal programming model: minimize subject to x1 + 2x2 + d1  d1+ = 40 40x1 + 50x2 + d2  d2+ = 1600 4x1 + 3x2 + d3  d3+ = 120 x1, x2, d1, d1+, d2, d2+, d3, d3+ ≥ 0 Goal constraints: P1d1, P2d2, P3d3+, P4d1+
Assoc. Prof. Dr. Y. İlker Topcu (www.ilkertopcu.net)
7
The firstpriority goal: Minimize d1
The secondpriority goal: Minimize d2
The thirdpriority goal: Minimize d3+
Assoc. Prof. Dr. Y. İlker Topcu (www.ilkertopcu.net)
8
The fourthpriority goal: Minimize d1+
Optimal Sol’n & Report x1 = 15, x2 = 20, d1+ = 15 15 bowls, 20 mugs should be produced. This meets the first three goals by having 15 hours overtime labor.
3.2 Goal Programming Simplex PGP problems can be solved by an extension of the simplex known as the goal programming simplex. The differences between the goal programming simplex and the ordinary simplex are: • • The ordinary simplex has a single row 0, whereas the goal programming simplex requires n row 0’s (one for each goal). In the goal programming simplex, the entering variable is determined as follows (PGP is a min problem): o Find the highest priority goal (goal i’) that has not been met o Find the variable with the most positive coefficient in row 0 (goal i’) and enter this variable (subject to the following restriction) into the basis. o If, however, a variable has a negative coefficient in row 0 (goal i’) associated with a goal having a higher priority than i’, then the variable cannot enter the basis. In this case, try to find another variable with a positive coefficient in row 0 (goal i’). If no variable can enter the basis move on to row 0 (goal i’+1).
Assoc. Prof. Dr. Y. İlker Topcu (www.ilkertopcu.net)
9
• •
When a pivot is performed, row 0 for each goal must be updated. A tableau will yield the optimal solution if all goals are satisfied, or if each variable that can enter the basis and reduce the value of zi’ for an unsatisfied goal i’ will increase the deviation from some goal i having a higher priority than goal i’.
Example 4. Preemptive Priceler min z = P1s1 + P2s2 + P3s3s.t. 7x1 + 3x2 + s1  s1+ = 40 10x1 + 5x2 + s2 100x1 + 60x2 Answer We must separate the objective function into n components min z1 = P1s1min z2 = P2s2min z3 = P3s3We have three Row 0’s. Row 0 (goal 1): z1  P1s1 = 0 Row 0 (goal 2): z2  P2s2 = 0 Row 0 (goal 3): z3  P3s3 = 0 We find that BV = {s1, s2, s3, s4} (s4 is the slack variable) is a starting bfs that could be used to solve Priceler problem z1 z2 z3 7x1 + 3x2 + s110x1 + 5x2 5x1 + 4x2 100x1 + 60x2 + s2+ s3 P1s1 P2s2 P3s3

(HIM constraint) (LIP constraint) (HIW constraint) (Budget constraint)
s2+
= 60 ≤ 600
5x1 + 4x2 + s3  s3+ = 35 All variables nonnegative
=0 =0 =0  s1 +  s2 +  s3 + = 40 = 60 = 35 + s4 = 600
Assoc. Prof. Dr. Y. İlker Topcu (www.ilkertopcu.net)
10
We must eliminate all variables in the starting basis from each row 0. Add “P1×Row 1” to “Row 0 (goal 1)” Add “P2×Row 2” to “Row 0 (goal 2)” Add “P3×Row 3” to “Row 0 (goal 3)”
x1 Row 0 (HIM) Row 0 (LIP) Row 0 (HIW) HIM LIP HIW Budget 7P 1 10P 2 5P 3 7 10 5 100 x2 3P 1 5P 2 4P 3 3 5 4 60 s 1+ P 1 0 0 1 0 0 0 s 2+ 0 P 2 0 0 1 0 0 s 3+ 0 0 P 3 0 0 1 0 s 10 0 0 1 0 0 0 s 20 0 0 0 1 0 0 s 30 0 0 0 0 1 0 s4 0 0 0 0 0 0 1 RHS 40P 1 60P 2 35P 3 40 60 35 600 Ratio
5.7143 6 7 6
x1 Row 0 (HIM) Row 0 (LIP) Row 0 (HIW) HIM LIP HIW Budget 0 0 0 1 0 0 0 x1 Row 0 (HIM) Row 0 (LIP) Row 0 (HIW) HIM LIP HIW Budget 0 0 0 1 0 0 0
x2
s 1+
s 2+ 0 P 2 0 0 1 0 0 s 2+ 0 P 2 0 0 1 0 0
s 3+ 0 0 P 3 0 0 1 0 s 3+ 0 0 P 3 0 0 1 0
s 1P 1 10P 2/7 5P 3/7 1/7 10/7 5/7 100/7 s 1P 1 0 0 0 0 0 1
s 20 0 0 0 1 0 0 s 20 0 0 0 1 0 0
s 30 0 0 0 0 1 0 s 30 0 0 0 0 1 0
s4 0 0 0 0 0 0 1 s4 0 P 2/10 P 3/20 1/100 1/10 1/20 7/100
RHS 0 20P 2/7 45P 3/7 40/7 20/7 45/7 200/7 RHS 0 0 5P 3 6 0 5 2
Ratio
0 0 5P 2/7 10P 2/7 13P 3/7 5P 3/7 3/7 1/7 5/7 10/7 13/7 5/7 120/7 100/7 x2 0 P 2 P3 3/5 1 1 6/5 s 1+ 0 0 0 0 0 0 1
2 9 2
Optimal Sol’n & Report The optimal solution to this LP is z3=5P3, x1=6, x2=0, s1+=2, s2+=0, s3+=0, s1=0, s2=0, s3=5 6 minutes of ads should be shown during football games. This meets goal 1 and goal 2 but fails to meet the least important goal (goal 3). 30 mio HIW sees Priceler’s ads.
Assoc. Prof. Dr. Y. İlker Topcu (www.ilkertopcu.net)
11
This action might not be possible to undo. Are you sure you want to continue?
Use one of your book credits to continue reading from where you left off, or restart the preview.