Notes

advertisement
Linear Goal Programming
Linear Goal Programming-1
What is Goal Programming?
•
Single objective in formulating LPs so far
–
–
•
Several simultaneous objectives in practice
–
–
–
–
•
Max profit
Min cost
Max profit
Increase reliability
Improve employee morale
Improve company’s image
Goal programming: a way of solving multi-objective problems
Linear Goal Programming-2
Categorization of Goal Programming
• Nonpreemptive goal programming
– Goals with roughly same importance
– Assign weights to goals
– Construct a single objective function to minimize the weighted
sum of deviations from goals
• Preemptive goal programming
– Hierarchy of priority levels for goals
• 1st priority is to satisfy goal 1
• 2nd priority is to satisfy goal 2, etc.
– Solve sequentially
Linear Goal Programming-3
Three Possible Types of Goals
• A lower, one-sided goal
– a1 x1 + a2 x2 + … + an xn ≥ b
– example: profit exceeds some threshold
• An upper, one-sided goal
– a1 x1 + a2 x2 + … + an xn ≤ b
– example: cost less than some value
• A two-sided goal
– a1 x1 + a2 x2 + … + an xn = b
– example: production equal to forecasted demand
Linear Goal Programming-4
Dewright Company Example –
Nonpreemptive Goal Programming
•
The Dewright Company is considering three new products to replace
current models that are being discontinued, so their OR department has
been assigned the task of determining which mix of these products should
be produced. Management wants primary consideration given to three
factors: long-run profit, stability in the workforce, and the level of capital
investment that would be required now for new equipment. In particular,
management has established the goals of (1) achieving a long-run profit of
at least $125 million from these products, (2) maintaining the current
employment level of 4000 employees, and (3) holding the capital investment
to less than $55 million. However, management realizes that it probably will
not be possible to attain all these goals simultaneously, so it has discussed
priorities with the OR department. This discussion has led to setting penalty
weights of 5 for missing the profit goal (per $1 million under), 2 for going
over the employment goal (per 100 employees), 4 for going under this same
goal, and 3 for exceeding the capital investment goal (per $1 million over).
Each new product’s contribution to profit, employment level, and capital
investment level is proportional to the rate of production. These
contributions per unit rate of production are shown in the following table,
along with the goals and penalty weights.
Linear Goal Programming-5
Dewright Company Example (Cont’d)
Unit Contribution
Product
Factor
1
2
3
Goal (Units)
Penalty
Weight
Long-run profit
12
9
15
≥ 125 (millions of dollars)
5
Employment
level
5
3
4
= 40 (hundreds of employees)
2(+), 4(-)
Capital
investment
5
7
8
≤ 55 (millions of dollars)
3
Linear Goal Programming-6
Dewright Company Example (Cont’d)
•
Decision variables
x1: production rate of product 1
x2: production rate of product 2
x3: production rate of product 3
•
Three goals
Profit goal: 12 x1 + 9 x2 + 15 x3 ≥ 125 (lower one-sided goal)
Employment goal: 5 x1 + 3 x2 + 4 x3 = 40 (two-sided goal)
Investment goal: 5 x1 + 7 x2 + 8 x3 ≤ 55 (upper one-sided goal)
•
Objective function:
Min Z = 5(12 x1 + 9 x2 + 15 x3 – 125)+ 2(5 x1 + 3 x2 + 4 x3 – 40)+
+ 4(5 x1 + 3 x2 + 4 x3 – 40)+ 3(5 x1 + 7 x2 + 8 x3 – 55)+
where
x if x ≥ 0
+
x =
x- =
0 if x < 0
0 if x > 0
- x = |x| if x ≤ 0
Linear Goal Programming-7
Dewright Company Example (Cont’d)
• To put into a proper LP form
Let
and
y1 = 12 x1 + 9 x2 + 15 x3 – 125
y2 = 5 x1 + 3 x2 + 4 x3 – 40
y3 = 5 x1 + 7 x2 + 8 x3 – 55
y1 = y1+ - y1- and y1+ ≥ 0, y1- ≥ 0
y2 = y2+ - y2- and y2+ ≥ 0, y2- ≥ 0
y3 = y3+ - y3- and y3+ ≥ 0, y3- ≥ 0
Linear Goal Programming-8
Dewright Company Example (Cont’d)
• Final LP for nonpreemptive goal programming:
Min Z =
5 y1- + 2 y2+ + 4 y2- + 3 y3+
subject to
12 x1 + 9 x2 + 15 x3 – (y1+ - y1- ) = 125
5 x1 + 3 x2 + 4 x3 – (y2+ - y2- ) = 40
5 x1 + 7 x2 + 8 x3 – (y3+ - y3- ) = 55
xi, yi+, yi- ≥ 0 i=1,2,3
add any other functional constraints too
Linear Goal Programming-9
Dewright Company Example (Cont’d)
• Optimal solution:
x1 = 25/3
x2 = 0
x3 = 5/3
y1+ = y1- = 0
→ y1 = 0
→ 1st goal is satisfied
y2+ = 25/3, y2- = 0 → y2 = 25/3 → 2nd goal exceeds
employment level by
25/3 hundred
employees
y3+ = y3- = 0
→ y3 = 0 → 3rd goal is satisfied
Linear Goal Programming-10
Modified Dewright Company Example Preemptive Goal Programming
Priority Level
Factor
Goal
Penalty
Weight
1st Priority
Employment
level
≤ 40
2M
Capital
investment
≤ 55
3M
Long-run profit
≥ 125
5
Employment
level
≥ 40
4
2nd Priority
Linear Goal Programming-11
Modified Dewright Company Example Preemptive Goal Programming (Cont’d)
• 1st LP:
Min Z = 2M y2+ + 3M y3+
subject to
5 x1 + 3 x2 + 4 x3 – (y2+ - y2- ) = 40
5 x1 + 7 x2 + 8 x3 – (y3+ - y3- ) = 55
xi ≥ 0
i=1,2,3,
yi+, yi- ≥ 0
i=2,3
There are multiple optimal solutions with y2+ = 0 and y3+ = 0.
To get 2nd LP, drop y2+, y3+ forcing those goals to remain satisfied,
also add 2nd priority constraints
Linear Goal Programming-12
Modified Dewright Company Example Preemptive Goal Programming (Cont’d)
• 2nd LP:
Min Z = 5 y1- + 4 y2subject to
12 x1 + 9 x2 + 15 x3 – (y1+ - y1- )
= 125
5 x1 + 3 x2 + 4 x3
+ y2= 40
5 x1 + 7 x2 + 8 x3
+ y3- = 55
xi ≥ 0
i=1,2,3,
y1+, y1-, y2-, y3- ≥ 0
There is a unique solution: x1 = 5, x2 = 0, x3 = 15/4, y1+ = 0, y1- =
35/4, y2- = 0 and y3- = 0.
Linear Goal Programming-13
Dewright Company Example: Compare the
two solutions
• Solution by nonpreemptive goal programming:
(x1, x2, x3 ) = (25/3, 0, 5/3)
12 x1 + 9 x2 + 15 x3 = 125
5 x1 + 3 x2 + 4 x3 = 48.33
5 x1 + 7 x2 + 8 x3 = 55
profit
employment
capital investment
• Solution by preemptive goal programming:
(x1, x2, x3 ) = (5, 0, 15/4)
12 x1 + 9 x2 + 15 x3 = 116.25profit
5 x1 + 3 x2 + 4 x3 = 40
5 x1 + 7 x2 + 8 x3 = 55
employment
capital investment
Linear Goal Programming-14
Camyo Manufacturing Example
•
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:
Part
Lathe
Drill Press
1
5
3
2
6
2
3
4
6
4
7
4
It is desired to balance the use of the two machines by requiring the
difference between their total operation times not to exceed 30 minutes.
The market demand limits the number of units produced of each part to at
least 10 units. Additionally, the number of units of part 1 may not exceed
that of part 2.
Linear Goal Programming-15
Camyo Manufacturing Example (Cont’d)
• Decision variables
xi = number of parts produced per day of type i, i=1, 2, 3, 4
• Operation time goal:
– Difference between the time on machine 1 (lathe) and time on
machine 2 (drill press) is not to exceed 30 minutes:
|time1 – time2| ≤ 30
-30 ≤ time1 – time2 ≤ 30
time1 = 5 x1 + 6 x2 + 4 x3 + 7 x4 lathe
time2 = 3 x1 + 2 x2 + 6 x3 + 4 x4 drill press
-30 ≤ (5 x1 + 6 x2 + 4 x3 + 7 x4) – (3 x1 + 2 x2 + 6 x3 + 4 x4) ≤ 30
-30 ≤ 2 x1 + 4 x2 - 2 x3 + 3 x4 ≤ 30
Linear Goal Programming-16
Camyo Manufacturing Example (Cont’d)
•
Final LP for nonpreemptive goal programming:
Min Z = y1+ + y2subject to
5 x1 + 6 x2 + 4 x3 + 7 x4
≤ 600
3 x1 + 2 x2 + 6 x3 + 4 x4
≤ 600
x1
≥ 10
x2
≥ 10
x3
≥ 10
x4
≥ 10
x1 - x2
≤0
2 x1 + 4 x2 - 2 x3 + 3 x4 – (y1+ - y1-)
= 30
2 x1 + 4 x2 - 2 x3 + 3 x4
– (y2+ - y2-) = -30
xi ≥ 0, i=1, 2, 3, 4
yi+ ≥ 0, yi- ≥ 0, i=1, 2
lathe, 600 min in a day
drill press, 600 min a day
demand must
exceed 10 units
time1 - time2 ≤ 30
time1 - time2 ≥ -30
Linear Goal Programming-17
Download