Population-Based Incremental Learning for Multiobjective - - PowerPoint PPT Presentation

population based incremental learning for multiobjective
SMART_READER_LITE
LIVE PREVIEW

Population-Based Incremental Learning for Multiobjective - - PowerPoint PPT Presentation

Population-Based Incremental Learning for Multiobjective Optimisation Sujin Bureerat and Krit Sriworamas Department of Mechanical Engineering, Faculty of Engineering, Khon Kaen University, Thailand, 40002 Sujbur@kku.ac.th Outlines


slide-1
SLIDE 1

Population-Based Incremental Learning for Multiobjective Optimisation

Sujin Bureerat and Krit Sriworamas Department of Mechanical Engineering, Faculty of Engineering, Khon Kaen University, Thailand, 40002 Sujbur@kku.ac.th

slide-2
SLIDE 2

Outlines

Introduction Multiobjective Optimisation Multiobjective PBIL Comparative Performance Tests Results Conclusions and Discussion

slide-3
SLIDE 3

Introduction

Using EAs are advantageous in that they are simple to

use

more suitable for global optimisation They can deal with all kinds of design variables The search procedure can hardly stall can search for a Pareto optimal set within one simulation

run

Disadvantage: complete lack of consistency & low

convergence rate

no convergence guaranteed, the results obtained are classified as an approximated

Pareto front.

slide-4
SLIDE 4

Multiobjective Optimisation

Math Problem Definition Find x such that Min: f = {f1(x),…,fm(x)} Subject to gi(x) ≤ 0 hi(x) = 0

slide-5
SLIDE 5

Multiobjective Optimisation

f2

Feasible region Pareto front

f1

  • Ex. Illustaration of Bi-objective

Optimisation Problem

slide-6
SLIDE 6

MO-PBIL

Probability vectors representing populations in PBIL Note: binary design solution is a row of the populations

population 1 population 2 population 3 0 0 1 1, 0 1 1 0, 0 1 0 1 1 1 0 0, 1 1 0 1, 1 0 0 1 0 0 1 1, 1 0 1 0, 0 0 0 1 1 1 0 0, 0 0 0 1, 0 1 0 0 Probability Vectors [0.5, 0.5, 0.5, 0.5] [0.5, 0.5, 0.5, 0.5] [0.25, 0.5, 0, 0.75]

slide-7
SLIDE 7

MO-PBIL

PBIL for Single objective optimisation

1.

Initial P, probability vector

2.

Generate binary solutions {bi} from P

3.

Find corresponding objective function values {fi}

4.

Find bi that gives the best fi

5.

If termination criterion is met stop;

  • therwise, update P using bi and go to 2.
slide-8
SLIDE 8

MO-PBIL Updating Equations

Updating a probability vector P

LR b LR P P

i

  • ld

i new i

+ − = ) 1 (

Mutation

ms ms P P

  • ld

i new i

). 1

  • r

( rand ) 1 ( + − =

  • Eq. 1
  • Eq. 2
slide-9
SLIDE 9

MO-PBIL

PBIL for multiobjective optimisation

1.

Initial P, probability matrix & Pareto archive Pareto

2.

Generate binary solutions {bi} from P

3.

Find objective function values {fi} of {bi}

4.

Replace Pareto with a new non-dominated set

  • btained from sorting {bi} ∪ old Pareto

5.

If the new Pareto’s size is too big, discard some of them using the adaptive grid algorithm

6.

If termination criterion is met stop; otherwise, update P using updating Scheme1 or Scheme2 and go to 2.

slide-10
SLIDE 10

MO-PBIL Updating SCHEME1

For the number of row of P Select some of the members in Pareto at

random leading to a set of solution {ci}

Find b where jth element of b is mean(the jth

elements of {ci})

Update the ith row of P using b Repeat for all rows of P

slide-11
SLIDE 11

MO-PBIL Updating SCHEME2

For the number of row of P Generate weighting factors wi randomly such

that ∑wi = 1

Find a solution b from Pareto, b has the best

F value & F = ∑wifi

Update the ith row of P using b Repeat for all rows of P

slide-12
SLIDE 12

MO-PBIL Flowchart

Initialisati

  • n

k= 0 Pk,i,j = 0.5, Paretok = { } Find Xk,Fk from Pk k = k+ 1 Update Pk using Paretok Stop ? Post- processing yes no Find Paretok+ 1 from Paretok ∪ Xk

slide-13
SLIDE 13

MO-PBIL Ex. Problem 1

Find x (one design variable) Min: f1 = x2 f2 = (x-2)2 x ∈ [-1,3]

  • No. of binary strings = 5
  • No. of solutions = 8
  • No. of probability vectors = 2

Thus, one prob. vector creates 4 solution

slide-14
SLIDE 14

MO-PBIL Ex. Problem 2

Initial P(2x5) = [0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5] {bi}1 generated from the 1st row of P = [0 0 1 1 1 0 1 0 0 1 0 1 1 0 0 1 0 0 1 1]*

*Note: binary design solution is a column of the population

slide-15
SLIDE 15

MO-PBIL Ex. Problem 3

Initial P(2x5) = [0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5] {bi}2 generated from the 2nd row of P = [0 1 0 1 1 0 0 1 0 1 1 0 0 1 0 1 0 1 0 1]*

*Note: binary design solution is a column of the population

slide-16
SLIDE 16

MO-PBIL Ex. Problem 4

Initial P(2x5) = [0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5] The initial population {bi} = {bi}1∪{bi}2 = [0 0 1 1 | 0 1 0 1 1 0 1 0 | 1 0 0 1 0 1 0 1 | 0 1 1 0 1 0 0 1 | 0 1 0 1 0 0 1 1 | 0 1 0 1]* Decoded to be x x:0.2903 -0.4839 1.4516 2.7419 -0.7419 2.7419 -0.4839 2.4839 f1:0.0843 0.2341 2.1072 7.5182 0.5505 7.5182 0.2341 6.1696 f2:2.9230 6.1696 0.3007 0.5505 7.5182 0.5505 6.1696 0.2341

*Note: binary design solution is a column of the population

slide-17
SLIDE 17

MO-PBIL Ex. Problem 5

Non-dominated sorting b1, b3 and b8 are saved to the archive as Pareto = {Pareto1 Pareto2 Pareto3}

Pareto = [0 1 1

1 1 1 0 0 0 1 0 1 0 1 1]

slide-18
SLIDE 18

MO-PBIL Ex. Problem 6

Updating probability SCHEME1 1st row of P (P1), use c={b1 b3} mean(c) = [0.5 1 0 0.5 0.5] P1= [0.5 0.75 0.25 0.5 0.5] (use Eq. 1 LR = 0.5) 2st row of P (P2), use c={b1 b3} mean(c) = [0.5 1 0 0.5 0.5] P2= [0.5 0.75 0.25 0.75 0.5] (use Eq. 1 LR = 0.5) Updated P = [0.5 0.75 0.25 0.5 0.5 0.5 0.75 0.25 0.75 0.5]

slide-19
SLIDE 19

MO-PBIL Ex. Problem 7

New population according to the updated probability P by SCHEME1 P = [0.5 0.75 0.25 0.5 0.5 0.5 0.75 0.25 0.75 0.5] b = [0 1 1 0 | 1 0 1 0 1 1 0 1 | 1 1 1 0 1 0 0 0 | 0 1 0 0 0 1 0 1 | 1 1 0 1 1 0 1 0 | 0 1 1 0]*

*Note: binary design solution is a column of the population

slide-20
SLIDE 20

MO-PBIL Ex. Problem 8

Updating probability SCHEME2 1st row of P (P1), random w={0.2207 0.7793} b3 = [1 1 0 0 1] gives the min F = w1f1 + w2f2 P1= [0.5 0.75 0.25 0.5 0.5] (use Eq. 1 LR = 0.5) 2st row of P (P2), random w={0.6158 0.3842} b1 = [0 1 0 1 0] gives the min F = w1f1 + w2f2 P2= [0.5 0.75 0.25 0.75 0.5] (use Eq. 1 LR = 0.5) Updated P = [0.75 0.75 0.25 0.25 0.75 0.25 0.75 0.25 0.75 0.25]

slide-21
SLIDE 21

MO-PBIL Ex. Problem 9

New population according to the updated probability P by SCHEME2 P = [0.75 0.75 0.25 0.25 0.75 0.25 0.75 0.25 0.75 0.25] b = [1 0 1 1 | 0 1 0 0 0 1 1 1 | 1 1 0 1 0 1 0 0 | 0 0 1 0 1 0 0 0 | 1 0 1 1 1 1 0 1 | 0 0 1 0]*

*Note: binary design solution is a column of the population

slide-22
SLIDE 22

Comparative Performance Tests 1 [8]

F1: convex Pareto front

g f g f h n x g x f

n i i

/ 1 ) , ( ) 1 /( 9 1 ) ( ) (

1 1 2 1 1

− = − ⋅ + = =

∑ =

x x

where n = 30 and xi ∈ [0,1].

( )

2 1 1 2 1 1

/ 1 ) , ( ) 1 /( 9 1 ) ( ) ( g f g f h n x g x f

n i i

− = − ⋅ + = =

∑ =

x x

F3: non-contiguous convex Pareto front ( )

) 10 sin( / / 1 ) , ( ) 1 /( 9 1 ) ( ) (

1 1 1 1 2 1 1

f g f g f g f h n x g x f

n i i

π − − = − ⋅ + = =

∑ =

x x

where n = 30 and xi ∈ [0,1]. where n = 30 and xi ∈ [0,1]. F2: nonconvex counterpart to F1

slide-23
SLIDE 23

Comparative Performance Tests 2

F4: Pareto front with multimodality

( )

( )

g f g f h f x n g x f

n i i

/ 1 ) , ( ) 4 cos( 10 1 10 1 ) ( ) (

1 1 2 1 2 1 1

− = − + − + = =

∑ =

π x x

F5: deceptive problem

1 1 2 1 1

/ 1 ) , ( )) ( ( ) ( ) ( 1 ) ( f g f h x u v g x u f

n i i

= = + =

∑ =

x x

where xi represents a binary string, u(xi) gives the number of ones in the bit vector xi,

⎩ ⎨ ⎧ = < + = 5 ) ( ; 1 5 ) ( ); ( 2 )) ( (

i i i i

x u x u x u x u v

F6: non-uniformly distributed Pareto front

( )

( )

2 1 1 25 . 2 1 6 1 1

/ 1 ) , ( ) 1 /( 9 1 ) ( ) 6 ( sin ) 4 exp( 1 ) ( g f g f h n x g x x f

n i i

− = − ⋅ + = − − =

∑ =

x x π

where n = 30 and xi ∈ [0,1].

where n = 30 and x1 ∈ [0,1] and x2, …, xn ∈ [-5,5]. and n = 11, x1 ∈ {0,1}30, and x2,…,xn ∈ {0,1}.

slide-24
SLIDE 24

Comparative Performance Tests 3

F7 [14]

x

min

( ) ( ) ⎟

⎠ ⎞ ⎜ ⎝ ⎛ + − − = ⎟ ⎠ ⎞ ⎜ ⎝ ⎛ − − − =

∑ ∑

= = 3 1 2 2 3 1 2 1

3 1 exp 1 3 1 exp 1

i i i i

x f x f

] 4 , 4 [− ∈

i

x F8 [15]

x

min

} 30 , , 3 , 1 { ; ) 1 ( } 30 , , 3 , 2 { ; ) 1 (

2 2 2 2 2 1 2 1

L L = − + = = − + =

∑ ∑

i x x f i x x f

i i i i

] 5 , 5 [− ∈

i

x

slide-25
SLIDE 25

Comparative Performance Tests 4

  • NPGA the number of randomly selected individuals for tournament

selection is 30, the next generation consists of 50 (15 for F7) non-dominated solutions and 50 (15 for F7) members from tournament selection, crossover probability is 1.0 and mutation probability is 0.1.

  • NSGAII crossover probability is 1.0 and mutation probability is 0.1.
  • SPEA2 crossover probability is 1.0 and mutation probability is 0.1.
  • PAES uses (1+1)-PAES and adaptive grid archiving technique.
  • PBIL1 uses the first probability matrix updating scheme similar to [10],

learning rate LR = 0.5 (constant), the number of probability vectors l = 20, mutation shift ms = 0.2 and mutation probability is 0.02.

  • PBIL2 uses the second probability matrix updating scheme as in

equation (3), learning rate LR = 0.5 (constant), the number of probability vectors l = 20, mutation shift ms = 0.2 and mutation probability is 0.02.

slide-26
SLIDE 26

Results F1

slide-27
SLIDE 27

Results F2

slide-28
SLIDE 28

Results F3

slide-29
SLIDE 29

Results F4

slide-30
SLIDE 30

Results F5

slide-31
SLIDE 31

Results F6

slide-32
SLIDE 32

Results F7

slide-33
SLIDE 33

Results F8

slide-34
SLIDE 34

Results C box-plot F1 F2 F3 F4

slide-35
SLIDE 35

Results C box-plot F5 F6 F7 F8

slide-36
SLIDE 36

Results Bar chart of M values

slide-37
SLIDE 37

Conclusions and Discussion

PBILs are some of the most powerful tools for

multiobjective optimisation

They are as good as or even better than some

newly established MOEAs

The most outstanding capability of PBIL is its

unmatched ability in providing population diversity

PBIL1 is as good as PBIL2 or vice versa But PBIL1 is slightly better than PBIL2 in terms of

front distribution

slide-38
SLIDE 38

Program Codes

The program codes of PBIL1 and PBIL2 written in MATLAB technical computing language are available. Email me at sujbur@kku.ac.th if you need the codes. Probably I will upload them during the presentation period.