ce03 - otimizacaomultiobjetivo
TRANSCRIPT
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
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
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
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
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'
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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)
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)
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
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
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
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
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
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
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
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
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)
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
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)
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
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
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
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
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
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
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
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:
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(µ)
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
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)
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
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