Chapter 14: Goal Programming

30
1 Slide 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, d i + and d i - , deviation variables , are the amounts a targeted goal i is overachieved or underachieved, respectively. The goals themselves are added to the constraint set with d i + and d i - acting as the surplus and slack variables.

description

Chapter 14: Goal Programming. Goal programming is used to solve linear programs with multiple objectives, with each objective viewed as a "goal". - PowerPoint PPT Presentation

Transcript of Chapter 14: Goal Programming

Page 1: Chapter 14: Goal Programming

1 Slide

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.

Page 2: Chapter 14: Goal Programming

2 Slide

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.

Page 3: Chapter 14: Goal Programming

3 Slide

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

+ + w2d2-

s.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.

Page 4: Chapter 14: Goal Programming

4 Slide

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+ + w4d4

- s.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.)

Page 5: Chapter 14: Goal Programming

5 Slide

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 with1000 memory modules, 500 external hard drives, and600 cases on a weekly basis. It takes one hour tomanufacture a CP400 and its profit is $200 and it takesone and one-half hours to manufacture a CP500 andits profit is $500.

Page 6: Chapter 14: Goal Programming

6 Slide

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)

Page 7: Chapter 14: Goal Programming

7 Slide

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

exceededFunctional ConstraintsAvailability of memory modules: 2x1 + x2 < 1000Availability of external hard drives: x2 < 500Availability of cases: x1 + x2 < 600

Page 8: Chapter 14: Goal Programming

8 Slide

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

Page 9: Chapter 14: Goal Programming

9 Slide

GP Example: Formulation

Objective Functions Priority 1: Minimize the amount the state

contract is not met: Min d1-

Priority 2: Minimize the number under 500 computers produced

weekly: Min d2-

Priority 3: Minimize the amount under $250,000 earned weekly: Min d3

-

Priority 4: Minimize the man-hours over 400 used weekly: Min d4

+

Page 10: Chapter 14: Goal Programming

10 Slide

GP Example: Formulation

Formulation SummaryMin P1(d1

-) + P2(d2-) + P3(d3

-) + P4(d4+)

s.t. 2x1 +x2 < 1000

+x2 < 500

x1 +x2 < 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

Page 11: Chapter 14: Goal Programming

11 Slide

GP Example: Graphical Solution

Iteration 1To 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).

Page 12: Chapter 14: Goal Programming

12 Slide

GP Example: Graphical Solution

Functional Constraints and Goal 1 Graphed

2x1 + x2 < 1000

Goal 1: x1 > 200

x1 + x2 < 600x2 < 500

PointsSatisfyingGoal 1

x1

x2

1000

800

600

400

200

200 400 600 800 1000 1200

Page 13: Chapter 14: Goal Programming

13 Slide

GP Example: Graphical Solution

Iteration 2Now 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).

Page 14: Chapter 14: Goal Programming

14 Slide

GP Example: Graphical Solution

Goal 1 (Constraint) and Goal 2 Graphed

2x1 + x2 < 1000

Goal 1: x1 > 200x1 + x2 < 600

x2 < 500

Points SatisfyingBoth Goals 1 and 2

x1

x2

Goal 2: x1 + x2 > 500

200 400 600 800 1000 1200

1000

800

600

400

200

Page 15: Chapter 14: Goal Programming

15 Slide

GP Example: Graphical Solution

Iteration 3Now 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.

Page 16: Chapter 14: Goal Programming

16 Slide

GP Example: Graphical Solution

Goal 2 (Constraint) and Goal 3 Graphed

2x1 + x2 < 1000

Goal 1: x1 > 200x1 + x2 < 600 x2 < 500

Points SatisfyingBoth Goals 1 and 2

x1

x2

Goal 2: x1 + x2 > 500Goal 3: .2x1 + .5x2 = 250

(200,400)

200 400 600 800 1000 1200

1000

800

600

400

200

Page 17: Chapter 14: Goal Programming

17 Slide

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.

Page 18: Chapter 14: Goal Programming

18 Slide

GP Example 2: Conceptual Products

Conceptual Products is a computer company thatproduces the CP400, CP500, and CP600 computers.Many of the components used in the three computermodels are produced in abundant supply by thecompany. However, the memory modules, externalhard drives, and cases are bought from suppliers.

The CP400 model uses two memory modules andno external hard drive, the CP500 uses one memorymodule and one external hard drive, and the CP600 uses two memory modules and one external harddrive . All three models use the same case.

Page 19: Chapter 14: Goal Programming

19 Slide

GP Example 2: Conceptual Products

Suppliers can provide Conceptual Products with1000 memory modules, 500 external hard drives, and600 cases on a weekly basis. It takes one hour tomanufacture a CP400 and its profit is $200; it takesone and one-half hours to manufacture a CP500 andits profit is $500; and it takes two hours to manufacturea CP600 and its profit is $900.

Page 20: Chapter 14: Goal Programming

20 Slide

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.

Page 21: Chapter 14: Goal Programming

21 Slide

GP Example 2: Formulation

Variables x1 = number of CP400 computers produced

weekly x2 = number of CP500 computers produced

weeklyx3 = 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 exceededFunctional ConstraintsAvailability of memory modules: 2x1 + x2 + x3 < 1000Availability of external hard drives: x2 + x3 < 500Availability of cases: x1 + x2 + x3 < 600

Page 22: Chapter 14: Goal Programming

22 Slide

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

Page 23: Chapter 14: Goal Programming

23 Slide

GP Example 2: Conceptual Products

Objective Functions Priority 1: Minimize the number of CP400

under 200 units: Min d1-

Priority 2: Minimize the number under 500 computers produced

weekly: Min d2-

Priority 3: Minimize the amount under $250,000 earned weekly: Min 5d3

-

Priority 3: Minimize the man-hours over 400 used weekly: Min d4

+

Page 24: Chapter 14: Goal Programming

24 Slide

GP Example 2: Conceptual Products

Priority 1 Formulation Min d1

-

s.t. 2x1 +x2 +x3 < 1000

+x2 +x3 < 500

x1 +x2 +x3 < 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

Page 25: Chapter 14: Goal Programming

25 Slide

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 d1

- 0.000 1.000 d1

+ 0.000 0.000 d2

- 66.667 0.000 d2

+ 0.000 0.000

d3- 0.000 0.000

d3+ 0.000

0.000 d4

- 0.000 0.000

d4+ 266.667 0.000

Page 26: Chapter 14: Goal Programming

26 Slide

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 )

Page 27: Chapter 14: Goal Programming

27 Slide

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 d1

- 0.000 0.000 d1

+ 85.714 0.000 d2

- 0.000 1.000 d2

+ 0.000 0.000

d3- 0.000 0.000

d3+ 0.000

0.000 d4

- 0.000 0.000

d4+ 314.286 0.000

Page 28: Chapter 14: Goal Programming

28 Slide

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 )

Page 29: Chapter 14: Goal Programming

29 Slide

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 d1

- 0.000 0.000 d1

+ 85.714 0.000 d2

- 0.000 0.000 d2

+ 0.000 0.714

d3- 0.000 3.571

d3+ 0.000

1.429 d4

- 0.000 1.000

d4+ 314.286 0.000

Page 30: Chapter 14: Goal Programming

30 Slide

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.