multi objective optimization and benchmark functions result

31
Project Incharge: Mr. Divya Kumar Muti-objective optimization using NSGA II and SPEA2 Team(CS07): 1 Piyush Agarwal 2 Saquib Aftab 3 Ravi Ratan 4 Ravi Shankar 5 Pradhumna Mainali Multi-objective optimization 1/31

Upload: piyush-agarwal

Post on 16-Apr-2017

905 views

Category:

Engineering


4 download

TRANSCRIPT

Page 1: Multi objective optimization and Benchmark functions result

Project Incharge: Mr. Divya Kumar

Muti-objective optimization using NSGA II and SPEA2

Team(CS07):

1 Piyush Agarwal2 Saquib Aftab3 Ravi Ratan4 Ravi Shankar5 Pradhumna Mainali

Multi-objective optimization 1/31

Page 2: Multi objective optimization and Benchmark functions result

What we did?

Studied genetic algorithm: single objective optimization,multi-objective optimization problems.Implemented NSGA II and Strength Pareto EvolutionaryAlgorithm (SPEA2) in MATLABTested SPEA2 algorithm on all benchmark functionTested NSGA II algorithm on all benchmark functionCompared the results

Multi-objective optimization 2/31

Page 3: Multi objective optimization and Benchmark functions result

What is Evolutionary Algorithm?

Evolutionary algorithms (EAs) are often well-suited foroptimization problems involving several, often conflictingobjectivesEvolutionary algorithms typically generate sets ofsolutions, allowing computation of an approximation ofthe entire Pareto frontSPEA2 and NSGA II are two such EvolutionaryAlgorithms implemented on multi-objective functions

Multi-objective optimization 3/31

Page 4: Multi objective optimization and Benchmark functions result

Life cycle of EA

Initialization : Initializing the population in the firstgeneration satisfying the bounds and constraints of theproblem.Parent Selection : Selection of fittest individuals for themating poolRecombination: Forming new individuals from themating pool. Crossover and Mutation is applied to theparents to produce new individuals.Survivor Selection: Fittest individuals of parents andchildren combined are selected as population for nextgeneration.

Multi-objective optimization 4/31

Page 5: Multi objective optimization and Benchmark functions result

Life cycle of EA contd.

Figure 1: Life cycle of Evolutionary Algorithm

Multi-objective optimization 5/31

Page 6: Multi objective optimization and Benchmark functions result

NSGA II Algorithm

Input1 N (Population Size)2 P (Population)3 Q (Offsprings)4 T (Maximum number of generations)

Output1 A (non-dominated set)

Multi-objective optimization 6/31

Page 7: Multi objective optimization and Benchmark functions result

NSGA II Algorithm Contd.

1 Initialization: Generate an initial population P.2 Mating selection: Perform binary tournament selection

with replacement on P in order to fill the mating pool.3 Variation: Apply recombination and mutation operators to

the mating pool and set P to the resulting population andstore the result into Q.

4 Non dominated sort: Non dominated sort of P and Q5 Fronts division: Divide into fronts. Front 0 is

non-dominated.6 New generation: Selection of new population from fronts

Multi-objective optimization 7/31

Page 8: Multi objective optimization and Benchmark functions result

Fast non dominated sorting

1 Each population i is compared with every population j.2 ni is the count of individuals which dominate the ith

population.3 Si is the set of individuals that i dominates.4 When ni = 0, that means the individual is the best solution

and is assigned first front.5 After getting the first front,for each individuals in Si, np is

decremented by 1 and the next front in obtained like inStep 4.

Multi-objective optimization 8/31

Page 9: Multi objective optimization and Benchmark functions result

Generation of NSGA II

Figure 2: One generation of NSGA II algorithm

Multi-objective optimization 9/31

Page 10: Multi objective optimization and Benchmark functions result

Evolution of individuals on ZDT 3 Function

Multi-objective optimization 10/31

Page 11: Multi objective optimization and Benchmark functions result

SPEA2 Algorithm

Input1 N(Population Size)2 N(Archive size)3 T (Maximum number of generations)

Output1 A (non-dominated set)

Multi-objective optimization 11/31

Page 12: Multi objective optimization and Benchmark functions result

SPEA2 Algorithm contd.

1 Initialization: Generate an initial population P0 and createthe empty archive P0 = φ. Set t = 0.

2 Fitness assignment: Calculate fitness values of individualsin Pt and Pt.

3 Environmental selection: Copy all non-dominatedindividuals in Pt and Pt to Pt+1 keeping the size N.

4 Termination: If t ≥ T or another stopping criterion issatisfied then set A to the set of decision vectors in Pt+1.Stop.

5 Mating selection: Perform binary tournament selectionwith replacement on Pt+1 in order to fill the mating pool.

6 Variation: Apply recombination and mutation operators tothe mating pool and set Pt+1 to the resulting population.Increment generation counter (t = t + 1) and go to Step 2

Multi-objective optimization 12/31

Page 13: Multi objective optimization and Benchmark functions result

Evaluation of individuals on Viennet Function

Multi-objective optimization 13/31

Page 14: Multi objective optimization and Benchmark functions result

Testing on Benchmark Functions

Both the algorithm, NSGA II and SPEA2 are tested on allbenchmark functions. Benchmark functions may be convex ornon-convex (un-constraint) or can have single or multipleconstraints.For all tests on benchmark, the Red graphrepresents NSGA II curve and Yellow represents SPEA 2 curve.The x-axis represents the First objective function and the y -axis represents Second objective function.

Multi-objective optimization 14/31

Page 15: Multi objective optimization and Benchmark functions result

Schaffer function N. 1

Minimize =

f1(x) = x2

f2(x) = (x − 2)2

s.t =

−A ≤ x ≤ A10 ≤ A ≤ 105

Multi-objective optimization 15/31

Page 16: Multi objective optimization and Benchmark functions result

ZDT1

Minimize =

f1(x) = x1

f2(x) = g(x)h(f1(x), g(x))g(x) = 1 + 9

29∑30

i=2 xi

h(f1(x), g(x)) = 1 −√

f1(x)g(x)

s.t =

0 ≤ xi ≤ 11 ≤ i ≤ 30

Multi-objective optimization 16/31

Page 17: Multi objective optimization and Benchmark functions result

Schaffer function N. 2

Minimize =

f1(x) =

−x, if x ≤ 1x − 2, if 1 ≤ x < 34 − x, if 3 ≤ x < 4x − 4, if 4 ≤ x

f2(x) = (x − 5)2

s.t ={−5 ≤ x ≤ 10

Multi-objective optimization 17/31

Page 18: Multi objective optimization and Benchmark functions result

ZDT3

Minimize =

f1(x) = x1

f2(x) = g(x)h(f1(x), g(x))g(x) = 1 + 9

29∑30

i=2 xi

h(f1(x), g(x)) = 1 −√

f1(x)g(x) − ( f1(x)

g(x) ) sin(10πf1(x))

s.t =

0 ≤ xi ≤ 11 ≤ i ≤ 30

Multi-objective optimization 18/31

Page 19: Multi objective optimization and Benchmark functions result

ZDT2

Minimize =

f1(x) = x1

f2(x) = g(x)h(f1(x), g(x))g(x) = 1 + 9

29∑30

i=2 xi

h(f1(x), g(x)) = 1 − ( f1(x)g(x) )2

s.t =

0 ≤ xi ≤ 11 ≤ i ≤ 30

Multi-objective optimization 19/31

Page 20: Multi objective optimization and Benchmark functions result

Fonseca and Fleming function

Minimize =

f1(x) = 1 − exp(−∑n

i=1(xi −1√

n)2)

f2(x) = 1 − exp(−∑n

i=1(xi −1√

n)2)

s.t =

−4 ≤ xi ≤ 41 ≤ i ≤ n

Multi-objective optimization 20/31

Page 21: Multi objective optimization and Benchmark functions result

Kursawe function

Minimize =

f1(x) =∑2

i=1[−10 exp(−0.2√

x2i + x2

i+1)]

f2(x) =∑3

i=1[|xi|0.8 + 5 sin(x3

i )]√

n)2)

s.t =

−5 ≤ xi ≤ 51 ≤ i ≤ 3

Multi-objective optimization 21/31

Page 22: Multi objective optimization and Benchmark functions result

Poloni’s two objective function (POL)

Minimize =

f1(x, y) = [1 + (A1 − B1(x, y))2 + (A2 − B2(x, y))2]f2(x, y) = (x + 3)2 + (y + 1)2

s.t =

A1 = 0.5 sin(1) − 2 cos(1) + sin(2) − 1.5 cos(2)A2 = 1.5 sin(1) − cos(1) + 2 sin(2) − 0.5 cos(2)B1(x, y) = 0.5 sin(x) − 2 cos(x) + sin(y) − 1.5 cos(y)B2(x, y) = 1.5 sin(x) − cos(x) + 2 sin(y) − 0.5 cos(y)−π ≤ x, y ≤ π

Multi-objective optimization 22/31

Page 23: Multi objective optimization and Benchmark functions result

Viennet function

Minimize =

f1(x, y) = 0.5(x2 + y2) + sin(x2 + y2)

f2(x, y) =(3x−2y+4)2

8 +(x−y+1)2

27 + 15f3(x, y) = 1

x2+y2+1 − 1.1 exp(−(x2 + y2))

s.t ={−3 ≤ x, y ≤ 3

Multi-objective optimization 23/31

Page 24: Multi objective optimization and Benchmark functions result

Binh and Korn function

Minimize =

f1(x, y

)= 4x2 + 4y2

f2(x, y

)= (x − 5)2 + (y − 5)2

s.t =

g1(x, y) = (x − 5)2 + y2

≤ 25g2(x, y) = (x − 8)2 + (y + 3)2

≥ 7.70 ≤ x ≤ 50 ≤ y ≤ 3

Multi-objective optimization 24/31

Page 25: Multi objective optimization and Benchmark functions result

Chakong and Haimes function

Minimize =

f1(x, y) = 2 + (x − 2)2 + (y − 1)2

f2(x, y) = 9x − (y − 1)2

s.t =

g1(x, y) = x2 + y2

≤ 225g2(x, y) = x − 3y + 10 ≤ 0−20 ≤ x, y ≤ 20

Multi-objective optimization 25/31

Page 26: Multi objective optimization and Benchmark functions result

Test Function

Minimize =

f1(x) = x2− y

f2(x) = −0.5x − y − 1

s.t =

g1(x, y) = 6.5 − x

6 − y ≥ 0g2(x, y) = 7.5 − 0.5x − y ≥ 0g3(x, y) = 30 − 5x − y ≥ 0−7 ≤ x, y ≤ 4

Multi-objective optimization 26/31

Page 27: Multi objective optimization and Benchmark functions result

Osyczka and Kundu function

Minimize =

f1(x) = −25(x1 − 2)2− (x2 − 2)2

− (x3 − 1)2− (x4 − 4)2

− (x5 − 1)2

f2(x) =∑6

i=1 x2i

s.t = g1(x) = x1 + x2 − 2 ≥ 0g2(x) = 6 − x1 − x2 ≥ 0g3(x) = 2 − x2 + x1 ≥ 0g4(x) = 2 − x1 + 3x2 ≥ 0g5(x) = 4 − (x3 − 3)2

− x4 ≥ 0g6(x) = (x5 − 3)2 + x6 − 4 ≥ 00 ≤ x1, x2, x6 ≤ 101 ≤ x3, x5 ≤ 50 ≤ x4 ≤ 6

Multi-objective optimization 27/31

Page 28: Multi objective optimization and Benchmark functions result

Constr-Ex problem function

Minimize =

f1(x, y) = xf2(x, y) =

1+yx

s.t = g1(x, y) = y + 9x ≥ 6g1(x, y) = −y + 9x ≥ 10.1 ≤ x ≤ 10 ≤ y ≤ 5

Multi-objective optimization 28/31

Page 29: Multi objective optimization and Benchmark functions result

Work in progress

One of the application of multi-objective real life problems isPortfolio Optimization. In a portfolio problem with an assetuniverse of n securities, let xi (i = 1, 2, . . . , n) designate theproportion of initial capital to be allocated to security i. Andtypically there are two conflicting goals

Minimize risk.∑n

i=1∑n

j=1 xiσijxj

Maximize profit∑n

i=1 rixi

where ri is the expected return of ith security. σij is the covariance between ith and jth security.

Multi-objective optimization 29/31

Page 30: Multi objective optimization and Benchmark functions result

Constraints of Portfolio Optimization

n∑i=1

xi = 1

α <= xi <= β

dmin <= d <= dmax

5/10/40 rule

0 <= α <= β <= 1

where, α and β are minimum and maximum capital proportionto be allocated to security i respectively. dmin and dmax is the

minimum and maximum number of non zero securities in theportfolio respectively.

Multi-objective optimization 30/31

Page 31: Multi objective optimization and Benchmark functions result

Conclusion

It was derived from the project that the multi-objectiveevolutionary algorithm can solve multi-objective functionssatisfying given sets of constraints. Higher number ofgenerations will lead to better solutions until an upper bound isreached where all solutions tend to converge. Multi-objectiveoptimization algorithms can solve various real life applicationsby converting them into sets of objective functions andapplying constraints.

Multi-objective optimization 31/31