Multi-Objective Optimization - A quick introductiongn387/glp/lec1.pdf · Multi-Objective...

35
Multi-Objective Optimization A quick introduction Giuseppe Narzisi Courant Institute of Mathematical Sciences New York University 24 January 2008

Transcript of Multi-Objective Optimization - A quick introductiongn387/glp/lec1.pdf · Multi-Objective...

Multi-Objective OptimizationA quick introduction

Giuseppe Narzisi

Courant Institute of Mathematical SciencesNew York University

24 January 2008

Outline1 Introduction

MotivationsDefinitionNotion of optimum

2 Dominance and Pareto-optimalityIdeal, Utopian and Nadir objective vectorsDominance relation and Properties

3 Pareto-OptimalityNon-dominated setGlobally and Locally Pareto-optimal sets

4 Procedure for Finding a Non-Dominated SetMotivationThree different approachesNon-dominated sorting of a Population

5 Optimality Conditions

Motivation

Most problems in nature have several (possibly conflicting)objectives to be satisfied.Many of these problems are frequently treated assingle-objective optimization problems by transforming allbut one objective into constraints.

Scope of Optimizationin practice

Optimal design & manufacturingInverse Problems: output known, find input.Parameter optimization for optimal performanceSystem modelingPlanningOptimal controlForecasting and predictionData mining (classification, clustering, pattern recognition)Machine learningBioinformatics

What is a MOOP?In words

Problem of finding a vector of decision variables whichsatisfies constraints and optimizes a vector function whoseelements represent the objective functions.These functions form a mathematical description ofperformance criteria which are usually in conflict with eachother.Hence, the term optimize means finding such a solutionwhich would give the values of all the objective functionsacceptable to the decision maker.

What is a MOOP?Formal definition

min F(x) = [f1(x), f2(x), . . . , fM(x)]subject to G(x) = [g1(x), g2(x), . . . , gJ(x)] ≥ 0

H(x) = [h1(x), h2(x), . . . , hK (x)] = 0x (L)

i ≤ xi ≤ x (U)i , i = 1, . . . , N

(1)

x = (x1, x2, . . . , xN)T is the vector of the N decisionvariables,M is the number of objectives fi ,J inequality and K equality constraints,

x (L)i and x (U)

i are respectively the lower and upper boundfor each decision variables xi .

Edgeworth-Pareto solutionNotion of optimum for MOOPs

Find good compromises (or trade-offs) instead of a singlesolution (global optimization).Originally proposed by Francis Ysidro Edgeworth in 1881;it was later generalized by Vilfredo Pareto (in 1896).

Decision space vs. Objective space

In multi-objective optimization the objective functionconstitute a multidimensional spaceFor each solution x in the decision variable space X thereis a point in the objective space Z denoted byf (x) = z = (z1, z2, . . . , zM)T .

Convex and Non-convex MOOP

DefinitionA multi-objective optimization problem is convex if all objectivefunctions are convex and the feasible region is convex.

DefinitionA function f : Rn → R is a convex function if for any two pair ofsolutions x1, x2 ∈ Rn, the following condition is true:

f (λx1 + (1− λ)x2) ≤ λf (x1) + (1− λ)f (x2), (2)

for all 0 ≤ λ ≤ 1

Since a MOOP has two spaces, the convexity must beanalyzed on both spaces.Moreover, although the search space can be non-convex,the Pareto optimal front can be convex.

Two approaches to Multi-Objective Optimization

Although the solution of MOOP consists of a set ofsolutions, from a practical point, the user needs only onesolutionQuestion: Which of this optimal solution must one choose?Two possible approaches:

1 PREFERENCE-BASED PROCEDURE:Composite objective function as the weighted sum of theobjectivesOnly if a relative preference factor of the objectives is knownin advance.

2 IDEAL PROCEDURE:1 Find multiple trade-off solutions with a wide range of values

for the objectives.2 Choose one of the obtained solution using higher-level

information

Ideal Objective Vector

DefinitionThe m-th component of the ideal objective vector z∗ is theconstrained minimum of the following problem:

min fm(x)subject to x ∈ S (3)

Thus, the ideal vector is defined as following:

z∗ = (f ∗) = (f ∗1 , f ∗2 , . . . , f ∗M)T (4)

where f ∗i is the function value associated with the minimumsolution (x∗

i ) for the m-th objective function.

Ideal Objective VectorConsiderations

In general, the ideal objective vector corresponds to anon-existent solution.The only way an ideal objective vector corresponds to afeasible solution is when the minimum of all objectivefunctions are identical.In this case the objectives are not conflicting.The ideal objective vector denotes the array with the lowerbound of all objective functions.

Utopian Objective Vector

Some algorithms may require a solution which is strictly betterthan any other solution in the search space. For this purposewe define:

DefinitionA Utopian objective vector z∗∗ is a vector whose componentsare slightly smaller than that of the ideal objective vector:z∗∗

i = z∗i − εi with εi > 0 for all i ∈ 1, 2, . . . , M

Nadir Objective Vector

DefinitionThe m-th component of the nadir objective vector znad is theconstrained maximum of the following problem:

max fm(x)subject to x ∈ P (5)

where P is the Pareto-optimal set.Unlike the ideal objective vector, znad represents the upperbound of each objective function in the Pareto-optimal set (notin the entire search space).

Nadir & Ideal objective vectors

The nadir objective vector may represent an existing ornon-existing solution (depending on the convexity andcontinuity of the Pareto-optimal set).In order to normalize the each objective, the knowledge ofthe nadir and ideal vectors can be used as follows:

f normi =

fi − z∗i

znadi − z∗

i(6)

Ideal, Utopian and Nadir objective vectors

������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

1 2

max max

z*2

z*

znad

z*1

w

z **

2

(f ,f )

f1

f

Feasible space

Dominance Relation

DefinitionA solution x1 is said to dominate another solution x2, and wewrite x1 � x2, if both the following conditions are true:

1 The solution x1 is no worse than x2 in all objectives.2 The solution x1 is strictly better than x2 in at least one

objective.

x1 � x2 iff{

fi(x1) ≤ fi(x2) ∀i ∈ 1, . . . , M∃j ∈ 1, . . . , M fj(x1) < fj(x2)

(7)

if any of the above conditions is violated the solution x1 doesnot dominate the solution x2.

Dominance RelationExample

Dominance RelationProperties

REFLEXIVE

The dominance relation is not reflexive since any solution xdoes not dominate itself (by definition of dominance).

SYMMETRIC

The dominance relation is not symmetric because x � ydoes not imply y � x. In fact the opposite is true, if x � ythen y � x

ANTISYMMETRIC

Since the dominance relation is not symmetric it cannot beantisymmetric as well.

TRANSITIVE

The dominance relation is transitive. If x � y and y � z thanx � z.

Dominance RelationTransitivity

x � y iff{

fi(x) ≤ fi(y) ∀i ∈ 1, . . . , M∃j ∈ 1, . . . , M fj(x) < fj(y)

(8)

y � z iff{

fi(y) ≤ fi(z) ∀i ∈ 1, . . . , M∃k ∈ 1, . . . , M fk (y) < fk (z)

(9)

x � zfi(x) ≤ fi(y) ≤ fi(z) ∀i ∈ 1, . . . , M∃l ∈ 1, . . . , M fl(x) < fl(z)

if k = j then fj(x) < fj(y) < fj(z)if k 6= j then

if we chose j : fj(x) < fj(y) ≤ fj(z)if we chose k : fk (x) ≤ fk (y) < fk (z)

Dominance RelationMore properties

Another interesting property is that if a solution x does notdominate a solution y, this does not imply that y dominatesx (for example they can be both non-dominated).The dominance relation qualifies as an ordering relation,because it is at least transitive.Since the dominance relation is not reflexive, it is a strictpartial order.

In general, if a relation is reflexive, antisymmetric and transitive,it is called a partial order relation. However, the dominancerelation is not reflexive and not antisymmetric, so thedominance relation is not a partial order relation in the thegeneral sense.

Non-dominated set

For a given set of solution we can perform all possiblepairwise comparisons and find which solution dominateswhich and which solutions are not dominated with respectto each other.This set has the property of dominating all the solutionsthat do not belong to the set.

Definition (Non-dominated set)Among a set of solutions P, the non-dominated set of solutionsP ′ are those that are not dominated by any member of the setP.

Globally and Locally Pareto-optimal sets

Like there are global and local optimal solutions in the case ofsingle-objective optimization we can define global and localPareto-optimal sets.When the set P is the entire search space (P = S) then theresulting non-dominated set P ′ is called Pareto-Optimal set.

Definition (Globally Pareto-Optimal set)The non-dominated set of the entire feasible search space S isthe globally Pareto-optimal set.

Definition (Locally Pareto-Optimal set)If for every member x in a set P, there exists no solutions y inthe neighborhood of x, ||y− x|| ≤ ε, dominating any member ofthe set P, then P constitutes a locally Pareto-optimal set.

Globally and Locally Pareto-optimal setspicture

������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

f

f1

2

1

2x

x

Locally Pareto−optimal set

Globally Pareto−optimal set

XX

Strong dominance & Weak Pareto-Optimality

The previous definition of dominance is usually referred as theweak dominance relation. The strong version is defined asfollow:

Definition (Strong dominance)A solution x strongly dominates a solution y, x ≺ y, if solution xis strictly better than solution y in all M objectives.

Clearly, if x ≺ y than x � y but the vice versa does not hold.

Definition (Weakly non-dominated set)Among a set of solutions P the weakly non-dominated set ofsolutions P ′ are those that are not strongly dominated by anyother member of the set P.

We have that |P ′| ≥ |P|.

Motivation

How do we find the non-dominated set in a givenpopulation of solutions?Since the non-dominated set may be required to beidentified in each iteration of a multi-objective optimizationalgorithm, we are interested in computationally efficientprocedures.We will discuss here three procedures, starting from onethat is naive and slow to one that is efficient and fast.

Approach 1Naive and slow

Non-dominated set (V. 1)1. i := 12. P ′ := �3. while (i ≤ |P|)4. j := 15. while (j ≤ |P|)6. if (j 6= i)7. if (xj � xi) continue8. else j := j + 19. end_while10. if (j = |P|) P ′ := P ′ ∪ {i}11. i := i + 112. end_while

Let us define the complexityhere as the total number offunction evaluations.the inner while loop requiresO(N) comparisons fordomination and eachcomparison needs M functionvalue comparisons. So wehave a total complexity ofO(MN).the outside loop requires O(N)comparisons as well, so wehave a total complexity ofO(MN2).

Approach 2Continuously updated

Non-dominated set (V. 2)1. P ′ := {1}2. i := 23. while (i ≤ |P|)4. j := 15. while (j ≤ |P ′|)6. if (xi � xj)7. P ′ := P ′ \ {j}8. else if (xj � xi)9. continue10. j := j + 111. end_while12. if (j = |P ′|)13. P ′ := P ′ ∪ {i}14. i := i + 115. end_while

x2 compared with x1x3 compared at most with x1, x2and so on...This requires in the worst case:1 + 2 + · · ·+ (N − 1) = N(N − 1)/2domination checks.Although the total complexity is stillO(MN2), this method requirestypically half of that required byapproach 1.

Approach 3Kung et al.’s efficient method (1975)

Front(P)1. Sort1(P)2. if (|P| = 1)3. then return(P)4. else5. T := Front([P1,Pb|P|/2c])6. B := Front([Pb|P|/2c+1,P|P|])7. i := 1,M := �8. while (i ≤ |B|)9. j := 110. while (j ≤ |T |)11. if (xj � xi)12. then j := j + 113. else continue14. end_while15. if (j = |T |) M := M∪ {i}16. i := i + 117. end_while18. return(T ∪M)

It can be shown that thecomplexity of this approach isO(N(logN)M−2) for M ≥ 4 andO(NlogN) for M = 2, 3, whereN = |P|.The details of the complexitycalculation can be found in:Kung et al. [2].

Non-dominated sorting of a Population

Non-Dominated Sorting1. for j = 1, 2, . . .2. Pj = �4. end_for3. j := 15. while (P 6= �)6. P ′ := NDS(P)7. Pj := P ′

8. P := P \ P ′

9. j := j + 110.end_while11.return(Pi , i = 1, 2, . . . , j)

Some algorithms require to thepopulation to be classified intoseveral levels of non-domination.Complexity? The sum of theindividual complexities involved inidentifying each non-dominated set.|P | decreases after eachnon-dominated set computationFor practical purpose the complexityis governed by the procedure foridentifying the first non-dominatedset.

An O(MN2) non-dominated sorting procedure

Non-Dominated Sorting1. for i = 1, 2, . . . , |P|2. ni := 03. Si := �4. for j = 1, 2, . . . , |P|5. if (xi � xj)&(j 6= i)6. Si := Si ∪ {j}7. else if (xj � xi)8. ni := ni + 19. end_for10. if (ni = 0)11. P1 := P1 ∪ {i}12. end_for13. k := 114. while (Pk 6= �)15. Q := �16. for each i ∈ Pk17. for each j ∈ Si18. nj := nj − 119. if (nj = 0) Q := Q ∪ {j}20. end_for21. end_for22. k := k + 123. Pk := Q24. end_while

For each solution we compute twoentities:

domination count ni : the number ofsolutions that dominate xi .Si : the set of solutions whichsolution i dominates.

Complexity is O(MN2):O(MN2) for computing ni and SiO(N2) for computing all the frontsPk , k = 1, 2, . . . (non-dominationlevels).Note that each solution will be visited at most N − 1 timesbefore its domination count become zero and will never bevisited again. There are at most N − 1 such solutions.

Even if the time complexity isreduced to O(MN2) the storage hasbeen increased to O(N2).

Karush-Kuhn-Tucker Theorem for MOOPsnecessary conditions

TheoremA necessary condition for a solution x∗ to be Pareto-optimal isthat there exist vectors λ > 0 and u ≥ 0 where (λ ∈ RM , u ∈ RJ

and λ, u 6= 0) such that the following conditions are true:∑Mm=1 λm 5 fm(x∗)−

∑Jj=1 uj 5 gj(x∗) = 0, and

ujgj(x∗) = 0,∀j = 1, 2, . . . , j(10)

The above theorem does not guarantee the existence of aPareto-optimal solution. This means that any solution thatsatisfies equation (10) is not necessarily a Pareto-optimalsolution.

Optimality conditionsspecial cases

For an unconstrained MOOP the above theorem reducesto:

M∑m=1

λm 5 fm(x∗) = 0 (11)

For a problem with n = M (equal num. of decisionvariables and objectives) we have:

M∑m=1

5fm(x∗) = 0 (12)

The determinant of the partial derivative matrix must bezero for Pareto-optimal solutions.For a two-variable, two objective MOOP the abovecondition reduces to:

∂f1∂x1

∂f2∂x2

=∂f1∂x2

∂f2∂x1

(13)

Karush-Kuhn-Tucker Theorem for MOOPssufficient conditions

The following theorem offers sufficient conditions for a solutionto be Pareto-optimal for convex function.

TheoremLet the objective functions be convex and the constraintfunctions non-convex. Let the objective and constraint functionsbe differentiable at solution x∗. A sufficient condition for x∗ to bePareto-optimal is that there exist vectors λ > 0 and u ≥ 0 where(λ ∈ RM and u ∈ RJ ) such that the following conditions are true:∑M

m=1 λm 5 fm(x∗)−∑J

j=1 uj 5 gj(x∗) = 0, andujgj(x∗) = 0,∀j = 1, 2, . . . , j

(14)

For Further Reading

Kalyanmoy DebMulti-Objective Optimization Using EvolutionaryAlgorithms.John Wiley & Sons, Inc, New York, NY, USA, 2001.

Kung, H. T., Luccio, F., and Preparata, F. P. 1975.On Finding the Maxima of a Set of Vectors.J. ACM 22, 4 (Oct. 1975), 469-476.