Chapter V Goal Programming (GP)
Chapter V Goal Programming (GP)
Introduction
GP model formulation
Solution methods
• Graphical method
• Simplex method
5.1 Introduction
In all the previous LP models, a single objective (goal) in the objective
function was either maximized or minimized.
However, a company often has more than one objective (goal) in its
objective function, which may be other than profit or cost.
For example, the possible goals in the objective function may be:
― Maximizing market share
― Avoiding employee layoffs
― Minimizing the emission of pollutants
― Maintaining full employment
― Minimizing production idle time
― Restricting overtime labor
― Adhering to limited storage space
2
Characteristics of GP
GP is a special type of LP that considers more than one objective, called
goals, in the objective function.
These goals cannot be measured on the same scale (some involve
weigh, area, money, time, compliance, quality of life issues, etc.).
They are usually in conflict (the achievement of one objective threatens
diminishment or abandonment of another).
The purpose of GP is not to develop an optimal solution as such but
‒ to meet the desired level of achievement set for each goal, and
‒ if that is not entirely possible, to minimize the actual deviations from those desired
levels.
GP is a multi-criteria decision-making (MCDM) approach, which is usual
called multi-objective decision-making (MODM) method.
3
5.2 GP model formulation
GP models are set up in the same general format as LP models, with
an objective function and linear constraints.
The model solutions are very much like the solutions to LP models.
GP attempts to minimize the deviations between the various
established goals and what can be actually achieved, given the
available resources (if it is possible, make zero these deviations).
Deviational variables are typically the only variables in the GP
objective function.
The objective function in a GP model seeks to minimize the
deviations, from goals in order of the goal priorities.
The different objectives in a GP problem are referred to as goals.
4
The deviational variables and represent overachievement and
underachievement respectively.
If overachievement is undesired, the deviational variable will be
placed in the objective function to be minimized.
If underachievement is undesired, the deviational variable will be
placed in the objective function to be minimized.
If both overachievement and underachievement are undesired, the
deviational variables andwill be placed in the objective function to be
minimized.
In constraint functions, usually is added and is subtracted to convert
the LP constraints into the GP constraints.
5
Example
To illustrate the differences between an LP model and a GP model,
recall the product mix LP model in Chapter 2.
Maximize z = 40x1+ 50x2 (Single objective to maximize profit)
Subject to
x1 + 2x2 ≤ 40 (Labor constraint)
4x1 + 3x2 ≤ 120 (Raw material constraint)
x1, x2 ≥ 0
This is a standard LP model; as such, it has a single objective function
for maximizing profit.
6
Let us suppose that instead of having one objective, the company has
several objectives, listed here in order of their importance:
1) To avoid layoffs, the company does not want to use fewer than
40 hours of labor per day.
2) The company would like to achieve a satisfactory profit level of
$1,600 per day.
3) Because the raw material must be stored in a special place so
that it does not dry out, the company prefers not to keep more
than 120 kg on hand each day.
4) Because high overhead costs result when the plant is kept open
past normal hours, the company would like to minimize the
amount of overtime.
7
Modeling goals
Labor goal (Goal 1): Avoid layoffs
The first goal of the company is to avoid underutilization of labor.
The LP constraint for labor, x1 + 2x2 ≤ 40, must be converted into its GP
constraint by adding the deviation variable and subtracting the deviation
variable .
x1 + 2x2 + - = 40 (Goal constraint)
The next step creating a new form of objective function that minimizes the
deviation variable (underachievement) :
Minimize P1 (Objective function)
The symbol P1 designates the minimization of as the first-priority goal (when
the GP model is solved, the first step will be to minimize the value of before
any other goal is addressed).
8
Profit goal (Goal 2):
z = 40x1+ 50x2 = 1600 (from the original LP objective function)
The goal constraint is:
40x1+ 50x2 + - = 1600
The objective is minimizing the value of (underachievement)
Minimize P2
Raw material goal (Goal 3):
4x1 + 3x2 + - = 120 (Goal constraint)
The objective is minimizing (overachievement)
Minimize P3
9
Labor goal (Goal 4): Minimize overtime
Goal constraint is the same as Goal 1.
The objective is to minimize (Goal 1 and Goal 4 are conflicting)
Minimize P4
Hence, the general GP model is:
Minimize P1, P2, P3, P4 (Objective function)
subject to
x1 + 2x2 + - = 40
40x1+ 50x2 + - = 1600
4x1 + 3x2 + - = 120
x1, x2, , , ≥ 0
All goal constraints are equalities including deviational variables, and .
10
5.3 Graphical solution method
Because GP models are linear, they can also be analysed graphically
when they two dimensional only.
Solve the previous GP model using the graphical method:
Minimize P1, P2, P3, P4
subject to
x1 + 2x2 + - = 40
40x1+ 50x2 + - = 1600
4x1 + 3x2 + - = 120
x1, x2, , , ≥ 0
11
To graph this model, the deviational variables in each goal constraint
are set equal zero just as LP graph in Chapter 2.
13
• The second-priority goal is to minimize .
14
The third-priority goal is to minimize
15
The fourth-priority goal is to minimize .
16
Solution
A satisfactory solution point is the one that satisfies the first three
goals but achieves as much of the fourth-priority goal as possible.
Point C is a solution that satisfies these conditions.
The solution at point C is determined by simultaneously solving the
two equations that intersect at this point, x1 = 15, x2 = 20, = 15, and =
= =0 (they have been minimized).
The first three goals have been achieved; however, = 15 hours of
overtime, the fourth-priority goal has not been achieved.
The solution to a GP model such as this one is referred to as the most
satisfactory solution rather than the optimal solution because it
satisfies the specified goals as well as possible.
17
Exercise 1: Public relations of an election board has contracted to do a
survey. The firm must assign interviewers to carry out the survey. The
interviews are conducted by telephone and in person. One person can
conduct 80 telephone interviews or 40 personal interviews in a day. It costs
Birr 50 per day for a telephone interviewer and Birr 70 per day for a
personal interviewer. The following three goals, which are listed in order of
their priority, have been established by the firm to ensure a representative
survey:
1) At least 3,000 total interviews should be conducted.
2) An interviewer should conduct only one type of interview each day; the
firm wants to maintain its daily budget of Birr 2,500.
3) At least 1,000 interviews should be by telephone.
Formulate a GP model to determine the number of interviewers to hire to
satisfy these goals and then solve the model graphically.
18
5.4 Simplex solution method
The simplex solution procedure considers one goal at a time, starting
with the highest priority and terminating with the lowest.
The process is carried out such that the solution obtained from a
lower-priority goal never degrades any higher-priority solutions.
GP presents a special simplex method that guarantees the non-
degradation of higher-priority solutions using the column-dropping
rule.
It calls for entering a non-basic variable with the highest negative
coefficient in the z-row from the optimal tableau of the current
prioritized goal before solving the problem of next prioritized goal.
19
Simplex algorithm
1) Identify the goals of the model and rank them in order of priority
2) Solve an LP that minimizes the highest priority goal, and determine
the corresponding optimum value of the deviational variable to be
minimized.
If the solved goal is the last priority, stop the iteration.
Otherwise, add the value of the deviational variable as a new
constraint to the next iteration or replace the deviational variable
with its current value in its corresponding goal constraint to ensure
that the value of the current goal will not be degraded in future
problems.
Repeat the step to next prioritized goal.
20
Example: Solve the previous example using the modified simplex
method.
Minimize P1, P2, P3, P4
subject to
x1 + 2x2 + - = 40
40x1+ 50x2 + - = 1600
4x1 + 3x2 + - = 120
x1, x2, , , ≥ 0
Solution:
The four goal are already ranked as:
> > >
21
Solve the first ranked goal as an LP problem using the simplex method.
Minimize z1 =
subject to
x1 + 2x2 + - = 40
40x1+ 50x2 + - = 1600
4x1 + 3x2 + - = 120
x 1, x 2, , , ≥ 0
Solving this problem using the right simplex method; x1 = 15, x2 =20, = 0, = 0,
= 0, = 15, = 0, = 0 and z1 = 0.
The result indicates that the first three goals are achieved (the required
deviational variables are minimized to zero).
But the fourth goal is violated, it is not minimized to zero.
22
Next, replace with its current value = 0) to drop the -column in the
next solution and to ensure the priority of the firs goal.
Solve the second goal as:
Minimize z2 =
subject to
x1 + 2x2 - = 40
40x1+ 50x2 + - = 1600
4x1 + 3x2 + - = 120
x1, x2, , , ≥ 0
The solution values are x1 = 15, x2 =20, = 0, = 0, = 15, = 0, = 0 and z2 =
0. The solution indicate that the fourth goal is violated.
23
To apply the column-dropping rule, substitute with its value ( = 0) and
solve the third goal.
Minimize z3 =
subject to
x1 + 2x2 - = 40
40x1+ 50x2 - = 1600
4x1 + 3x2 + - = 120
x1, x2, , , ≥ 0
The solution values are x1 = 15, x2 =20, = 0, = 15, = 0, = 0 and z3 = 0.
Goal 4 is still violated and others are achieved.
24
Make = 0 to drop the column and the solve the fourth goal as:
Minimize z4 =
subject to
x1 + 2x2 - = 40
40x1+ 50x2 - = 1600
4x1 + 3x2 + = 120
x1, x2, , , ≥ 0
The solution values are x1 = 15, x2 =20, = 15, and z4 = 15.
Goal 4 is violated and stop the iteration.
The most satisfactory solution is x1 = 15, x2 =20, = 0, = 0; = 0, = 15, =
0, = 0 and z = 15 hours of overtime.
Solve the problem again by dropping the third goal
25
Exercise:
A manufacturing company produces products 1, 2, and 3. The three products have the following resource
requirements and produce the following profit:
At present the firm has a daily labor capacity of 240 available hours and a daily supply of 400 pounds of material.
Management has developed the following set of goals, arranged in order of their importance to the firm:
1) Because of recent labor relations difficulties, management wants to avoid underutilization of normal
production capacity.
2) Management has established a satisfactory profit level of $500 per day.
3) Overtime is to be minimized as much as possible.
4) Management wants to minimize the purchase of additional materials to avoid handling and storage
problems.
Formulate a goal programming model to determine the number of each product to produce to best satisfy the
goals.
26
The weights method
The previous goals prioritizing (ranking) method is sometimes
referred to as the pre-emptive method.
In the weights method, a single objective function is formed as the
weighted sum of the functions representing the goals of the problem.
Suppose that the goal programming model has n goals and that the
ith goal is given as:
27
The parameters wi, i = 1, 2, ... ,n, are positive weights that reflect the
decision maker's preferences regarding the relative importance of
each goal.
For example, wi = 1, for all i, signifies that all goals carry equal
weights.
The determination of the specific values of these weights is
subjective.
See an example in Hamdy M. Taha, Operations Research: An
Introduction, 8th ed., Pearson Prentice Hall, 2007, pages 339-340.
28