Ch14

advertisement
Chapter 14: Goal Programming
Goal programming is used to solve linear
programs with multiple objectives, with each
objective viewed as a "goal".
In goal programming, di+ and di- , deviation
variables, are the amounts a targeted goal i is
overachieved or underachieved, respectively.
The goals themselves are added to the constraint
set with di+ and di- acting as the surplus and slack
variables.
Slide 1
Goal Programming
One approach to goal programming is to satisfy goals
in a priority sequence. Second-priority goals are
pursued without reducing the first-priority goals, etc.
For each priority level, the objective function is to
minimize the (weighted) sum of the goal deviations.
Previous "optimal" achievements of goals are added to
the constraint set so that they are not degraded while
trying to achieve lesser priority goals.
Slide 2
Goal Programming Formulation
Step 1: Decide the priority level of each goal.
Step 2: Decide the weight on each goal.
If a priority level has more than one goal, for
each goal i decide the weight, wi , to be placed
on the deviation(s), di+ and/or di-, from the goal.
Step 3: Set up the initial linear program.
Min w1d1+ + w2d2s.t. Functional Constraints,
and Goal Constraints
Step 4: Solve the current linear program.
If there is a lower priority level, go to step 5.
Otherwise, a final solution has been reached.
Slide 3
Goal Programming Formulation
Step 5: Set up the new linear program.
Consider the next-lower priority level goals and
formulate a new objective function based on these
goals. Add a constraint requiring the achievement of
the next-higher priority level goals to be maintained.
The new linear program might be:
Min w3d3+ + w4d4s.t. Functional Constraints,
Goal Constraints, and
w1d1+ + w2d2- = k
Go to step 4. (Repeat steps 4 and 5 until all priority
levels have been examined.)
Slide 4
GP Example: Conceptual Products
Conceptual Products produces CP400 and CP500
computers that use memory modules, external hard
drives, and cases. The CP400 model uses two memory
modules and no external hard drive, whereas the
CP500 uses one memory module and one external
hard drive. Both models use one case.
Suppliers can provide Conceptual Products with
1000 memory modules, 500 external hard drives, and
600 cases on a weekly basis. It takes one hour to
manufacture a CP400 and its profit is $200 and it takes
one and one-half hours to manufacture a CP500 and
its profit is $500.
Slide 5
GP Example: Conceptual Products
The company has four goals:
Priority 1: Meet a state contract of 200 CP400
machines weekly. (Goal 1)
Priority 2: Make at least 500 total computers
weekly. (Goal 2)
Priority 3: Make at least $250,000 weekly. (Goal 3)
Priority 4: Use no more than 400 man-hours per
week. (Goal 4)
Slide 6
GP Example: Formulation
Variables
x1 = number of CP400 computers produced weekly
x2 = number of CP500 computers produced weekly
di- = amount the right hand side of goal i is deficient
di+ = amount the right hand side of goal i is exceeded
Functional Constraints
Availability of memory modules:
2x1 + x2 < 1000
Availability of external hard drives:
x2 < 500
Availability of cases:
x1 + x2 < 600
Slide 7
GP Example: Formulation
Goals
(1) 200 CP400 computers weekly:
x1 + d1- - d1+ = 200
(2) 500 total computers weekly:
x1 + x2 + d2- - d2+ = 500
(3) $250(in thousands) profit:
.2x1 + .5x2 + d3- - d3+ = 250
(4) 400 total man-hours weekly:
x1 + 1.5x2 + d4- - d4+ = 400
Non-negativity:
x1, x2, di-, di+ > 0 for all i
Slide 8
GP Example: Formulation
Objective Functions
Priority 1: Minimize the amount the state contract
is not met: Min d1Priority 2: Minimize the number under 500
computers produced weekly: Min d2Priority 3: Minimize the amount under $250,000
earned weekly: Min d3Priority 4: Minimize the man-hours over 400 used
weekly: Min d4+
Slide 9
GP Example: Formulation
Formulation Summary
Min
s.t.
P1(d1-) + P2(d2-) + P3(d3-) + P4(d4+)
2x1
+x2
+x2
+x2
< 1000
< 500
x1
< 600
x1
+d1- -d1+
= 200
x1 +x2
+d2- -d2+
= 500
.2x1+ .5x2
+d3- -d3+
= 250
x1+1.5x2
+d4- -d4+ = 400
x1, x2, d1-, d1+, d2-, d2+, d3-, d3+, d4-, d4+ > 0
Slide 10
GP Example: Graphical Solution
Iteration 1
To solve graphically, first graph the functional
constraints. Then graph the first goal: x1 = 200. Note
on the next slide that there is a set of points that
exceed x1 = 200 (where d1- = 0).
Slide 11
GP Example: Graphical Solution
Functional Constraints and Goal 1 Graphed
x2
1000
2x1 + x2 < 1000
800
Goal 1: x1 > 200
600
x1 + x2 < 600
x2 < 500
400
Points
Satisfying
Goal 1
200
200
400
600
800
1000
1200
x1
Slide 12
GP Example: Graphical Solution
Iteration 2
Now add Goal 1 as x1 > 200 and graph Goal 2:
x1 + x2 = 500. Note on the next slide that there is still a
set of points satisfying the first goal that also satisfies
this second goal (where d2- = 0).
Slide 13
GP Example: Graphical Solution
Goal 1 (Constraint) and Goal 2 Graphed
x2
1000
2x1 + x2 < 1000
800
Goal 1: x1 > 200
600
x1 + x2 < 600
400
x2 < 500
Points Satisfying
Both Goals 1 and 2
200
Goal 2: x1 + x2 > 500
200
400
600
800
1000
1200
x1
Slide 14
GP Example: Graphical Solution
Iteration 3
Now add Goal 2 as x1 + x2 > 500 and Goal 3:
.2x1 + .5x2 = 250. Note on the next slide that no points
satisfy the previous functional constraints and goals
and satisfy this constraint.
Thus, to Min d3-, this minimum value is achieved
when we Max .2x1 + .5x2. Note that this occurs at x1 =
200 and x2 = 400, so that .2x1 + .5x2 = 240 or d3- = 10.
Slide 15
GP Example: Graphical Solution
Goal 2 (Constraint) and Goal 3 Graphed
x2
2x1 + x2 < 1000
1000
Goal 1: x1 > 200
800
x1 + x2 < 600
600
x2 < 500
(200,400)
Points Satisfying
Both Goals 1 and 2
400
Goal 2: x1 + x2 > 500
200
Goal 3: .2x1 + .5x2 = 250
200
400
600
800
1000
1200
x1
Slide 16
Goal Programming: More Complex Problems
Now we will formulate and solve a GP problem that
involves multiple goals within the same priority level.
No tradeoffs occur in the achievement of goals with
different priorities. However, tradeoffs can occur in the
achievement of goals with the same priority and
different weights.
A GP problem with p preemptive goal priorities can be
solved as a series of p linear programming problems.
Solving a GP problem as a series of LPs, the objective
functions (always to be minimized) will include only
relevant deviation variables and not decision variables.
Slide 17
GP Example 2: Conceptual Products
Conceptual Products is a computer company that
produces the CP400, CP500, and CP600 computers.
Many of the components used in the three computer
models are produced in abundant supply by the
company. However, the memory modules, external
hard drives, and cases are bought from suppliers.
The CP400 model uses two memory modules and
no external hard drive, the CP500 uses one memory
module and one external hard drive, and the CP600
uses two memory modules and one external hard
drive . All three models use the same case.
Slide 18
GP Example 2: Conceptual Products
Suppliers can provide Conceptual Products with
1000 memory modules, 500 external hard drives, and
600 cases on a weekly basis. It takes one hour to
manufacture a CP400 and its profit is $200; it takes
one and one-half hours to manufacture a CP500 and
its profit is $500; and it takes two hours to manufacture
a CP600 and its profit is $900.
Slide 19
GP Example 2: Conceptual Products
The company has four goals:
Priority 1: Meet a state contract of 200 CP400
machines weekly. (Goal 1)
Priority 2: Make at least 500 total computers
weekly. (Goal 2)
Priority 3: Make at least $250,000 profit
weekly. (Goal 3)
Priority 3: Use no more than 400 man-hours
per week. (Goal 4)
Each $1000 underachieved from its profit goal is
five times as important as an extra man-hour.
Slide 20
GP Example 2: Formulation
Variables
x1 = number of CP400 computers produced weekly
x2 = number of CP500 computers produced weekly
x3 = number of CP600 computers produced weekly
di- = amount the right hand side of goal i is deficient
di+ = amount the right hand side of goal i is exceeded
Functional Constraints
Availability of memory modules:
2x1 + x2 + x3 < 1000
Availability of external hard drives:
x2 + x3 < 500
Availability of cases:
x1 + x2 + x3 < 600
Slide 21
GP Example 2: Formulation
Goals
(1) 200 CP400 computers weekly:
x1 + d1- - d1+ = 200
(2) 500 total computers weekly:
x1 + x2 + x3 + d2- - d2+ = 500
(3) $250(in thousands) profit:
.2x1 + .5x2 + .9x3 + d3- - d3+ = 250
(4) 400 total man-hours weekly:
x1 + 1.5x2 + 2x3 + d4- - d4+ = 400
Non-negativity:
x1, x2, x3, di-, di+ > 0 for all i
Slide 22
GP Example 2: Conceptual Products
Objective Functions
Priority 1: Minimize the number of CP400 under
200 units: Min d1Priority 2: Minimize the number under 500
computers produced weekly: Min d2Priority 3: Minimize the amount under $250,000
earned weekly: Min 5d3Priority 3: Minimize the man-hours over 400 used
weekly: Min d4+
Slide 23
GP Example 2: Conceptual Products
Priority 1 Formulation
Min d1-
s.t.
2x1
+x2 +x3
+x2 +x3
+x2 +x3
< 1000
< 500
x1
< 600
x1
+d1- -d1+
= 200
x1 +x2 +x3
+d2- -d2+
= 500
.2x1+ .5x2 +.9x3
+d3- -d3+
= 250
x1+1.5x2 +2x3
+d4- -d4+ = 400
x1, x2, x3, d1-, d1+, d2-, d2+, d3-, d3+, d4-, d4+ > 0
Slide 24
GP Example 2: Conceptual Products
Computer Solution (First LP)
Objective Function Value = 0.000
Variable
Value
Reduced Cost
x1
200.000
0.000
x2
0.000
0.000
x3
233.333
0.000
d10.000
1.000
d1+
0.000
0.000
d266.667
0.000
d2+
0.000
0.000
d30.000
0.000
d3+
0.000
0.000
d40.000
0.000
d4+
266.667
0.000
Slide 25
GP Example 2: Conceptual Products
Priority 2 Formulation
Min d2-
( include the previous 7 constraints,
i.e. 3 functional constraints and 4 goal
constraints )
( add the constraint: d1- = 0 )
Slide 26
GP Example 2: Conceptual Products
Computer Solution (Second LP)
Objective Function Value = 0.000
Variable
Value
Reduced Cost
x1
285.714
0.000
x2
0.000
0.000
x3
214.286
0.000
d10.000
0.000
d1+
85.714
0.000
d20.000
1.000
d2+
0.000
0.000
d30.000
0.000
d3+
0.000
0.000
d40.000
0.000
d4+
314.286
0.000
Slide 27
GP Example 2: Conceptual Products
Priority 3 Formulation
Min 5d3- + d4+
( include the previous 8 constraints
i.e. 3 functional constraints and 4 goal
constraints and d1- = 0 )
( add the constraint: d2- = 0 )
Slide 28
GP Example 2: Conceptual Products
Computer Solution (Third LP)
Objective Function Value = 314.286
Variable
Value
Reduced Cost
x1
285.714
0.000
x2
0.000
0.071
x3
214.286
0.000
d10.000
0.000
d1+
85.714
0.000
d20.000
0.000
d2+
0.000
0.714
d30.000
3.571
d3+
0.000
1.429
d40.000
1.000
d4+
314.286
0.000
Slide 29
GP Example 2: Conceptual Products
Final Solution
Thus the optimal recommendation is to produce
285.714 CP400 computers, 0 CP500 computers, and
weekly and 214.286 CP600 computers weekly.
All goals will be met except goal 4. 314.286 extra
man-hours or a total of 714.286man-hours will be
used.
Slide 30
Download