03 Multiobjective Programming

advertisement
3 Multiobjective Programming
Multiple objectives: house, size vs costs, car: economy
vs comfort, economic policy: inflation vs
unemployment: tradeoffs between objectives.
MCDM: multicriteria decision making problems,
MADM: multi-attribute decision making &
MOLP: multiobjective (linear) programming.
Here, MOLP. Observation: the concept of optimality
collapses. Optimal w.r.t. what???
Vilfredo Pareto, 1848-1923 for pareto-optimality.
MOLP has two main classes: Vector optimization &
goal programming.
Vector Optimization
Example:
Max z1 = 3x1 + x2
Max z2 = 2x1 + x2
s.t.
x1 + x2 ≤ 3
x2 ≤ 4
x1 + x2 ≤ 6
x1
≤5
x 1, x 2 ≥ 0
Consider the objective(s) first.
(I)
(II)
(III)
(IV)
Gradient z & iso-profit line through x with “+++”
indicating improving objective values & “---” showing
deteriorating objective values.
Consider now two objectives with gradients z1 & z2.
Four cones C--, C+-, C-+, & C++.
C++ is the improvement cone. It includes solutions that
are better than the anchor point x.
→ from x, move into the improvement cone whenever
possible.
The improvement cone is a “pocket of compromise.”
Much conflict → little room for compromise,
little conflict→ much room for compromise.
Generating compromises by introducing new issues.
Rule: A point is nondominated, noninferior, efficient,
or pareto-optimal, if we cannot move into its
improvement cone without leaving the feasible set.
Collection of all nondominated points = efficient
frontier. Note: interior points can never be efficient, as
long as all objectives are linear.
Example:
Bold line: Nondominated frontier.
Note: The nondominated set is connected.
All extreme points of the nondominated can be
determined by an adaptation of the simplex method.
Problem: Manual choice among (many!!) alternatives.
3.2 Solution Approaches
Optimization Problems
to
Vector
Weighting Method
Idea: Multiply each objective by a weight (that
symbolizes its unit achievement), & form a composite
objective by adding the individual objectives. Result:
an LP. Solve. The optimal solution is an efficient point.
Above example: Max z1 = 3x1 + x2 &
Max z2 = 2x1 + x2.
Suppose that we choose w1 = 5 and w2 = 1. The the
composite objective is Max z = w1z1 + w2z2 = 5(3x1 + x2)
+ 1(2x1 + x2) = 13x1 + 6x2. Its optimal solution is
x1  5, x 2  1 (point D).
Nondominated solutions generated by the weighting
method with different weight combinations.
(w1, w2)
(5, 1)
(3, 1)
(1, 1)
(1, 3)
(1, 5)
z = w1z1 + w2z2
13x1 + 6x2
7x1 + 4x2
x1 + 2x2
3x1 + 4x2
7x1 + 6x2
( x1 , x 2 )
D = (5, 1)
D = (5, 1)
C = (2, 4)
B = (1, 4)
A = (0, 3)
( z1 , z 2 )
(16, 9)
(16, 9)
(10, 0)
(7, 2)
(3, 3)
Constraint method
Main idea: Keep one objective as such, determine
“reasonable” achievements of all other objectives &
write them as constraints. Solve as LP.
(Previous) example:
Max z1 = 3x1 + x2
s.t.
x1 + x2 ≤ 3
x2 ≤ 4
x 1 + x2 ≤ 6
x1
≤5
2x1 + x2 ≥ b2
x1, x2 ≥ 0.
Optimal solutions for different values of b2.
b2
5
0
1
2
3
4
5
6
7
8
9
10
( x1 , x 2 )
no feasible solution
(2, 4)
(2⅓, 3⅔)
(2⅔, 3⅓)
(3, 3)
(3⅓, 2⅔)
(3⅔, 2⅓)
(4, 2)
(4⅓, 1⅔)
(4⅔, 1⅓)
(5, 1)
(5, 1)
z1
10
10⅔
11⅓
12
12⅔
13⅓
14
14⅔
15⅓
16
16
Graphical representation:
Both, the weighting method & the constraint method,
are approxmiation methods.
3.3 Goal Programming
“Hardness” of constraints. Example: budget
constraint. Appears hard; however, may be violated:
borrow.
Distinguishes between “hard constraints”
(desirable, but not mandatory) “goal constraints.”
&
Simon, 1957, “satisficing” (= satisfy + suffice).
Modeling tools: target values (or aspiration levels) and
deviational variables d  & d  .
Desired
situation
Formulation of goal
constraint
LHS ≤ RHS
LHS = RHS
LHS  d   d   RHS
d  , d   0
LHS ≥ RHS
Contribution to
the objective
function
Min d 
Min d   d 
Min d 
Example: Spend x1 on food & x2 on entertainment. We
have $100. Constraint: x1 + x2 ≤ 100
Formulation as goal constraint:
x1 + x2 + d   d  = 100.
For instance, if we spend $60 on food & $30 on
entertainment, 60 + 30 + d   d  = 100, so that d  
d  = 10.
Only one deviational variable can be positive, so that
we presently “underachieve” the budget by $10.
On the other hand, if our expenditures were $120, we
“overachieve” the budget by $20.
We then aggregate the (partial) objectives to a
composite objective.
Example: Distribute jewelry among five stores. The
first three stores are in shopping malls.
Mandatory constraints:
(a) Allocate between 1,000 and 1,200 carats to the five
stores.
(b) Store 5 must receive at least 300 carats of
diamonds.
Desired properties of the allocation:
(c) The stores in the malls should receive at least 80%
of all the diamonds, if possible.
(d) The allocations to the stores in the mall should be
equal to each other, if possible.
(e) The probabilities of theft in the stores have been
estimated to be 0.1%, 0.1%, 9%, 2% and 3%. The
owner would like to minimize the expected loss.
Requirement (e) is considered to be 25 times as
important as requirement (d), which, in turn, is
considered twice as important as (c).
Define decision variables x1, x2, …, x5 as the quantity
of diamonds allocated to stores 1, 2, 3, 4, and 5.
Constraints:
x1 + x2 + x3 + x4 + x5 ≥ 1,000
x1 + x2 + x3 + x4 + x5 ≤ 1,200
x5 ≥ 300
(1)
(2)
(3)
If requirement (c) were written as a constraint, it is x1
+ x2 + x3 ≥ 0.8(x1 + x2 + x3 + x4 + x5) or, equivalently,
0.2x1 + 0.2x2 + 0.2x3 − 0.8x4 − 0.8x5 ≥ 0.
As goal constraint, we obtain
0.2x1 + 0.2x2 + 0.2x3 − 0.8x4 − 0.8x5 + d1 − d1 = 0 (4)
with Min d1 .
Requirement (d): the average allocation to a store in
the mall is 13 ( x1  x 2  x3 ) , so that we would like to see
x1 = 13 ( x1  x 2  x3 ) , x2 = 13 ( x1  x 2  x3 ) , and x3 =
1
3 ( x1  x 2  x 3 ) . Rewriting the first of these constraints
results in
write
2
3
2
3
x1  13 x 2  13 x3  0 . As a goal constraint, we
x1  13 x 2  13 x3  d 2  d 2  0
(5)
with the objective function contribution Min d 2  d 2 .
Similar for the other stores in the mall.
 13 x1  23 x 2  13 x3  d 3  d 3  0
(6)
 13 x1  13 x 2  23 x3  d 4  d 4  0
(7)
with Min d 3  d 3 and Min d 4  d 4 .
Requirement (e) The original objective is
Min z = 0.001x1 + 0.001x2 + 0.09x3 + 0.02x4 + 0.03x5.
Set the expected loss at some unattainably low level,
e.g., z = 0, minimize the overachievement
0.001x1 + 0.001x2 + 0.09x3 + 0.02x4 + 0.03x5
+ d 5  d 5 = 0
with the objective function contribution Min d 5 .
(8)
Complete problem:
Min z = 50 d 5 + 2( d 2  d 2 ) + 2( d 3  d 3 )
+ 2( d 4  d 4 ) + d1
s.t. constraints (1) – (8)
and nonnegativity constraints for all variables.
Optimal solution: 466.69 carats of diamonds to store 1,
233.31 carats to store 2, no diamonds to stores 3 and 4,
and the minimally required 300 carats to store 5.
Download