Goal Programming 11 Dec 2020

You might also like

Download as pdf or txt
Download as pdf or txt
You are on page 1of 55

Goal Programming

Ha Thi Xuan Chi, PhD


History and Philosophy of Goal Programming
Ø Man is a goal seeking animal. His life only has meaning if he is
reaching out and striving for his goals.
■ Aristotle 384–322
Abraham Charnes
(American mathematician)
• Abraham Charnes
• (September 4, 1917 – December 19, 1992)
was an American mathematician who
worked in the area of operations research.

• Charnes published more than 200


research articles and seven books,
including An Introduction to Linear
Programming (Source: Wiki)

• 1955: The earliest goal programming


formulation was introduced in the context
of executive compensation
History and Philosophy of Goal Programming
Ø ‘goal programming’ was not used and the model was seen as an
adaptation of linear programming.
Ø 1961 : Charnes and Cooper proposed a more formal theory of
goal programming
Ø 1965: Further development took place by Ijiri
Ø Lee (1972) and Ignizio (1976) : Seminal textbooks by brought the
technique into common usage as an operational research tool.
History and Philosophy of Goal Programming
Ø Goal programming:
§ can correctly be viewed as a generalisation of linear
programming,
§ a bona fide multi-criteria decision-making technique.
Ø Should be aware of
§ the theories
§ methodologies
§ pitfalls of multiple criteria decision making if they are to build
‘effective’ models.
History and Philosophy of Goal Programming
Ø Goal programming came under criticism in the 1980s
§ some basic errors caused by lack of awareness of good
MCDM practice.
History and Philosophy of Goal Programming
Ø These included :
§ Pareto-inefficient solutions,
§ numbers of priority levels leading to redundancy,
§ lack of weight sensitivity analysis,
§ direct comparison of incommensurable goals,
§ ineffectual elicitation
§ representation of decision maker preferences.
History and Philosophy of Goal Programming
Underlying philosophies
Ø Satisficing :
§ 1957, Simon, the American economist : “to satisfice”
§ Satisficing comes from the words ‘satisfy’ and ‘suffice’.
§ If they reach those goals then this suffices for them in that
decision situation and they are hence satisfied.
§ An alternative to the philosophy of optimising (next slide)
Ø Simon’s argument:
§ Human beings are more interested and able to reach goals
than in the abstract concept of optimising each outcome of the
decision problem.
Underlying philosophies
Ø Optimising :
§ to find the decision which gives the best possible value of
some measure from amongst the set of possible decisions
Ø There are three situations to note where the optimising philosophy
has particular importance:
§ If the goal target levels are set very optimistically, such as at
their ideal values, in the goal programme, then the dominant
underlying philosophy has changed from satisficing to
optimising.
Underlying philosophies
§ If Pareto optimality detection and restoration take place then
the goal programme has a mix of the satisficing and optimising
philosophies.
§ If the goals are two-sided (i.e. a particular value is optimal
rather than a ‘more is better’ or ‘less is better’ situation) then
the satisficing and optimising philosophies can be thought of as
coinciding for those goals.
Underlying philosophies
Ø Ordering or Ranking : the lexicographic variant
Ø The variant : the minimisation of unwanted deviations from goals
takes place according to a weak order
Ø In lexicographic goal programme, it is assumed that the weak
ranking of the goals in terms of importance exists and is known (or
able to be estimated) by the decision maker
Underlying philosophies
Underlying philosophies
Ø Balancing:

Ø if balancing the achievement of the decision maker then they will


prefer solution 2 over solution 1.
Underlying philosophies
Ø the average level of achievement is considered when solving the
goal programme then solutions 1 and 2 are shown to have the
same value to the decision maker.
Ø Omitting the balancing element from a goal programme when it
should be included is, in our view, one of the major reasons why
unbalanced and hence unattractive and unimplementable solutions
are sometimes incorrectly produced by poor goal programming
modelling
Goal Programming Variants
Ø The three major variants in terms of underlying distance metric
§ lexicographic (pre-emptive)
§ weighted (non-preemptive)
§ Chebyshev goal programming (Minmax).
Ø Then the variants in terms of the mathematical nature of the
decision variables and/or goals used are introduced.
Ø These are fuzzy, integer, binary, and fractional goal programming.
Generic Goal Programme
Ø Deviations: the amount away from the desired standards or
objectives:
– Overachievement (d+i ≥ 0) vs. Underachievement (d-i ≥ 0)

– Desirable vs. Undesirable Deviations: (depend on the


objectives)
• Max goals (≥) -the more the better - d+i desirable.
• Min goals (≤) -the less the better - d-i desirable.
• Exact goals (=) - exactly equal - both d+i and d-i undesirable

– In GP, the objective is to minimize the (weighted) sum of


undesirable deviations (all undesirable d+i and d-i →→ 0 ).

– For each goal, at least, one of d+i and d-i must be equal to "0"
Distance Metric Based Variants
Ø Lexicographic Goal Programming : pre-emptive goal
programming:
§ goals are assigned different priority levels.
§ EX : Level 1 goal dominates level 2 goal, and so on
Ø Weighted Goal Programming : non- pre-emptive goal
programming
§ No goal is pre-determined to dominate any other goal.
Ø Chebyshev Goal Programming : Minmax goal programming
§ No priority, no weight, find a good balance for all objectives.
PREEMPTIVE GOAL PROGRAMMING
Lexicographic Goal Programming
Ø Suppose the weekly levels of two products to be manufactured are
to be determined. Suppose our first criterion relates to the amount
of hours labour per week used to manufacture the two products A
and B. Assume our decision variables are
§ x1: The number of products of type A manufactured per week
x2: The number of products of type B manufactured per week
and each type A product takes 4 h to manufacture and each
type B product takes 3h to manufacture.
Ø Suppose that the desired level is to use no more than 120 h labour
PREEMPTIVE GOAL PROGRAMMING
Lexicographic Goal Programming
Ø The profit per item A is $100 and for product B is $150 per item.
The company is somewhat unsure about the level of profit to set as
a target but give an initial estimate of $7000 per week.
Ø The company has some strategic aims for their weekly production.
They wish to maintain production of at least 40 units of each of the
products
Ø The company has to purchase a minimum of 50l of this product
weekly. Each item of type A uses 2l of the product and each item of
type B uses 1l of the product. Disposing of unused product is
prohibitively expensive. The second constraint relates to machine
time, which caps the maximum combined production of both
products to 75 per week.
PREEMPTIVE GOAL PROGRAMMING
Lexicographic Goal Programming
Ø Suppose that the company has a clear order in which they wish to
see the goals satisfied. An example of such an order could be
§ Priority 1: Achieve the profit goal.
§ Priority 2: Achieve the strategic production goals.
§ Priority 3: Achieve the labour goal.
PREEMPTIVE GOAL PROGRAMMING
Lexicographic Goal Programming
Ø Formulate goal programming
4X1 + 3X2 - d1++ d1- = 120
100X1 + 150X2 - d2++d2- = 7000
X1 - d3++ d3- = 40
X2 - d4++ d4- = 40
2X1 + X2 > = 50
X1 + X2 < = 75
X1 , X2 >=0, di+- di- > =0, i=1,2..,4
PREEMPTIVE GOAL PROGRAMMING
Lexicographic Goal Programming
X2
80 Goal 2

d3-
60 d3+

d4+
40 Goal 3
d4-
20 Goal 2 d2+
d1+ d2-

0 10 20 30 40 50 60 70 X1
d1-
Goal 1
PREEMPTIVE GOAL PROGRAMMING
Lexicographic Goal Programming
X 2

80 Goal 2

d2+ d3-
60 d3+
d2- d4+
40 Goal 2
d1+ d4-
d1-
20 Goal 3 d2+
d1+ d2-

0 10 20 30 40 50 60 70 X1
Goal 1
PREEMPTIVE GOAL PROGRAMMING
Lexicographic Goal Programming
Ø Min a = [(d2-),(d3+ + d4+),(d1-)]
Ø Or Min a = P1(d2-) + P2(d3- + d4-) + P3 (d1+)
Ø The first step is to minimise the first priority level subject to
Ø Min Z = d2-
St:
4X1 + 3X2 - d1++ d1- = 120
100X1 + 150X2 - d2++d2- = 7000
X1 - d3++ d3- = 40
X2 - d4++ d4- = 40
2X1 + X2 > = 50
X1 + X2 < = 75
X1 , X2 >=0, di+- di- > =0, i=1,2..,4
PREEMPTIVE GOAL PROGRAMMING
Lexicographic Goal Programming
Ø The second priority level
Min Z = d3- + d4-
St:
4X1 + 3X2 - d1++ d1- = 120
100X1 + 150X2 - d2++d2- = 7000
X1 - d3++ d3- = 40
X2 - d4++ d4- = 40
2X1 + X2 > = 50
X1 + X2 < = 75
d2- = 0
X1 , X2 >=0, di+- di- > =0, i=1,2..,4
PREEMPTIVE GOAL PROGRAMMING
Lexicographic Goal Programming
X2
80 Goal 2

d2+ 60 d3-
d3+
d2-
d4+
40 Goal 2
d1+ d4-
d1-
20 Goal 3 d2+
d1+ d2-

0 10 20 30 40 50 60 70 X1
Goal 1
PREEMPTIVE GOAL PROGRAMMING
Lexicographic Goal Programming
X2
80 Goal 2

d2+ 60 d3-
d3+
d2-
(35,40) d4+
40 Goal 2
d1+ d4-
d1-
20 Goal 3 d2+
d2-

0 10 20 30 40 50 60 70 X1
Goal 1
PREEMPTIVE GOAL PROGRAMMING
Lexicographic Goal Programming
Ø The minimisation of the third priority level
Min Z = d1+
St:
4X1 + 3X2 - d1++ d1- = 120
100X1 + 150X2 - d2++d2- = 7000
X1 - d3++ d3- = 40
X2 - d4++ d4- = 40
2X1 + X2 > = 50
X1 + X2 < = 75
d2- = 0
d3- + d4- = 5
X1 , X2 >=0, di+- di- > =0, i=1,2..,4
PREEMPTIVE GOAL PROGRAMMING
Lexicographic Goal Programming

Ø This is the optimal solution to the lexicographic solution. The


solution in decision space is x1 =35,x2 =40
Ø The data given in Table 3.1, calculated by substituting the optimal
decision variable values into the goals, can be observed
Sensitivity analysis
Ø Swap priorities
§ Priority 1: Achieve the labour goal.
§ Priority 2: Achieve the strategic production goals.
§ Priority 3: Achieve the profit goal.
Ø Min a = P1(d1-) + P2(d3+ + d4+) + P3 (d2+)
Sensitivity analysis
X2
80 Goal 2

d2+ 60 d3-
d3+
d2-
d4+
40 Goal 2
d1+ d4-
d1-
20 B(15,20)
Goal 3

0 10 20 30 40 50 60 70 X1
Goal 1
Good Modelling Practice for the Lexicographic Variant
Ø One major issue in lexicographic goal programming is that of
priority level redundancy.
Ø Suppose for instance that the modeller decides to use the ideal
values of 100 h for labour and $11,250 for profit. The model with
priority scheme 1 is now
Min a = P1(d2+) + P2(d3+ + d4+) + P3 (d1-)

4X1 + 3X2 - d1++ d1- = 100


100X1 + 150X2 - d2++d2- = 11,250
X1 - d3++ d3- = 40
X2 - d4++ d4- = 40
2X1 + X2 > = 50
X1 + X2 < = 75
X1 , X2 >=0, di+- di- > =0, i=1,2..,4
Good Modelling Practice for the Lexicographic Variant
X2
80 Goal 2

d3-
60 d3+

d4+
40 Goal 2

d1+ d4- d2+


20 d1-
Goal 3 Goal 1
d2-

0 10 20 30 40 50 60 70 80 90 100 110 X1
Good Modelling Practice for the Lexicographic Variant
X2
80 Goal 2

d3-
60 d3+

d4+
40 Goal 2

d1+ d4- d2+


20 d1-
Goal 1 Goal 3
d2-
C(75,0)

0 10 20 30 40 50 60 70 80 90 100 110 X1
Optimal solution
Good Modelling Practice for the Lexicographic Variant
Ø No point in continuing with the optimisations associated with
priority levels 2 and 3 as they will not affect the final solution.
Ø The only goal to be considered is the one in the first priority level
Ø Thus:
§ One may as well have conducted a single-objective
optimisation of that goal
§ No true consideration of the multi-objective nature of the
problem
Ø This is the problem of Lexicographic redundancy
Good Modelling Practice for the Lexicographic Variant
Ø The causal effects of redundancy:
§ Setting of target levels that are too optimistic, or in the worst
case, ideal
§ Use of an excessive number of priority levels
Good Modelling Practice for the Lexicographic Variant
Ø Goals have the same units should be placed in the same priority
level
Ø No more than five priority levels should be used in the
lexicographic variant
PREEMPTIVE GOAL PROGRAMMING
Lexicographic Goal Programming
Ø Example : Conceptual Products is a computer company that
produces the CP400 and the CP500 computers. The computers
use different mother boards produced in abundant supply by the
company, but use the same cases and disk drives. The CP400
models use two floppy disk drives and no zip disk drives whereas
the CP500 models use one floppy disk drive and one zip disk drive.
The disk drives and cases are bought from vendors. There are
1000 floppy disk drives, 500 zip disk drives, and 600 cases
available to Conceptual Products 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
PREEMPTIVE GOAL PROGRAMMING
Lexicographic Goal Programming
Ø Variables
Ø 𝑥" = number of CP400 computers produced weekly
𝑥# = number of CP500 computers produced weekly
𝑑% &= amount the right hand side of goal i is deficient
𝑑% '= amount the right hand side of goal i is exceeded

Ø Functional Constraints
Availability of floppy disk drives: 2𝑥" + 𝑥# ≤ 1000
Availability of zip disk drives: 𝑥# ≤ 500
Availability of cases: 𝑥"+ 𝑥# ≤ 600
Ø
PREEMPTIVE GOAL PROGRAMMING
Lexicographic Goal Programming
Ø Goals
(1) 200 CP400 computers weekly:
𝑥" + 𝑑"& - 𝑑"' = 200
(2) 500 total computers weekly:
𝑥" + 𝑥# + 𝑑#& - 𝑑#' = 500
(3) $250 (in thousands) profit:
.2𝑥" + .5𝑥# + 𝑑-& - 𝑑-' = 250
(4) 400 total man-hours weekly:
𝑥" + 1.5𝑥# + 𝑑.& - 𝑑.' = 400
Non-negativity:
𝑥", 𝑥#, 𝑑% &, 𝑑% ' ≥ 0 for all i
PREEMPTIVE GOAL PROGRAMMING
Lexicographic Goal Programming
Ø Objective Functions
§ Priority 1: Minimize the amount the state contract is not met: Min 𝑑"&
§ Priority 2: Minimize the number under 500 computers produced weekly:
Min 𝑑#&
§ Priority 3: Minimize the amount under under $250000 earned weekly:
Min 𝑑-&
§ Priority 4: Minimize the man-hours over 40 used weekly: Min 𝑑.&
PREEMPTIVE GOAL PROGRAMMING
Lexicographic Goal Programming
Ø Formulation Summary
Min 𝑃" 𝑑"& + 𝑃# 𝑑#& + 𝑃- 𝑑-& + 𝑃. 𝑑.'
s.t.
2𝑥" + 𝑥# ≤ 1000
𝑥# ≤ 500
𝑥" + 𝑥# ≤ 600
Ø 𝑥" + 𝑑"& - 𝑑"' = 200
𝑥" + 𝑥# + 𝑑#& - 𝑑#' = 500
0.2𝑥" + 0.5𝑥# + 𝑑-& - 𝑑-' = 250
𝑥" + 1.5𝑥# + 𝑑.& - 𝑑.' = 400
𝑥", 𝑥#, 𝑑"&, 𝑑"', 𝑑#&, 𝑑#', 𝑑-&, 𝑑-', 𝑑.&, 𝑑.' ≥ 0
PREEMPTIVE GOAL PROGRAMMING
Lexicographic Goal Programming
Ø Example : You work for an Advertising agency. A customer has
identified three primary target audiences they are trying to reach,
and has an Advertising budget of $600000. They have expressed
their targets in the form of three goals:
§ Goal 1 – Ads should be seen by at least 40 million high-income
men (HIM)
§ Goal 2 – Ads should be seen by at least 60 million low-income
people (LIP)
§ Goal 3 – Ads should be seen by at least 35 million high-income
women (HIW)
PREEMPTIVE GOAL PROGRAMMING
Lexicographic Goal Programming
Ø You recognize that advertising during football games and soap
operas will cover the target audience. The table below indicates
the number of viewers from the different categories that will be
viewing these types of programming.

HIM LIP HIW Cost


Football ad (per min.) 7 million 10 million 5 million $100 000
Soap Opera ad (per 3 million 5 million 4 million $60 000
min.)
PREEMPTIVE GOAL PROGRAMMING
Lexicographic Goal Programming
Ø Expressing the goals as an equation.
Ø Let x1 – minutes of football ad
x2 – minutes of soap opera ad
Ø Goal 1 – HIM: 7𝑥"+ 3𝑥# ≥ 40
Goal 2 – LIP: 10𝑥" + 5𝑥# ≥ 60
Goal 3 – HIW: 5𝑥" + 4𝑥# ≥ 35

Ad budget: 100𝑥" + 60𝑥# ≤ 600


PREEMPTIVE GOAL PROGRAMMING
Lexicographic Goal Programming
Ø Formulating the problem as an LP:
Ø Min (or Max) Z = something
s.t
HIM: 7𝑥"+ 3𝑥# ≥ 40
LIP: 10𝑥" + 5𝑥# ≥ 60
HIW: 5𝑥" + 4𝑥# ≥ 35
Ø Ad budget: 5𝑥" + 4𝑥# ≥ 35
𝑥", 𝑥# ≥ 0
Which constraints are real constraints versus “desired” constraints?
Which constraints are “hard” constraints versus “soft” constraints?
PREEMPTIVE GOAL PROGRAMMING
Lexicographic Goal Programming
Ø Since the first three constraints are really goals, and not “hard”
constraints, express these constraints in terms of deviational
variables.
Ø HIM 7𝑥" + 3𝑥# + 𝑑"& − 𝑑"' = 40
LIP 10𝑥" + 5𝑥# + 𝑑#& − 𝑑#' = 60
HIW 5𝑥" + 4𝑥# + 𝑑-& − 𝑑-' = 35
𝑑"&, 𝑑"', 𝑑#&, 𝑑#', 𝑑-&, 𝑑-' ≥ 0
PREEMPTIVE GOAL PROGRAMMING
Lexicographic Goal Programming
Ø Suppose the HIM constraint must be met first, followed by LIP and
then HIW.
Ø First rewrite the LP as the following:
Min Z = 𝑑"&
s.t
HIM 7𝑥" + 3𝑥# + 𝑑"& − 𝑑"' = 40
LIP 10𝑥" + 5𝑥# + 𝑑#& − 𝑑#' = 60
HIW 5𝑥" + 4𝑥# + 𝑑-& − 𝑑-' = 35
Ad budget: 100𝑥" + 60𝑥# ≤ 600
𝑑"&, 𝑑"', 𝑑#&, 𝑑#', 𝑑-&, 𝑑-' ≥ 0
Ø This LP solves to Z = 0, 𝑑"& = 0. So goal HIM is met.
PREEMPTIVE GOAL PROGRAMMING
Lexicographic Goal Programming
Ø Since goal HIM is met, now make goal HIM a fixed constraint while
trying to satisfy goal LIP.
Ø Min Z = 𝑑#&
s.t
HIM 7𝑥" + 3𝑥# + 𝑑"& − 𝑑"' = 40
LIP 10𝑥" + 5𝑥# + 𝑑#& − 𝑑#' = 60
HIW 5𝑥" + 4𝑥# + 𝑑-& − 𝑑-' = 35
Ad budget: 100𝑥" + 60𝑥# ≤ 600
Ø 𝑑"& =0
𝑑"&, 𝑑"', 𝑑#&, 𝑑#', 𝑑-&, 𝑑-' ≥ 0
Ø This LP solves to Z = 0, 𝑑#& = 0. So goal LIP is met.
PREEMPTIVE GOAL PROGRAMMING
Lexicographic Goal Programming
Ø Since both goal HIM and LIP are met, now make goal HIM and LIP
fixed constraints while trying to satisfy goal HIW.
Ø Min Z = 𝑑-&
s.t
HIM 7𝑥" + 3𝑥# + 𝑑"& − 𝑑"' = 40
LIP 10𝑥" + 5𝑥# + 𝑑#& − 𝑑#' = 60
HIW 5𝑥" + 4𝑥# + 𝑑-& − 𝑑-' = 35
Ad budget: 100𝑥" + 60𝑥# ≤ 600
𝑑"& =0
𝑑# & = 0
𝑑"&, 𝑑"', 𝑑#&, 𝑑#', 𝑑-&, 𝑑-' ≥ 0
PREEMPTIVE GOAL PROGRAMMING
Lexicographic Goal Programming
Ø The goals can be ranked from most importance to least important.
In this case, the most important goal pre-empts all the other goals.
Once the most important goal is met, the second goal is
addressed, and so on.
NON- PREEMPTIVE GOAL PROGRAMMING
Weighted
Ø In the advertising example, the goals could readily be weighted by
relative importance using the cost penalties ($200000 for HIM,
$100000 for LIP and $50000 for HIW).
NON- PREEMPTIVE GOAL PROGRAMMING
Weighted
Ø Suppose each shortfall of 1000000 viewers from the goal
translates to a cost of $200000 for HIM, $100000 for LIP and
$50000 for HIW.
Then the objective function would be:

Min Z = 200𝑑"& + 100𝑑#& + 50𝑑-&


Ø s.t
HIM 7𝑥" + 3𝑥# + 𝑑"& − 𝑑"' = 40
LIP 10𝑥" + 5𝑥# + 𝑑#& − 𝑑#' = 60
HIW 5𝑥" + 4𝑥# + 𝑑-& − 𝑑-' = 35
Ad budget: 100𝑥" + 60𝑥# ≤ 600
𝑑"&, 𝑑"', 𝑑#&, 𝑑#', 𝑑-&, 𝑑-' ≥ 0
NON- PREEMPTIVE GOAL PROGRAMMING
Weighted
Ø The optimal solution to the above LP is:
Z = 250, 𝑥" = 6, 𝑥# = 0, 𝑑"& = 0, 𝑑"' = 0, 𝑑#& = 0, 𝑑#' = 0,
𝑑-& = 5, 𝑑-' = 0

You might also like