introdução à otimização multiobjetivo - algoritmos ...€¦ · 3 todos os algoritmos requerem...

91
UTFPR Introdu¸c˜ ao`aOtimiza¸c˜ ao Multiobjetivo - Algoritmos Evolutivos para Otimiza¸c˜ ao Multiobjetivo V ERMAC - Encontro Regional de Matem´ atica Aplicada e Computacional Angelo Aliano Filho e Helenice Florentino UniversidadeTecnol´ogicaFederaldoParan´a 06/07 de Junho de 2018 Angelo e Helenice (UTFPR/UNESP) Introd.`aOtimiza¸c˜ ao Multiobjetivo 06/07 de Junho de 2018 1 / 88

Upload: others

Post on 11-Aug-2020

7 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Introdução à Otimização Multiobjetivo - Algoritmos ...€¦ · 3 Todos os algoritmos requerem algum conhecimento espec co do problema a ser resolvido, como os valores de ou "4

UTFPR

Introducao a Otimizacao Multiobjetivo - AlgoritmosEvolutivos para Otimizacao Multiobjetivo

V ERMAC - Encontro Regional de Matematica Aplicada eComputacional

Angelo Aliano Filho e Helenice Florentino

Universidade Tecnologica Federal do Parana

06/07 de Junho de 2018

Angelo e Helenice (UTFPR/UNESP) Introd. a Otimizacao Multiobjetivo 06/07 de Junho de 2018 1 / 88

Page 2: Introdução à Otimização Multiobjetivo - Algoritmos ...€¦ · 3 Todos os algoritmos requerem algum conhecimento espec co do problema a ser resolvido, como os valores de ou "4

UTFPR

Sumario

1 Motivacao

2 AG para problemas inteiros (rapida introducao)

3 AG em um problema multiobjetivo

4 O Metodo Multiobjective Genetic Algorithm (MOGA)

5 O metodo Non-Dominated Sorting Genetic Algorithm (NSGA)

6 AG multiobjetivo para problemas com restricoesIgnorando solucoes infactıveisMetodo da funcao penalidadeMetodo do torneio restrito

Angelo e Helenice (UTFPR/UNESP) Introd. a Otimizacao Multiobjetivo 06/07 de Junho de 2018 2 / 88

Page 3: Introdução à Otimização Multiobjetivo - Algoritmos ...€¦ · 3 Todos os algoritmos requerem algum conhecimento espec co do problema a ser resolvido, como os valores de ou "4

UTFPR

Motivacao

Algumas diferencas/vantagens dos metodos heurısticos sobre osclassicos:

1 Somente uma unica solucao eficiente pode ser encontrada poriteracao

2 Nem todas solucoes eficientes podem ser encontradas paraproblemas nao convexos, como a soma ponderada, por exemplo

3 Todos os algoritmos requerem algum conhecimento especıfico doproblema a ser resolvido, como os valores de λ ou ε

4 Geracao de problemas ociosos

Angelo e Helenice (UTFPR/UNESP) Introd. a Otimizacao Multiobjetivo 06/07 de Junho de 2018 3 / 88

Page 4: Introdução à Otimização Multiobjetivo - Algoritmos ...€¦ · 3 Todos os algoritmos requerem algum conhecimento espec co do problema a ser resolvido, como os valores de ou "4

UTFPR

Motivacao

Como vimos todos os metodos classicos escalarizam o POM parasoluciona-lo. Entao, para obter varias solucoes de Pareto,variam-se os parametros do problema escalar, que e re-otimizadonovamente

Se quisermos N solucoes de Pareto distintas, no mınimo Nsimulacoes devem ser realizadas

Mesmo assim, nao ha garantia que estas solucoes sao bemespacadas em ao longo da Fronteira de Pareto

Apesar das deficiencias, os metodos classicos tem a vantagem degarantir a otimalidade das solucoes eficientes encontradas

Angelo e Helenice (UTFPR/UNESP) Introd. a Otimizacao Multiobjetivo 06/07 de Junho de 2018 4 / 88

Page 5: Introdução à Otimização Multiobjetivo - Algoritmos ...€¦ · 3 Todos os algoritmos requerem algum conhecimento espec co do problema a ser resolvido, como os valores de ou "4

UTFPR

Motivacao

Nesse sentido, a eficiencia do metodo de otimizacao muliobjetivodepende fortemente do algoritmo mono objetivo envolvido

A vantagem dos metodos heurısticos e que, embora nao garantama otimalidade das solucoes encontradas, tem se mostrado que elespodem fornecer solucoes de Pareto bem distribuıdas e numaunica simulacao

Alem disso, sao aplicaveis independente da complexidade einstancia do problema, sendo ferramentas robustas, simplesde implementar e eficazes em problemas praticos

Angelo e Helenice (UTFPR/UNESP) Introd. a Otimizacao Multiobjetivo 06/07 de Junho de 2018 5 / 88

Page 6: Introdução à Otimização Multiobjetivo - Algoritmos ...€¦ · 3 Todos os algoritmos requerem algum conhecimento espec co do problema a ser resolvido, como os valores de ou "4

UTFPR

Algoritmo Genetico

O AG teve como fonte de inspiracao o princıpio Darwiniano daevolucao das especies e a genetica, que apregoa a sobrevivencia domais apto.

Princıpio de Darwin: Quanto mais um indivıduo se adaptar nomeio onde vive, maior sera sua chance de sobreviver e gerardescendentes.

O AG busca simular este processo seletivo que ocorre na natureza,como a reproducao, diversificacao e sobrevivencia do mais apto.Primeiro tratamento sistematico em [2]

Angelo e Helenice (UTFPR/UNESP) Introd. a Otimizacao Multiobjetivo 06/07 de Junho de 2018 6 / 88

Page 7: Introdução à Otimização Multiobjetivo - Algoritmos ...€¦ · 3 Todos os algoritmos requerem algum conhecimento espec co do problema a ser resolvido, como os valores de ou "4

UTFPR

Algoritmo Genetico

cromossomo: cadeia de caracteres representando informacoesrelativas as variaveis do problema;

indivıduo: solucao representada por cromossomos;

gene: unidade basica do cromossomo;

populacao: conjunto de cromossomos ou indivıduos;

geracao: iteracao em que o AG esta sendo executado;

operacoes genicas: operacoes que o algoritmo realiza noscromossomos;

aptidao ou fitness: informacao numerica de cada cromossomona populacao.

Angelo e Helenice (UTFPR/UNESP) Introd. a Otimizacao Multiobjetivo 06/07 de Junho de 2018 7 / 88

Page 8: Introdução à Otimização Multiobjetivo - Algoritmos ...€¦ · 3 Todos os algoritmos requerem algum conhecimento espec co do problema a ser resolvido, como os valores de ou "4

UTFPR

Algoritmo Genetico

avaliacao: considerando-se uma populacao com N cromossomos,cada um e avaliado pela funcao custo (objetivo) e sao classificadasquanto a sua adaptabilidade ao meio;

elitismo: visa preservar o melhor indivıduo em cada geracao;

selecao: alguns indivıduos devem ser escolhidos parareproduzirem e deixarem descendentes;

crossover : cria novos indivıduos para a populacao atraves darecombinacao de partes diferentes de cromossomos-pais pelometodo anterior.

Angelo e Helenice (UTFPR/UNESP) Introd. a Otimizacao Multiobjetivo 06/07 de Junho de 2018 8 / 88

Page 9: Introdução à Otimização Multiobjetivo - Algoritmos ...€¦ · 3 Todos os algoritmos requerem algum conhecimento espec co do problema a ser resolvido, como os valores de ou "4

UTFPR

Algoritmo Genetico

mutacao: o operador de mutacao nos AGs e introduzido paraprevenir a convergencia prematura para otimos locais atraves daamostragem de novos pontos no espaco de busca;

migracao: este operador nos AGs funciona para substituir um oumais indivıduos na populacao por outros cromossomos, geradosaleatoriamente ou por uma heurıstica construtiva, afim defavorecer a diversidade cromossomica;

reavaliacao: os indivıduos criados na geracao corrente pelosoperadores de crossover, mutacao e migracao sao inseridos napopulacao e avaliados pela funcao objetivo do problema;

atualizacao: separam-se os N melhores cromossomos e tem-seuma nova geracao.

Angelo e Helenice (UTFPR/UNESP) Introd. a Otimizacao Multiobjetivo 06/07 de Junho de 2018 9 / 88

Page 10: Introdução à Otimização Multiobjetivo - Algoritmos ...€¦ · 3 Todos os algoritmos requerem algum conhecimento espec co do problema a ser resolvido, como os valores de ou "4

UTFPR

Problema mono-objetivo inteiro canalizado

Problema de otimizacao inteiro nao-linear canalizado

Forma geral:minimize f(x)sujeito a l ≤ x ≤ u

x ∈ Zn,

onde l e u sao os lower e upper bounds das variaveis. Isto e, queremosminimizar uma funcao f dentro de uma caixa n−dimensional

Angelo e Helenice (UTFPR/UNESP) Introd. a Otimizacao Multiobjetivo 06/07 de Junho de 2018 10 / 88

Page 11: Introdução à Otimização Multiobjetivo - Algoritmos ...€¦ · 3 Todos os algoritmos requerem algum conhecimento espec co do problema a ser resolvido, como os valores de ou "4

UTFPR

Codificacao

Seja n a dimensao do problema de otimizacao que pretendemosresolver

Um cromossomo x = (xi)i=1,··· ,n e um vetor n−dimensional ondel ≤ xi ≤ u e xi e inteiro

Geramos aleatoriamente estes vetores, que por consequencia seraosempre factıveis

O fitness de cada cromossomo e calculado como sendo o vetor xaplicado em f

Queremos determinar o cromossomo (solucao) que fornece omenor valor para f

Angelo e Helenice (UTFPR/UNESP) Introd. a Otimizacao Multiobjetivo 06/07 de Junho de 2018 11 / 88

Page 12: Introdução à Otimização Multiobjetivo - Algoritmos ...€¦ · 3 Todos os algoritmos requerem algum conhecimento espec co do problema a ser resolvido, como os valores de ou "4

UTFPR

Codificacao

Exemplo

Seja o problema

minimize f(x) = cos(2x1x2x3)− sin2(4x4x5x6)sujeito a −10 ≤ x ≤ 10

x ∈ Z6,

e os cromossomos:

x1 =[−1 3 4 1 −7 2

]x2 =

[2 0 1 −8 10 −10

]cujos fitness sao f(x1) = −0.1374 e f(x2) = 0.2008. Claro que x1 emelhor que x2.

Angelo e Helenice (UTFPR/UNESP) Introd. a Otimizacao Multiobjetivo 06/07 de Junho de 2018 12 / 88

Page 13: Introdução à Otimização Multiobjetivo - Algoritmos ...€¦ · 3 Todos os algoritmos requerem algum conhecimento espec co do problema a ser resolvido, como os valores de ou "4

UTFPR

Crossover

Mecanismo para gerar novas solucoes para o problema (apenas umexemplo...)

A cada par de solucoes, x1 e x2, geram-se 4 novos cromossomos

Usamos o crossover uniforme. Destes 4 cromossomos, 3 fazem umacombinacao convexa entre duas solucoes, isto e,

xnovo = minmaxroundλ · x1 + (1− λ) · x2, l,u.

O quarto novo indivıduo e gerado da seguinte maneira:

xnovo = minmaxround1.5 · x1 − 0.5 · x2, l,u.

Isso permite escapar de otimizadores locais e o metodo buscar novasregioes de busca mais promissoras

Angelo e Helenice (UTFPR/UNESP) Introd. a Otimizacao Multiobjetivo 06/07 de Junho de 2018 13 / 88

Page 14: Introdução à Otimização Multiobjetivo - Algoritmos ...€¦ · 3 Todos os algoritmos requerem algum conhecimento espec co do problema a ser resolvido, como os valores de ou "4

UTFPR

Crossover

Exemplo

Sejam

x1 =[−1 3 4 1 −7 2

]e x2 =

[2 0 1 −8 10 −10

]Primeiro indivıduo e λ = 0.6:

xnovo =[

0 2 3 −3 0 −3]

Angelo e Helenice (UTFPR/UNESP) Introd. a Otimizacao Multiobjetivo 06/07 de Junho de 2018 14 / 88

Page 15: Introdução à Otimização Multiobjetivo - Algoritmos ...€¦ · 3 Todos os algoritmos requerem algum conhecimento espec co do problema a ser resolvido, como os valores de ou "4

UTFPR

Crossover

Exemplo

Sejam

x1 =[−1 3 4 1 −7 2

]e x2 =

[2 0 1 −8 10 −10

]Segundo indivıduo e λ = 0.3:

xnovo =[

1 1 2 −5 5 −6]

Angelo e Helenice (UTFPR/UNESP) Introd. a Otimizacao Multiobjetivo 06/07 de Junho de 2018 15 / 88

Page 16: Introdução à Otimização Multiobjetivo - Algoritmos ...€¦ · 3 Todos os algoritmos requerem algum conhecimento espec co do problema a ser resolvido, como os valores de ou "4

UTFPR

Crossover

Exemplo

Sejam

x1 =[−1 3 4 1 −7 2

]e x2 =

[2 0 1 −8 10 −10

]Terceiro indivıduo e λ = 0.1:

xnovo =[

2 0 1 −7 8 −9]

Angelo e Helenice (UTFPR/UNESP) Introd. a Otimizacao Multiobjetivo 06/07 de Junho de 2018 16 / 88

Page 17: Introdução à Otimização Multiobjetivo - Algoritmos ...€¦ · 3 Todos os algoritmos requerem algum conhecimento espec co do problema a ser resolvido, como os valores de ou "4

UTFPR

Crossover

Exemplo

Sejam

x1 =[−1 3 4 1 −7 2

]e x2 =

[2 0 1 −8 10 −10

]Quarto indivıduo:

xnovo =[−3 5 6 6 −16 8

]que inserindo-o no domınio das variaveis temos

xnovo =[−3 5 6 6 −10 8

]

Angelo e Helenice (UTFPR/UNESP) Introd. a Otimizacao Multiobjetivo 06/07 de Junho de 2018 17 / 88

Page 18: Introdução à Otimização Multiobjetivo - Algoritmos ...€¦ · 3 Todos os algoritmos requerem algum conhecimento espec co do problema a ser resolvido, como os valores de ou "4

UTFPR

Mutacao

Impedir com que o algoritmo nao se estabilize num otimo local. Comuma probabilidade r em cada geracao, escolhem-se alguns genes docromossomo seus alelos.

Exemplo

Sejaxmutante =

[−1 3 4 1 −7 2

]o indivıduo escolhido para mutar. Suponhamos que os genes 1 e 3sofram mutacao. Entao o indivıduo mutado sera dado por:

xmutado =[

2 3 −3 1 −7 2]

Angelo e Helenice (UTFPR/UNESP) Introd. a Otimizacao Multiobjetivo 06/07 de Junho de 2018 18 / 88

Page 19: Introdução à Otimização Multiobjetivo - Algoritmos ...€¦ · 3 Todos os algoritmos requerem algum conhecimento espec co do problema a ser resolvido, como os valores de ou "4

UTFPR

Algoritmo

Algorithm 1 Algoritmo genetico para PNLI canalizado1: input: f , u e l, P , T G2: Gere P cromossomos e forme a populacao inicial3: g ← 04: for g ≤ G do5: Avalie cada cromossomo xi na populacao6: Selecione os 80% melhores para realizar o crossover7: Faca o crossover e avalie as novas solucoes8: Com probabilidade r realize a mutacao9: Em g = 0.5G, 0.7G e 0.9G realize a migracao

10: Seja x∗ o melhor indivıduo da populacao. Entao xmelhor ← x∗

11: Tome os P melhores indivıduos12: g ← g + 113: end for14: output: xmelhor e f(xmelhor)

Angelo e Helenice (UTFPR/UNESP) Introd. a Otimizacao Multiobjetivo 06/07 de Junho de 2018 19 / 88

Page 20: Introdução à Otimização Multiobjetivo - Algoritmos ...€¦ · 3 Todos os algoritmos requerem algum conhecimento espec co do problema a ser resolvido, como os valores de ou "4

UTFPR

Funcao Share

Modelo de avaliacao de solucoes em AG, proposto por [3] que visadegradar o fitness de solucoes concentradas

O intuito e manter a diversidade na populacao, caracterısticacrucial em O.M.O

O procedimento visa nao favorecer solucoes parecidas napopulacao. Por outro lado, as solucoes distintas sao “valorizadas”

Angelo e Helenice (UTFPR/UNESP) Introd. a Otimizacao Multiobjetivo 06/07 de Junho de 2018 20 / 88

Page 21: Introdução à Otimização Multiobjetivo - Algoritmos ...€¦ · 3 Todos os algoritmos requerem algum conhecimento espec co do problema a ser resolvido, como os valores de ou "4

UTFPR

Funcao Share

Proposta por aqueles autores, a funcao Sharing para cada par desolucoes i e j e definida do seguinte modo

Funcao Share

sh(dij) =

1−

(dij

σshare

)α, se dij ≤ σshare

0, caso contrario.(1)

onde:

dij : e a distancia Euclidiana entre as solucoes i e j (no espaco decriterio)

σshare: e o raio que mede se uma solucao e proxima da outra ounao (parametro dado pelo usuario)

α: parametro dado pelo usuario

Angelo e Helenice (UTFPR/UNESP) Introd. a Otimizacao Multiobjetivo 06/07 de Junho de 2018 21 / 88

Page 22: Introdução à Otimização Multiobjetivo - Algoritmos ...€¦ · 3 Todos os algoritmos requerem algum conhecimento espec co do problema a ser resolvido, como os valores de ou "4

UTFPR

Funcao Share

Entao para cada solucao i, calcule todas os valores para sh(dij)(inclusive para i) e entao determine o valor do niche count como aseguir1:

Niche count

nci =

n∑j=1

sh(dij), i = 1, · · · , N (2)

1Note que nci ≥ 1Angelo e Helenice (UTFPR/UNESP) Introd. a Otimizacao Multiobjetivo 06/07 de Junho de 2018 22 / 88

Page 23: Introdução à Otimização Multiobjetivo - Algoritmos ...€¦ · 3 Todos os algoritmos requerem algum conhecimento espec co do problema a ser resolvido, como os valores de ou "4

UTFPR

Funcao Share

Para cada solucao i, se fi e o fitness original, entao calcule o fitnessshare da seguinte forma:

Fitness share

f ′i =finci

(3)

ou seja, se uma solucao tem muitas vizinhas com um raio inferior aσshare, entao seu fitness final sera muito degradado

Angelo e Helenice (UTFPR/UNESP) Introd. a Otimizacao Multiobjetivo 06/07 de Junho de 2018 23 / 88

Page 24: Introdução à Otimização Multiobjetivo - Algoritmos ...€¦ · 3 Todos os algoritmos requerem algum conhecimento espec co do problema a ser resolvido, como os valores de ou "4

UTFPR

Exemplo

Considere o problema

Maximize sin(πx)sujeito a 0 ≤ x ≤ 2

(4)

e seis solucoes factıveis:

Sol String Valor xi fi nci f ′ii decotificado1 110100 52 1.651 0.890 4.466 0.1992 101100 44 1.397 0.948 3.162 0.3003 011101 29 0.921 0.246 1.048 0.2354 001011 11 0.349 0.890 1.000 0.8905 110000 48 1.524 0.997 3.364 0.2966 101110 46 1.460 0.992 3.364 0.295

Angelo e Helenice (UTFPR/UNESP) Introd. a Otimizacao Multiobjetivo 06/07 de Junho de 2018 24 / 88

Page 25: Introdução à Otimização Multiobjetivo - Algoritmos ...€¦ · 3 Todos os algoritmos requerem algum conhecimento espec co do problema a ser resolvido, como os valores de ou "4

UTFPR

Exemplo

Seja i = 1 e σshare = 0.5. Calcule as distancias

d11 = 0, d12 = |0.890− 0.948| = 0.058, d13 = 0.644, d14 = 0,d15 = 0.107, d16 = 0.102

E entao a funcao share correpondente usando a eq. (1) sera:

sh11 = 1, sh12 = 0.884, sh13 = 0, sh14 = 1,sh15 = 0.786, sh16 = 0.796.

Calcule o niche count : nci = 1 + 0.884 + 0 + 1 + 0.786 + 0.796 = 4.466 efinalmente o fitness share

f ′1 = f1/nc1 = 0.890/4.466 = 0.199

Angelo e Helenice (UTFPR/UNESP) Introd. a Otimizacao Multiobjetivo 06/07 de Junho de 2018 25 / 88

Page 26: Introdução à Otimização Multiobjetivo - Algoritmos ...€¦ · 3 Todos os algoritmos requerem algum conhecimento espec co do problema a ser resolvido, como os valores de ou "4

UTFPR

O metodo MOGA

Em princıpio, o primeiro AG aplicado em POM foi desenvolvidopor Schaffer (1984), conhecido como Vector Evalueted GeneticAlgorithm, porem ineficaz para muitos problemas, e nao fazia usodo conceito de dominancia

No entanto o Mul-objective Genetic Algorithm (MOGA) foipioneiramente desenvolvido por [3], a primeira implementacaoeficiente de um AG usando o conceito de dominancia

Angelo e Helenice (UTFPR/UNESP) Introd. a Otimizacao Multiobjetivo 06/07 de Junho de 2018 26 / 88

Page 27: Introdução à Otimização Multiobjetivo - Algoritmos ...€¦ · 3 Todos os algoritmos requerem algum conhecimento espec co do problema a ser resolvido, como os valores de ou "4

UTFPR

O metodo MOGA

Considere:

ri = 1 + ni onde para cada solucao i = 1, · · · , N o rank ri definidocomo um somado com o numero de solucoes ni que dominam i

Logo, se i esta na Fronteira de Pareto, ri = 1. Alem disso,1 ≤ ri ≤ NUma aplicacao leva o rank da solucao i para um numero entre 1 eN

Esta aplicacao garante que solucoes em um rank mais baixo tenhaum fitness maior em comparacao com outra situada num rankmais acima

Angelo e Helenice (UTFPR/UNESP) Introd. a Otimizacao Multiobjetivo 06/07 de Junho de 2018 27 / 88

Page 28: Introdução à Otimização Multiobjetivo - Algoritmos ...€¦ · 3 Todos os algoritmos requerem algum conhecimento espec co do problema a ser resolvido, como os valores de ou "4

UTFPR

O metodo MOGA

Afim de manter a diversidade entre as solucoes nao-dominadas, usamosa estrategia de nicho, vista anteriormente. Sejam duas solucoes i e j, econsidere a distancia normalizada entre elas:

dij =

√√√√ p∑k=1

(f ik − f

jk

fmaxk − fmin

k

)2

(5)

onde fmaxk e fmin

k sao os valores de maximo e mınimo do objetivo k.

Angelo e Helenice (UTFPR/UNESP) Introd. a Otimizacao Multiobjetivo 06/07 de Junho de 2018 28 / 88

Page 29: Introdução à Otimização Multiobjetivo - Algoritmos ...€¦ · 3 Todos os algoritmos requerem algum conhecimento espec co do problema a ser resolvido, como os valores de ou "4

UTFPR

O metodo MOGA

Para cada solucao i, calcule dij , a funcao share usando a eq. (1), paracomputar o niche count:

nci =

µ(ri)∑j=1

sh(dij) (6)

onde µ(ri) e o numero de solucoes no rank i. A intencao e diminuir ovalor do fitness das solucoes em regioes mais lotadas

Angelo e Helenice (UTFPR/UNESP) Introd. a Otimizacao Multiobjetivo 06/07 de Junho de 2018 29 / 88

Page 30: Introdução à Otimização Multiobjetivo - Algoritmos ...€¦ · 3 Todos os algoritmos requerem algum conhecimento espec co do problema a ser resolvido, como os valores de ou "4

UTFPR

O metodo MOGA

Passo 1: Escola um valor para σshare. Inicialize µ(j) = 0, paratodos os possıveis ranks j = 1, · · · , N . Seja o contador de solucoesi = 1

Passo 2: Calcule ni e ri = 1 + ni e incremente o contador donumero de solucoes do rank ri por 1, i.e., µ(ri) = µ(ri) + 1

Passo 3: Se i < N , incremente i por 1 e va ao Passo 1. Senao vaao Passo 4

Passo 4: Identifique o rank maximo r∗. Calcule o fitness mediopara cada solucao i = 1, · · · , N

Fi = N −ri−1∑k=1

µ(k)− 1

2(µ(ri)− 1) (7)

e agora seja o contador de rank r = 1

Angelo e Helenice (UTFPR/UNESP) Introd. a Otimizacao Multiobjetivo 06/07 de Junho de 2018 30 / 88

Page 31: Introdução à Otimização Multiobjetivo - Algoritmos ...€¦ · 3 Todos os algoritmos requerem algum conhecimento espec co do problema a ser resolvido, como os valores de ou "4

UTFPR

O metodo MOGA

Passo 5: Para cada solucao i no rank r, calcule nci com apenas assolucoes pertencentes ao mesmo rank (eq. (6)).

Passo 6: Se r < r∗ incremente r por 1 e va ao Passo 5. Casocontrario fim do procedimento.

Angelo e Helenice (UTFPR/UNESP) Introd. a Otimizacao Multiobjetivo 06/07 de Junho de 2018 31 / 88

Page 32: Introdução à Otimização Multiobjetivo - Algoritmos ...€¦ · 3 Todos os algoritmos requerem algum conhecimento espec co do problema a ser resolvido, como os valores de ou "4

UTFPR

O metodo MOGA

Exemplo

Considere o seguinte problema

Minimize f1(x) = x1

Minimize f2(x) = 1+x2x1

sujeito a 0.1 ≤ x1 ≤ 1, 0 ≤ x2 ≤ 5

e seis solucoes com seus valores dados a seguir:

Sol. x1 x2 f1 f2

1 0.31 0.89 0.31 6.102 0.43 1.92 0.43 6.793 0.22 0.56 0.22 7.094 0.59 3.63 0.59 7.855 0.66 1.41 0.66 3.656 0.83 2.51 0.83 4.23

Angelo e Helenice (UTFPR/UNESP) Introd. a Otimizacao Multiobjetivo 06/07 de Junho de 2018 32 / 88

Page 33: Introdução à Otimização Multiobjetivo - Algoritmos ...€¦ · 3 Todos os algoritmos requerem algum conhecimento espec co do problema a ser resolvido, como os valores de ou "4

UTFPR

O metodo MOGA

Passo 1: Seja σshare = 0.5 e µ(j) = 0, j = 1, · · · , 6Passo 2: Calculando o rank de cada solucao teremos:r1 = r3 = r5 = 1, r2 = r6 = 2 e r4 = 4

−0.2 0.2 0.4 0.6 0.8 1

2

4

6

8

1

23

4

56

z1

z2

Figure: Solucoes no espaco objetivo do exemplo

Angelo e Helenice (UTFPR/UNESP) Introd. a Otimizacao Multiobjetivo 06/07 de Junho de 2018 33 / 88

Page 34: Introdução à Otimização Multiobjetivo - Algoritmos ...€¦ · 3 Todos os algoritmos requerem algum conhecimento espec co do problema a ser resolvido, como os valores de ou "4

UTFPR

O metodo MOGA

Passo 1: Seja σshare = 0.5 e µ(j) = 0, j = 1, · · · , 6Passo 2: Calculando o rank de cada solucao teremos:r1 = r3 = r5 = 1, r2 = r6 = 2 e r4 = 4

−0.2 0.2 0.4 0.6 0.8 1

2

4

6

8

1

23

4

56

z1

z2

Figure: Solucoes no espaco objetivo do exemplo e os ranks

Angelo e Helenice (UTFPR/UNESP) Introd. a Otimizacao Multiobjetivo 06/07 de Junho de 2018 34 / 88

Page 35: Introdução à Otimização Multiobjetivo - Algoritmos ...€¦ · 3 Todos os algoritmos requerem algum conhecimento espec co do problema a ser resolvido, como os valores de ou "4

UTFPR

O metodo MOGA

Passo 3: r∗ = 4. Ordenando a populacao em ordem crescente derank, teremos:

(1, 3, 5)(2, 6)()(4)

Passo 4: Usando a eq.(7) calculamos Fi, i = 1, · · · , 6:

F1 = N − 0.5 · (µ(1)− 1) = 6− 0.5 · (3− 1) = 5.0

F2 = N − µ(1)− 0.5 · (µ(2)− 1) = 6− 3− 0.5 · (2− 1) = 2.5

F3 = N − 0.5 · (µ(1)− 1) = 6− 0.5 · (3− 1) = 5.0

F4 = N − µ(1)− µ(2)− µ(3)− 0.5 · (µ(4)− 1) = 6− 3− 2− 0− 0.5 · (1− 1) = 1.0

F5 = N − 0.5 · (µ(1)− 1) = 6− 0.5 · (3− 1) = 5.0

F6 = N − µ(1)− 0.5 · (µ(2)− 1) = 6− 3− 0.5 · (2− 1) = 2.5

Angelo e Helenice (UTFPR/UNESP) Introd. a Otimizacao Multiobjetivo 06/07 de Junho de 2018 35 / 88

Page 36: Introdução à Otimização Multiobjetivo - Algoritmos ...€¦ · 3 Todos os algoritmos requerem algum conhecimento espec co do problema a ser resolvido, como os valores de ou "4

UTFPR

O metodo MOGA

Passo 5: Para as tres solucoes no rank 1, calcularemos o nichecount. Assumindo que fmin

1 = 0.1, fmax1 = 1.0, fmin

2 = 1 efmax

2 = 10 temos que as distancias normalizadas sao:

d13 = 0.149, d15 = 0.475, d35 = 0.621

Usando estes valores com σshare = 0.5, calculamos das funcoesshares:

sh(d13) = 0.702, sh(d15) = 0.050, sh(d35) = 0

e claro que sh(dii) = 1, i = 1, 3, 5

Angelo e Helenice (UTFPR/UNESP) Introd. a Otimizacao Multiobjetivo 06/07 de Junho de 2018 36 / 88

Page 37: Introdução à Otimização Multiobjetivo - Algoritmos ...€¦ · 3 Todos os algoritmos requerem algum conhecimento espec co do problema a ser resolvido, como os valores de ou "4

UTFPR

Exemplo

Passo 5: Agora calculamos o niche count para cada solucao nesterank:

nc1 = 1 + 0.702 + 0.050 = 1.752

nc3 = 1 + 0.702 + 0 = 1.702

nc5 = 1 + 0.050 + 0 = 1.050

e dividimos Fi por nci para obter finalmente o fitness share

Angelo e Helenice (UTFPR/UNESP) Introd. a Otimizacao Multiobjetivo 06/07 de Junho de 2018 37 / 88

Page 38: Introdução à Otimização Multiobjetivo - Algoritmos ...€¦ · 3 Todos os algoritmos requerem algum conhecimento espec co do problema a ser resolvido, como os valores de ou "4

UTFPR

O metodo MOGA

Passo 6: Va ao Passo 5 e faca o mesmo para as solucoes de rank 2

Passo 6: Calcule d26 = 0.528, logo sh(d26) = 0 e dai,nc2 = nc6 = 1. Entao o fitness share e igual ao medio

Passo 6: Vamos ao Passo 5, fazemos o mesmo para o rank 3, quee vazio. Movemos ao Passo 5 e fazemos o mesmo para rank 4.Como so ha uma solucao ai, o fitness medio e o mesmo do fitnessshare, e paramos aqui.

Angelo e Helenice (UTFPR/UNESP) Introd. a Otimizacao Multiobjetivo 06/07 de Junho de 2018 38 / 88

Page 39: Introdução à Otimização Multiobjetivo - Algoritmos ...€¦ · 3 Todos os algoritmos requerem algum conhecimento espec co do problema a ser resolvido, como os valores de ou "4

UTFPR

O metodo MOGA

Resumo:

Sol. x1 x2 f1 f2 Rank Media Sharefitness count

1 0.31 0.89 0.31 6.10 1 5.0 1.752 0.43 1.92 0.43 6.79 2 2.5 1.003 0.22 0.56 0.22 7.09 1 5.0 1.704 0.59 3.63 0.59 7.85 4 1.0 1.005 0.66 1.41 0.66 3.65 1 5.0 1.056 0.83 2.51 0.83 4.23 2 2.5 1.00

Angelo e Helenice (UTFPR/UNESP) Introd. a Otimizacao Multiobjetivo 06/07 de Junho de 2018 39 / 88

Page 40: Introdução à Otimização Multiobjetivo - Algoritmos ...€¦ · 3 Todos os algoritmos requerem algum conhecimento espec co do problema a ser resolvido, como os valores de ou "4

UTFPR

O metodo MOGA

−0.2 0.2 0.4 0.6 0.8 1

2

4

6

8

(1) : 5.0

(2) : 2.5(3) : 5.0

(4) : 1.0

(5) : 5.0(6) : 2.5

z1

z2

Figure: Fitness de cada ponto

Angelo e Helenice (UTFPR/UNESP) Introd. a Otimizacao Multiobjetivo 06/07 de Junho de 2018 40 / 88

Page 41: Introdução à Otimização Multiobjetivo - Algoritmos ...€¦ · 3 Todos os algoritmos requerem algum conhecimento espec co do problema a ser resolvido, como os valores de ou "4

UTFPR

O metodo MOGA

Uma geracao no MOGA e completada realizando-se os operadores deselecao (roleta, torneio, elitista, etc), crossover, mutacao, migracao,re-avaliacao, para gerar a nova populacao para a geracao seguinte. Aunica diferenca entre este e o procedimento para uma funcaoobjetivo e a avaliacao do fitness

Angelo e Helenice (UTFPR/UNESP) Introd. a Otimizacao Multiobjetivo 06/07 de Junho de 2018 41 / 88

Page 42: Introdução à Otimização Multiobjetivo - Algoritmos ...€¦ · 3 Todos os algoritmos requerem algum conhecimento espec co do problema a ser resolvido, como os valores de ou "4

UTFPR

O metodo MOGA

Vantagens

O fitness e facilmente implementavel e simples.

Como a estrategia de nicho e aplicada no espaco objetivo, oMOGA e facilmente aplicavel para outros problemas deotimizacao, como combinatorios.

O MOGA e capaz de fornecer solucoes de Pareto bem distribuidas

Desvantagens

Embora o conceito de dominancia e usado, solucoes em um rankmenor nao necessariamente tem um fitness maior (exceto pararank 1)

Alem disso, o fitness depende fortemente de σshare

Angelo e Helenice (UTFPR/UNESP) Introd. a Otimizacao Multiobjetivo 06/07 de Junho de 2018 42 / 88

Page 43: Introdução à Otimização Multiobjetivo - Algoritmos ...€¦ · 3 Todos os algoritmos requerem algum conhecimento espec co do problema a ser resolvido, como os valores de ou "4

UTFPR

Algoritmo

Algorithm 2 Metodo MOGA1: input: f1, f2, u e l, P , T G2: Gere P cromossomos e forme a populacao inicial3: g ← 04: for g ≤ G do5: Atribua o fitness cada cromossomo xi na populacao6: Selecione os 80% melhores para realizar o crossover7: Faca o crossover e avalie as novas solucoes8: Com probabilidade r realize a mutacao9: Em g = 0.5G, 0.7G e 0.9G realize a migracao

10: Seja x∗ os melhores indivıduos da populacao. Entao xmelhor ← x∗

11: Tome os P melhores indivıduos12: g ← g + 113: end for14: output: xmelhor e f(xmelhor)

Angelo e Helenice (UTFPR/UNESP) Introd. a Otimizacao Multiobjetivo 06/07 de Junho de 2018 43 / 88

Page 44: Introdução à Otimização Multiobjetivo - Algoritmos ...€¦ · 3 Todos os algoritmos requerem algum conhecimento espec co do problema a ser resolvido, como os valores de ou "4

UTFPR

O metodo NSGA

Princıpios usados

Funcao share

Nıveis de dominancia

Angelo e Helenice (UTFPR/UNESP) Introd. a Otimizacao Multiobjetivo 06/07 de Junho de 2018 44 / 88

Page 45: Introdução à Otimização Multiobjetivo - Algoritmos ...€¦ · 3 Todos os algoritmos requerem algum conhecimento espec co do problema a ser resolvido, como os valores de ou "4

UTFPR

O metodo NSGA

O primeiro passo consiste em classificar a populacao nos nıveis dedominancia; digamos que Pj no nıvel j, entao a populacao P podeser escrita por

P =

ρ⋃j=1

Pj

e ρ a quantidade de nıveis de dominancia

O algoritmo para classificar a populacao em nıveis, foi abordadoem aulas anteriores e tem complexidade computacional O(pN2)

Angelo e Helenice (UTFPR/UNESP) Introd. a Otimizacao Multiobjetivo 06/07 de Junho de 2018 45 / 88

Page 46: Introdução à Otimização Multiobjetivo - Algoritmos ...€¦ · 3 Todos os algoritmos requerem algum conhecimento espec co do problema a ser resolvido, como os valores de ou "4

UTFPR

O metodo NSGA

Entao todo ponto zi em P1 e considerada na populacao P comosendo os “melhores” indivıduos

Elaboramos uma aplicacao que atribui o mesmo fitness a todoindivıduo zi no nıvel Pj , j = 1, · · · , ρEsta funcao fitness deve atribuir um maior fitness para as solucoespertencentes aos nıveis de dominancia mais baixos e vice-e-versa

Angelo e Helenice (UTFPR/UNESP) Introd. a Otimizacao Multiobjetivo 06/07 de Junho de 2018 46 / 88

Page 47: Introdução à Otimização Multiobjetivo - Algoritmos ...€¦ · 3 Todos os algoritmos requerem algum conhecimento espec co do problema a ser resolvido, como os valores de ou "4

UTFPR

O metodo NSGA

Por exemplo: atribua o fitness N para todas as solucoes cujos zi’sestejam no nıvel 1

A estrategia de propor diversidade nas solucoes paraencontrarem varias solucoes de Pareto e mantida aqui, usando-se afuncao share

Angelo e Helenice (UTFPR/UNESP) Introd. a Otimizacao Multiobjetivo 06/07 de Junho de 2018 47 / 88

Page 48: Introdução à Otimização Multiobjetivo - Algoritmos ...€¦ · 3 Todos os algoritmos requerem algum conhecimento espec co do problema a ser resolvido, como os valores de ou "4

UTFPR

O metodo NSGA

Para cada solucao i em P1, a distancia euclidiana normalizada ecalculada de outra solucao j:

dij =

√√√√ p∑k=1

(f ik − f

jk

fmaxk − fmin

k

)2

.

Angelo e Helenice (UTFPR/UNESP) Introd. a Otimizacao Multiobjetivo 06/07 de Junho de 2018 48 / 88

Page 49: Introdução à Otimização Multiobjetivo - Algoritmos ...€¦ · 3 Todos os algoritmos requerem algum conhecimento espec co do problema a ser resolvido, como os valores de ou "4

UTFPR

O metodo NSGA

Uma vez que todos os dij sao calculados, eles sao usados paracalcular a funcao sh(dij)

Depois que todas |P1| funcoes sharing sao computadas, saoadicionadas para calcular o niche couter (nci) da i−esima solucao

O computo final consiste em degradar o fitness da i−esima solucaofazendo-se

F ′i = Fi/nci

que e precisamente a estrategia de garantir a diversidade entre assolucoes de Pareto

Este procedimento finda a fase de atribuir o fitness para assolucoes de nıvel 1.

Angelo e Helenice (UTFPR/UNESP) Introd. a Otimizacao Multiobjetivo 06/07 de Junho de 2018 49 / 88

Page 50: Introdução à Otimização Multiobjetivo - Algoritmos ...€¦ · 3 Todos os algoritmos requerem algum conhecimento espec co do problema a ser resolvido, como os valores de ou "4

UTFPR

O metodo NSGA

Apos isto, para atribuir o valor fitness para as solucoes de nıvel 2,primeiro tome o menor fitness das solucoes de nıvel 1, digamosFmin

Atribua um valor ligeiramente menor que Fmin para as solucoes denıvel 2. Novamente o processo share e reaplicado nestes indivıduos

Este procedimento e refeito ate que todos os nıveis foram avaliados

Angelo e Helenice (UTFPR/UNESP) Introd. a Otimizacao Multiobjetivo 06/07 de Junho de 2018 50 / 88

Page 51: Introdução à Otimização Multiobjetivo - Algoritmos ...€¦ · 3 Todos os algoritmos requerem algum conhecimento espec co do problema a ser resolvido, como os valores de ou "4

UTFPR

O metodo NSGA

As solucoes de nıvel mais baixo tendem a sofrerem uma maiorpressao de serem replicadas nas geracoes seguintes

Por outro lado, as solucoes em regioes menos “congestionadas” emcada nıvel tambem sao mais pressioandas do que as demais

Desta forma as duas metas em otimizacao multiobjetivo saoatingidas por este procedimento de atribuir o fitness

Angelo e Helenice (UTFPR/UNESP) Introd. a Otimizacao Multiobjetivo 06/07 de Junho de 2018 51 / 88

Page 52: Introdução à Otimização Multiobjetivo - Algoritmos ...€¦ · 3 Todos os algoritmos requerem algum conhecimento espec co do problema a ser resolvido, como os valores de ou "4

UTFPR

O metodo NSGA

O procedimento de atribuicao do fitness neste metodo e resumido aseguir:

Passo 1: Escolha σshare e um ε > 0 e inicialize Fmin = N + ε ej = 1

Passo 2: Classifique a populacao P de acordo com os nıveis dedominancia P1, P2, · · · , Pρ = Sort(P,)

Passo 3: Para cada q ∈ PjAtribua o fitness F

(q)j = Fmin − ε

Calcule o niche count ncq entre as solucoes Pj apenas

Calcule a funcao share F ′(q)j = F

(q)j /ncq

Angelo e Helenice (UTFPR/UNESP) Introd. a Otimizacao Multiobjetivo 06/07 de Junho de 2018 52 / 88

Page 53: Introdução à Otimização Multiobjetivo - Algoritmos ...€¦ · 3 Todos os algoritmos requerem algum conhecimento espec co do problema a ser resolvido, como os valores de ou "4

UTFPR

O metodo NSGA

Passo 4: Fmin = minF ′(q)j : q ∈ Pj e seja j = j + 1

Passo 5: Se j ≤ ρ va ao Passo 3. Senao, o processo estaracompletado.

Os outros operadores como selecao, crossover, mutacao e migracao saoidenticos ao algoritmo mono-objetivo

Angelo e Helenice (UTFPR/UNESP) Introd. a Otimizacao Multiobjetivo 06/07 de Junho de 2018 53 / 88

Page 54: Introdução à Otimização Multiobjetivo - Algoritmos ...€¦ · 3 Todos os algoritmos requerem algum conhecimento espec co do problema a ser resolvido, como os valores de ou "4

UTFPR

O metodo NSGA

Exemplo

Minimize f1(x) = x1

Minimize f2(x) = 1+x2x1

sujeito a 0.1 ≤ x1 ≤ 1, 0 ≤ x2 ≤ 5

e seis solucoes:

Sol x1 x2 f1 f2

1 0.31 0.89 0.31 6.102 0.43 1.92 0.43 6.793 0.22 0.56 0.22 7.094 0.59 3.63 0.59 7.855 0.66 1.41 0.66 3.656 0.83 2.51 0.83 4.23

Angelo e Helenice (UTFPR/UNESP) Introd. a Otimizacao Multiobjetivo 06/07 de Junho de 2018 54 / 88

Page 55: Introdução à Otimização Multiobjetivo - Algoritmos ...€¦ · 3 Todos os algoritmos requerem algum conhecimento espec co do problema a ser resolvido, como os valores de ou "4

UTFPR

O metodo NSGA

Fronteira de Pareto deste exemplo:

Z∗ = (z1, z2) ∈ R2 : 0.1 ≤ z1 ≤ 1, z2 = 1/z1

−0.5 0.5 1 1.5

2

4

6

8

10

12

z1

z2

Figure: Espaco de decisao e a fronteira de Pareto para o exemplo

Angelo e Helenice (UTFPR/UNESP) Introd. a Otimizacao Multiobjetivo 06/07 de Junho de 2018 55 / 88

Page 56: Introdução à Otimização Multiobjetivo - Algoritmos ...€¦ · 3 Todos os algoritmos requerem algum conhecimento espec co do problema a ser resolvido, como os valores de ou "4

UTFPR

O metodo NSGA

O procedimento de atribuicao do fitness neste metodo e resumido aseguir:

Passo 1: Seja σshare = 0.158, ε = 0.22. Entao sejaFmin = 6 + 0.22 = 6.22 e j = 1

Passo 2: A proxima etapa e classificar a populacao em nıveis.Nesse exemplo, P1 = 1, 3, 5, P2 = 2, 6 e P3 = 4Passo 3: Atribua o mesmo fitness para todos os indivıduos em P1

como sendo igual ao tamanho desta populacao. Neste exemplo,F1 = F3 = F5 = 6.00. Em seguida calculamos a funcao share paraestes elementos.

d13 = 0.120, d15 = 0.403, d35 = 0.518

Angelo e Helenice (UTFPR/UNESP) Introd. a Otimizacao Multiobjetivo 06/07 de Junho de 2018 56 / 88

Page 57: Introdução à Otimização Multiobjetivo - Algoritmos ...€¦ · 3 Todos os algoritmos requerem algum conhecimento espec co do problema a ser resolvido, como os valores de ou "4

UTFPR

O metodo NSGA

Passo 3: Agora calculamos a funcao share

sh13 = 0.423, sh15 = 0, sh35 = 0

Trocando-se N por |P1| = 3, calculamos nc :

nc1 = sh(d11) + sh(d13) + sh(d35)= 1 + 0.423 + 0 = 1.423

nc3 = sh(d31) + sh(d33) + sh(d35)= 0.423 + 1 + 0 = 1.423

nc5 = sh(d51) + sh(d53) + sh(d55)= 0 + 0 + 1 = 1

Calculamos o fitness share F ′i = Fi/nci para i ∈ 1, 3, 5

Angelo e Helenice (UTFPR/UNESP) Introd. a Otimizacao Multiobjetivo 06/07 de Junho de 2018 57 / 88

Page 58: Introdução à Otimização Multiobjetivo - Algoritmos ...€¦ · 3 Todos os algoritmos requerem algum conhecimento espec co do problema a ser resolvido, como os valores de ou "4

UTFPR

O metodo NSGA

Passo 4: Agora Fmin = 4.22 e seja j = 2

Passo 5: Continuamos com o mesmo procedimento acima,computando o fitness para o 2o e 3o nıveis. Os valores do fitnessshare estao exibidos na tabela anterior

Angelo e Helenice (UTFPR/UNESP) Introd. a Otimizacao Multiobjetivo 06/07 de Junho de 2018 58 / 88

Page 59: Introdução à Otimização Multiobjetivo - Algoritmos ...€¦ · 3 Todos os algoritmos requerem algum conhecimento espec co do problema a ser resolvido, como os valores de ou "4

UTFPR

O metodo NSGA

Resumo:

Sol x1 x2 f1 f2 Nıvel fitness fitnessmedio share

1 0.31 0.89 0.31 6.10 1 6.00 4.222 0.43 1.92 0.43 6.79 2 4.00 4.003 0.22 0.56 0.22 7.09 1 6.00 4.224 0.59 3.63 0.59 7.85 3 3.78 3.785 0.66 1.41 0.66 3.65 1 6.00 6.006 0.83 2.51 0.83 4.23 2 4.00 4.00

Angelo e Helenice (UTFPR/UNESP) Introd. a Otimizacao Multiobjetivo 06/07 de Junho de 2018 59 / 88

Page 60: Introdução à Otimização Multiobjetivo - Algoritmos ...€¦ · 3 Todos os algoritmos requerem algum conhecimento espec co do problema a ser resolvido, como os valores de ou "4

UTFPR

O metodo NSGA

−0.2 0.2 0.4 0.6 0.8 1

2

4

6

8

(1) : 4.22

(2) : 4.00(3) : 4.22

(4) : 3.78

(5) : 6.00(6) : 4.00

z1

z2

Figure: Fitness share de cada ponto

Angelo e Helenice (UTFPR/UNESP) Introd. a Otimizacao Multiobjetivo 06/07 de Junho de 2018 60 / 88

Page 61: Introdução à Otimização Multiobjetivo - Algoritmos ...€¦ · 3 Todos os algoritmos requerem algum conhecimento espec co do problema a ser resolvido, como os valores de ou "4

UTFPR

O metodo NSGA

Observacoes1 Nenhuma solucao em um nıvel tem um valor para a funcao share

pior que qualquer solucao situada num nıvel mais elevado.

2 Regioes menos densas, tem-se um fitness share melhor

Angelo e Helenice (UTFPR/UNESP) Introd. a Otimizacao Multiobjetivo 06/07 de Junho de 2018 61 / 88

Page 62: Introdução à Otimização Multiobjetivo - Algoritmos ...€¦ · 3 Todos os algoritmos requerem algum conhecimento espec co do problema a ser resolvido, como os valores de ou "4

UTFPR

O metodo NSGA

Vantagens

Atribuicao do fitness ser baseada nos nıveis de dominancia..

Este algoritmo tem bom comportamento de diversos problemas.

O NSGA e capaz de fornecer solucoes de Pareto bem distribuıdas

A estrategia share garante diversidade entre as solucoes.

Desvantagens

A estrategia share requer fixar o parametro σshare.

O metodo NSGA e bastante sensıvel com este parametro;

Proposta por [1] este parametro pode ser calculado por:

σshare =(ug1 − l

g1) + (ug2 − l

g2)

N − 1

onde ugi e lgi sao os maximos e mınimos de cada funcao objetivo nageracao g

Angelo e Helenice (UTFPR/UNESP) Introd. a Otimizacao Multiobjetivo 06/07 de Junho de 2018 62 / 88

Page 63: Introdução à Otimização Multiobjetivo - Algoritmos ...€¦ · 3 Todos os algoritmos requerem algum conhecimento espec co do problema a ser resolvido, como os valores de ou "4

UTFPR

O metodo NSGA

Este metodo foi empregado no presente exemplo. Ao final das geracoesa curva de Pareto obtida foi:

−0.5 0.5 1 1.5

2

4

6

8

10

12

z1

z2

Figure: Espaco de decisao e a fronteira de Pareto para o exemplo

Angelo e Helenice (UTFPR/UNESP) Introd. a Otimizacao Multiobjetivo 06/07 de Junho de 2018 63 / 88

Page 64: Introdução à Otimização Multiobjetivo - Algoritmos ...€¦ · 3 Todos os algoritmos requerem algum conhecimento espec co do problema a ser resolvido, como os valores de ou "4

UTFPR

AG multiobejtivo para problemas com restricoes

Problema restrito

Minimize f(x) = (f1(x), · · · , fp(x))sujeito a gj(x) ≥ 0, j = 1, · · · ,m

xLi ≤ xi ≤ xUi , i = 1, · · · , n(8)

onde temos m restricoes de desigualdade

Angelo e Helenice (UTFPR/UNESP) Introd. a Otimizacao Multiobjetivo 06/07 de Junho de 2018 64 / 88

Page 65: Introdução à Otimização Multiobjetivo - Algoritmos ...€¦ · 3 Todos os algoritmos requerem algum conhecimento espec co do problema a ser resolvido, como os valores de ou "4

UTFPR

AG multiobejtivo para problemas com restricoes

Observacoes:

E claro que uma solucao de Pareto para (8) deve atender todas asrestricoes, ou seja, deve ser factıvel

Uma solucao xi e factıvel se gj(xi) ≥ 0 para j = 1, · · · ,m (alem da

canalizacao, que assumimos ser atendida a priori)

Por outro lado, se alguma restricao gj(xi) < 0 entao esta solucao e

infactıvel e a restricao j e violada. A quantidade violada e dadapor |gj(xi)|

Angelo e Helenice (UTFPR/UNESP) Introd. a Otimizacao Multiobjetivo 06/07 de Junho de 2018 65 / 88

Page 66: Introdução à Otimização Multiobjetivo - Algoritmos ...€¦ · 3 Todos os algoritmos requerem algum conhecimento espec co do problema a ser resolvido, como os valores de ou "4

UTFPR

AG multiobejtivo para problemas com restricoes

Exemplo de problema restrito:

Minimize f1(x) = x1,

Minimize f2(x) = 1+x2x1

,

sujeito a g1(x) = 9x1 + x2 − 6 ≥ 0,g2(x) = 9x1 − x2 − 1 ≥ 0,0.1 ≤ x1 ≤ 1,0 ≤ x2 ≤ 5

Lembramos que a fronteira de Pareto do problema irrestrito edada por 0.1 ≤ x∗1 ≤ 1 e x∗2 = 0

Na presenca das restricoes, os espacos X e Z ficam diferentes

Angelo e Helenice (UTFPR/UNESP) Introd. a Otimizacao Multiobjetivo 06/07 de Junho de 2018 66 / 88

Page 67: Introdução à Otimização Multiobjetivo - Algoritmos ...€¦ · 3 Todos os algoritmos requerem algum conhecimento espec co do problema a ser resolvido, como os valores de ou "4

UTFPR

Metodos para tratar as restricoes

Formas de tratar as restricoes1 Metodo de ignorar as solucoes infactıveis

2 Metodo da Penalizacao

3 Metodo do torneio restrito

Tratamos cada um destes casos

Angelo e Helenice (UTFPR/UNESP) Introd. a Otimizacao Multiobjetivo 06/07 de Junho de 2018 67 / 88

Page 68: Introdução à Otimização Multiobjetivo - Algoritmos ...€¦ · 3 Todos os algoritmos requerem algum conhecimento espec co do problema a ser resolvido, como os valores de ou "4

UTFPR

Ignorando solucoes infactıveis

E a mais simples de todas as abordagens

O princıpio e ignorar qualquer solucao que viola alguma restricao

Embora seja simples de implementar, em problemas reaisencontrar uma solucao admissıvel pode ser uma tarefa cara

Esta abordagem ingenua tera muitas dificuldades de encontrar aomenos uma solucao admissıvel

Angelo e Helenice (UTFPR/UNESP) Introd. a Otimizacao Multiobjetivo 06/07 de Junho de 2018 68 / 88

Page 69: Introdução à Otimização Multiobjetivo - Algoritmos ...€¦ · 3 Todos os algoritmos requerem algum conhecimento espec co do problema a ser resolvido, como os valores de ou "4

UTFPR

Metodo da funcao penalidade

Afim de se aproximar da regiao admissıvel, as solucoes xi

inadmissıveis quando criadas, podem ser avaliadas e comparadas

Para tal, mede-se o grau Ω de infactibilidade desta solucao,somando-se a violacoes, isto e

Ω(xi) =

m∑j=1

|min0, gj(xi)| (9)

Desta maneira, o AG tende a pressionar as solucoes com um menorΩ na selecao, convergindo-se em alguns casos para a regiao X

Angelo e Helenice (UTFPR/UNESP) Introd. a Otimizacao Multiobjetivo 06/07 de Junho de 2018 69 / 88

Page 70: Introdução à Otimização Multiobjetivo - Algoritmos ...€¦ · 3 Todos os algoritmos requerem algum conhecimento espec co do problema a ser resolvido, como os valores de ou "4

UTFPR

Metodo da funcao penalidade

E o mais popular das tres abordagens

Primeiramente, todas as restricoes devem ser normalizadas

Entao para cada solucao xi calcular Ω usando-se a eq. (9)

Esta violacao e entao multiplicada por um parametro depenalidade Rk e o produto e subtraıdo em cada funcao objetivo:

Fk(xi)← fk(x

i)−Rk · Ω(xi) (10)

Angelo e Helenice (UTFPR/UNESP) Introd. a Otimizacao Multiobjetivo 06/07 de Junho de 2018 70 / 88

Page 71: Introdução à Otimização Multiobjetivo - Algoritmos ...€¦ · 3 Todos os algoritmos requerem algum conhecimento espec co do problema a ser resolvido, como os valores de ou "4

UTFPR

Metodo da funcao penalidade

A funcao Fk leva em conta as violacoes nas restricoes. E logico quepara uma solucao factıvel, Fk = fk original

Caso contrario, Fk > fk. Como as funcao objetivos podem termagnitudes diferentes, o parametro Rk pode variar de um objetivopara o outro afim de equilibrar as dimensoes envolvidas

A tendencia, com esta tecnica, e que o algoritmo convirja parauma solucao admissıvel e de Pareto

Angelo e Helenice (UTFPR/UNESP) Introd. a Otimizacao Multiobjetivo 06/07 de Junho de 2018 71 / 88

Page 72: Introdução à Otimização Multiobjetivo - Algoritmos ...€¦ · 3 Todos os algoritmos requerem algum conhecimento espec co do problema a ser resolvido, como os valores de ou "4

UTFPR

Metodo da funcao penalidade

Alternativamente, pode-se usar a seguinte funcao penalidade

Fk(xi) = fk · exp−Ω(xi)/β, (11)

isto e, se uma solucao e admissıvel, entaoexp−Ω(xi)/β = exp0/β = 1, logo a funcao fitness fk nao epenalizada, por outro lado esta sera diminuıda. Aqui, β e umaconstante que mede a “forca” da penalizacao

Angelo e Helenice (UTFPR/UNESP) Introd. a Otimizacao Multiobjetivo 06/07 de Junho de 2018 72 / 88

Page 73: Introdução à Otimização Multiobjetivo - Algoritmos ...€¦ · 3 Todos os algoritmos requerem algum conhecimento espec co do problema a ser resolvido, como os valores de ou "4

UTFPR

Metodo da funcao penalidade

Primeiramente normalizamos as restricoes:

g1(x) = 9x1 + x2 − 6 ≥ 0⇒ g1(x) = 9x1+x2

6 − 1 ≥ 0

g2(x) = 9x1 − x2 − 1 ≥ 0⇒ g2(x) = 9x1−x2

1 − 1 ≥ 0

Considere estas seis solucoes:Sol x1 x2 f1 f2

1 0.31 0.89 0.31 6.102 0.43 1.92 0.43 6.793 0.22 0.56 0.22 7.094 0.59 3.63 0.59 7.855 0.66 1.41 0.66 3.656 0.83 2.51 0.83 4.23

Angelo e Helenice (UTFPR/UNESP) Introd. a Otimizacao Multiobjetivo 06/07 de Junho de 2018 73 / 88

Page 74: Introdução à Otimização Multiobjetivo - Algoritmos ...€¦ · 3 Todos os algoritmos requerem algum conhecimento espec co do problema a ser resolvido, como os valores de ou "4

UTFPR

Metodo da funcao penalidade

A primeira solucao avaliada em g1

fornece −0.39, logo e infactıvel.No entanto na segunda restricao g

2tem-se 0.90, logo nao e violada.

Nesse caso o valor Ω para esta solucao e Ω = | − 0.39| = 0.39.

Observa-se que f2 toma valores em maior magnitude que f1,embora as violacoes estejam na mesma ordem de magnitude.Entao seja R1 = 2 e R2 = 20. A funcao penalizada e:

F1 = f1 +R1 · Ω= 0.31− 2 · 0.39= −0.47

F2 = f2 +R2 · Ω= 6.10− 20 · 0.39= −1.7

Angelo e Helenice (UTFPR/UNESP) Introd. a Otimizacao Multiobjetivo 06/07 de Junho de 2018 74 / 88

Page 75: Introdução à Otimização Multiobjetivo - Algoritmos ...€¦ · 3 Todos os algoritmos requerem algum conhecimento espec co do problema a ser resolvido, como os valores de ou "4

UTFPR

Metodo da funcao penalidade

Usando as funcoes penalizadas F1 e F2 podemos aplicar oalgoritmo de classificacao em nıveis de dominancia. Neste caso,P1 = 4, 5, P2 = 6, P3 = 1, 2 e P4 = 3Observacao: solucoes infactıveis podem pertencer ao mesmonıvel que solucoes factıveis, principalmente quando a solucaoinfactıvel esta perto da fronteira da restricao

Angelo e Helenice (UTFPR/UNESP) Introd. a Otimizacao Multiobjetivo 06/07 de Junho de 2018 75 / 88

Page 76: Introdução à Otimização Multiobjetivo - Algoritmos ...€¦ · 3 Todos os algoritmos requerem algum conhecimento espec co do problema a ser resolvido, como os valores de ou "4

UTFPR

Metodo do Torneio Restrito

Proposto por Deb e seus alunos

Na selecao, usa torneio: duas solucoes sao pegas e a melhor eseparada para compor o matting pool

Em mono-objetivo, na presenca de restricoes, tres casos podemocorrer:

1 Ambas sao factıveis: neste caso escolha a que tiver melhor fitness2 Uma e factıvel e a outra nao: neste caso escolha a factıvel3 Ambas sao infactıveis: neste caso escolha a que tem menor violacao

das restricoes

Angelo e Helenice (UTFPR/UNESP) Introd. a Otimizacao Multiobjetivo 06/07 de Junho de 2018 76 / 88

Page 77: Introdução à Otimização Multiobjetivo - Algoritmos ...€¦ · 3 Todos os algoritmos requerem algum conhecimento espec co do problema a ser resolvido, como os valores de ou "4

UTFPR

Metodo do Torneio Restrito

Definicao estendida de dominancia:

Definicao

Uma solucao xi e dita “constraint-dominate” uma solucao xj ou(xi xj), se qualquer uma das seguintes condicoes for verdadeira:

1 A solucao xi e factıvel e a solucao xj nao

2 As solucoes xi e xj sao ambas infactıveis, mas xi tem uma menorviolacao nas restricoes que xj

3 As solucoes xi e xj sao factıveis e xi domina a solucao xj no sensousual

Angelo e Helenice (UTFPR/UNESP) Introd. a Otimizacao Multiobjetivo 06/07 de Junho de 2018 77 / 88

Page 78: Introdução à Otimização Multiobjetivo - Algoritmos ...€¦ · 3 Todos os algoritmos requerem algum conhecimento espec co do problema a ser resolvido, como os valores de ou "4

UTFPR

Metodo do Torneio Restrito

Definicao estendida de dominancia:

Definicao

Uma solucao xi e dita “constraint-dominate” uma solucao xj ou(xi xj), se qualquer uma das seguintes condicoes for verdadeira:

1 A solucao xi e factıvel e a solucao xj nao

2 As solucoes xi e xj sao ambas infactıveis, mas xi tem uma menorviolacao nas restricoes que xj

3 As solucoes xi e xj sao factıveis e xi domina a solucao xj no sensousual

Angelo e Helenice (UTFPR/UNESP) Introd. a Otimizacao Multiobjetivo 06/07 de Junho de 2018 77 / 88

Page 79: Introdução à Otimização Multiobjetivo - Algoritmos ...€¦ · 3 Todos os algoritmos requerem algum conhecimento espec co do problema a ser resolvido, como os valores de ou "4

UTFPR

Metodo do Torneio Restrito

Considerando esta populacao, temos os seguintes nıveis:

Sol f1 f2 F1 F2 Ω Nıvel

1 0.31 6.10 1.09 13.90 0.39 42 0.43 6.79 1.06 16.62 0.34 33 0.22 7.09 1.38 18.69 0.58 54 0.59 7.85 0.59 7.85 0.00 15 0.66 3.65 0.66 3.65 0.00 16 0.83 4.23 0.83 4.23 0.00 2

Angelo e Helenice (UTFPR/UNESP) Introd. a Otimizacao Multiobjetivo 06/07 de Junho de 2018 78 / 88

Page 80: Introdução à Otimização Multiobjetivo - Algoritmos ...€¦ · 3 Todos os algoritmos requerem algum conhecimento espec co do problema a ser resolvido, como os valores de ou "4

UTFPR

Metodo do Torneio Restrito

Entao a classificacao geral da populacao sera:

[(4, 5), (6), (2), (1), (3)].

Sem as retricoes seria: [(1, 3, 5), (2, 4, 6)]. Feita esta classificacao, ofitness e atribuıdo como anteriormente.

As solucoes infactıveis sao classificadas em termos da violacao dasrestricoes; em caso de empate de solucoes factıveis (mesmo nıvel),o desempate sera dado na concentracao do nicho

Angelo e Helenice (UTFPR/UNESP) Introd. a Otimizacao Multiobjetivo 06/07 de Junho de 2018 79 / 88

Page 81: Introdução à Otimização Multiobjetivo - Algoritmos ...€¦ · 3 Todos os algoritmos requerem algum conhecimento espec co do problema a ser resolvido, como os valores de ou "4

UTFPR

Metodo do Torneio Restrito

−0.4−0.2 0.2 0.4 0.6 0.8 1 1.2

2

4

6

8

10

1

23

4

56

z1

z2

Figure: Espaco objetivo do exemplo e os seis pontos

Angelo e Helenice (UTFPR/UNESP) Introd. a Otimizacao Multiobjetivo 06/07 de Junho de 2018 80 / 88

Page 82: Introdução à Otimização Multiobjetivo - Algoritmos ...€¦ · 3 Todos os algoritmos requerem algum conhecimento espec co do problema a ser resolvido, como os valores de ou "4

UTFPR

Metodo do Torneio Restrito

Usando a definicao de constrained-domination, definimos o torneiorestrito da seguinte forma:

Definicao

Dadas duas solucoes xi e xj , escolha a solucao xi se qualquer uma dasseguintes condicoes sao verdadeiras:

1 A solucao xi pertence a um nıvel mais baixo que xj (no sensorestrito)

2 As solucoes xi e xj pertencem ao mesmo nıvel (no senso restrito),mas a solucao xi reside num regiao menos “lotada” baseada emnci.

Angelo e Helenice (UTFPR/UNESP) Introd. a Otimizacao Multiobjetivo 06/07 de Junho de 2018 81 / 88

Page 83: Introdução à Otimização Multiobjetivo - Algoritmos ...€¦ · 3 Todos os algoritmos requerem algum conhecimento espec co do problema a ser resolvido, como os valores de ou "4

UTFPR

Metodo do Torneio Restrito

Usando a definicao de constrained-domination, definimos o torneiorestrito da seguinte forma:

Definicao

Dadas duas solucoes xi e xj , escolha a solucao xi se qualquer uma dasseguintes condicoes sao verdadeiras:

1 A solucao xi pertence a um nıvel mais baixo que xj (no sensorestrito)

2 As solucoes xi e xj pertencem ao mesmo nıvel (no senso restrito),mas a solucao xi reside num regiao menos “lotada” baseada emnci.

Angelo e Helenice (UTFPR/UNESP) Introd. a Otimizacao Multiobjetivo 06/07 de Junho de 2018 81 / 88

Page 84: Introdução à Otimização Multiobjetivo - Algoritmos ...€¦ · 3 Todos os algoritmos requerem algum conhecimento espec co do problema a ser resolvido, como os valores de ou "4

UTFPR

Metodo do Torneio Restrito

No exemplo, para criar o matting pool M , fazemos pares ate completar toda a populacaodesta classe. Entao se por exemplo forem selecionados os pares:

1 e 2 para o 1o torneio: 2 ganha pois esta num nıvel melhor. Logo, M = 23 e 4 para o 2o torneio: 4 ganha pois esta num nıvel melhor. Logo, M = 2, 45 e 6 para o 3o torneio: 5 ganha pois esta num nıvel melhor. Logo, M = 2, 4, 53 e 2 para o 4o torneio: 2 ganha pois esta num nıvel melhor. Logo, M = 2, 4, 5, 26 e 1 para o 5o torneio: 6 ganha pois esta num nıvel melhor. Logo, M = 2, 4, 5, 2, 65 e 4 para o 6o torneio: Aqui elas pertencem ao mesmo nıvel, entao checamos osvalores de nc5 e nc4. Houve empate! Entao escolha qualquer uma, digamos, a 4.Logo, M = 2, 4, 5, 2, 6, 4

Veja que a pior solucao, a 3 nao foi escolhida. Por outro lado, a solucao4, foi replicada.

Angelo e Helenice (UTFPR/UNESP) Introd. a Otimizacao Multiobjetivo 06/07 de Junho de 2018 82 / 88

Page 85: Introdução à Otimização Multiobjetivo - Algoritmos ...€¦ · 3 Todos os algoritmos requerem algum conhecimento espec co do problema a ser resolvido, como os valores de ou "4

UTFPR

Metodo do Torneio Restrito

Vantagens

Praticamente nao requer nenhum esforco adicional.

Este metodo sempre forca a factibilidade e nenhuma outraestrategia precisa ser adotada

Boa performance em problemas problemas reais com muitasrestricoes

Angelo e Helenice (UTFPR/UNESP) Introd. a Otimizacao Multiobjetivo 06/07 de Junho de 2018 83 / 88

Page 86: Introdução à Otimização Multiobjetivo - Algoritmos ...€¦ · 3 Todos os algoritmos requerem algum conhecimento espec co do problema a ser resolvido, como os valores de ou "4

UTFPR

Metodo do Torneio Restrito

−0.4−0.2 0.2 0.4 0.6 0.8 1 1.2

1

2

3

4

5

Regiao admissıvel

z1

z2

Figure: Regiao admissıvel para o exemplo

Angelo e Helenice (UTFPR/UNESP) Introd. a Otimizacao Multiobjetivo 06/07 de Junho de 2018 84 / 88

Page 87: Introdução à Otimização Multiobjetivo - Algoritmos ...€¦ · 3 Todos os algoritmos requerem algum conhecimento espec co do problema a ser resolvido, como os valores de ou "4

UTFPR

Metodo do Torneio Restrito

−0.4−0.2 0.2 0.4 0.6 0.8 1 1.2

2

4

6

8

10

z1

z2

Figure: Espaco objetivo do exemplo

Angelo e Helenice (UTFPR/UNESP) Introd. a Otimizacao Multiobjetivo 06/07 de Junho de 2018 85 / 88

Page 88: Introdução à Otimização Multiobjetivo - Algoritmos ...€¦ · 3 Todos os algoritmos requerem algum conhecimento espec co do problema a ser resolvido, como os valores de ou "4

UTFPR

Simulacao

−0.4−0.2 0.2 0.4 0.6 0.8 1 1.2

10

20

30

40

50

z1

z2

Figure: Espaco objetivo e imagem da populacao inicial

Angelo e Helenice (UTFPR/UNESP) Introd. a Otimizacao Multiobjetivo 06/07 de Junho de 2018 86 / 88

Page 89: Introdução à Otimização Multiobjetivo - Algoritmos ...€¦ · 3 Todos os algoritmos requerem algum conhecimento espec co do problema a ser resolvido, como os valores de ou "4

UTFPR

Simulacao

−0.4−0.2 0.2 0.4 0.6 0.8 1 1.2

2

4

6

8

10

z1

z2

Figure: Espaco objetivo e fronteira de Pareto determinada pelo NSGA restrito

Angelo e Helenice (UTFPR/UNESP) Introd. a Otimizacao Multiobjetivo 06/07 de Junho de 2018 87 / 88

Page 90: Introdução à Otimização Multiobjetivo - Algoritmos ...€¦ · 3 Todos os algoritmos requerem algum conhecimento espec co do problema a ser resolvido, como os valores de ou "4

UTFPR

Referencias

Para maiores detalhes, consultar as referencias:

Cohon, Jared L. Multiobjective programming and planning. Vol.140. Courier Corporation, 2004.

Miettinen, K. (1999). Nonlinear Multiobjective Optimization,volume 12 of International Series in Operations Research andManagement Science.

Ehrgott, Matthias. Multicriteria optimization. Vol. 491. SpringerScience & Business Media, 2005.

Deb, Kalyanmoy. Multi-objective optimization using evolutionaryalgorithms. Vol. 16. John Wiley & Sons, 2001.

Nosso email e:

[email protected] e [email protected]

Angelo e Helenice (UTFPR/UNESP) Introd. a Otimizacao Multiobjetivo 06/07 de Junho de 2018 88 / 88

Page 91: Introdução à Otimização Multiobjetivo - Algoritmos ...€¦ · 3 Todos os algoritmos requerem algum conhecimento espec co do problema a ser resolvido, como os valores de ou "4

UTFPR

Deb, K.Multi-objective optimization using evolutionary algorithms, vol. 16.John Wiley & Sons, 2001.

Holland, J. H., Holyoak, K. J., Nisbett, R. E., andThagard, P. R.Induction: Processes of inference, learning, and discovery.MIT press, 1989.

Horn, J., Nafpliotis, N., and Goldberg, D. E.A niched pareto genetic algorithm for multiobjective optimization.In Evolutionary Computation, 1994. IEEE World Congress onComputational Intelligence., Proceedings of the First IEEEConference on (1994), Ieee, pp. 82–87.

Angelo e Helenice (UTFPR/UNESP) Introd. a Otimizacao Multiobjetivo 06/07 de Junho de 2018 88 / 88