slides 04 - otimizacao multiobjetivo - inf.unioeste.bradair/ce/notas de aula/slides 04 -...

42
OTIMIZAÇÃO MULTIOBJETIVO Adair Santa Catarina Curso de Ciência da Computação Unioeste – Campus de Cascavel – PR Fev/2018 Materiais de referência: PANTUZA Jr., G. Métodos de otimização multiobjetivo e de simulação aplicados ao problema de planejamento operacional em lavra em minas a céu aberto. 2011. 89 p. Dissertação (Mestrado em Engenheria Mineral) - Universidade Federal de Ouro Preto, Ouro Preto. PÉREZ, M. A. F. Um método heurístico para o problema de escalonamento multiobjetivo em vários ambientes de máquina. 2012. 109 p. Dissertação (Mestrado em Engenharia de Produção) – PUC-Rio, RJ.

Upload: dokien

Post on 19-Jan-2019

216 views

Category:

Documents


0 download

TRANSCRIPT

OTIMIZAÇÃO MULTIOBJETIVO

Adair Santa CatarinaCurso de Ciência da Computação

Unioeste – Campus de Cascavel – PR

Fev/2018Materiais de referência:PANTUZA Jr., G. Métodos de otimização multiobjetivo e de simulação aplicados ao problema de planejamento operacional em lavra em minas a céu aberto. 2011. 89 p. Dissertação (Mestrado em Engenheria Mineral) - Universidade Federal de Ouro Preto, Ouro Preto.PÉREZ, M. A. F. Um método heurístico para o problema de escalonamento multiobjetivo em vários ambientes de máquina. 2012. 109 p. Dissertação (Mestrado em Engenharia de Produção) – PUC-Rio, RJ.

Problemas de Otimização Multiobjetivo

Problemas de Otimização Multiobjetivo (POM) são aqueles que consideram mais de um objetivo e que,

às vezes, são conflitantes.

2

Problemas de Otimização Multiobjetivo

O que se busca, neste exemplo, são aquelas configurações de computadores (soluções) que

apresentam desempenho maior ou equivalente por um custo menor ou igual.

Estas soluções que superam outras são conhecidas como soluções não-dominadas.

3

como soluções não-dominadas.

Soluções que são superadas por pelo menos uma outra solução são conhecidas como soluções

dominadas.

Uma solução razoável para um POM é uma solução não-dominada por qualquer outra solução.

Resultado melhor seria obter todo o conjunto delas.

Definição Formal de um POM

Um POM com r ≥ 2 objetivos pode ser definido da seguinte forma:

Dado um vetor de variáveis de decisão com dimensão n, x = {x1, x2, ..., xn} no espaço de busca

X, queremos encontrar um vetor x* ∈ X que minimiza simultaneamente as r funções objetivo

4

minimiza simultaneamente as r funções objetivo f(x*) = (f1(x*), f2(x*), ..., fr(x*).

Modelo geral de um POM de minimização

(POM) Min f(x) = {f1(x), f2(x), ..., fr(x)}s.a x ∈ X.

Soluções Pareto-ótimas

Quando todas as funções objetivo são de minimização, pode-se escrever as soluções Pareto-

ótimas, definidas formalmente por:

Uma solução viável x domina outra solução viável y se e somente se

f (x) ≤ f (y), para i = 1, 2, ..., r e f (x) < f (y)

5

fi(x) ≤ fi(y), para i = 1, 2, ..., r e fi(x) < fi(y) para pelo menos uma função objetivo i.

Uma solução é Pareto-ótima se não for dominada por nenhuma outra solução viável no espaço de busca.

Uma solução Pareto-ótima não pode ser melhorada em relação a um objetivo sem a piora de ao menos

um outro objetivo.

Soluções Pareto-ótimas

O conjunto das soluções não-dominadas em X é chamado de conjunto Pareto-ótimo, e sua imagem, no espaço dos valores dos objetivos é chamada Fronteira de Pareto.

Min f(x) = x2

Min g(x) = (x – 1)2 s.a x ∈ ℜ

6

Min g(x) = (x – 1)2 s.a x ∈ ℜ

Métodos de Otimização Multiobjetivo

Encontrar soluções viáveis que otimizem simultaneamente todos os objetivos.

Na solução de problemas multiobjetivos, dois problemas podem ser identificados:

1) Busca de soluções

7

1) Busca de soluções2) Tomada de decisões

1) Processo de otimização pelo qual se buscam as soluções viáveis, visando determinar o conjunto de

soluções Pareto-ótimas.

2) Seleção de um critério apropriado para a escolha de uma solução do conjunto Pareto-ótimo (Decisor).

Métodos de Otimização Multiobjetivo

Os métodos de otimização multiobjetivo podem ser classificados em três categorias:

Método a priori ou tomada de decisão antes da busca.

Método a posteriori ou tomada de decisão após a

8

Método a posteriori ou tomada de decisão após a busca.

Método iterativo ou tomada de decisão durante a busca.

Método A Priori

O decisor participa da busca por soluções antes de resolver o problema, atribuindo elementos de

preferência para os objetivos.

Há duas configurações para atribuir preferências aos objetivos:

9

1) Combinam-se os objetivos em uma única função objetivo, explicitando a preferência dos mesmos através de pesos. Resolve-se o problema usando métodos tradicionais de otimização mono-objetivo.

Método A Priori

2) Ordenam-se os objetivos por preferência. Resolve-se o problema para o primeiro objetivo na ordem de preferência, sem considerar os demais. A seguir resolve-se o segundo objetivo adicionando-se, como restrição, a função otimizada anteriormente, igualada ao seu valor ótimo. O processo segue até otimizar todas as funções objetivo.

10

otimizar todas as funções objetivo.

Nesta segunda configuração, vários problemas são resolvidos em sequência, até obtenção da solução

final.

Se as preferências mudarem ou algum novo aspecto for inserido ao problema, todo o processo de

otimização deverá ser refeito.

Método A Posteriori

A tomada de decisão é feita após a busca pelas soluções Pareto-ótimas.

A busca é feita considerando que todos os objetivos do problema multiobjetivo possuem a mesma

relevância para o problema.

11

Possui alto custo computacional, devido a busca pelas soluções Pareto-ótimas.

Entretanto, mudanças nas preferências não implicam em custo computacional. Assim este

método é recomendado para problemas nos quais as preferências são relativas.

Método Interativo

O decisor, antes de cada iteração, define as prioridades, norteando a busca na direção de regiões

do espaço de busca onde se encontram soluções relevantes.

A interação exaustiva entre o decisor humano e o otimizador (automático) pode tornar o método

12

A interação exaustiva entre o decisor humano e o otimizador (automático) pode tornar o método

inapropriado para problemas multiobjetivo complexos.

Métodos Clássicos para POM

Os métodos clássicos para resolver Problemas de Otimização Multiobjetivo aplicam uma escala

(prioridades ou pesos) aos objetivos formando um objetivo único.

Assim, transformam um POM em um Problema de Otimização Mono-objetivo.

13

Otimização Mono-objetivo.

Os três métodos clássicos comumente utilizados são:

1) Método da soma ponderada;2) Método ε-restrito;3) Método de programação por metas.

Método da Soma Ponderada

Converte um POM em Problema de Otimização Mono-objetivo atribuindo pesos para cada objetivo.

A atribuição de diferentes pesos para cada objetivo gera uma nova função que representa uma relação

linear entre todos os objetivos.

14

linear entre todos os objetivos.

( ) ( )

*

1

: Xxasujeito

xfwxfminimizarr

i

ii

⋅=∑=

Método da Soma Ponderada

Este problema é resolvido iterativamente, considerando os pesos w definidos pelo decisor, de

acordo com a importância dos objetivos.

Para que os pesos wi reflitam a importância de cada objetivos, estes devem ser normalizados. Ou seja, os objetivos devem estar todos em uma mesma escala

15

objetivos devem estar todos em uma mesma escala ou ordem de grandeza.

( ) ( )( ) ( )( )2*

2

2

*

2

1*

1

1

*

1 wf

xffw

f

xffxf ⋅

+⋅

=

f1 e f2 são os objetivos. f1* e f2

* são as soluções ótimas para estes objetivos. w1 e w2 são os pesos.

Método da Soma Ponderada

A principal desvantagem deste método é que ele não consegue encontrar todas as soluções Pareto-ótimas

quando o espaço de busca não é convexo.

O método da soma ponderada consiste em gerar diferentes retas suporte, ponderadas pelos pesos wi

e, geralmente, nem todos os pontos Pareto-ótimos

16

i

e, geralmente, nem todos os pontos Pareto-ótimos estarão sobre retas suporte.

Método da Soma Ponderada

A solução alternativa é converter os objetivos em funções não-lineares.

Para funções objetivo não-normalizadas:

( )[ ] ∑∑ =

−=rsr

swcomxZZwLMin

1

*1,

17

( )[ ] ∑∑==

=

−=i

i

i

iiii wcomxZZwLMin11

*1,

Para funções objetivo normalizadas:

( ) ( )( ) ( ) ∑∑

==

=

−−

=r

i

i

sr

i

s

ii

iiii wcom

xfxf

xfxfwLMin

1

1

1minmax

max

1,

Método do ε-restrito

Consiste na otimização do objetivo mais importante sujeitando-se às restrições dos outros objetivos.

Considerando um problema de otimização em que f1 é o objetivo mais importante, temos:

( )xfminimizar

18

( )( ) rixfasujeito

xfminimizar

ii ,,2,1,:

1

⋯=≤ ε

εi é o limite superior do objetivo fi

Para construir o conjunto de soluções Pareto-ótimas, varia-se o valor limite superior εi. Se este limite não é

adequado, o conjunto solução pode ser vazio.

Método de Programação por Metas

Esta técnica é também conhecida por Goal Programming.

Usando pesos convertem-se os múltiplos objetivos em um único objetivo. Os pesos ponderam variáveis de flexibilização ou desvios associados às variáveis

de interesse.

19

de interesse.

( )

FX

nidd

bAX

nigddXfas

ddXminimizar

ii

iiii

n

i

iiii

=≥

==+−

+=

−+

−+

=

−+∑

,,2,1,0,

,,2,1,:.

1

βα

Método de Programação por Metas

1) As variáveis xi ∈ X, di+, di

- são as variáveis de decisão;

2) gi representa a meta a ser atingida no objetivo fi.3) di

+ é o desvio positivo do recurso (ou exigência) i que quantifica o quanto a meta gi foi superada.

4) di- é o desvio negativo do recurso (ou exigência) i

que quantifica o quanto falta para atingir a meta

20

i

que quantifica o quanto falta para atingir a meta gi.

5) αi, βi correspondem aos pesos associados aos desvios e, indiretamente, às próprias variáveis de decisão xi.

Vídeo-aulas Recomendadas

Pesquisa Operacional – Aula 21 – Otimização multiobjetivohttps://youtu.be/MkIKnnd0fcI

Pesquisa Operacional – Aula 22 – Programação por metas – Goal Programming

https://youtu.be/UB976cD-CZY

Prof. Aneirson Francisco Silva e Prof. José Roberto Dale Luche

21

Prof. Aneirson Francisco Silva e Prof. José Roberto Dale Luche

Introdução à otimização multiobjetivohttps://youtu.be/R3wzECA3tDI

Introdução à otimização multiobjetivo – Parte 2https://youtu.be/lXZzy4nGBjU

Prof. Aneirson Francisco Silva

Técnicas Heurísticas Multiobjetivo

Há diversas técnicas heurísticas aplicas em otimização multiobjetivo.

Estudaremos as Heurísticas Construtivas, as Heurísticas de Refinamento e as Meta-heurísticas, exclusivamente aquelas baseadas em Algoritmos

22

exclusivamente aquelas baseadas em Algoritmos Genéticos.

Heurísticas Construtivas

São métodos com o objetivo de gerar uma solução partindo de uma solução vazia. Iterativamente,

elemento a elemento, amplia-se a solução vazia até a solução completa.

São métodos rápidos e, por isso, utilizados na construção de soluções iniciais, não

23

construção de soluções iniciais, não necessariamente satisfatórias. As soluções podem

ser refinadas posteriormente, por meio de heurísticas de refinamento ou meta-heurísticas.

Devem ser utilizadas para se obter rapidamente uma aproximação inicial

do conjunto Pareto-ótimo.

Heurísticas de Refinamento

São métodos que utilizam a busca local para refinar uma solução inicial gerada por heurística construtiva

ou aleatória.

Em cada iteração, na vizinhança da solução inicial, definida por uma regra denominada movimento,

buscam-se novas soluções que melhorem o valor da

24

A eficiência deste método depende da solução inicial e do movimento (definição da vizinhança).

buscam-se novas soluções que melhorem o valor da função de avaliação do problema.

Em POM este método pode ser utilizado para melhorar um conjunto de soluções dominantes.

Heurísticas de Refinamento

Uma heurística de refinamento é o Método de Descida em Vizinhança Variável (Variable

Neighborhood Descent - VND), a qual se baseia em diferentes estruturas de vizinhança.

Inicialmente o VND considera um conjunto com rvizinhanças distintas, cada qual com seu

25

vizinhanças distintas, cada qual com seu movimento.

A seguir parte do indivíduo corrente e analisa todos que estejam na primeira vizinhança, movendo-se

para aquele que representar melhora na função de avaliação.

Heurísticas de Refinamento

Repete-se o procedimento anterior enquanto houver indivíduo melhor avaliado.

Se não houver indivíduo melhor, parte-se para a procura de um melhor indivíduo na 2a vizinhança.

Havendo melhora na segunda vizinhança, retorna-se para a primeira estrutura de vizinhança; caso

26

Havendo melhora na segunda vizinhança, retorna-se para a primeira estrutura de vizinhança; caso contrário passa-se para a próxima vizinhança.

O processo termina quando se encontra um indivíduo (solução) que não é melhorado em

nenhuma de suas vizinhanças.

Não garante solução no conjunto Pareto-ótimo. Armadilha do ótimo-local.

VND - Pseudocódigo

27

Meta-heurísticas aplicadas em POM

Meta-heurísticas são métodos que visam encontrar boas soluções, eventualmente a ótima, combinando

a busca local e global.

Os objetivos de toda meta-heurística aplicada na resolução de POM são:

28

Minimizar a distância do conjunto de soluções dominantes encontradas no conjunto Pareto-

ótimo.

Obter uma boa distribuição das soluções no conjunto dominante gerado.

Meta-heurísticas aplicadas em POM

Esta preferência está fundamentada no fato de que os Algoritmos Genéticos utilizam um conjunto de

soluções que podem conter informações sobre

A grande maioria das meta-heurísticas para resolução de POM são baseadas em

Algoritmos Genéticos.

29

soluções que podem conter informações sobre várias regiões do espaço de busca oferecendo,

portanto, maiores possibilidades de encontrar o conjunto Pareto-ótimo ou uma aproximação.

Algoritmo Genético Multiobjetivo

A principal diferença entre um AG mono-objetivo e um multiobjetivo está na forma como é avaliada a

aptidão das soluções.

Em AGs mono-objetivos a melhor solução é a mais apta. Nos AGs multiobjetivos as soluções

dominantes são indiferentes, tornando necessária

30

dominantes são indiferentes, tornando necessária alguma estratégia para estimar a aptidão das

soluções.

O primeiro AG multiobjetivo foi o VEGA (Vector Evaluated Genetic Algorithm), que avaliava cada objetivo separadamente. Este AG não permite diversidade adequada de soluções ao longo da fronteira de Pareto.

Algoritmo Genético Multiobjetivo

Goldberg (1989) propôs outras abordagens para aplicar AGs na resolução de POM, como:

Ordenar as soluções encontradas de acordo com o conceito de dominância de Pareto. A aptidão de

uma solução é proporcional ao número de soluções que ela domina. Leva à perda da

31

soluções que ela domina. Leva à perda da diversidade, pois as soluções mais aptas tendem a

serem clonadas na lista de descendentes.

Compartilhar indivíduos para manter a diversidade. A posição do indivíduo em relação à sua vizinhança (nicho) é computada na aptidão. Assim, indivíduos melhor espalhados na fronteira

de Pareto passam a ter maior aptidão.

Algoritmo Genético Multiobjetivo

Os AGs apresentam três grandes vantagens, em relação às técnicas tradicionais:

Não introduzem parâmetros adicionais no problema.

Trabalham diretamente com várias funções usando

32

Trabalham diretamente com várias funções usando o conceito de dominância de Pareto.

Um conjunto diversificado de soluções pode ser encontrado em um execução do Algoritmo

Genético.

O elitismo melhora as soluções encontradas pelos AGs para os POM.

AGs Propostos para resolução de POM

A cada geração, um grupo de indivíduos que supera os demais de acordo com um dos n objetivos é selecionado, até que n grupos sejam formados.

VEGA (Vetor Evaluated Genetic Algorithm) – Schaffel (1985)

33

selecionado, até que n grupos sejam formados.

Então os n grupos são misturados conjuntamente e os operadores genéticos são aplicados para formar a

próxima geração.

AGs Propostos para resolução de POM

Cada indivíduo S (solução) é classificado em um nível de acordo com o número de soluções

dominadas por S.

MOGA (Multiobjective Genetic Algorithm) – Fonseca e Fleming (1993)

34

Todos os indivíduos não dominados sãoclassificados no nível 1. A aptidão de cada indivíduo é atribuída de acordo com uma interpolação entre o

melhor e o pior nível.

A aptidão atribuída a todos os indivíduos de um mesmo nível é a mesma e igual à média da aptidão do próprio Nível, tornando-os indiferentes entre si.

AGs Propostos para resolução de POM

Utiliza um torneio baseado no conceito de dominância de Pareto para seleção dos

indivíduos.

NPGA (Niche Pareto Genetic Algorithm) – Horn et al.(1994)

35

Dois indivíduos são selecionados e comparados com um subconjunto da população de soluções, sendo

selecionado para a próxima geração aquele que não for dominado.

AGs Propostos para resolução de POM

Os indivíduos são classificados em níveis de acordocom seu grau de dominância Nid. Entretanto,

é atribuído um valor de aptidão a cada indivíduo de acordo com seu nível e sua distância em relação às

NSGA (Non-dominated Sorting Genetic Algorithm) –Srivivas e Deb (1995)

36

é atribuído um valor de aptidão a cada indivíduo de acordo com seu nível e sua distância em relação às

outras soluções do mesmo nível, a chamada distância de multidão.

A seleção é feita através de torneios utilizando o valor de aptidão até que todas as vagas para a

próxima geração sejam preenchidas.

AGs Propostos para resolução de POM

Há vários outros AGs Multiobjetivo propostos e explorados.

ZITZLER, E. Evolutionary algorithms for multiobjective optimization: methods andapplications. PhD thesis, Federal Institute of

Technology Zurich, Swiss, 1999.

37

Technology Zurich, Swiss, 1999.

KNOWLES, J. D. Local search and hybrid evolutionary algorithms for Pareto optimization. PhD thesis,

University of Reading, UK, 2002.

DEB, K.; AGRAWAL, S.; PRATAB, A.; MEYARIVAN, T. A fast elitist non-dominated sorting genetic

algorithm for multi-objective optimization: Nsga-ii. Relatório técnico, Indian Institute of Technology. 2000.

AGs Propostos para resolução de POM

COELLO, D. A.; Van VELDHUIZEN e LAMONT, G. B. Evolutionary algorithms for solving multi-

DEB, K.; PRATAP, A.; AGRAWAL, S.; MEYARIVAN, T. Fast elitist multi-objective genetic algorithm: Nsga-ii. IEEE Transactions on Evolutionary Computation, v.

6, n. 2, p. 182–197, 2002.

38

Evolutionary algorithms for solving multi-objective problems. Relatório técnico, Kluwer

Academic Publishers. 2002.

ARROYO, J. E. C. Heurísticas e metaheurísticas para otimização combinatória multi-objetivo. Tese de

doutorado, Unicamp – Campinas, 2002.

AGs Propostos para resolução de POM

TAN, K.C.; CHEW, Y. H.; LEE, L. H. A hybrid multi-objective evolutionary algorithm for solving truck

ARROYO, J. E. C.; ARMENTANO, V. A. Genetic local search for multi-objective flowshop scheduling problems. European Journal of Operational

Research, v. 167, p. 717–738, 2005.

39

objective evolutionary algorithm for solving truck and trailer vehicle routing problems. European

Journal of Operational Research, v. 172, p. 855–885, 2006.

DEB, K.; TIWARI, S. Omni-optimizer: A generic evolutionary algorithm for single and multi-objective

optimization. European Journal of Operational Research, v. 185, p. 1062–1087, 2008.

Referências Bibliográficas

ARROYO, J. E. C. Heurísticas e meta-heurísticas para otimização combinatória multiobjetivo. 2002. Tese de doutorado –Unicamp, Campinas.

EHRGOTT, M.; GANDIBLEUX, X. A survey and annotated bibliography of multicriteria combinatorial optimization. Forthcoming: Willey, 2000.

FONSECA, C. M.; FLEMING, P. J. Genetic algorithms for FONSECA, C. M.; FLEMING, P. J. Genetic algorithms for multiobjective optimization: Formulation, discussion and generalization. Anais do Fifth International Conference on Genetic Algorithms, p. 416–423, 1993.

GOLDBERG, D. E. Genetic algorithms in search, optimization & machine learning. Reading : Addison-Wesley, 1989.

HORN, J.; NAFPLIOTIS, N. e GOLDBERG, D.E. A niched pareto genetic algorithm for multiobjective optimization. Anais do the First IEEE Conference on Evolutionary Computation, p. 82–87, 1994.

40

Referências Bibliográficas

HORN, J. Handbook of Evolutionary Computation, v.1. Oxford: Oxford University Press, 1997.

KONAK, A.; COIT, D.; SMITH, A. Multi-objective optimization using genetic algorithms: a tutorial. Reliability Engineering & System Safety, v. 91, p. 992-1007, 2006.

PANTUZA Jr., G. Métodos de otimização multiobjetivo e de simulação aplicados ao problema de planejamento simulação aplicados ao problema de planejamento operacional em lavra em minas a céu aberto. 2011. 89 p. Dissertação (Mestrado em Engenheria Mineral) - Universidade Federal de Ouro Preto, Ouro Preto.

PÉREZ, M. A. F. Um método heurístico para o problema de escalonamento multiobjetivo em vários ambientes de máquina. 2012. 109 p. Dissertação (Mestrado em Engenharia de Produção) – PUC-Rio, Rio de Janeiro.

41

Referências Bibliográficas

SCHAFFER, J. Multiple objective optimization with vector evaluated genetic algorithms. Genetic Algorithms and their Applications: Anais do First Internati-onal Conference on Genetic Algorithms, v. I, p. 93–100, 1985.

SRIVIVAS, N.; DEB, K.. Multiobjective optimization using nondominated sorting in genetic algorithms. Evolutionary Computation, v. 2, n. 3, p. 221–248, 1995.Computation, v. 2, n. 3, p. 221–248, 1995.

TICONA, W. G. C. Algoritmos evolutivos multiobjetivo para a reconstrução de árvores filogenéticas. 2003. Tese de doutorado – ICMC/USP, São Carlos.

ZITZLER, E.; DEB, K.; THIELE, L. Comparison of multiobjective evolutionary algorithms: Empirical results. Evolutionary Computation, v. 8, p. 173–195, 2000.

42