Você está na página 1de 39

Apresentado por: Renata Garcia Oliveira

A FAST AND ELITIST


MULTIOBJECTIVE GENETIC
ALGORITHM: NSGA-II
10/11/2014

Deb et all, Indian Institute of Technology, Kanpur, India

NSGA
Nondominated Sorting in Genetic Algorithms
2

Minimizar
atravs:

a especiao resultante do VEGA

Nondominated

sorting procedure: mtodo de seleo


ranking usado para enfatizar boas solues
ordenando grupos de solues;
Mtodo de nicho usado para manter sub populaes
de boas solues viabilizando a investigao de
diversos picos (multimodal) parelelamente.

Deb et all NSGA-II

Apresentado por: Renata Garcia Oliveira

NSGA
Nondominated Sorting in Genetic Algorithms
3

Crticas:
alta complexidade computacional O(mN3)
(onde m o n de funes objetivos e N o tamaho da
populao)
Abordagem no elitista
Necessidade de especificar o parmetro share.
Apresenta

Deb et all NSGA-II

Apresentado por: Renata Garcia Oliveira

NSGA-II
Fast Elitist Non-Dominated Sorting GA for MOP
4

Proposto para otimizar os pontos fracos apontados


no NSGA:
Algoritmo

non-dominated sorting com menor


complexidade, O(mN2);
Incluso de operador de seleo que cria um mating
pool combinando os pais e filhos e selecionando as
melhores solues pela aptido e distribuio (spread).

Deb et all NSGA-II

Apresentado por: Renata Garcia Oliveira

Algoritmo de ordenao de no dominados


5

Deb et all NSGA-II

Apresentado por: Renata Garcia Oliveira

Algoritmo de ordenao de no dominados


6

Deb et all NSGA-II

Apresentado por: Renata Garcia Oliveira

Relao de Dominncia
7

Conceito de Inferioridade

Um vetor u = (u1, ..., un) dito ser inferior a v = (v1, ..., vn) sse v
parcialmente
menor
que
u
(v
p<
u),
ou
seja,
i = 1, ..., n, vi ui i = 1, ..., n : vi < ui

Existe pelo menos um i que


vi estritamente menor que ui.

Deb et all NSGA-II

Apresentado por: Renata Garcia Oliveira

Algoritmo de ordenao de no dominados


8

Deb et all NSGA-II

Apresentado por: Renata Garcia Oliveira

Algoritmo de ordenao de no dominados


9

Deb et all NSGA-II

Apresentado por: Renata Garcia Oliveira

Algoritmo de ordenao de no dominados


10

Deb et all NSGA-II

Apresentado por: Renata Garcia Oliveira

Algoritmo de ordenao de no dominados


11

Deb et all NSGA-II

Apresentado por: Renata Garcia Oliveira

Algoritmo de ordenao de no dominados


12

Deb et all NSGA-II

Apresentado por: Renata Garcia Oliveira

Algoritmo de ordenao de no dominados


13

Deb et all NSGA-II

Apresentado por: Renata Garcia Oliveira

Algoritmo de ordenao de no dominados


14

Deb et all NSGA-II

Apresentado por: Renata Garcia Oliveira

Algoritmo de ordenao de no dominados


15

Deb et all NSGA-II

Apresentado por: Renata Garcia Oliveira

Estimativa de Densidade
Clculo da Distncia de Aglomerao (Crowding distance calculation)
16

Deb et all NSGA-II

A complexidade do algoritmo
determinado pelo custo da
ordenao.
No pior caso, quando todas as
solues esto em uma nica
fronteira, a ordenao custa
O(m N log N).
Apresentado por: Renata Garcia Oliveira

Operador de Comparao Crowding (n ou

Parcialmente ordenado
17

Guia o processo de seleo, nos vrios estgios, para


uma distribuio uniforme da fronteira tima de
pareto.
Assume que cada indivduo da populao tem dois
atributos:
irank:

rank de no dominao
idistance: distncia de aglomerao local

Deb et all NSGA-II

Apresentado por: Renata Garcia Oliveira

NSGA II Procedure
18

Deb et all NSGA-II

Apresentado por: Renata Garcia Oliveira

NSGA II
19

Complexidade determinada pelo algoritmo de


ordenao de no dominados O(m N2):
de no-dominados: O(m(2N)2);
Distncia de aglomerao: O(m (2N) log (2N));
Ordenao de aglomerao: O(2N log (2N))
Ordenao

Diversidade na distribuio da fronteira de Pareto


realizada pelo operador Crowded, usado:
seleo

de torneio binrio; e
na fase de reduo da populao (criteria selection).
Deb et all NSGA-II

Apresentado por: Renata Garcia Oliveira

NSGA II
20

Inicializa a populao N
Realiza avaliao de Aptido
Ordena os no-dominados (rank)
Calcula a distncia de aglomerao
Loop

Seleo de Torneio Binria (utiliza como comparador o operador de


parcialmente ordenado)

Crossover e Mutao
Realiza avaliao de Aptido

Ordena os no-dominados (rank)


Calcula a distancia de aglomerao
Seleciona populao seguinte (utiliza como comparador o operador de
parcialmente ordenado)

+
Elitismo

Deb et all NSGA-II

Apresentado por: Renata Garcia Oliveira

Mtricas de Teste
21

Grau de convergncia

Deb et all NSGA-II

Apresentado por: Renata Garcia Oliveira

Simulaes com Problemas Teste


Configurao dos Parmetros
22

So 9 problemas j propostos como teste de MOEA na literatura;

Cada problema 2 funes objetivos;


Nenhum problema possui restrio;

usado single-point crossover e bitwise mutation para GA com codificao binria;


usado simulated binary crossover (SBX) e mutao polinomial para GA com
codificao real;
Critrio de Parada de 250 geraes, populao de 100 indivduos e critrio de
parada de no mximo 25.000 avaliaes de aptido;
PAES usa um valor de profundidade d igual a 4 e um tamanho de armazenamento
de 100;
SPEA usa populao de tamanho 80 e populao externa de tamanho 20 (razo
de 4 : 1, conforme desenvolvedores para manter presso de seleo adequada);
PAES, SPEA e NSGA-II com codificao binria, so usados 30 bits para codificar
cada varivel de deciso.

Deb et all NSGA-II

Apresentado por: Renata Garcia Oliveira

Simulaes com Problemas Teste


27

Deb et all NSGA-II

Apresentado por: Renata Garcia Oliveira

Simulaes com Problemas Teste


28

Deb et all NSGA-II

Apresentado por: Renata Garcia Oliveira

Simulaes com Problemas Teste


29

Deb et all NSGA-II

Apresentado por: Renata Garcia Oliveira

Simulaes com Problemas Teste


30

Deb et all NSGA-II

Apresentado por: Renata Garcia Oliveira

Simulaes

NSGA-II (real coded or binary coded) is


able to coverge better in all problems
except in ZDT3 and ZDT6, where PAES
found better convergence.

31

Deb et all NSGA-II

Apresentado por: Renata Garcia Oliveira

Simulaes

In all cases with NSGA-II, the variance in


ten runs is also small, except in ZDT4 with
NSGA-II (binary coded)

32

Deb et all NSGA-II

Apresentado por: Renata Garcia Oliveira

Simulaes
33

Deb et all NSGA-II

Apresentado por: Renata Garcia Oliveira

Simulaes com Problemas Teste


Configurao dos Parmetros -Performance
34

Modificao do tamanho da populao para 500.


Modificao do ndice de adaptao do operador
de mutao, proveu uma melhor convergncia.

Deb et all NSGA-II

Apresentado por: Renata Garcia Oliveira

Problemas Rotacionados
35

As funes objetivos esto em termos do vetor de variveis y, que


calculada pela transformao do vetor de variveis x por uma matriz de
rotao fixa (combinao linear de variveis de deciso);
Devido a restries solues 1 > 0.3 so desencorajadas atravs de
uma alta penalidade.

Deb et all NSGA-II

Apresentado por: Renata Garcia Oliveira

Tratando Restries
36

Modificao da definio de dominncia entre


duas solues i e j.
Uma soluo i dita ser constrained-dominate
a uma soluo j, se qualquer condio for
verdadeira:
Soluo

i vivel e Soluo j no ;
Soluo i e j so inviveis, mas soluo i tem um
menor valor total de violao da restrio.
Soluo i e j so viveis e soluo i domina
soluo j.
Deb et all NSGA-II

Apresentado por: Renata Garcia Oliveira

Abordagem de tratamento de restrio de


Ray-Tai-Seows
37

Parmetros do NSGA-II com


codificao real

100
indivduos
populao;

na

Mesmo paramtros dos


operadores, mas mutao
mais agressiva;

Mximo de 500 Geraes.

A partir da gerao 200 o


algoritmo
j
atingia
distribuio da fronteira de
pareto.

Deb et all NSGA-II

Apresentado por: Renata Garcia Oliveira

Abordagem de tratamento de restrio de


Ray-Tai-Seows
38

Deb et all NSGA-II

Apresentado por: Renata Garcia Oliveira

Abordagem de tratamento de restrio de


Ray-Tai-Seows
39

Deb et all NSGA-II

Apresentado por: Renata Garcia Oliveira

Abordagem de tratamento de restrio de


Ray-Tai-Seows
40

Deb et all NSGA-II

Apresentado por: Renata Garcia Oliveira

Abordagem de tratamento de restrio de


Ray-Tai-Seows
41

Deb et all NSGA-II

Apresentado por: Renata Garcia Oliveira

42

Implementao

Deb et all NSGA-II

Apresentado por: Renata Garcia Oliveira

What's the differences between MATLAB'


gamultiobj toolbox and NSGA-2?
43

According to Global Optimization Toolbox documentation,


gamultiobj is a variant of NSGA-II.
gamultiobj uses a controlled elitist genetic algorithm (a
variant of NSGA-II [1]).
An elitist GA:

Controlled elitist GA:

always favors individuals with better fitness value (rank)


also favors individuals that can help increase the diversity of the
population even if they have a lower fitness value.

[1] Kalyanmoy Deb, "Multi-Objective Optimization using


Evolutionary Algorithms", John Wiley & Sons ISBN
047187339.

Deb et all NSGA-II

Apresentado por: Renata Garcia Oliveira