3E4 Lecture 6
3E4 Lecture 6
Lecture 6
• Goal Programming
• Multiple Objective Optimisation
• Portfolio Optimisation
Announcements
Supervision 2
• To be held by the end of next week
• Present your solutions to all Lecture 4, 5 and 6
homeworks
1
3E4 : Lecture Outline
Lecture 1. Management Science & Optimisation
Modelling: Linear Programming
Lecture 2. LP: Spreadsheets and the Simplex Method
Lecture 3. LP: Sensitivity & shadow prices
Reduced cost & shadow price formulae
Lecture 4. Integer LP: branch & bound
Lecture 5. Network flows problems
Lecture 6. Multiobjective LP
Lecture 7 – 8. Introduction to nonlinear programming
2
A Goal Programming Example:
Hotel Expansion
• A hotel director wants to expand the convention centre
at his hotel
• The types of conference rooms being considered are:
Size (sq ft) Unit Cost
Small 400 £18,000
Medium 750 £33,000
Large 1,050 £45,150
• He would like to add 5 small, 10 medium and 15 large
conference rooms.
• He would also like the total expansion to be 25,000
square feet and to limit the cost to £1,000,000
Decision Variables
3
The Goals
• Goal 1: The expansion should include not many fewer
than 5 small conference rooms.
• Goal 2: The expansion should include not many fewer
than 10 medium conference rooms.
• Goal 3: The expansion should include not many fewer
than 15 large conference rooms.
• Goal 4: The expansion should consist of approximately
25,000 square feet.
• Goal 5: The expansion should not cost much more than
£1,000,000.
4
GP Objective Functions
• There are several objective functions we could
formulate for a GP problem.
• Minimize the sum of the deviations
MIN u1+u2+u3+(o4+u4)+ o5
• Difficulty: The deviations measure different
things, so what does this objective represent?
Percentage Deviations
• Minimize the sum of percentage deviations
MIN u1/t1+u2/t2+u3/t3+u4/t4+o4/t4+o5/t5
where ti represents a given target value of goal i
• Difficulty arises in comparing the following deviations
from targets:
– Suppose we underachieve goal 1 by 1/5=20%
– Suppose we exceed goal 5 by 200,000/1,000,000= 20%
– Both deviations are 20%. But is being £200,000 over budget
just as undesirable as having one too few small rooms?
– Only the decision maker can say for sure.
5
Weighting the goals
Comments About GP
• GP involves making trade-offs among the goals until the
most satisfying solution is found
• GP objective function values should not be compared
because the weights are changed in each iteration.
Compare the solutions!
• A very large weight will effectively change a soft
constraint to a hard constraint.
• A weight of zero will effectively delete a constraint
• Hard constraints can be placed on deviational variables.
6
The MiniMax Objective
• The minimax objective
min maxi {vioi/ti , wiui/ti }
is used to minimize the biggest percentage
deviation from any goal.
• Minimize weighted maximum percentage
deviation
Min: α
subject to: vioi/ti ≤ α
wiui/ti ≤ α
plus other constraints
Exercise:
Hotel Expansion
• What is the goal program using minimax
percentage deviations?
• Min α subject to:
– Small rooms: X1 ≥ 5 – u1
– Medium rooms: X2 ≥ 10 – u2
– Large rooms: X3 ≥ 15 – u3
– Area: 400 X1+750 X2+1050 X3 = 25000 +o4 – u4 `
– Cost: 18 X1+33 X2+45.15 X3 ≤ 1000 +o5
– all deviational vars. nonnegative (u1, …,u4, o4, o5 ≥ 0)
α ≥ all weighted percentage deviations, i.e.
α ≥ w1u1/t1, w2u2/t2 , w3u3/t3 , w4u4/t4 , v4o4/t4 , v5o5/t5
where w1, …, w4u, v4, v5 are positive parameters
7
Summary of Goal Programming
1. Formulate decision variables and hard constraints in the usual
way.
2. State the goals of the problem along with their target values.
3. Create additional constraints that would achieve the goals
exactly.
4. Transform the latter constraints into goal constraints by
including deviational variables for undesirable deviations
5. Formulate an objective that penalizes the undesirable deviations.
6. Identify appropriate weights for the objective.
7. Solve the problem.
8. Inspect the solution to the problem. If the solution is
unacceptable, return to step 6 and revise the weights as needed.
Multiple Objectives
• Multiple objectives are common
– Maximal Return and Minimal Risk
– Maximal Profit and Minimal Pollution
• In GP we have an objective for each goal:
– Minimize the undesirable deviation from the
target value
• Objectives often conflict with one another
8
Multiple Objective Linear Programming (MOLP)
An MOLP Example:
A Mining Company
• A mining company operates two coal mines
• Monthly production by a shift of workers at each mine is
summarized as follows:
Type of Coal Mine 1 Mine 2
High-grade 12 tons 4 tons
Medium-grade 4 tons 4 tons
Low-grade 10 tons 20 tons
Cost per month £40,000 £20,000
Litres of toxic water produced 600 1800
• Additional total demand over the next year of 48 tons for high-
grade, 28 tons for medium-grade, and 100 tons for low-grade coal
needs to be satisfied by scheduling an extra shift at one or both
mines
9
Variables and Objectives
•Variables: Xi = number of months to
schedule an extra shift at mine i
10
Handling Multiple Objectives
• If management gives us target values for the objectives
then we can treat them like goals:
Goal 1: The total cost of productions should not exceed
t1 by much.
Goal 2: The amount of toxic water produce should not
exceed t2 by much
11
Feasible Region
10
9
8
7
6 Solution 1
5 (minimum production cost)
4
3 Solution 2
2
(minimum toxic water)
0
0 1 2 3 4 5 6 7 8 9 10 11 12 X1
Solution X1 X2 Cost Toxic Water
1 2.5 4.5 £190,000 9,600
2 10 0 £400,000 6,000
11
Defining The Goals
Defining an Objective
• We can minimize the sum of % deviations as follows:
⎛ (40X1 + 20X2 ) −190 ⎞ ⎛ (600X1 + 1800X2 ) − 6000⎞
MIN: w1⎜⎜ ⎟⎟ + w 2 ⎜⎜ ⎟⎟
⎝ 190 ⎠ ⎝ 6000 ⎠
• (Where are the overshoots and undershoots??)
• This is just a linear combination of the decision
variables X1 and X2
• The resulting problem for given weights is an LP
• Solver produces optimal solutions at corner points of
the feasible region, no matter what weights are used.
12
Visualising the objectives
In this particular example
• we have two objectives (cost, water) which are
determined by our two variables (x1,x2)
• we can transform our variables into functions of
our objectives
• we can therefore view all objective pairs (cost,
water) that it is possible to achieve by feasible
decision pairs (x1,x2)
This will be useful in explaining what MOLP and
GP are actually doing.
Changing Coordinates
• We have two objectives
u = 4x1 + 2x2 (cost in £10,000)
v = 6x1 + 18x2 (toxic water in 100 ltr)
• If we solve the equations we obtain
x1 = 3u/10 – v/30
x2 = –u/10 + v/15
• We can use this to express the constraints in
(u,v) variables
13
Constraints in objective variables
16u/5 – 2v/15 ≥ 48 (HG coal)
4u/5 + 2v/15 ≥ 28 (MG coal)
u + v ≥ 100 (LG coal)
0 ≤ 3u/10 – v/30 ≤ 12 (0 ≤ x1 ≤ 12)
0 ≤ –u/10 + v/15 ≤ 12 (0 ≤ x2 ≤ 12)
Simplified
24u – v ≥ 360
6u + v ≥ 210
u + v ≥ 100
0 ≤ 9u – v ≤ 12
0 ≤ –3u +2v ≤ 12
14
u = cost
40,000
Feasible combinations
30,000
20,000
10,000
0
0 300 600 900 1200 v = toxic water
s.t. Ax=b
x ≥0
• Draw the feasible region.
• Evaluate all the corner points of the feasible region,
say x(1),…,x(K)
15
Visualizing the objectives:
an easier graphical approach
• Then calculate the corresponding transformed
points
z(1)=Cx(1),…, z(K)=Cx(K)
where C is the matrix [cij]
• Draw the objective space as the polyhedron
having z(1),…, z(K) as corner points.
Example
16
Example
max z1= 3x1−x2 Feasible region corner points
max z2= −2x1+4x2 x(0)=(0,0) ; x(1)=(0,5) ;
s.t. −x1+ x2 ≤ 5 x(2)=(0.66,5.66) ;
x1+ 2x2 ≤ 12 x(3)=(8,2) ; x(4)=(8,0) .
x1 ≤ 8
x1 , x2 ≥ 0
Objective space corner points
z(0)=(0,0) ; z(1)=(−5,20) ; z(2)=(−3.66,21.33) ;
z(3)=(22, −8) ; z(4)=(24, − 16) .
Objective space
z (2)
(1)
z
z (0)
z (3)
z (4)
17
A new concept
Pareto optimality
• Since we are maximizing, we (strictly) prefer
(z1#,z2#) to (z1,z2) if
z1# ≥ z1 and z2# ≥ z2
and
at least one inequality holds strictly
• A solution to a multi-objective optimisation
problem is called Pareto optimal (or efficient) if
there is no other feasible solution which is
preferred.
18
Finding efficient points
z (2)
(1)
z
z (0)
z (3)
z (4)
z (2)
z (1)
z (0)
z (3)
z (4)
19
Finding efficient points
z (2)
z (1)
z (0)
z (3)
z (4)
Goal point
(24,21.33)
z (2)
z (1)
z (0)
z (3)
z (4)
20
The MiniMax Objective again
min α
⎛ (40 X 1 + 20 X 2 ) − 190 ⎞
subject to w1 ⎜ ⎟ ≤α
⎝ 190 ⎠
⎛ (600 X 1 + 800 X 2 ) − 6000 ⎞
w2 ⎜ ⎟ ≤α
⎝ 6000 ⎠
plus other constraints
By changing the weights we can trace the
complete efficient frontier
A formal statement on
Positive weights and Pareto optima
If
• we are maximizing K objectives, v1, …, vK
• we have K positive weights w1, …, wK
• (v1#, …,vK#) is an optimal solution of Min w1v1 +…+ wkvK
over all feasible combinations (v1, …, vK).
Then (v1#, …, vK#) is Pareto optimal.
Proof Let (v1, …, vK) represent the payoffs of some feasible
strategy. Assume for a contradiction that vk ≥ vk# for k=1,
…,K, with strict inequality for some index k=i. Then
wkvk ≥ wkvk# for all k (since wk nonnegative)
with strict inequality for k = i (since wk positive), hence
Σ wkvk > Σ wkvk#.
The last inequality contradicts global optimality of (v1#, …,
vK#) for the weighted sum problem. QED
21
Comments About MOLP
• Goals for a Multi-Objective problem can be
established by solving the problem once for each
objective in turn.
• Solutions obtained using the MiniMax or weighted
sum objective with positive weights are Pareto
Optimal.
• The percentage deviation is
– (actual – target)/target for minimization objectives
– (target – actual)/target for maximization objectives
• If a target value is zero, use the weighted
deviations rather than weighted % deviations.
22
Portfolio of three instruments
• Expected returns r1, r2 and r3 (in %)
• xi: % of the portfolio in instrument i = 1,2,3
(x1+ x2 + x3 =100%)
• Expected return of portfolio
E = x1r1 + x2r2 + x3r3
23
Risk of a portfolio
• Formula for the variance of the portfolio is
σP2 = x12σ12 + x22σ22 + x32σ32
+2x1x2σ12 + 2x1x3σ13+ 2x2x3σ23
• For any number of investment instruments, the
formula is easily remembered as
σP2=xTQx
where x is the (column) vector of percentages of the
portfolio in the various instruments
• Dimension of x = number of instruments in the
portfolio
• Variance formula is nonlinear in x, in fact quadratic
24
3 Stock Investment Example
• 3 stocks to consider
Ex pe c t e d Co v a r i a nc e
I nv e s t me nt Re t ur n Ma t r i x Q
St o c k A 0. 076417 0. 00258 - 0. 00025 0. 00440
St o c k B 0. 134333 - 0. 00025 0. 00276 - 0. 00542
St o c k C 0. 149333 0. 00440 - 0. 00542 0. 03677
25
3 Stock Investment Example
Portfolio Variance The Efficient Frontier
0.04000
0.03500
0.03000
0.02500
0.02000
Efficient Frontier
0.01500
0.01000
0.00500
0.00000
10.00% 11.00% 11.50% 12.00% 12.50% 13.00% 13.50% 14.00% 14.50% 15.00%
Portfolio Return
26
Today’s key points
• MOP deals with multiple objectives
• GP is one way of solving MOP
• Aim in MOP is to help decision maker to find a suitable
point on the efficient frontier
• One possibility is to optimise a weighted sum of all
objectives
• Weighted MiniMax is an alternative approach
• Different weights lead to different points on the efficient
frontier
• Suitable weights need to be determined by the decision
maker in interaction with the model
27
Lecture 6 3E4 Homework
2. Formulate and solve, in Excel, the minimax goal
program associated with the bi-objective 3 Stock
Investment Example.
• use one of the spreadsheets on website as a starting
point
– you will first have to define the targets of your goals with
Excel.
• make the weights data cells in your spreadsheet
• Answer
– Target for expected return = 14.93%
– Target for variance = 0.00110
– Optimal split for equal weights is x = (0.121,0.744, 0.134)
28