ce03 - otimizacaomultiobjetivo

45
OTIMIZAÇÃO MULTIOBJETIVO E ALGORITMOS EVOLUTIVOS OTIMIZAÇÃO MULTIOBJETIVO E ALGORITMOS EVOLUTIVOS COMPUTAÇÃO EVOLUTIVA Profa. Adriane Beatriz de Souza Serapião Profa. Adriane Beatriz de Souza Serapião Computação Evolutiva Profa. Adriane Beatriz de Souza Serapião DEMAC/UNESP Otimização multiobjetivo (MOO) é a otimização de objetivos conflitantes. Em aulas anteriores pode-se usar uma função objetivo para unir dois objetivos com uma característica comum – custo. Em alguns problemas de otimização, não é possível encontrar um modo de unir objetivos que competem entre si. Algumas vezes as diferenças são qualitativas e a importância relativa desses objetivos não pode ser quantificada numericamente. Introdução

Upload: paula-bueno

Post on 28-Nov-2014

77 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: CE03 - OtimizacaoMultiObjetivo

OTIMIZAÇÃO MULTIOBJETIVO E ALGORITMOS EVOLUTIVOS

OTIMIZAÇÃO MULTIOBJETIVO E ALGORITMOS EVOLUTIVOS

COMPUTAÇÃO EVOLUTIVA

Profa. Adriane Beatriz de Souza SerapiãoProfa. Adriane Beatriz de Souza Serapião

Computação Evolutiva

Profa. Adriane Beatriz de Souza Serapião

DEMAC/UNESP

• Otimização multiobjetivo (MOO) é a otimização de objetivos conflitantes.

• Em aulas anteriores pode-se usar uma função objetivo para unir dois objetivos com uma característica comum – custo.

• Em alguns problemas de otimização, não é possível encontrar um modo de unir objetivos que competem entre si.

• Algumas vezes as diferenças são qualitativas e a importância relativa desses objetivos não pode ser quantificada numericamente.

Introdução

Page 2: CE03 - OtimizacaoMultiObjetivo

Computação Evolutiva

Profa. Adriane Beatriz de Souza Serapião

DEMAC/UNESP

Problema de otimização multiobjetivo (MOO):

• x = (x1,...,xp) é um vetor de parâmetros reais ou variáveis de decisão pertencentes a um universo X.

• fi(x) são funções arbitrárias lineares ou não lineares.

( ) ( )( ) f,...,f Minimizar n1 xx

Definição do problema MOO

Computação Evolutiva

Profa. Adriane Beatriz de Souza Serapião

DEMAC/UNESP

• O conjunto de soluções está composto por todos aqueles elementos do espaço de busca não dominados ou Pareto-ótimos.

• Uma solução x é não dominada se e somente se não existe outra solução x' tal que:– fi(x') ≤≤≤≤ fi(x), para todo i=1,..,n e– fi(x') < fi(x), para algum i.

Solução do problema MOO

Page 3: CE03 - OtimizacaoMultiObjetivo

Computação Evolutiva

Profa. Adriane Beatriz de Souza Serapião

DEMAC/UNESP

Problemas de otimização multiobjetivo com metas e prioridades (MOMP):

( ) ( )( )( )

( )n

n

n

,...,ppp

,...,uuu

x,...,fxf

1

1

1

sprioridade e

metas com

Minimizar

==

Problemas MOMP

Computação Evolutiva

Profa. Adriane Beatriz de Souza Serapião

DEMAC/UNESP

• Otimização multiobjetivo: – todos os objetivos têm igual prioridade.– não existem metas.

• Otimização multiobjetivo com restrições:– as restrições, com metas, têm maior prioridade.– os objetivos, sem metas, têm menor prioridade.

• Satisfação de restrições:– as restrições têm metas e igual prioridade.

• Programação de metas:– metas para cada objetivo.– podem estabelecer distintos níveis de prioridade.

Casos particulares de MOMP

Page 4: CE03 - OtimizacaoMultiObjetivo

Computação Evolutiva

Profa. Adriane Beatriz de Souza Serapião

DEMAC/UNESP

• Objetivos múltiplos, frequentementecompetindo entre si.

• No caso de um espaço de variável mensurável, pode frequentemente ser reduzido a uma única função objetivo (ou sequência dessa) e resolvida usando métodos clássicos.

• Alguns problemas não podem ser reduzidos e devem ser resolvidos usando técnicas de MOO puras.

Problemas de Otimização Multiobjetivos (MOPs)

Computação Evolutiva

Profa. Adriane Beatriz de Souza Serapião

DEMAC/UNESP

( )( ) ( )

( ) ( )

( ) ( ) >∀≤

=

∞+

≤∞−=

contrário caso0

se1

booleana função uma é 101 onde

contrário caso

se

e se

ijij

i

ii

i

pj:p,uxfih

},{,...,n}h:{

ihxf

uxfih

xf'

• Para resolver problemas MOP, define-se o vetor de objetivos f’(x)=(f’1(x),...,f’n(x)) da seguinte forma:

Definição de MOP

Page 5: CE03 - OtimizacaoMultiObjetivo

Computação Evolutiva

Profa. Adriane Beatriz de Souza Serapião

DEMAC/UNESP

• Como exemplo, consideremos o problema de otimização multiobjetivo com restrições proposto por Kita et al.:

( )( )

( )

( )( )

0

0306

02

15

2

1

02

13

6

1 :a Sujeito

12

1

:Minimizar

1

213

212

211

212

2211

≥≤−+=

≤−+=

≤−+=

−−−=

−=

x,xcom x

xxx g

xxx g

xxxg

xxxf

xxxf

Exemplo

Computação Evolutiva

Profa. Adriane Beatriz de Souza Serapião

DEMAC/UNESP

• Este problema pode ser visto como um problema de otimização multiobjetivo com:– 5 funções objetivo (f1(x),f2(x),g1(x),g2(x),g3(x))– Prioridades p = (1,1,1,2,2)– Metas u = (-∞,-∞,0,0,0)

Exemplo

( ) ( ) ( ) ( ) ( )

( ) ( ) ( ) ( ) ( )

( ) ( )( )

( ) ( )( )

( ) ( )( )

≤∞−

=

≤∞−

=

≤∞−

=

∞+≤≤≤

=

∞+≤≤≤

=

contrário caso

0 se

contrário caso

0 se

contrário caso

0 se

contrário caso

00 e 0 se

contrário caso

00 e 0 se

3

35

2

24

1

13

32122

32111

xg

xgxf'

xg

xgxf'

xg

xgxf'

x y gxgxgxfxf'

x y gxgxgxfxf'

Page 6: CE03 - OtimizacaoMultiObjetivo

Computação Evolutiva

Profa. Adriane Beatriz de Souza Serapião

DEMAC/UNESP

•• Otimização Otimização preemptivapreemptiva

– Otimização sequencial de objetivos individuais (em ordem de prioridade).

•• Função objetivo compostaFunção objetivo composta

– Soma ponderada dos objetivos.

•• Puramente Puramente multiobjetivomultiobjetivo

– Baseada em população.

– Baseada em Pareto.

Três abordagens gerais

Computação Evolutiva

Profa. Adriane Beatriz de Souza Serapião

DEMAC/UNESP

1. Priorizar objetivos de acordo com critérios prédefinidos (problema-específico).

2. Otimizar a função objetivo de mais alta prioridade.

3. Introduzir novas restrições baseadas no valor ótimo recém obtido.

4. Repetir passos 2 & 3 para todas as outras funções objetivos, em sucessão.

Passos de otimização preemptiva

Page 7: CE03 - OtimizacaoMultiObjetivo

Computação Evolutiva

Profa. Adriane Beatriz de Souza Serapião

DEMAC/UNESP

1. Atribuir pesos a cada função, de acordo com critérios prédefinidos (problema-específico):– Objetivos MAX e MIN recebem sinais opostos.

2. Somar as funções ponderadas para criar uma nova função composta.

3. Resolver como um problema de otimização de objetivo único.

Funções objetivos compostas

Computação Evolutiva

Profa. Adriane Beatriz de Souza Serapião

DEMAC/UNESP

• Vantagens:

– Fácil de entender e formular.

– Simples de resolver (usando técnicas clássicas).

• Desvantagens:

– Priorização/ponderação a priori pode terminar sendo arbitrária (devido à compreensão insuficiente do problema): supersimplificação.

– Não adequadas para certos tipos de MOPs.

Abordagens de transformação

Page 8: CE03 - OtimizacaoMultiObjetivo

Computação Evolutiva

Profa. Adriane Beatriz de Souza Serapião

DEMAC/UNESP

• Permite a investigação de compromissos entre objetivos concorrentes.

• EAs são bem apropriados para resolver MOPsem sua forma pura, nativa.

• Tais técnicas são muito frequentementebaseadas no conceito da optimalidade de Pareto.

MOPs puros: soluções baseadas em população

Computação Evolutiva

Profa. Adriane Beatriz de Souza Serapião

DEMAC/UNESP

• MOP � compromissos entre objetivos que competem entre si.

• Abordagem de Pareto � exploração da superfície de compromisso, produzindo um conjunto de soluções possíveis.– Também conhecida como optimalidadeEdgeworth-Pareto.

Optimalidade de Pareto

Vilfredo Pareto (1848—1923)

Francis YsidroEdgeworth

Page 9: CE03 - OtimizacaoMultiObjetivo

Computação Evolutiva

Profa. Adriane Beatriz de Souza Serapião

DEMAC/UNESP

• Uma solução candidata é Pareto-ótima se e somente se:– É pelo menos tão boa quanto todas as outras candidatas para todos os objetivos,

– É melhor que todas as outras candidatas para pelo menos um objetivo.

• Pode-se dizer que esta candidata dominatodas as outras candidatas.

Definição: Pareto-ótimo

Computação Evolutiva

Profa. Adriane Beatriz de Souza Serapião

DEMAC/UNESP

Dado o vetor de funções objetivos ))(,),(()( 1 xfxfxf k

r

K

rr

r

=

Diz-se que a candidata domina , (i.e. ) se:

1xr

2xr

21 xxr

p

r

)()(:},,1{

},,1{)()(

21

21

xfxfki

e

kixfxf

ii

ii

rr

K

K

rr

<∈∃

∈∀≤

(assumindo que se quer minimizar as funções objetivos).

(Coello Coello 2002)

Dominância: definição

Page 10: CE03 - OtimizacaoMultiObjetivo

Computação Evolutiva

Profa. Adriane Beatriz de Souza Serapião

DEMAC/UNESP

• Com um conjunto de Pareto, fala-se em termos de não-dominância.

• Pode existir uma candidata dominante no máximo. Nenhuma disposição para “laços”.

• Pode-se ter uma ou mais candidatas se o conjunto for definido em termos de não-dominância.

Não-dominância de Pareto

Computação Evolutiva

Profa. Adriane Beatriz de Souza Serapião

DEMAC/UNESP

[ ] ( ){ })()(|: xfxfFxFxPr

p

r

′∋∈′¬∃∈=

O conjunto de Pareto-ótimo P contém todas as candidatas que são não-dominadas. Isto é:

onde F é o conjunto de soluções candidatas factíveis.

(Coello Coello 2002)

Conjunto Pareto-ótimo

Page 11: CE03 - OtimizacaoMultiObjetivo

Computação Evolutiva

Profa. Adriane Beatriz de Souza Serapião

DEMAC/UNESP

• A fronteira de Pareto é simplesmente valores do vetor de optimalidade avaliado em todas as candidatas do conjunto de Pareto-ótimo.

fr

Fronteira de Pareto

(Tamakiet al.1996)

Computação Evolutiva

Profa. Adriane Beatriz de Souza Serapião

DEMAC/UNESP

• Suponha que você precisa voar em uma viagem longa: você poderia escolher a passagem mais barata (mais conexões) ou o tempo de voo mais curto (mais caro)?

• É impossível dar um valor para o tempo. Assim, estes dois objetivos não podem ser ligados.

• Também, a importância relativa variará.– Pode ocorrer uma emergência no trabalho e você precisa ir rapidamente.

– Ou, talvez você esteja com o orçamento apertado.

Exemplo conceitual

Page 12: CE03 - OtimizacaoMultiObjetivo

Computação Evolutiva

Profa. Adriane Beatriz de Souza Serapião

DEMAC/UNESP

• Um problema MOO com restrições terá muitas soluções na região factível.

• Mesmo que nós não possamos ser capazes de atribuir importância relativa numérica aos múltiplos objetivos, nós ainda podemos classificar algumas soluções possíveis como melhor que outras.

• Isso será visto no exemplo seguinte.

Soluções Pareto-ótimas

Computação Evolutiva

Profa. Adriane Beatriz de Souza Serapião

DEMAC/UNESP

• Suponha que no exemplo da viagem de avião anterior encontremos as seguintes passagens:

22006E

23007.5D

18008C

20009B

170010A

Preço da passagem ($)

Tempo de viagem (h)

Passagem

Exemplo de soluções Pareto-ótimas

Page 13: CE03 - OtimizacaoMultiObjetivo

Computação Evolutiva

Profa. Adriane Beatriz de Souza Serapião

DEMAC/UNESP

• Se compararmos as passagens A e B, não podemos dizer que uma é superior sem saber a importância relativa do Tempo de viagem ×Preço.

• Entretanto, a comparação das passagens B e C mostra que C é melhor que B em ambos objetivos, de modo que pode-se dizer que C“domina” B.

• Assim, contanto que C seja uma opção factível, não há razão para escolher B.

Comparação de soluções

Computação Evolutiva

Profa. Adriane Beatriz de Souza Serapião

DEMAC/UNESP

• Se terminarmos as comparações, vê-se também que D é dominado por E.

• O resto das opções (A, C, e E) tem um compromisso associado ao Tempo × Preço, de modo que nenhuma é claramente superior às outras.

• Isto é chamado de conjunto de soluções “não-dominadas”, fazendo com que nenhuma das soluções sejam dominadas.

Comparação de soluções

Page 14: CE03 - OtimizacaoMultiObjetivo

Computação Evolutiva

Profa. Adriane Beatriz de Souza Serapião

DEMAC/UNESP

Geralmente, soluções deste tipo formam uma forma típica, mostrada no gráfico abaixo:

Plane Ticket Options

0

1000

2000

3000

4000

5000

0 5 10 15 20 25

Flight Time (hrs)

Pric

e ($

)

AE

D

C

B

Região factível

Gráfico de soluções

Computação Evolutiva

Profa. Adriane Beatriz de Souza Serapião

DEMAC/UNESP

• Soluções que estão ao longo da linha são soluções não-dominadas, enquanto que aquelas estão fora da linha são dominadas, pois existe sempre uma outra solução em cima da linha que tem pelo menos um objetivo que é melhor.

Tipos de soluções

Page 15: CE03 - OtimizacaoMultiObjetivo

Computação Evolutiva

Profa. Adriane Beatriz de Souza Serapião

DEMAC/UNESP

• A linha é chamada de fronteira de Pareto e as soluções em cima dela são chamadas de Pareto-ótimas.

• Todas as soluções Pareto-ótimas são não-dominadas.

• Assim, em MOO é importante encontrar as soluções que estão o mais próximas possíveis da fronteira de Pareto e as tão longe quanto possível.

Soluções Pareto-ótimas

Computação Evolutiva

Profa. Adriane Beatriz de Souza Serapião

DEMAC/UNESP

Para a seguinte região factível com objetivos f1e f2 , onde f1 e f2 são minimizadas:

f1

f2

Região factível

Fronteira de Pareto

Exemplo gráfico

Page 16: CE03 - OtimizacaoMultiObjetivo

Computação Evolutiva

Profa. Adriane Beatriz de Souza Serapião

DEMAC/UNESP

Um modo de imaginar como encontrar pontos na fronteira de Pareto é usar uma combinação de pesos numéricos para os dois objetivos:

f1

f2

w1

w2

w1*

Encontrando a fronteira de Pareto

Computação Evolutiva

Profa. Adriane Beatriz de Souza Serapião

DEMAC/UNESP

Se isto for feito para uma extensão de linhas em 90°, todos os pontos na fronteira de Pareto serão encontrados.

f1

f2

Encontrando a fronteira de Pareto

Page 17: CE03 - OtimizacaoMultiObjetivo

Computação Evolutiva

Profa. Adriane Beatriz de Souza Serapião

DEMAC/UNESP

• Geralmente, este não é o procedimento que é usado na prática, mas é uma boa ilustração do conceito.

• Este procedimento requer encontrar todos os possíveis pontos na região factível e então usar muitas combinações de pesos.

• Para mais de dois objetivos, a complexidade e o número de combinações torna isto impraticável.

Praticidade deste procedimento

Computação Evolutiva

Profa. Adriane Beatriz de Souza Serapião

DEMAC/UNESP

• Existem diferentes métodos usados na prática. Um deles é usar um algoritmo genético para enumerar pontos ao longo da fronteira de Pareto em várias iterações, e então usar algum método para ordenar a qualidade dos compromissos baseados na aplicação particular sendo modelada.

• Ver Thibault, J. et al. nas referências para um exemplo.

Procedimentos realísticos

Page 18: CE03 - OtimizacaoMultiObjetivo

Computação Evolutiva

Profa. Adriane Beatriz de Souza Serapião

DEMAC/UNESP

Otimização da rede de coleta de café da Federação Nacional de Cafeicultores. (Medaglia, Palacios e Villegas, 2004)

Produtores

Centros de Compra

Armazéns de coleta

Selecionar os armazéns que se devem manter operando, e

realizar a atribuição de centros de compra a armazéns,

considerando como critérios:

i. Minimização de custos de operação (Custos fixos e custos variáveis)

ii. Maximização do nível de serviço (Raio de cobertura )

* Satisfazendo uma restrição de capacidade máxima de

armazenamento nos armazéns.

Aplicações a problemas MOO de localização de instalações (CASO 1)

Computação Evolutiva

Profa. Adriane Beatriz de Souza Serapião

DEMAC/UNESP

(1)

(2)

= contrário caso ,0

i armazém o abre se Se,1iy

= contrário caso ,0

j cliente o atende i armazém o Se,1ijx

CjxDi

ij ∈=∑∈

,1

Diyuxd ii

Cj

iji ∈≤∑∈

,

∑ ∑∑∈ ∈∈

+=Di Di

ii

Cj

ijij yfxcf 1min

Sujeito a:

∑∑ ∑∈∈ ∈

=Cj

j

Cj Qi

ijj dxdfj

2max

Dados:

- Um conjunto de armazéns D={1,2..m} com custos fixo de operação fi e com uma

capacidade máxima de armazenamento ui- Um conjunto de Clientes C={1,2..n} com demandas dj- Distâncias dij e uns custos de transporte cij para todo par de armazéns e clientes

Onde, Qj = { i ∈ D: hij ≤ Dmax } para todo j ∈ C

1

12

2

3

4

Dmax

Q1 = { 1,3 } Q2 = { 3 }

Formulação do problema

Page 19: CE03 - OtimizacaoMultiObjetivo

Computação Evolutiva

Profa. Adriane Beatriz de Souza Serapião

DEMAC/UNESP

Representação inteira Representação Binária

3

1

5

1

10

92

7

8

4

6

2

3

4

3

1

5

1

10

92

7

8

4

6

2

3

4

Mutação por troca recíproca Mutação por troca recíprocaCrossover Uniforme Crossover Uniforme

Tamanho da população: 100 Probabilidade de mutação: 0.2Número de generações: 200 Probabilidade de crossover: 0.8

BOGAP <Greedy>

1 2 3 4 5 6 7 8 9 10 (n) 1 2 3 4 (m)

Formato de Representação e Operadores Genéticos

Computação Evolutiva

Profa. Adriane Beatriz de Souza Serapião

DEMAC/UNESP

))()(,(),(

,0max)(

11 xPyxfyxf

u

uxdxP

Dii

Dii

Cjijij

+=∑

−∑

∈ ∈=

α

∑ ∑∑∈ ∈∈

+=Di Di

ii

Cj

ijij yfxcyxf ),(1

∑∑ ∑∈∈ ∈

=Cj

j

Cj Qi

ijj dxdyxfj

),(2

Custo:

Nível de Serviço:

Penalização por excesso de capacidade:

Funções do problema

Page 20: CE03 - OtimizacaoMultiObjetivo

Computação Evolutiva

Profa. Adriane Beatriz de Souza Serapião

DEMAC/UNESP

Selecionar os armazéns que devem atender um conjunto de clientes

considerando como critérios:

i. Minimização de custos de transporte

ii. Minimização de tempos de trânsito

Satisfazendo uma restrição de capacidade máxima dos armazéns

Empresa: Alfa Co. distribui artigos a 21 grandes clientes ao redor de E.U.

CjxDi

ij ∈=∑∈

,1

Diuxd i

Cj

ijij ∈≤∑∈

,

∑∑∈ ∈

=Di Cj

ijiji xcdf 1min

Sujeito a:

∑∑∈ ∈

=Di Cj

ijij xtf2min

Aplicações a problemas MOO de localização de instalações (CASO 2)

Um Algoritmo Genético para um problema bi-objetivo para a atribuição de clientes a armazéns (Zhou, Min, & Gen, 2003)

Computação Evolutiva

Profa. Adriane Beatriz de Souza Serapião

DEMAC/UNESP

• Avaliação com pesos variáveis.

• Penalização para excesso de capacidade.

• Atualização da fronteira eficiente.

• Esquema de representação inteira.

• Operador de crossover: crossover uniforme.

• Operador de mutação: mutação por troca recíproca.

( )

∑∑ −∑+

+=

∈∈ ∈=

Dii

Dii

Cjijij uuxdxP

xPxfwxfwxfEval

/),0max()(

)()()())(( 2211

α

Algoritmo Genético proposto (Zhou, Min & Gen)

Page 21: CE03 - OtimizacaoMultiObjetivo

Computação Evolutiva

Profa. Adriane Beatriz de Souza Serapião

DEMAC/UNESP

• Algoritmos evolutivos são adequados para MOPs.

• Algoritmos Evolutivos → busca em paralelo →identificação de múltiplas soluções de Pareto

• Mecanismos de diversidade:– Identificação de todas as frentes de Pareto– Tendência genética (genetic drift)

• Manejo de restrições

• Elitismo

Aspectos importantes em um MOEA

Computação Evolutiva

Profa. Adriane Beatriz de Souza Serapião

DEMAC/UNESP

• Um AE é uma variação do AG original.• Um Multi-Objective Evolutionary Algorithm (MOEA) tem

operações adicionais para manter múltiplas soluções de Pareto-ótimas na população.

Vantagens:• Lida simultaneamente com um conjunto de soluções

possíveis.• Capaz de encontrar vários membros do conjunto de Pareto-

ótimo em uma única execução do algoritmo.• Explora soluções sobre todo o espaço de busca.• Menos suscetível à forma ou à continuidade da fronteira de

Pareto.

Desvantagens:• Ainda não é completamente suportado teoricamente

(comparado a outros métodos, tais como Aproximação Estocástica, que tem cerca de meio século).

Algoritmo Evolutivo Multi-Objetivo(MOEA)

Page 22: CE03 - OtimizacaoMultiObjetivo

Computação Evolutiva

Profa. Adriane Beatriz de Souza Serapião

DEMAC/UNESP

Flow chart of a non-dom inated sorting based MO G A

Fluxograma de um MOEA

Computação Evolutiva

Profa. Adriane Beatriz de Souza Serapião

DEMAC/UNESP

Minim ize the cost and end deflection are two object ives

Population at generation 500 shows that a w ide rang e of Pareto-optimal solutions are found

The welded beam design problem. A beam needs to be weldedon another beam and must carry a certain load F.

b : espessura da viga

t : comprimento da viga

l : comprimento da solta

h : espessura da solda

F : carga da viga

Usando um MOEA para resolver um problema de projeto em engenharia

Page 23: CE03 - OtimizacaoMultiObjetivo

Computação Evolutiva

Profa. Adriane Beatriz de Souza Serapião

DEMAC/UNESP

• Não baseados em conceitos de ótimo de Pareto:• Uso de funções agregadas.• Uso de múltiplas subpopulações (VEGA: Vector

Evaluated Genetic Algorithms – Schaffer,1985).

• Baseados em conceitos de ótimo de Pareto:• MOGA: Multi Objective Genetic Algorithm

(Fonseca & Fleming, 1993)• NPGA: Niched Pareto Genetic Algorithm

(Horn, Nafpliotis, & Goldberg, 1993)• NSGA: Non-dominated Sorting Genetic Algorithm

(Deb & Srinivas, 1995)• NSGA-II: Non-dominated Sorting Genetic Algorithm

(rápido & elitista) (Deb et. al, 2000)

Enfoques de algoritmos evolutivos multiobjetivos

Computação Evolutiva

Profa. Adriane Beatriz de Souza Serapião

DEMAC/UNESP

• Baseados em conceitos de ótimo de Pareto:• VOES: Vector Optimized Evolution Strategy (F. Kursawe,

1990)• PPES: Predator-Prey Evolution Strategy (Laumanns et al.,

1998)• DSGA: Distributed Sharing GA (Hiroyasgu et al., 1999)• DRLA: Distributed Reinforcement Learning Approach

(Mariano & Morales, 2000)• Nash GA (Sefrioui & Periaux, 2000) • REMOEA: Rudolph’s Elitist MOEA (Rudolph, 2001)• PAES: Pareto Archived Evolution Strategy (Knowles & Corne,

2000)• SPEA: Strength Pareto Evolutionary Algorithm (Zitzler &

Thiele, 1999)• SPEA 2: Strength Pareto Evolutionary Algorithm 2 (Zitzler,

Laumanns & Thiele 2001)• NPGA 2: Niched Pareto Genetic Algorithm 2 (Erickson et al.,

2001)• MOMGA, micro-GA

Enfoques de algoritmos evolutivos multiobjetivos

Page 24: CE03 - OtimizacaoMultiObjetivo

Computação Evolutiva

Profa. Adriane Beatriz de Souza Serapião

DEMAC/UNESP

• Este trabalho foi realizado por J. D. Schafferem 1985 e pode ser encontrado no artigo:– Schaffer, J.D., Multiple objective optimizationwith vector evaluated genetic algorithms.

• Neste método, frações apropriadas da próxima geração, ou subpopulações, foram selecionadas do todo na geração anterior, de acordo com cada um dos objetivos, separadamente.

• Crossover e mutação foram usualmente aplicados após combinação das subpopulações.

Vector Evaluated Genetic Algorithm(VEGA)

Computação Evolutiva

Profa. Adriane Beatriz de Souza Serapião

DEMAC/UNESP

geração(i)

Preenche cada seção usando um função objetivo separada

geração(i+1)

mistura aplicaoperadores genéticos

VEGA

Page 25: CE03 - OtimizacaoMultiObjetivo

Computação Evolutiva

Profa. Adriane Beatriz de Souza Serapião

DEMAC/UNESP

• Eficiente e fácil de implementar.

• Não tem um mecanismo explícito para manter diversidade.

• Não produz necessariamente vetores não-dominados.

VEGA – Vantagens e Desvantagens

Computação Evolutiva

Profa. Adriane Beatriz de Souza Serapião

DEMAC/UNESP

• Projeto de circuito combinacional no nível de portas (Coello, 2000).

• Projeto de filtros IIR multiplierless (Wilson, 1993).

• Otimização aerodinâmica (Rogers, 2000).

• Contenção de poluição de lençol freático (Ritzel, 1994).

Algumas aplicações de VEGA

Page 26: CE03 - OtimizacaoMultiObjetivo

Computação Evolutiva

Profa. Adriane Beatriz de Souza Serapião

DEMAC/UNESP

• Proposto por Fonseca & Fleming (1993):– Ver “Genetic Algorithms for MultiobjectiveOptimization: Formulation, Discussion andGeneralization”.

• Esta abordagem consiste de um esquema no qual o rank de um indivíduo corresponde ao número de indivíduos na população atual pelo qual ele é dominado.

• Usa compartilhamento de fitness e restrições de recombinação.

Multi-Objective Genetic Algorithm(MOGA)

Computação Evolutiva

Profa. Adriane Beatriz de Souza Serapião

DEMAC/UNESP

• Um vetor X = (u1,u2,…,un) é superior (domina) um outro vetor Y =(v1,v2,…,vn) se para todo i = 1,…,n ui <= vi existe i = 1,…,n tal que ui < vi.

• Se X é superior a Y então Y é inferior a X.

• Seja x um indivíduo na população t– então rank(x,t) = 1 + p(x), onde p(x) é o número de indivíduos na população t que é inferior a ele. Note que se é um ponto de Pareto, então não é inferior a nenhum ponto, visto que seu rank é 1.

Ranking MOGA

Page 27: CE03 - OtimizacaoMultiObjetivo

Computação Evolutiva

Profa. Adriane Beatriz de Souza Serapião

DEMAC/UNESP

• Atribuindo fitness de acordo com o rank:– Ordene a população de acordo com o rank. Note que alguns valores do rank podem não estar representados.

– Atribuir fitnesses aos indivíduos por interpolação a partir do melhor (rank 1) para o pior no modo usual, de acordo com alguma função, geralmente linear.

– Média dos fitnesses dos indivíduos com o mesmo rank, de modo que todos eles sejam amostrados com a mesma taxa. Note que este procedimento mantém o fitness da população total constante, enquanto mantém a pressão de seleção apropriada, como definido pela função usada.

Ranking MOGA

Computação Evolutiva

Profa. Adriane Beatriz de Souza Serapião

DEMAC/UNESP

• Suponha que se tem 10 indivíduos na população que tem ranks de 1, 2, 3, 1, 1, 2, 5, 3, 2, 5.

• Visto que há fitnesses de 1, 2 ,3, e 5 pode-se criar uma roleta obtendo o seguinte fitness para cada rank.

• Ordene-os obtendo 1, 1, 1, 2, 2, 2, 3, 3, 5, 5.

• Mapeie estes valores para seu fitness via função, como: – f(x) = 6 – x

– dando 5, 5, 5, 4, 4, 4, 3, 3, 1, 1 para os fitnesses.

– A torta é então partida em 35 fatias, as primeiras três conseguindo 5 fatias, as próximas três conseguindo 4, etc.

Exemplo de Ranking MOGA

Page 28: CE03 - OtimizacaoMultiObjetivo

Computação Evolutiva

Profa. Adriane Beatriz de Souza Serapião

DEMAC/UNESP

• Eficiente e relativamente fácil de implementar.

• Seu desempenho depende da seleção adequada do fator de compartilhamento.

• MOGA foi o mais popular MOEA da primeira geração e geralmente superava todos os seus competidores contemporâneos.

MOGA – Vantagens e Desvantagens

Computação Evolutiva

Profa. Adriane Beatriz de Souza Serapião

DEMAC/UNESP

• Diagnóstico de falhas (Marcu, 1997).

• Projeto de sistemas de controle (Chipperfield 1995).

• Projeto de antenas (Thompson, 2001).

• Síntese de sistemas de nível (Dick, 1998).

Aplicações de MOGA

Page 29: CE03 - OtimizacaoMultiObjetivo

Computação Evolutiva

Profa. Adriane Beatriz de Souza Serapião

DEMAC/UNESP

• Proposto por Horn et al. (1993,1994).

• Usa um esquema de seleção por torneio baseado na dominância de Pareto. Dois indivíduos escolhidos aleatoriamente são comparados contra um subconjunto da população completa (10% ou mais). Quando ambos competidores são dominados ou não-dominados (i.e., um laço), o resultado do torneio é decidido através do compartilhamento de fitness no domínio do objetivo.

Niched Pareto Genetic Algorithm(NPGA)

Computação Evolutiva

Profa. Adriane Beatriz de Souza Serapião

DEMAC/UNESP

• Fácil de implementar.

• Eficiente porque não aplica o ranking de Pareto na população inteira.

• Parece ter um bom desempenho geral.

• Outrossim, requer um fator de compartilhamento, requer um outro parâmetro (tamanho do torneio).

NPGA – Vantagens e Desvantagens

Page 30: CE03 - OtimizacaoMultiObjetivo

Computação Evolutiva

Profa. Adriane Beatriz de Souza Serapião

DEMAC/UNESP

• Análise de espectros experimentais (Golovkin, 2000).

• Seleção de características (Emmanouilidis, 2000).

• Projeto de sistemas tolerantes a falhas (Schott, 1995).

• Projeto de sistemas de rodagem (Haastrup & Pereira, 1997).

Exemplos de NPGA

Computação Evolutiva

Profa. Adriane Beatriz de Souza Serapião

DEMAC/UNESP

• Proposto por Srinivas & Deb (1994).

• Usa níveis de classificação: – nível 1 é o conjunto de indivíduos não-dominados;

– nível 2 é o conjunto de indivíduos não-dominados que ocorrem quando o nível 1 é removido, etc.

– Compartilhamento é realizado em cada nível usando dummy fitnesses para este nível.

• Compartilhamento espalha a busca sobre cada nível de classificação.

• Alto fitness dos níveis superiores implica que a fronteira de Pareto é pesquisada pesadamente.

Non-dominated Sorting GeneticAlgorithm (NSGA)

Page 31: CE03 - OtimizacaoMultiObjetivo

Computação Evolutiva

Profa. Adriane Beatriz de Souza Serapião

DEMAC/UNESP

• As funções de agregação realmente se condenam a falhar quando a fronteira de Pareto é não-convexa?

• Pode-se encontrar caminhos para manter a diversidade na população sem usar nichos, que requer um trabalho O(M2), onde M se refere ao tamanho da população?

• Se for assumido que não existe um modo de reduzir a complexidade O(kM2) exigida para realizar o ranking de Pareto, como se pode projetar um MOEA mais eficiente.

• Há funções de teste adequadas e métricas para avaliar quantitativamente um MOEA?

• Alguém desenvolverá fundamentos teóricos para MOEAs? por Carlos, Coello Coello

Questões de pesquisa nesse tempo foram:

Computação Evolutiva

Profa. Adriane Beatriz de Souza Serapião

DEMAC/UNESP

• Uma nova geração de algoritmos chegou com a introdução da noção de elitismo.

• Elitismo (neste contexto) refere-se ao use de uma população externa para reter o indivíduo não-dominado. Questões de projeto incluem:– Como o arquivo externo interage com a população principal?

– O que se faz quando o arquivo externo está cheio?

– Critérios adicionais são impostos para entrar com o arquivo ao invés de apenas usar a dominância de Pareto?

por Carlos, Coello Coello

Geração 2 – Elitismo

Page 32: CE03 - OtimizacaoMultiObjetivo

Computação Evolutiva

Profa. Adriane Beatriz de Souza Serapião

DEMAC/UNESP

• (1+1) PAES é feito de 3 partes:

– O gerador da solução candidata:• Isto é basicamente uma subida de encosta de mutação aleatória simples;

• Mantém uma única solução autal;• A cada iteração produz uma única nova solução candidata via mutação aleatória.

– A função de aceitação da solução candidata.

– O arquivo de soluções não-dominadas (NDS).

Pareto Archived Evolution Strategy(PAES)

Computação Evolutiva

Profa. Adriane Beatriz de Souza Serapião

DEMAC/UNESP

Gera a solução aleatória inicial c e adiciona-a ao arquivo

Muta c para produzir m e avalia m.se (c domina m) descarta msenão se (m domina c)

troca c com m, e adiciona m ao arquivosenão se (m é dominada por algum membro do

arquivo) descarta msenão aplica teste(c, m, arquivo) para determinar

qual se torna a nova solução atual e se adiciona m ao arquivo

Até que o critério de terminação seja atingido, retorne à linha 2

Pseudocódigo PAES(1+1)

Page 33: CE03 - OtimizacaoMultiObjetivo

Computação Evolutiva

Profa. Adriane Beatriz de Souza Serapião

DEMAC/UNESP

Se o arquivo não está cheioadiciona m ao arquivose (m está em uma região menos cheia do arquivo que c) aceita m como a nova solução atualsenão mantém c como a solução atual

senãose (m está em uma região menos cheia do arquivo que x para algum membro x do arquivo)

adiciona m ao arquivo, e remove um membro do arquivo a partir da região mais cheiase (m está em uma região menos cheia do arquivo que c) aceita m como a nova solução atualsenão mantém c como a solução atual

Teste(c, m, arquivo)

Computação Evolutiva

Profa. Adriane Beatriz de Souza Serapião

DEMAC/UNESP

• PAES usa um novo procedimento de aglomeração baseado em recursivamente dividir o espaço de objetivo d-dimensional. Isto é feito para minimizar custo e para evitar a colcoação do parâmetro tamanho do nicho.

• Espaço fenotípico é dividido em hipercubos, que tem uma largura de dr/2k em cada dimensão, onde dr é o limite (máximo menos mínimo) de valores no objetivo d das soluções atualmente no arquivo, e k é o parâmetro de subdivisão.

O grid adaptativo

Page 34: CE03 - OtimizacaoMultiObjetivo

Computação Evolutiva

Profa. Adriane Beatriz de Souza Serapião

DEMAC/UNESP

• Se usar 5 níveis com 2 objetivos, tem-se basicamente uma estrutura quad-tree.

• Cada nível tem 4 vezes o número de células que o nível anterior tem. 1,4, 16, 64, 256, 1024

• Portanto, há 1024 regiões de tamanho(max-min)/25

• Para o caso simples de k = 3 a célula indicada tem licalização do grid– 101-100 ou– Em binário 101100

0

0

1

1

Grid cell

Exemplo: Grid para d = 2 objetivos

Computação Evolutiva

Profa. Adriane Beatriz de Souza Serapião

DEMAC/UNESP

• Recursivamente (para cada dimensão) descer a árvore esquerda (0) ou direita (1) criando um número binário. Isto requer k comparações.

• Então concatenar as strings binárias criando um único número binário.

• Note que a localização do grid das células anteriores 1024 é apenas uma string de 10 bits.

• Convertendo esta string de 10 bits para um inteiro dá um inteiro como um índice dentro de um arranjo Count[1024] que pode ser usado para armazenar o número da aglomeração.

Como encontrar a localização do grid X

Page 35: CE03 - OtimizacaoMultiObjetivo

Computação Evolutiva

Profa. Adriane Beatriz de Souza Serapião

DEMAC/UNESP

1: t ← 12: Inicialize P(t)3: avalie P(t)4: while t ≤ T do5: mute P(t) e gere Cm(t)6: cruze P(t) e gere Cc(t)7: C(t) ← Cm(t) U Cc(t) 8: avalie C(t)9: E(t) ← P(t) U C(t)

10: ordene as fronteiras não dominadas de E(t) em R(t)11: selecione P(t + 1) tomando os primeiros popSize

indivíduos de R(t)12: t ← t + 113: end while

f1(x)

f2(x)

Distância vizinhança

Lógica do algoritmo evolutivo NSGA-II

Computação Evolutiva

Profa. Adriane Beatriz de Souza Serapião

DEMAC/UNESP

EXEMPLOSAplicações de MOEAs

Page 36: CE03 - OtimizacaoMultiObjetivo

Computação Evolutiva

Profa. Adriane Beatriz de Souza Serapião

DEMAC/UNESP

Minimizar: f1(x) = x1

Minimizar: f2(x) = 1+x2*x2-x1-a*sin(b*PI*x1)

Domínio: x1 = [0,1], x2 = [-2,2], a = 0.2, b = 1

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 10

0.5

1

1.5

2

2.5

3

3.5

4

4.5

5

Otimização funcional

Computação Evolutiva

Profa. Adriane Beatriz de Souza Serapião

DEMAC/UNESP

• Objetivos de progressão de acordes:

– Combinar porcentagens de pares de acordes.

– Maximizar o número de diferentes acordes.

– Iniciar com o acorde I.

– Terminar com o acorde I ou com o acorde V.

Música

Page 37: CE03 - OtimizacaoMultiObjetivo

Computação Evolutiva

Profa. Adriane Beatriz de Souza Serapião

DEMAC/UNESP

• Objetivos do arranjo:

– Saltos grandes: minimizado.

– Comprimentos da melodia: todos deveriam ser o mesmo.

– Notas fora do tom : devem ser minimizadas.

– Vozes cruzadas: devem ser minimizadas.

– Notas fora da escala: devem ser minimizadas.

– Acordes ruins: (acordes que não estão na progressão de acordes) deve ser minimizado.

Música

Computação Evolutiva

Profa. Adriane Beatriz de Souza Serapião

DEMAC/UNESP

Música

Seleção 0

Seleção 20

Page 38: CE03 - OtimizacaoMultiObjetivo

Computação Evolutiva

Profa. Adriane Beatriz de Souza Serapião

DEMAC/UNESP OTIMIZAÇÃO MULTIOBJETIVO DE DESPACHO DE CARGA

O PROBLEMA REAL

G

G

G

G

G

G

Emissão de poluentes

Estação de energia com vários geradores

Combustível

Transmissão de energia e malha de distribuição

Consumidores

Emissões de poluentes

Combustível

CURVAS TÍPICAS DE DEMANDA DE CARGA

40%

50%

60%

70%

80%

90%

100%

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24

hours of day

% o

n an

nual

max

imum

load

dem

and

SATURDAYSUNDAYMONDAY TO FRIDAY

Computação Evolutiva

Profa. Adriane Beatriz de Souza Serapião

DEMAC/UNESP OTIMIZAÇÃO MULTIOBJETIVO DE DESPACHO DE CARGAPROBLEMA PROPOSTO

MINIMIZAÇÃO DO CUSTO DE COMBUSTÍVEL E IMPACTO AMBIENTALPARA UM CONJUNTO DE UNIDADES GERADORAS

EM UM PERÍODO DE TEMPO

Isso significa:

� Quais unidades geradoras devem ser ligadas e quando?

� Que potência de saída deve ter cada uma das unidades geradoras?

Decidir:

A cada hora do período de

estudo(1 dia = 24

horas)

Atinja-se os mínimos custo de combustível e impacto ambiental em todo o período de estudo.

Tal que:

PROBLEMA MULTIOBJETIVO

Page 39: CE03 - OtimizacaoMultiObjetivo

Computação Evolutiva

Profa. Adriane Beatriz de Souza Serapião

DEMAC/UNESP OTIMIZAÇÃO MULTIOBJETIVO DE DESPACHO DE CARGA

OBJETIVOS CONFLITANTES

CUSTO DO COMBUSTÍVEL

EMISSÕES DE POLUENTES

Emissões de NOxEmissões de SO2

Emissões de partículas

Funções objetivos:

tmax Nmax

ƒ1 = ∑∑∑∑ ∑∑∑∑ [ uit × GCi

t(Pit) + ui

t × (1-uit-1) × Si(xi

t) + uit-1 × (1-ui

t) × Di ] (m.u.)t=1 i=1

Custo decombustível

Emissões de poluentes

tmax Nmax

ƒ2 = ∑∑∑∑ ∑∑∑∑ [ uit × (Poluente NOx)i

t(Pit) ] , (kg NOx)

t=1 i=1

tmax Nmax

ƒ3 = ∑∑∑∑ ∑∑∑∑ [ uit × (Poluente SO2)i

t(Pit) ] , (kg SO2)

t=1 i=1

tmax Nmax

ƒ4 = ∑∑∑∑ ∑∑∑∑ [ uit × (PollutPartículas)it(Pi

t) ], (kg Partículas)t=1 i=1

GCit(Pi

t) : Custo de geração da unidade i para a hora t, que depende da carga da unid. geradora i para a hora t (Pit).

Si(xit) : Custo de start-up da unidade i, que depende do tempo da unidade que estava parada até esta hora (xi

t).Di : Custo de shut-down da unidade i, que é um valor constante.Pollut i

t(Pit): Emissão atmosférica da unid. i para a hora t, que depende da carga da unid. geradora i para a hora t (Pi

t).

uit = 0 ou 1 se a

unidade i para a hora t está off(0) ou on (1)

Computação Evolutiva

Profa. Adriane Beatriz de Souza Serapião

DEMAC/UNESP OTIMIZAÇÃO MULTIOBJETIVO DE DESPACHO DE CARGA

RESTRIÇÕES CONSIDERADASNmax

1.-∑∑∑∑ Pit = L t

i=1

Nmax

2.-∑∑∑∑ Rit ≥≥≥≥ Rt

i=1

Nmax

3.-∑∑∑∑ Pimaxt ≥≥≥≥ L t + Rt

i=1

4.- Pit ≤≤≤≤ Pimax

5.- Pit ≥≥≥≥ Pimin

6.- Rampa de carga

7.- Tempo mínimo de subida

8.- Tempo mínimo de descida

9.- (NOxPollut) it ≤≤≤≤ (LimNO x)i

10.- (SO2Pollut) it ≤≤≤≤ (LimSO2)i

11.- (PollutPartículas)it ≤≤≤≤(LimPartículas) i

L t : Demanda de carga do sistema para a hora t.Rt : Reserva de spinning do sistema para a hora t.Ri

t : Reserva de spining da unidade i para a hora t. (Ri

t = Pimax - Pit ).

Pimax. : Potência máxima disponível da unidade i.Pimin. : Potência mínima disponível da unidade i.Lim i : Limite de emissão atmosférica da unidade i para

um poluente em particular

NV j : Número de não-preenchimentos da restrição j.

SVj : Soma das contribuições de não-preenchimentos da restrição j.A j, Bj : Fatores de homogeneização para unidades monetárias.

rmax.: Número das restrições estimadas.

rmax

PF = ∑∑∑∑ [A j × NV j + Bj × SVj]j=1

(frequência e método de duração)

Função de Penalidade método para resolver as restrições

Page 40: CE03 - OtimizacaoMultiObjetivo

Computação Evolutiva

Profa. Adriane Beatriz de Souza Serapião

DEMAC/UNESP OTIMIZAÇÃO MULTIOBJETIVO DE DESPACHO DE CARGA

METODOLOGIAS DE SOLUÇÃO

�ABORDAGENS TRADICIONAIS� Métodos de lista de Prioridades (1943-1957)(1990 -)� Critério de custo igual incremental[Steimberg & Smith (1943), Kirckmayer (1958)].

� Abordagem de Kuhn.Tucher(1951)

� Programação Dinâmica (PD)(1957)� Programação Não-Linear+Gauss Seidel[Squires (1960), Carpentier (1962)]� Multiplicadores de Lagrange + Newton-Raphson(1960 – 1970)

� Métodos de enumeração parcial (baseados em PD)(1980 – 1990)

� Relaxação Lagrangiana(1989)

�ABORDAGENS DE INTELIGÊNCIA ARTIFICIAL� Otimização de Monte Carlo (Simulated Annealing)� Sistemas Especialistas� Redes Neurais� Algoritmos Evolutivos (AEs)

� Programação Evolutiva (1966)� Estratégias Evolutivas (1973)� Algoritmos Genéticos (1975, 1989)� Evolução Flexível (2001)

Computação Evolutiva

Profa. Adriane Beatriz de Souza Serapião

DEMAC/UNESP OTIMIZAÇÃO MULTIOBJETIVO DE DESPACHO DE CARGA

ABORDAGEM SELECIONADA

ALGORITMOS EVOLUTIVOS

Porque:

São:� Robustos � Eficientes� Flexíveis

Desejável para este problema, que tem:

� Espaços de busca complexos e grandes

� Objetivos múltiplos e conflitantes� Muitas restrições

ALGORITMOS GENÉTICOS

Em particular, usou-se:

EVOLUÇÃO FLEXÍVEL

E um novo conceito

chamado:

� Auto-adaptação do algoritmo

Caracterizado por:

Page 41: CE03 - OtimizacaoMultiObjetivo

Computação Evolutiva

Profa. Adriane Beatriz de Souza Serapião

DEMAC/UNESP OTIMIZAÇÃO MULTIOBJETIVO DE DESPACHO DE CARGAFLEXIBLE EVOLUTION

Solução 1

Solução 2

Solução 3

Solução N

...

População t

Solução 1

Solução 2

Solução 3

Solução N

...

População t+1

Máquinade decisão

1 2 3 K….

DE

1 2 3 L….

1 2 3 M….

DE

DE

Processo de

aprender

Processo de

seleção

Processo de

amostra

Múltiplos operadores de seleção

são considerados

Múltiplos operadores

de amostragem

são considerados

Baseada em decisões

Probabilísticas

Todos os operadores

jogando um jogo

cooperativo e

competitivo durante a

busca

Múltiplos métodos de aprendiz.

são considerados

Baseado em

resultado prévio

Computação Evolutiva

Profa. Adriane Beatriz de Souza Serapião

DEMAC/UNESP OTIMIZAÇÃO MULTIOBJETIVO DE DESPACHO DE CARGA

MÉTODO EVOLUTIVO

MODIFIED STRENGHT PARETO EVOLUTIONARY ALGORITHM (MSPEA)

Características� Usa o conceito de dominância de Pareto.� Guarda as soluções de Pareto-ótimas encontradas

externamente.� O fitness de um indivíduo é determinado apenas a

partir das soluções armazenadas no conjunto de Pareto externo.

� Todas as soluções no conjunto de Pareto externo participam da seleção.

� Usa o melhor indivíduo da população atual (elitismo) e todos os indivíduos do conjunto de Paretot, ambos com uma regra de seleção probabilística fixa (0.6 e 0.4 respectivamente).

� Usa o “critério de distância” para reduzir o número de soluções armazenadas não-dominadas para um tamanho pré-definido para preservar diversidade na população, embora a eliminação aleatória de um dos dois indivíduos mais próximos tantas vezes quanto necessário (ao invés de clustering ou niching).

Populaçãot

Conjunto de Pareto

Populaçãot+1

Seleção

Crossover

Mutação

Soluções Não-

dominadas

P=0.6 P=0.4

Atualizar conjunto de Pareto

Elitismo(µ)

Page 42: CE03 - OtimizacaoMultiObjetivo

Computação Evolutiva

Profa. Adriane Beatriz de Souza Serapião

DEMAC/UNESP OTIMIZAÇÃO MULTIOBJETIVO DE DESPACHO DE CARGA

MSPEA & EVOLUÇÃO FLEXÍVEL

FLEXIBLE STRENGHT PARETO EVOLUTIONARY ALGORITHM (FSPEA)

Operadores usados:

Codific. Real

Operadoresde Crossover

� Um ponto� Dois pontos� Multiponto

probabilístico� Aritmético� Geométrico� Heurístico de

Wright

Operadoresde SeleçãoMúltiplos Operadores

de Mutação

MSPEA

GAcore

Populaçãot

Conjunto de Pareto

Populaçãot+1

Selection

Crossover

Mutation

Soluções Não-

dominadas

P=0.6 P=0.4

Atualizar conjunto

de Pareto

Elitismo(µ)

FEcore

Aprendizagem

Seleção

Amostragem

Máquinade

decisão

FSPEA

Outros

Operadores de Amostragem Múltiplos

� Proporcional� Ordenamento Lineal

� Window� Fitness linear� Resíduo

estocástico� Torneio

� Mutação deum ponto

� Mutaçãomultiponto

� Outrosbaseados emmétodos deMontecarlo

Computação Evolutiva

Profa. Adriane Beatriz de Souza Serapião

DEMAC/UNESP OTIMIZAÇÃO MULTIOBJETIVO DE DESPACHO DE CARGA

DADOS INICIAIS PARA O PROBLEMA (I)

UnidadeCapacidade máxima

(MW)

Tempo de pico

mínimo (h)

Tempo de queda

mínimo (h)

Status inicial

(h)

Constantes decusto de start-up a b c

Custo de shut-down (m.u.)

Constantes docusto de geração

A B C

Potência mínima (MW)

Rampa de carga

(MW/min)

1 60 3 1 -1 85 20,59 0,20 15 0,0454 9,921 159,33 24 12,5

2 80 3 1 -1 101 20,59 0,20 25 0,0356 10,375 222,16 32 12,5

3 100 4 2 1 114 22,57 0,20 40 0,0254 15,031 262,87 40 5,1

4 120 4 2 5 94 10,65 0,18 32 0,0212 15,031 315,44 48 5,1

5 150 5 3 -7 113 18,64 0,18 29 0,0106 20,765 485,69 60 6,4

6 280 5 2 3 176 27,57 0,15 42 0,0253 18,995 1236,90 112 10,0

7 520 8 4 -5 267 34,75 0,09 75 0,0085 19,566 4437,20 208 15,6

8 150 4 2 3 282 45,48 0,09 49 0,0116 22,251 300,86 60 8,0

9 320 5 2 -6 187 38,62 0,13 70 0,0050 20,927 1044,20 128 6,4

10 200 5 2 -3 227 26,64 0,11 62 0,0091 23,107 416,58 80 8,0

Custo de start-up (m.u.) = a × (1 - e-c × t) + b Custo de geração (m.u./h) = A × P2 + B × P + C

Tempo 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24

Demanda de carga (MW)

1459 1372 1299 1280 1271 1314 1372 1314 1271 1242 1197 1182 1154 1138 1124 1095 1066 1037 993 978 963 1022 1081 1459

Reserve de carga (MW)

219 206 195 192 191 197 206 197 191 186 180 177 173 171 169 164 160156 149 147 144 153 162 219

Page 43: CE03 - OtimizacaoMultiObjetivo

Computação Evolutiva

Profa. Adriane Beatriz de Souza Serapião

DEMAC/UNESP OTIMIZAÇÃO MULTIOBJETIVO DE DESPACHO DE CARGA

DADOS INICIAIS PARA O PROBLEMA (II)

UnidadeEmissão atmosférica de NOx

AA1 BB1 CC1

Limite de NOx

(mg/Nm3)

Emissão atmosférica de SO2AA2 BB2 CC2

Limite de SO2

(mg/Nm3)

Emissão atmosférica de partículas

AA3 BB3 CC3

Limite de Partículas

(mg/Nm3)

1 -0,2286 23,5920 -189,020 2000 -0,0331 3,3649 -8,616 400 0,0242 -1,6679 29,320 50

2 -0,1793 24,6710 -263,550 2000 -0,0259 3,5189 -12,014 400 0,0190 -1,7442 40,882 50

3 0,0019 0,1777 23,049 450 0,0000 0,1049 1,938 400 -0,0003 0,0756 -1,575 50

4 0,0016 0,1777 27,659 450 0,0000 0,1049 2,325 400 -0,0003 0,0756 -1,890 50

5 -0,0005 1,6287 -32,143 750 -0,0088 4,2133 -52,843 1700 -0,0005 0,1543 -3,731 50

6 -0,0069 3,6931 -162,610 750 0,0143 -2,8129 650,180 1700 0,0029 -0,9038 101,250 75

7 -0,0245 15,4160 -1154,600 300 -0,0056 3,8278 -492,590 400 -0,0008 0,4975 -58,342 50

8 0,0169 -2,0004 136,180 750 0,0142 -0,3365 143,660 1700 0,0021 -0,0393 28,451 75

9 -0,0002 1,6414 -69,108 750 -0,0042 4,2462 -113,610 1700 -0,0002 0,1555 -8,022 50

10 0,0131 -2,0774 188,560 750 0,0110 -0,3495 198,920 1700 0,0016 -0,4080 39,393 75

Emissão atmosférica do poluente i (kg/h) = AA × Pi2 + BB × Pi +CCi

Assim,tem-se:

� 10 geradores � 24 horas de período

de estudo

Espaço de busca de

240 variáveis reais

Cada indivíduo tem 240 genes

Computação Evolutiva

Profa. Adriane Beatriz de Souza Serapião

DEMAC/UNESP OTIMIZAÇÃO MULTIOBJETIVO DE DESPACHO DE CARGA

EXEMPLO DE RESULTADOS

FRONTEIRAS DE PARETO com MSPEACusto de combustível - Emissões de NOx

50

51

52

53

54

55

56

57

58

59

60

61

62

63

766 767 768 769 770 771 772 773 774 775 776 777 778 779 780 781 782 783 784 785

Fuel Cost x 1000 (m.u.)

NO

x (T

n)

Genetic Algorithms (GA) Flexible Evolution (FE)

Ambas as fronteiras de

Paretoobtidas com

o mesmo número de

avaliações de funções

objetivos�População: 800 indivíduos�Número de gerações: 200

�População: 800 indivíduos�Número de gerações: 200�Seleção: torneio�Crossover: aritmético (Pc = 0.9)�Mutação: um ponto (Pm = 0.9)

Page 44: CE03 - OtimizacaoMultiObjetivo

Computação Evolutiva

Profa. Adriane Beatriz de Souza Serapião

DEMAC/UNESP OTIMIZAÇÃO MULTIOBJETIVO DE DESPACHO DE CARGA

CONCLUSÕES

� Com as mesmas condições de teste, a Evolução Flexível foi mais eficiente que o algoritmo genético para este problema (foi capaz de obter uma melhor fronteira de Pareto).

� Foi necessário executar alguns procedimentos de correção para asrestrições mais fortes, sendo aplicadas no início do algoritmo para ajudar a convergir (definindo regras claras paraq reparar soluções infactíveis usando restrições).

� As modificações realizadas no Strenght Pareto Evolutionary Algorithm foi muito importante para obter resultados melhores. Tais modificações foram: usar elitismo, uma regra probabilística fixa de seleção e “critério de distância” para reduzir o número de soluções não-dominadas armazenadas.

� É importante enfatizar que Evolução Flexível aprende enquanto o algoritmos está rodando e é capaz de decidir por si só que tipos de métodos de seleção e de amostragem é o melhor a cada momento com todas as variáveis. Assim, há que se decidir apenas dois parâmetros: tamanho da população e número de gerações.

Computação Evolutiva

Profa. Adriane Beatriz de Souza Serapião

DEMAC/UNESP

• Coello Coello, C.A. 2002. “Introduction to Evolutionary Multiobjective Optimization.” www.cs.cinvestuv.mx/~EVOCINV/download/class1-emoo-eng.pdf

• Fonseca, C.M. and P.J. Fleming. 1993. Genetic Algorithms for Multiobjective Optimization: Formulation, Discussion and Generalization. Genetic Algorithms: Proceedings of the Fifth International Conference. S. Forrest, ed. San Mateo, CA, July 1993.

• Tamaki, H., H. Kita and S. Kobayashi. 1996. Multi-Objective Optimization by Genetic Algorithms: A Review. Proceedings of the IEEE Conference on Evolutionary Computation, ICEC 1996, pp 517-522.

• Younes, A., H. Ghenniwa and S. Areibi. 2002. An Adaptive Genetic Algorithm for Multi-Objective Flexible Manufacturing Systems. GECCO, New York, July 2002.

• Deb, Kalyanmoy. 2001. Multi-Objective Optimization using Evolutionary Algorithms. John Wiley & Sons.

Bibliografia

Page 45: CE03 - OtimizacaoMultiObjetivo

Computação Evolutiva

Profa. Adriane Beatriz de Souza Serapião

DEMAC/UNESP

• Lahanas, Michael; www.mlahanas.de/MOEA/MO_Optimisation.htm

• Büche, D., Müller, S., & Koumoutsakos, P. (2003). Self-Adaptation for Multi-objective Evolutionary Algorithms.

• Tran, K.D. (2005). Elitist Non-Dominated Sorting GA-II (NSGA-II) as a Parameter-less Multi-Objective GA.Paper presented at the IEEE SoutheastCon 2005, Fort Lauderdale, Florida, USA.

Bibliografia