Вы находитесь на странице: 1из 86

ESCOLA POLITCNICA DE PERNAMBUCO

UMA FERRAMENTA DE SIMULAO PARA OTIMIZAO MULTI-OBJETIVA EVOLUCIONRIA

Trabalho de Concluso de Curso Engenharia da Computao

Filipe Rolim Cordeiro Orientador: Prof. Carmelo Jos Albanez Bastos Filho

Recife, novembro de 2008

ESCOLA POLITCNICA DE PERNAMBUCO

UMA FERRAMENTA DE SIMULAO PARA OTIMIZAO MULTI-OBJETIVA EVOLUCIONRIA

Trabalho de Concluso de Curso Engenharia da Computao


Monografia apresentada como requisito parcial para obteno do diploma de Bacharel em Engenharia da Computao pela Escola Politcnica de Pernambuco Universidade de Pernambuco.

Filipe Rolim Cordeiro Orientador: Prof. Carmelo Jos Albanez Bastos Filho

Recife, novembro de 2008

FILIPE ROLIM CORDEIRO

UMA FERRAMENTA DE SIMULAO PARA OTIMIZAO MULTI-OBJETIVA EVOLUCIONRIA

ESCOLA POLITCNICA DE PERNAMBUCO

Resumo

Este trabalho prope uma ferramenta de simulao e anlise de Algoritmos Evolucionrios MultiObjetivos, onde disponibilizado ao usurio, atravs de um ambiente grfico intuitivo, a possibilidade de simulao de quatro das principais tcnicas de otimizao multi-objetiva: NSGAII, PAES, PESA2 e SPEA2. Para efeitos de validao e anlise do comportamento dos algoritmos disponibilizado um conjunto de 36 funes de teste e 8 mtricas de anlise. Inicialmente realizada uma breve descrio das tcnicas de otimizao utilizadas, observando-se tambm a importncia das funes de teste e mtricas envolvidas no projeto. Este trabalho tem como objetivo demonstrar a capacidade da ferramenta desenvolvida como instrumento de apoio a pesquisas na rea de otimizao multi-objetiva, assim como apresentar uma arquitetura modular que permita a adio de trabalhos futuros. Utilizando a ferramenta proposta foi possvel realizar estudos comparativos entre os algoritmos disponibilizados, analisando-se os resultados obtidos atravs de diferentes funes de teste. Pde-se concluir que o algoritmo PAES apresentava melhores resultados para a funo de teste Poloni, quando comparado aos outros algoritmos. Tambm foi possvel observar como a alterao dos parmetros de simulao pode influenciar na qualidade dos resultados obtidos.

ESCOLA POLITCNICA DE PERNAMBUCO

ii

Abstract
This work presents a computational tool for simulation and analysis of Multi-Objective Evolutionary Algorithms. The tool has an intuitive graphical environment and allows the user to simulate four different main multi-objective optimization techniques: NSGAII, PAES, PESA2 and SPEA2. 36 test functions and 8 metrics are available to help in the validation and analysis processes. In this work, a brief description of the optimization techniques used is presented, observing the importance of the test functions and metrics involved in the project. This work aims to show the ability of the developed tool as a support research resource in the area of multiobjective optimization, and present a modular architecture that allows the addition of other modules.. Using this tool, some comparative studies between the available algorithms were performed in order to present the simulation tool features. We concluded that the PAES algorithm presented better results to the Poloni test function when compared to other algorithms. It was also possible to show that the simulation parameters values can influence the quality of the results.

ESCOLA POLITCNICA DE PERNAMBUCO

iii

Sumrio
ndice de Figuras ndice de Tabelas Tabela de Smbolos e Siglas Agradecimentos 1 Introduo 2 Funes de Teste e Mtricas de Avaliao de Algoritmos Multi-Objetivos
2.1
2.1.1 2.1.2 2.1.3 2.1.4 2.1.5 2.1.6 2.1.7

v vii viii ix 10 13
13
13 13 14 14 15 15 16

Conceitos Gerais
Populao Gerao Crossover Mutao Dominncia Front Elitismo

2.2 2.3
2.3.1

Importncia das Funes de Teste Caractersticas Principais das Funes de Teste


Exemplos de Problemas de Teste

16 17
19

2.4

Mtricas de Avaliao de Desempenho

26
27

2.3.1 Distncia da Gerao

3 MOEAs Utilizados
3.1 3.2 3.3 3.4 NSGA-II SPEA2 PAES PESA-II

33
33 35 36 38

4 Descrio da Ferramenta
4.1
4.1.1 4.1.2 4.1.3

40
40
41 41 42

Mdulos da Ferramenta
Mdulo de Classes Bsicas Mdulo Util Mdulo de Excees

ESCOLA POLITCNICA DE PERNAMBUCO

iv
4.1.4 4.1.5 4.1.6 4.1.7 4.1.8 Mdulo de Funes de Teste Mdulo de Mtricas Mdulo de Tcnicas Mdulo de Negcios Mdulo de Interface Grfica 42 42 42 43 43

4.2

Funcionamento

43

5 Estudo de Caso
5.1 5.2 5.3 Anlise de Desempenho entre Algoritmos de Otimizao Multi-Objetivos Anlise de Desempenho com diferentes Funes de Teste Anlise do Impacto da Variao dos Parmetros

48
48 51 53

Consideraes Finais e Trabalhos Futuros Bibliografia Apndice A Funes de Teste

56 58 63

ESCOLA POLITCNICA DE PERNAMBUCO

ndice de Figuras
Figura 1. Operao de crossover de dois pontos. .................................................................................... 14 Figura 2. Operao de mutao. ............................................................................................................. 14 Figura 3. Relao de dominncia entre solues. .................................................................................... 15 Figura 4. Diferena entre nveis de Paretos Front. ................................................................................... 16 Figura 5. Funo de teste Schaffer(1): a) Espao de deciso timo e b) Pareto Front. ............................ 19 Figura 6. a) Espao de deciso timo e b) Pareto Front da funo de teste Fonseca(1). ........................... 20 Figura 7. Funo de teste Poloni: a)Espao de deciso timo e b)Pareto Front. ....................................... 21 Figura 8. Pareto Front da funo de teste Kursawe. ................................................................................ 21 Figura 9. Pareto Front da Funo de Teste ZDT1 (Convexo). .................................................................... 23 Figura 10. Pareto Front da funo de teste ZDT2 (cncavo)..................................................................... 23 Figura 11. Pareto Front da funo de teste ZDT3 (discreto). .................................................................... 24 Figura 12. Pareto front da funo de teste ZDT4 (multimodal). ............................................................... 25 Figura 13. Pareto Front da funo de teste ZDT5 (deceptivo). ................................................................. 25 Figura 14. Pareto Front da funo de teste ZDT6 (no uniforme). ........................................................... 26 Figura 15. Comparao entre algoritmos: (a) Possvel concluir qual o melhor algoritmo e (b) Dificuldade em se encontrar qual o melhor algoritmo para o problema. ................................................................... 27 Figura 16. Mtrica de Distncia da Gerao: baseada na distncia euclidiana das solues obtidas. ....... 28 Figura 17. Clculo da mtrica de diversidade: baseado na distncia entre as solues. ........................... 28 Figura 18. Distncia entre as solues de extremidade. .......................................................................... 29 Figura 19. Hipervolume gerado pelas solues do Pareto Front. ............................................................. 30 Figura 20. Mtrica de cobertura entre as solues do conjunto A e B. .................................................... 31 Figura 21. Esquema do procedimento do NSGAII. ................................................................................... 35 Figura 22. Representao da interao entre os mdulos da ferramenta. ............................................... 41 Figura 23. Fluxo de utilizao da ferramenta proposta. ........................................................................... 44 Figura 24. Tela de escolha dos algoritmos de simulao. ......................................................................... 45 Figura 25. Tela de escolha da funo de teste. .................................................................................... 45

Figura 26. Tela de seleo de mtricas. ................................................................................................... 46 Figura 27. Tela de Resultados da Simulao. .......................................................................................... 47 Figura 28. Tela de expanso dos resultados de simulao. ...................................................................... 47 Figura 29. Pareto Front do algoritmo NSGAII para a funo de teste Poloni. ........................................... 49 Figura 30. Pareto Front do algoritmo PAES para a funo de teste Poloni. .............................................. 49

ESCOLA POLITCNICA DE PERNAMBUCO

vi Figura 31. Pareto Front do algoritmo PESA-II para a funo de teste Poloni. ........................................... 50 Figura 32. Pareto Front do algoritmo SPEA2 para a funo de teste Poloni. ............................................ 51 Figura 33. Pareto Front do algoritmo PAES para a funo de teste Rendon2. .......................................... 52 Figura 34. Pareto Front do algoritmo PAES para a funo de teste Kursawe. ........................................... 52 Figura 35. Pareto Front do algoritmo PAES para a funo de teste Belegundu......................................... 53 Figura 36. Pareto Front do algoritmo PESA2 para a funo de teste Binh3, com 5 grids por eixo. ............ 54 Figura 37. Pareto Front do algoritmo PESA2, para a funo Binh3, com 20 grids por eixo. ....................... 54 Figura 38. Pareto timo da funo de teste Belegundu. ......................................................................... 63 Figura 39. Pareto timo da funo de teste Binh(1). ............................................................................... 64 Figura 40. Pareto timo da funo de teste Binh (2). .............................................................................. 65 Figura 41. Pareto Front da funo de teste Fonseca(1)............................................................................ 67 Figura 42. Pareto timo da funo de teste Fonseca(2). ........................................................................ 68 Figura 43. Pareto timo da funo de teste Jimenez............................................................................... 68 Figura 44. Pareto timo da funo de teste Kita. .................................................................................... 69 Figura 45. Pareto Front timo da funo de teste Kursawe. ................................................................... 70 Figura 46. Pareto timo da funo de teste Lis. ...................................................................................... 71 Figura 47. Pareto timo da funo de teste Murata. .............................................................................. 72 Figura 48. Pareto timo da funo de teste Obayashi. ............................................................................ 73 Figura 49. Pareto timo da funo de teste Osyczka (2). ........................................................................ 74 Figura 50. Pareto timo da funo de teste Poloni. ................................................................................ 75 Figura 51. Pareto timo da funo de teste Quagliarella. ....................................................................... 76 Figura 52. Pareto timo da funo de teste Rendon (1). ......................................................................... 77 Figura 53. Pareto timo da funo de teste Rendon(2). .......................................................................... 77 Figura 54. Pareto timo da funo de teste Schaffer(1). ......................................................................... 78 Figura 55. Pareto timo da funo de teste Schaffer (2). ........................................................................ 79 Figura 56. Pareto timo da funo de teste Srinivas. .............................................................................. 80 Figura 57. Pareto timo da funo de teste Tanaka. ............................................................................... 81

ESCOLA POLITCNICA DE PERNAMBUCO

vii

ndice de Tabelas
Tabela 1. Caractersticas principais das Funes de Teste. ........................................................ 18 Tabela 2. Clculo do crowding distance.................................................................................... 34 Tabela 3. Pseudo-cdigo do NSGA-II....................................................................................... 34 Tabela 4. Pseudo-cdigo do SPEA2. ........................................................................................ 35 Tabela 5. Pseudo-Cdigo para o PAES. .................................................................................... 37 Tabela 6. Pseudo-cdigo para teste(c, m, arquivo) usada no PAES. .......................................... 37 Tabela 7. Pseudo-cdigo do PESA-II........................................................................................ 38

ESCOLA POLITCNICA DE PERNAMBUCO

viii

Tabela de Smbolos e Siglas


EA Algoritmo Evolucionrio PAES Pareto Archived Evolution Strategy NSGA II Nondominated Sorting Genetic Algorithm II SPEA2 Strength Pareto Evolutionary Algorithm 2 PESA2 Pareto Envelope based Selection MOEA Algoritmos Evolucionrios Multi-Objetivos MOP Problema de Otimizao Multi Objetivo NFL No Free Lunch

ESCOLA POLITCNICA DE PERNAMBUCO

ix

Agradecimentos
Agradeo a Deus, por ter me ajudado nos momentos mais difceis e ter me dado sade e fora para chegar at aqui. minha famlia, em especial aos meus pais, por toda criao e educao e apoio que me deram e continuam a dar ainda hoje. Ao meu professor orientador Carmelo Filho, que sempre foi um modelo de motivao e dedicao pelos trabalhos realizados. Agradeo orientao recebida e a forma como foi realizada, buscando o incentivo e mostrando que os problemas podem ser vistos de uma forma simples, interessante e desafiadora. Ao professor Abel Guilhermino, por ter me orientado na Iniciao Cientfica e ter contribudo bastante na minha formao acadmica. Ao meu amigo Gilliard Alan, que me ajudou muito na concluso desse trabalho, contribuindo na implementao de mais de 30 funes de teste, com equaes nada triviais. Agradeo a todos os meus amigos de turma, pelos momentos de diverso, trabalhos em equipe, apoio e estudo, sem os quais no estaria aqui. Agradeo ainda a todos que de forma direta ou indireta contriburam para a concluso deste trabalho.

ESCOLA POLITCNICA DE PERNAMBUCO

10

Captulo 1 Introduo
A cada instante possvel observar problemas cujas solues trariam maior benefcio se fossem otimizadas. Seja na indstria, comrcio ou vida pessoal, a busca pela soluo de um problema sempre visa alcanar a melhor soluo vivel possvel. Porm, a anlise dessas solues muitas vezes envolve um custo alto, o que pode se tornar invivel caso seja feita a anlise de um nmero elevado de possibilidades. Um problema de otimizao consiste em encontrar as melhores solues que satisfaam s restries de um domnio. A busca dessas solues baseada nos objetivos que se desejam atingir com a soluo encontrada. Dessa forma, possvel observar constantemente a presena de problemas de otimizao em diversos setores da sociedade, uma vez que a otimizao apresenta vantagens para o usurio. Cada vez mais, devido alta competitividade do mercado, percebe-se a importncia das tcnicas de otimizao, destacando-se objetivos como maximizao de lucros e reduo de custos. No entanto, essas buscas muitas vezes envolvem objetivos conflitantes e um elevado nmero de solues possveis, dificultando o processo de otimizao. Problemas de otimizao multi-objetivos (MOP) so problemas que envolvem mais de um objetivo a ser otimizado e constituem a maioria dos problemas reais encontrados. Eles so caracterizados pela dificuldade em encontrar uma soluo que satisfaa simultaneamente todos os objetivos, sendo necessrio muitas vezes penalizar alguns objetivos para se encontrar uma soluo mais adequada ao problema. Por essa razo, comum realizar a busca por um conjunto de solues mais viveis ao problema, ao invs de apenas uma, deixando a deciso ser tomada de acordo com o nvel de prioridade de cada objetivo. Na maioria dos casos torna-se invivel analisar todas as solues do domnio do problema devido ao elevado custo computacional e tempo requerido. Sendo assim, importante a aplicao de algoritmos de otimizao de problemas multi-objetivos a fim de evitar buscas desnecessrias no conjunto de solues, permitindo reduo de tempo e custo envolvidos na busca das solues.

ESCOLA POLITCNICA DE PERNAMBUCO

11

Coello [1] relata que a comunidade cientfica tem contribudo com novas abordagens para soluo de problemas multi-objetivos desde a dcada de 50. Deb [2], observa que mtodos clssicos encontram no mximo uma soluo a cada simulao, tornando esses mtodos inconvenientes para resolver MOPs. No entanto, mtodos estocsticos de busca foram propostos posteriormente, ganhando destaque os algoritmos evolucionrios (EA), que se baseiam em princpios da evoluo para encontrar as solues timas. Os EAs baseiam-se no uso de populao de solues, que evoluem a cada iterao. Desta forma, possvel obter um conjunto de solues a cada iterao. Os EAs tambm utilizam o conceito de Pareto Front, definido em [3]. Diz-se que uma soluo pertence ao Pareto Front se no houver nenhuma outra soluo possvel que domine ela, ou seja, se nenhuma outra soluo for melhor que ela em todos os objetivos. Baseado nos EAs, diversos algoritmos evolucionrios de otimizao multi-objetiva (MOEA) foram propostos, destacando-se algoritmos como PAES (Pareto Archived Evolution Strategy) [4], NSGA-II (Nondominated Sorting Genetic Algorithm II) [5], SPEA2 (Strength Pareto Evolutionary Algorithm 2) [6] e PESA-II (Pareto Envelope based Selection II) [7]. Cada algoritmo tem suas vantagens e desvantagens, tornando-os apropriados a cada tipo de problema. Silva-Filho [8] realiza uma aplicao de otimizao de memria cache utilizando o algoritmo NSGAII para encontrar solues de configurao de arquitetura de memria que atinjam os objetivos de reduo de consumo de energia e aumento do desempenho. No mesmo trabalho mostrado como uma aplicao real pode se beneficiar atravs da utilizao de algoritmos de otimizao multi-objetiva. Em [9] apresentada a ferramenta jMetal, que realiza a implementao de alguns MOEAs existentes, permitindo ao usurio realizar simulaes baseado em funes de teste. Esse tipo de ferramenta tem grande importncia para o pesquisador e projetista, uma vez que permite analisar as melhores tcnicas existentes para a soluo do problema, assim como possibilita a anlise de caractersticas relevantes para o desenvolvimento de tcnicas hbridas. Esse documento foi estruturado em captulos, conforme descrito a seguir. O captulo 2 apresenta o conceito de funes de teste e mtricas de avaliao de desempenho, apresentando as principais funes de teste e mtricas utilizadas pela comunidade cientfica mundial, assim como neste trabalho. No captulo 3 so descritos os MOEAs implementados na ferramenta desenvolvida. No captulo 4 apresentada a metodologia de implementao da ferramenta, citando os mtodos de modularizao utilizados e modo de implementao dos algoritmos. No captulo 5 analisado um estudo de caso executado pela ferramenta desenvolvida. Ao final, o

ESCOLA POLITCNICA DE PERNAMBUCO

12

captulo 6 apresenta as consideraes finais, alm de propor aspectos que podem ser melhorados na ferramenta.

ESCOLA POLITCNICA DE PERNAMBUCO

13

Captulo 2 Funes de Teste e Mtricas de Avaliao de Algoritmos Multi-Objetivos


Neste captulo so apresentados os principais conceitos de funes de teste e mtricas de avaliao de algoritmos multi-objetivos. No entanto importante realizar a descrio de alguns conceitos gerais presentes maioria dos MOEAs e que podem ser necessrios para uma melhor compreenso dos termos utilizados a partir deste captulo.

2.1 Conceitos Gerais


Nesta seo so apresentados alguns dos conceitos presentes na utilizao de funes de teste, mtricas, e algoritmos multi-objetivos. A seguir realizado um breve resumo sobre os principais termos utilizados na rea de otimizao multi-objetiva.

2.1.1 Populao
O conceito de populao est presente na maioria dos Algoritmos Evolucionrios. Uma populao representa o conjunto atual de indivduos encontrados em uma determinada iterao do algoritmo. A idia que a populao evolua com o tempo, gerando solues mais interessantes para a soluo de um determinado problema. Normalmente o conjunto de solues final est contido na ltima iterao da populao.

2.1.2 Gerao
Uma gerao corresponde a uma iterao realizada sobre a populao, de forma que realize alguma mudana sobre os indivduos da populao. Muitas vezes o critrio de parada do algoritmo definido pelo nmero de geraes. O nmero de geraes necessrias para o algoritmo convergir est diretamente associada ao nmero de iteraes executadas, sendo muitas

ESCOLA POLITCNICA DE PERNAMBUCO

14

vezes relacionado com o grau de eficincia do algoritmo. Entretanto, existem outros critrios de parada, como, por exemplo, o algoritmo de otimizao pra quando as solues na iterao atingem uma qualidade mnima.

2.1.3 Crossover
A operao de crossover um dos mtodos utilizados para promover a evoluo gentica da populao. Ela uma das formas de possibilitar a criao de novos indivduos, permitindo a obteno de novas solues a partir de outras j existentes. O funcionamento do crossover descrito a seguir. Inicialmente so escolhidos dois indivduos da populao para serem os pais. Aps isso, em cada indivduo escolhido so definidos pontos de corte onde haver troca de dados entre as caractersticas genticas dos indivduos. Essa troca ilustrada na Figura 1.

Indivduo a

Filho c

Indivduo b

Filho d

Figura 1. Operao de crossover de dois pontos. Aps realizado o crossover so gerados novos elementos contendo dados de ambos os indivduos que iniciaram a operao de crossover.

2.1.4 Mutao
A mutao outro operador importante que visa garantir a variabilidade gentica da populao. Seu conceito consiste em mutar aleatoriamente um indivduo existente de forma que um novo indivduo seja criado. O processo de mutao ilustrado na Figura 2.

Indivduo original

Indivduo mutado

Figura 2. Operao de mutao.

ESCOLA POLITCNICA DE PERNAMBUCO

15

2.1.5 Dominncia
O conceito de dominncia bastante utilizado em algoritmos multi-objetivos e serve para indicar e comparar o grau de qualidade de uma soluo em relao outra. Diz-se que uma soluo a domina b, se, e somente se, para todos os objetivos envolvidos no domnio da funo, a no for pior que b em nenhum objetivo e existir pelo menos um objetivo em que a seja melhor que b. A Figura 3 ilustra a relao de dominncia entre diferentes pontos do conjunto de soluo.
f2 a b

c f1

Figura 3. Relao de dominncia entre solues. No exemplo da Figura 3, existem pontos que compem o conjunto de solues encontradas: a, b e c. De acordo com a definio, pode-se dizer que a soluo b domina a, pois ela melhor que a em pelo menos um objetivo, no caso o objetivo f1, e tambm no pior que a em nenhum deles. De forma anloga, no se pode dizer que a soluo b domina c, pois a soluo b pior que c em pelo menos um objetivo, no caso f2. Dessa forma, pode-se dizer que b domina a, mas no domina c. Com esse conceito, pode-se dizer tambm que a no domina c, pois existe pelo menos um objetivo em a que pior que em c. O mesmo vale para afirmar que c no domina a. Esta relao em que uma soluo no dominada por outra chamada de no-dominncia. Normalmente costuma-se dizer que uma soluo no-dominada como sendo aquela que apresenta uma relao de no-dominncia com todas as outras solues do conjunto de solues. dominada por outra, o que pode ser representado pelo termo . Sendo assim, a expresso Outro conceito que envolve dominncia o de se afirmar que uma soluo fracamente

indica que a soluo a fracamente dominada pela soluo b. Isso quer dizer que para todos os objetivos existentes, a soluo a no pior do que b em nenhum deles, podendo ser igual. Uma soluo seria fortemente dominada por outra se para todos os objetivos ela apresentasse melhores resultados.

2.1.6 Front
Front o conjunto de solues de mesmo nvel de no-dominncia que compem um Pareto. O Pareto Front representa o conjunto de solues que compartilham entre si a mesma quantidade de indivduos pelos quais so dominados. A Figura 4 ilustra a diferena entre nveis de Paretos Front.

ESCOLA POLITCNICA DE PERNAMBUCO

16
f2 F2 F1

f1

Figura 4. Diferena entre nveis de Paretos Front. Como pode ser visto na Figura 4, as solues do front F1 no so dominados por nenhuma outra soluo, se aproximando mais do Pareto timo. J as solues do front F2 so dominadas por pelo menos uma soluo do front F1, o que representam solues menos interessantes para a seleo final.

2.1.7 Elitismo
O conceito de elitismo quer dizer que a melhor soluo encontrada em cada iterao do algoritmo ir ser preservada para a prxima iterao. Embora essa tcnica garanta que as melhores solues encontradas sejam sempre mantidas, existem tcnicas de otimizao que no utilizam esse conceito.

2.2 Importncia das Funes de Teste


A utilizao de problemas de teste na anlise de algoritmos estudados ou desenvolvidos de grande importncia para validao e comparao dos trabalhos realizados. Sem os problemas de teste no se tem como avaliar coerentemente as caractersticas de uma soluo desenvolvida. Os testes so importantes para se estudar o comportamento do algoritmo, avaliar vantagens e desvantagens e realizar anlises comparativas. Dessa forma, os problemas de teste so fundamentados para a comprovao de uma nova abordagem proposta pelo pesquisador. Veldhuizen [10] observa que na histria da literatura, a comparao visual de MOEAs no tem se mostrado adequada para determinar o desempenho e eficincia desses algoritmos. Sendo assim, importante para a etapa de validao selecionar funes de teste que possam representar bem as principais vantagens da soluo proposta, porm sem ocultar elementos importantes inerentes ao contexto da aplicao. Problemas de teste so utilizados para comparar diferentes MOEAs, uma vez que se conhece o Pareto timo da aplicao e pode-se ento avaliar parmetros como convergncia e qualidade de representao. Diversos problemas de teste tm sido propostos e utilizados para

ESCOLA POLITCNICA DE PERNAMBUCO

17

estudar o comportamento dos MOEAs. Teoremas NFL (No Free Lunch) [11] mostram que para um MOEA poder oferecer garantia de eficincia genrica necessrio incluir conhecimento do domnio do problema no domnio do algoritmo. No entanto, a incluso de muitas caractersticas do domnio do problema poder influenciar negativamente na eficincia do algoritmo, sendo importante estabelecer um limite entre caractersticas a serem exploradas pelo algoritmo naquele domnio. Problemas diferentes tendem a explorar caractersticas diferentes dos algoritmos, sendo necessrio utilizar um conjunto diversificado de testes para estudar as distintas caractersticas do algoritmo que est sendo aplicado. De Jong [12], sugere cinco funes de teste com as seguintes caractersticas [13]: contnuo ou descontnuo, convexo ou no-convexo, unimodal ou multimodal, quadrtico ou no quadrtico, baixa ou alta dimensionalidade e determinstico ou estocstico. Problemas de teste devem conter elementos similares ao de uma aplicao em contexto real. Whitley et al. [14] sugere algumas diretrizes em relao utilizao de conjuntos de teste, tais como conter problemas no-separveis, no-lineares e assimtricos. Adicionalmente, importante que o conjunto de testes contenha caractersticas comuns maioria dos MOPs conhecidos, caso contrrio o algoritmo poder mostrar-se eficiente apenas a um determinado domnio de testes. A maioria dos MOPs encontrados na literatura utiliza apenas duas funes objetivo, o que, segundo David [10], podem no avaliar completamente o desempenho de um MOEA, a no ser que o espao de busca seja muito grande.

2.3 Caractersticas Principais das Funes de Teste


Cada problema de teste possui caractersticas especficas que podem auxiliar ou dificultar a busca de um algoritmo. No entanto existem caractersticas presentes em todas as funes de teste, onde o conhecimento delas pode ajudar na escolha do conjunto de testes mais apropriado. Dentre essas caractersticas esto conectividade, simetria, nmero de variveis de deciso, nmero de restries, geometria do Pareto e concavidade. A conectividade expressa se o Pareto conectado ou desconectado. Paretos desconectados tendem a oferecer maior dificuldade aos MOEAs. A simetria indica que existem solues equivalentes. A geometria do Pareto pode ser composta de uma ou mais curvas, assim como um ou mais pontos. Uma curva caracterizada como um conjunto de pontos no-distantes entre si. Quanto concavidade, o Pareto poder ser cncavo ou convexo. A seguir apresentada uma tabela com as principais caractersticas das funes de testes desenvolvidas e encontradas na literatura. As caractersticas esto divididas em gentipo e

ESCOLA POLITCNICA DE PERNAMBUCO

18

fentipo. O gentipo caracterizado pelo Pareto referente ao domnio das variveis de deciso (PTrue), enquanto o fentipo representa o Pareto referente ao domnio dos objetivos (PFtrue). Idealmente, um conjunto de teste deve conter combinaes de todas as possveis caractersticas. Tabela 1. Caractersticas principais das Funes de Teste.
Gentipo Variveis de deciso Fentipo

Desconectado

Desconectado

Funo Conectado

Conectado

Geometria

Restries

# Funes

Simtrico

Binh Binh (3) DTLZ1 DTLZ2 DTLZ3 DTLZ4 DTLZ5 DTLZ6 DTLZ7 Fonseca Fonseca (2) Kursawe Laumanns Lis Murata Poloni Quagliarella Rendon Rendon (2) Schaffer Schaffer (2) Vicini Viennet Viennet (2) Viennet (3) ZDT1 ZDT2 ZDT3 ZDT4

x x

2 2

2 3 n n n n n n

2 2 1 1 1 1 n 0 n 0 2 2 2 2 n 2 2 0 1 2 2 2 2 1 1 1 2

Curva Ponto Hyperplano Esfrica Esfrica Esfrica Linha e Hyperplano Curva Curva Curva Pontos Pontos Curva Curvas Pontos Curva Curva Curva Curvas Curva Superfcie Superfcie Curva Curva Curva Curva Curva

x x x x x x

x x x x x x x x x x x x x x x x

x x x x x

x x x x x

2 n n 2 2 2 2 n 2 2 1 1 2 2 2 2 n n n n

2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2

x x x x x x x x x x x x x x x x x x x x

x x x x

x x

Convexo x x x x x

Cncavo

ESCOLA POLITCNICA DE PERNAMBUCO

19 ZDT5 ZDT6 n n 2 2 2 2 Curva x x x x

2.3.1 Exemplos de Problemas de Teste


A seguir sero apresentados alguns dos problemas de teste mais conhecidos e utilizados, a fim de mostrar as diferentes caractersticas de cada um e o comportamento de seus Paretos. Schaffer [51] prope uma funo bi-objetiva com conceitos MOP relevantes. A funo Schaffer (1), definida por ele, tem sido utilizada para testar muitos MOEAs propostos. No entanto, por conter apenas uma varivel de deciso talvez no seja apropriada para explorar as capacidades de um MOEA. As equaes que definem essa funo de teste so apresentadas abaixo: , , 2 , = ,

(1)

onde

(2) (3)

, as quais so descritas de acordo com as equaes (2) e (3). A equao (1) no uma representao usual de funo segundo modelos matemticos, mas na rea de otimizao multi-

A equao (1) indica que os resultados da funo de teste F dependem das funes e

objetiva bastante utilizada para representar dependncia de uma funo de teste com outras funes. O comportamento do Espao de deciso timo e Pareto Front podem ser visualizados na Figura 5:
x2
1

a)

b)

-1 0 1 2

x1

Figura 5. Funo de teste Schaffer(1): a) Espao de deciso timo e b) Pareto Front.

ESCOLA POLITCNICA DE PERNAMBUCO

20

Na Figura 5, na situao (a), apresentado o comportamento do espao de deciso timo. O espao de deciso representado pelas variveis x1 e x2, que representam valores que sero mapeados para o espao de objetivos. O espao de objetivos representado na Figura 5, na , utilizando-se a funo de teste Schaffer (1). Em um exemplo real, tal como o de um projeto de sistema embarcado, as variveis x1 e x2 poderiam ser percebidas como valores de poderiam ser vistos como o custo e o desempenho final do sistema. velocidade do dispositivo e tamanho de rea ocupado, enquanto os valores de e Fonseca e Fleming [15] utilizam uma funo bi-objetiva, chamada Fonseca (4), que tem a vantagem de adicionar arbitrariamente variveis de deciso sem mudar a forma do Pareto Front ou localizao no espao de objetivos. As equaes que definem essa funo de teste so apresentadas abaixo: , , , , , 1 exp 1 1 ,
,
1

situao (b), e mostra os melhores resultados possveis de se obter para os objetivos e

(4)

onde

, 1 exp 1 1 ,

(5) (6)

O comportamento do Espao de deciso timo e do Pareto Front podem ser visualizados na Figura 6.
x2
2

a)

b)

0.5

-2

x1

0.5

Figura 6. a) Espao de deciso timo e b) Pareto Front da funo de teste Fonseca(1). Poloni [16] utiliza um problema de maximizao. A funo de teste bi-objetiva e o Pareto desconectado em duas curvas. O comportamento do Pareto Front pode ser visualizado na Figura 7.

ESCOLA POLITCNICA DE PERNAMBUCO

21
X2
2

f2

(a)

(b)

-15

-2 -3 1 3

-25

x1

-18

-9

f1

Figura 7. Funo de teste Poloni: a)Espao de deciso timo e b)Pareto Front. No estudo de Kursawe [17] apresentado uma funo bi-objetiva cujo Pareto Front desconectado em trs curvas. Da mesma forma que Fonseca(1), o nmero de variveis de deciso arbitrrio. As equaes que definem essa funo de teste so apresentadas abaixo: , , 10

.

(7)

onde

varivel de deciso do vetor de variveis de deciso recebido como entrada. O comportamento do Pareto Front pode ser visualizado na Figura 8.

-2 -4

A funo F depende de , , , e , , , , onde representa i-sima

| |. 5 ,

(8)

(9)

-8

-12 -20

-17

-14

Figura 8. Pareto Front da funo de teste Kursawe.

Em [18] so utilizadas as funes de teste descritas acima (SCH, FON E KUR), juntamente com os problemas de teste ZDT1, ZDT2, ZDT3, ZDT5 e ZDT6 [19], para validar o

ESCOLA POLITCNICA DE PERNAMBUCO

22

algoritmo NSGAII. Os problemas de teste ZDT foram construdos utilizando a metodologia proposta por Deb [20] e que foram baseados nos principais problemas encontrados nos MOEA e descritos em [19]. As funes ZDT so definidas de acordo com a seguinte equao: , , (10)

onde

depende do resultado em teste. Note que . A varivel representa a i-sima varivel de deciso do vetor de entrada. A varivel , que representa o vetor de entrada, apresentada de forma geral nas equaes (10), (11) e (12), porm poder ser representada atravs de um nmero seguintes e representa que o objetivo depende de um nmero de elementos do vetor inicial, e no necessariamente dele todo. A funo ZDT1 definida pelas seguintes equaes: , , 1 9 ,

, , , , , , as quais so descritas a seguir, de acordo com cada funo de

A funo F um problema de minimizao e depende de , , , , , e

, , , , , , , .

, , ,

(11) (12)

de fixo de elementos do vetor, tais como ou , , . Essa notao utilizada nas equaes

mapeados pela funo de teste, os quais so representados nas equaes (11) e (12) e detalhados nas equaes (13), (14) e (15). A funo ZDT2 definida pelas seguintes equaes: , (16) 1, (17)

mostra o Pareto Front dessa funo, onde os eixos e representam os objetivos

onde m=30 e 0,1. O front do Pareto timo convexo e formado com 1. A Figura 9

, 1 ,

1,

(13) (14) (15)

, , 1 9

ESCOLA POLITCNICA DE PERNAMBUCO

front do Pareto Front cncavo e formado com 1. A Figura 10 mostra o Pareto Front (18).

teste, os quais so representados nas equaes (11) e (12) e detalhados nas equaes (16), (17) e

1

dessa funo, onde os eixos e representam os objetivos mapeados pela funo de

onde m representa o nmero de variveis de deciso e 0,1. Em [19] sugere-se usar m=30. O

, 1 ,

23

(18)

0.5

0.5

Figura 9. Pareto Front da Funo de Teste ZDT1 (Convexo). .



1

0.5

0.5

Figura 10. Pareto Front da funo de teste ZDT2 (cncavo). A funo ZDT3 definida pelas seguintes equaes: , , 1 9 ,

nas equaes acima. O front do Pareto Front formado com 1. O Pareto dessa funo

onde m representa o nmero de variveis de deciso e 0,1. Em [19] sugerido utilizar m=30

, 1 sin10 ,

1,

(18) (19) (20)

ESCOLA POLITCNICA DE PERNAMBUCO

24

discreto, possuindo diversas partes convexas no-contnuas. No entanto, no h descontinuidade no espao de variveis. O Pareto Front dessa funo apresentado na Figura 11, onde os eixos nas equaes (11) e (12) e detalhados nas equaes (18), (19) e (20).

1

e representam os objetivos mapeados pela funo de teste, os quais so representados

-1 0 0.4 0.8

algoritmo de lidar com mltiplos fronts. As equaes so definidas a seguir: ,

A funo de teste ZDT4 possui 21 Paretos locais, testando assim a habilidade do


, , 1 10 1 10 cos 4 ,

Figura 11. Pareto Front da funo de teste ZDT3 (discreto).

(21) (22) (23)

onde m o nmero de variveis de deciso, 0,1 e , , 5,5. Em [19] sugere-se utilizar m = 10. O front do Pareto timo global formado com g(x) = 1. O melhor front de Pareto timo local formado com g(x) = 1.25, utilizando a equao (22). O Pareto timo dessa funo est representado na Figura 12, onde os eixos e representam os objetivos mapeados pela funo de teste, os quais so representados nas equaes (11) e (12) e detalhados nas equaes (21), (22) e (23). A funo de teste ZDT5 explora a caracterstica de deceptividade, que quando h um mnimo global e um local e as solues do mnimo local tendem a atrair o algoritmo de busca. As equaes que definem essa funo de teste so definidas abaixo: , , , , 1 , 1 , (23) (24) (25)

, 1 ,

ESCOLA POLITCNICA DE PERNAMBUCO

onde um vetor binrio e representa o nmero de 1s presentes nesse vetor, 2 5 , 1 5 (26)

25

0,1 , e , , 0,1 , onde 0,1 representa que at n bits podem estar contidos naquele vetor. Em [19] sugere-se utilizar m=11 e observado que o front de Pareto timo formado com g(x)=10. A figura do Pareto Front pode ser visualizada na
Figura 13, onde os eixos e representam os objetivos mapeados pela funo de teste, os
2

quais so representados nas equaes (11) e (12) e detalhados nas equaes (23), (24) e (25).

Figura 12. Pareto front da funo de teste ZDT4 (multimodal).



8

15

30

Figura 13. Pareto Front da funo de teste ZDT5 (deceptivo). A funo de teste ZDT6 tenta explorar duas dificuldades encontradas nos algoritmos de busca. A primeira que as solues do Pareto timo so distribudas de maneira no uniforme. A segunda que a densidade das solues baixa prxima ao Pareto e alta longe dele. As equaes que definem essa funo so apresentadas abaixo: 1 exp4 6 ,

(27)

ESCOLA POLITCNICA DE PERNAMBUCO

26

, , 1 9

e sugere-se utilizar m=10. O front do Pareto timo cncavo e pode visualizado na Figura 14, onde os eixos e representam os objetivos mapeados pela funo de teste, os quais so representados nas equaes (11) e (12) e detalhados nas equaes (27), (28) e (29).

1

parmetro e 0,1. Em [19] observado que o front do Pareto timo formado com g(x) = 1

onde representa representa o i-simo termo vetor de variveis de deciso recebido como

, 1 ,

/ 1

(28) (29)

0.5 0.6 0

Figura 14. Pareto Front da funo de teste ZDT6 (no uniforme).

2.4 Mtricas de Avaliao de Desempenho


Mtricas so bastante utilizadas a fim de mensurar caractersticas de MOEAs, ajudando a entender seu comportamento no domnio do problema e permitindo uma avaliao mais concreta do desempenho do algoritmo. As mtricas tambm so um importante parmetro de comparao entre algoritmos, uma vez que muitas vezes difcil perceber qual algoritmo apresenta um melhor conjunto de solues para o problema. A Figura 15 ilustra essa caracterstica. Conforme mostra a Figura 15, na situao (a) possvel concluir que o conjunto de solues do algoritmo A mais apropriado do que o do algoritmo B, uma vez que para cada soluo encontrada em B existe pelo menos uma soluo em A que seja melhor ou igual de B em todos os objetivos. Mas ainda assim difcil dizer o quanto o algoritmo A melhor que B.

ESCOLA POLITCNICA DE PERNAMBUCO

27

Figura 15. Comparao entre algoritmos: (a) Possvel concluir qual o melhor algoritmo e (b) Dificuldade em se encontrar qual o melhor algoritmo para o problema. Na situao (b) j no se pode assegurar qual algoritmo melhor, pois no conjunto das melhores solues encontradas na unio dos resultados de A e B, algumas solues pertencem a A e outras a B. Dessa forma, as melhores solues que pertencem ao algoritmo A podem apresentar caractersticas que sejam boas para um tipo de aplicao, enquanto que as de B podem ser boas apenas para outros tipos de aplicaes. Sendo assim, a assero de que os resultados de um algoritmo so melhores do que de outro algoritmo depender de quais caractersticas so importantes para o usurio. Fonseca et al. [21] tambm tira essa mesma concluso e observa que mtricas podem ser combinadas a fim de se buscar um conjunto de caractersticas mais apropriadas para anlise comparativa entre os algoritmos. As mtricas podem ser classificadas em unitrias e binrias. Mtricas unitrias so aquelas que atribuem um valor que reflete uma caracterstica junto a um conjunto de solues. comum encontrar a utilizao dessas mtricas de forma combinada [22][5]. As mtricas binrias, por sua vez, atribuem valores aos pares de conjuntos de solues. Algumas das mtricas mais utilizadas so apresentadas a seguir.

2.3.1 Distncia da Gerao


A distncia da gerao mede a distncia Euclidiana entre as solues do Pareto Front conhecido e o Pareto timo. Conforme ilustra a Figura 16, essa mtrica calculada atravs do somatrio da distncia Euclidiana entre cada soluo obtida e o Pareto timo. Na mesma figura, a distncia Euclidiana representada pelo menor caminho entre a soluo obtida no Pareto Front e a soluo mais prxima do Pareto timo, o que torna a distncia Euclidiana perpendicular curva do Pareto timo. A distncia da gerao foi proposta por Van Veldhuizen e Lamont [23] e calculada pela equao abaixo:

ESCOLA POLITCNICA DE PERNAMBUCO

28

onde s o nmero de solues no-dominadas no Pareto Front e a menor distncia Euclidiana entre a soluo i e o Pareto timo.
f2
Distncia Euclidiana Solues obtidas

(30)

Front de Pareto timo

f1

Figura 16. Mtrica de Distncia da Gerao: baseada na distncia euclidiana das solues obtidas.

2.3.2 Diversidade
A mtrica de diversidade mede o grau de cobertura entre as solues obtidas e as solues de extremidade. Esta medida reflete a boa separao das solues e, por conseqncia, uma boa representao do Pareto Front. A Figura 17 ilustra a distribuio e diversidade das solues encontradas.
f2
de1 d1 d2 dn
Solues Obtidas

Solues de extremidade

de2

f1

Figura 17. Clculo da mtrica de diversidade: baseado na distncia entre as solues. Essa mtrica foi proposta por Deb et al.[24] e calculada pela equao abaixo:
, 1

(31)

, 1

(32)

ESCOLA POLITCNICA DE PERNAMBUCO

29

solues. O termo representa o valor mdio de todas as distncias . O parmetro

forma, pode ser representada como a distncia Euclidiana entre a i-sima e (i+1)-sima representa a distncia entre a soluo extrema do Pareto Front e a soluo correspondente no msimo objetivo, onde m corresponde ao nmero de objetivos. Para uma distribuio ideal de solues a varivel igual a zero.

onde a distncia entre solues vizinhas e s o nmero de solues no Pareto-Front. Desta

2.3.1.3 Espalhamento Mximo (MS)


A mtrica de espalhamento mximo [25], conforme o prprio nome sugere, indica o grau de espalhamento mximo do conjunto de solues. Isso indica que as extremidades foram alcanadas com uma determinada distncia Euclidiana entre eles. Desta forma, desejvel que a distncia entre as extremidades sejam a maior possvel, pois isso representa um conjunto maior para se encontrar as solues timas. A Figura 18 ilustra a distncia entre as extremidades. A equao apresentada abaixo:
, ,

(33)

onde e so os valores mximo e mnimo, respectivamente, do i-simo objetivo

encontrado nas solues do Pareto atingido, enquanto e representam os valores max , retornam, respectivamente, os valores mnimos e mximos quando comparados os
f2
Solues de extremidade

mximo e mnimo do i-simo objetivo no conjunto do Pareto timo. As funes min , e

parmetros f e F.

MS
Solues Obtidas

f1

Figura 18. Distncia entre as solues de extremidade.

ESCOLA POLITCNICA DE PERNAMBUCO

30

2.3.1.4 Taxa de Erro


Essa mtrica indica a porcentagem de solues que no esto no Pareto timo. Ela foi proposta por Van Veldhuizen [10] e calculado atravs da seguinte equao: onde s o nmero de solues que no esto no Pareto timo P e =1 se e = 0, caso , (45)

contrrio. O valor ER = 0 quer dizer que todas as variveis fazem parte do Pareto timo.

2.3.1.5 Hipervolume
O indicador de hipervolume [26] calcula o volume da regio coberta entre os pontos das solues do front encontrado e um ponto de referncia. Matematicamente, para cada soluo i pertencente ao Pareto Front Q, construdo um hipercubo vi com referncia um ponto W . O ponto de referncia pode ser encontrado construindo-se um vetor com os piores valores de funo objetivo. O resultado da mtrica a unio de todos os hipercubos encontrados. Nessa mtrica, quanto maior o valor do hipervolume melhor, pois um alto valor de hipervolume indica que houve um elevado espalhamento entre as solues extremas do Pareto encontrado e indica tambm que houve uma maior convergncia, pois quanto mais o algoritmo convergir maior ser o volume calculado nessa mtrica. A Figura 19 ilustra o clculo de hipervolume. Apesar de ser conceitualmente intuitiva, essa mtrica apresenta um elevado custo computacional. Essa mtrica calculada atravs de ,
||

(46)

onde i representa a soluo do Pareto Front Q e vi representa o hipercubo daquela soluo.


f2
W

f1

Figura 19. Hipervolume gerado pelas solues do Pareto Front.

ESCOLA POLITCNICA DE PERNAMBUCO

31

2.3.1.6 Espaamento (SS)


Schott [27] apresentou uma mtrica de espaamento que mensura as distribuies das solues no Pareto Front. Essa mtrica calcula a distncia relativa entre solues consecutivas no Pareto Front. A equao descrita a seguir:

objetivos e representa o valor do objetivo m para a soluo i. A mtrica sendo igual a zero

|| mdia de todos os , representado por ||. O parmetro m representa o nmero de

onde |Q| o nmero de solues do Pareto Front, ^ | e a |

||

|| ,

(47)

indica que todos os membros do Pareto Front esto eqidistantes.

2.3.1.7 Escala de Progresso (RP)


A escala de progresso utilizada para medir a velocidade de convergncia do algoritmo e foi definida para algoritmos de um nico objetivo em [28]. Em [10] apresentada uma adaptao da equao para lidar com algoritmos multiobjetivos. Essa mtrica calculada atravs de onde a Distncia de Gerao da gerao 1 e a distncia na gerao T. ,

(48)

2.3.1.8 Cobertura
A mtrica de cobertura [26] capaz de mensurar quanto um determinado conjunto de solues domina outro conjunto. Essa relao exemplificada na Figura 20.

C(A,B) = 25% f2 C(B,A) = 75% A B

f1

Figura 20. Mtrica de cobertura entre as solues do conjunto A e B.

ESCOLA POLITCNICA DE PERNAMBUCO

32

O valor C(A,B) na Figura 20 indica a porcentagem de elementos em B que so fracamente dominados por elementos de A. Essa mtrica possui um baixo custo computacional comparado com o hipervolume. A equao que representa a mtrica de cobertura calculada atravs de , | ; : | , ||

(49)

onde b e a representam solues do conjuntos de soluo B e A, respectivamente. O termo todos os membros de B so fracamente dominados por A.

indica que b fracamente dominado pela soluo a. O valor da mtrica C(A,B)=1 significa que

ESCOLA POLITCNICA DE PERNAMBUCO

33

Captulo 3

MOEAs Utilizados
Neste captulo feita uma descrio dos MOEAs utilizados na implementao da ferramenta desenvolvida. Foram selecionados os algoritmos evolucionrios NSGA-II, SPEA2, PAES e PESA-II por estarem entre os algoritmos multi-objetivos mais utilizados. Cada algoritmo descrito a seguir.

3.1 NSGA-II
O algoritmo NSGA, proposto em [29], foi um dos primeiros EAs desenvolvidos. Porm, ao longo dos anos foi alvo das seguintes crticas: alta complexidade computacional do algoritmo de ordenao baseado em no-dominncia, ausncia de elitismo e necessidade de especificar o melhoras em relao ao anterior, implementando elitismo, reduzindo parmetro . Posteriormente, foi proposto o algoritmo NSGAII [5], que apresentava

computacional e retirando a necessidade de especificar o parmetro , que era um parmetro utilizado para verificar a diversidade de solues equivalentes.

complexidade

O NSGAII baseia-se no conceito de no-dominncia para selecionar indivduos, assim como na mtrica crowding distance, que utilizada para selecionar os melhores indivduos de um conjunto de solues no-dominadas. O mtodo de clculo do crowding distance mostrado na Tabela 2. Um esquema do processo de ordenao e seleo utilizado no NSGAII mostrado na Figura 21. De acordo com essa figura, inicialmente tem-se um conjunto de solues formado por (gerado atravs de operadores de seleo, mutao e cruzamento) e (populao inicial da fronts (com menos solues dominadas) so selecionadas para a prxima iterao. O algoritmo presente na Tabela 3 representa o pseudo-cdigo do NSGA-II iterao t). Em seguida feita a ordenao das solues de acordo com o grau de no-

dominncia. Com isso, as solues so divididas em fronts, onde aquelas contidas nos melhores

ESCOLA POLITCNICA DE PERNAMBUCO

34

Passo 1: Ranquear a populao e identificar os fronts no-dominados , , . . . Para cada j = 1,..., R, repetir os passos 2 e 3.

Tabela 2. Clculo do crowding distance.

Passo 2 : Para cada funo objetivo k, ordene as funes em em ordem crescente. Para i=1,2,...L-1 atribua , ao objetivo k. Atribua , e , .
, ,

Seja L = e , a representao da i-sima soluo na lista ordenada, com respeito

Passo 3 : Para encontrar o crowding distance total cd(x) de uma soluo x, some os crowding distances das solues com respeito a cada objetivo.

Tabela 3. Pseudo-cdigo do NSGA-II. 1. Gera populao aleatria inicial P0 de tamanho N 2. Ordena P0 com base em no-dominncia seleo, cruzamento e mutao. 3. Populao de tamanho N obtida a partir de P0 atravs da aplicao dos operadores de 4. Repetir G-1 vezes, onde G o nmero de geraes 5. 6. 7. 8. 9, 10. 11. 12. 13. 14. F = ordenar por no-dominncia enquanto | | , onde t a iterao atual

F = ( , , , ), todos os fronts de

ordenar com base em no dominncia e crowding distance (crowded operator) 0: t = t+1 (baseado no crowded operator), cruzamento e mutao sobre a populao

atribuir crowding distance para cada soluo em

Populao de tamanho N obtida a partir da aplicao dos operadores de seleo

ESCOLA POLITCNICA DE PERNAMBUCO

35

Ordenao por no-dominncia

Ordenao por Crowding Distance

Rejeitado

Figura 21. Esquema do procedimento do NSGAII.

3.2 SPEA2
O SPEA2 [6] um algoritmo que utiliza um arquivo externo para armazenar as melhores solues encontradas entre as geraes. Ele se baseia no conceito de dominncia e densidade de vizinhos para avaliar o fitness, que uma medida de qualidade da soluo encontrada. Pela densidade de vizinhos possvel observar quais indivduos so mais representativos para o conjunto de soluo final. Desta forma, a densidade utilizada como critrio de deciso entre indivduos com mesmo grau de dominncia. A densidade calculada atravs de 1 , 2 (50)

onde

O pseudo-cdigo do SPEA2 apresentado na tabela abaixo.

dominadas e igual distncia Euclidiana entre a soluo i e a k-sima soluo mais prxima. Tabela 4. Pseudo-cdigo do SPEA2.

populao inicial da iterao t, igual ao tamanho do arquivo externo de solues no

para i igual i-sima soluo para a qual se est calculando a densidade, igual ao tamanho da

(51)

1: Entrada : N(Tamanho da populao) 2: 3: 4: Sada : 6: (Tamanho do arquivo) T (Nmero mximo de geraes)

. 5 : Inicializao :Gere populao inicial e cria um arquivo externo vazio Seta t = 0.

A (Solues no dominadas)

ESCOLA POLITCNICA DE PERNAMBUCO

para . 8: Seleo : Copie os indivduos no dominados de e 9: 10: 11: 12: 13: 14: ento | = Se | | > ento Seno se | Seno Teste condio de parada. Aplique o truncamento a

. 7 : Atribuio de fitness :Calcule o fitness de e

36

at . Aplique crossover em 16: Cruzamento : Seleo por torneio direto (binrio) em completar o mating pool. 17: Diversidade : Aplique o operador de mutao ao mating pool e sete a populao resultante em . Incremente o contador de gerao e volte para a linha 7.

e pare. 15: Condio de Parada: se t >= T ou outro critrio for satisfeito, atribua A =

Complete o arquivo com elementos dominados de e

. Em seguida calculada a funo fitness, onde possvel ter uma arquivo externo vazio no dominados do conjunto de solues so copiados para compor o arquivo externo da prxima iterao. Baseado no tamanho do arquivo externo, pode haver, nessa etapa, a necessidade de truncamento ou de completar o novo arquivo externo com elementos dominados. Caso a condio de parada no seja atingida realizado seleo, cruzamento e mutao. Desta forma, gerada uma nova populao e esse processo se repete at que a condio de parada seja atingida.

Como pode ser visto na Tabela 4, inicialmente gerada uma populao inicial P e um

percepo melhor do relacionamento entre as solues envolvidas. Posteriormente, os indivduos

3.3 PAES
O algoritmo PAES, inicialmente proposto por Knowles e Corne [4], surgiu da tentativa de resolver problemas de roteamento de redes de computadores. Eles observaram que uma busca local, em problemas mono-objetivos, apresentava um desempenho melhor do que abordagens baseadas em populao. Baseado nisso, foi desenvolvido o algoritmo evolucionrio de otimizao muti-objetiva, utilizando busca local. O cdigo principal do algoritmo mostrado na Tabela 5.

ESCOLA POLITCNICA DE PERNAMBUCO

37

Tabela 5. Pseudo-Cdigo para o PAES. 1. Gera soluo aleatria c e adiciona ao arquivo 2. Gera mutao m a partir de c e avalia m 3. 4. 5. 6. 7. 8. 9. Se c domina m ento Descarta m Seno se m domina c ento Substitui c por m e adiciona m ao arquivo Seno se m dominado por algum membro do arquivo ento Descarta m Seno aplique teste(c, m, arquivo) para determinar qual ser a nova soluo e se m dever ser adicionado ao arquivo. O cdigo da funo teste mostrado na Tabela 6. Essa funo baseia-se na densidade da regio onde se encontra a soluo para determinar se ela far parte da prxima iterao. Tabela 6. Pseudo-cdigo para teste(c, m, arquivo) usada no PAES. 1. Se o arquivo no est cheio ento 2. 3. 4. 5. 7. 8. 9. 10. 11. 12. 13. 14. 15. Adiciona m ao arquivo Se m est numa regio menos densa que c ento Aceita m como a nova soluo atual Seno mantm c como a soluo atual Se m est numa regio menos densa que algum membro do arquivo ento Adiciona m ao arquivo Remove o membro que estiver na regio mais densa do arquivo Se m est numa regio menos densa do arquivo que c ento Aceita m como a nova soluo atual Seno mantm c como soluo atual Seno se m est numa regio menos densa que c ento Aceita m como a nova soluo atual Seno mantm c como a soluo atual De acordo com a Tabela 5, inicialmente gerada uma soluo aleatria c e uma mutao m a partir dessa soluo. Caso c domine m ento m descartado. Caso m domine c ento m

6. Seno

ESCOLA POLITCNICA DE PERNAMBUCO

38

adicionado ao arquivo externo e o processo se repete. Caso m no seja dominado por nenhum membro do arquivo externo, ento utilizada uma funo teste para verificar a densidade das regies onde se encontram as solues e poder decidir qual a melhor soluo para fazer parte do conjunto de solues final. O processo se repete at que o critrio de parada seja atingido.

3.4 PESA-II
O algoritmo PESA-II foi criado por Knowles et alem [7] e baseado no algoritmo PESA [30]. A principal diferena entre o PESA e o PESA-II que o ltimo apresenta uma nova estratgia de seleo baseada em hiper grades (hypergrid). As hiper grades consistem na diviso do espao de busca em clulas com intervalos proporcionais cada dimenso, formando assim hiper cubos. A anlise dessas regies permite a verificao da densidade das solues, auxiliando no processo de seleo e atualizao do arquivo externo utilizado. O cdigo do algoritmo mostrado na Tabela 7. Tabela 7. Pseudo-cdigo do PESA-II. 1. Inicializa a Populao Inicial PI aleatoriamente com N indivduos. 2. Move os indivduos no-dominados para o arquivo externo PE. 3. Se Critrio de Parada foi atingido 4. 6. 7. 8. 9. 10. 11. 12. Pra e retorna PE como o Pareto. Apaga a PI. Repetir at serem criados novos N indivduos em PI. Selecionar 2 indivduos de PE. Usando-se hiper cubos, cruzar e produzir um nico filho. Muta-se o filho criado. Selecionar 1 indivduo e produzir um novo filho. Retornar para o passo 2. De acordo com o pseudo-cdigo da Tabela 7, inicialmente so gerados aleatoriamente N indivduos, que compem a populao inicial. Desses indivduos, aqueles que no so dominados so movidos para o arquivo externo PE. Caso o critrio de parada no seja atingido criado uma nova populao de tamanho N a partir da seleo dos indivduos de PE, utilizando-se como critrios de seleo a densidade dos hiper cubos. As solues que encontram-se em regies 5. Seno

ESCOLA POLITCNICA DE PERNAMBUCO

39

menos densas tem maior probabilidade de serem escolhidas. Esse processo se repete at que o critrio de parada seja atingido.

ESCOLA POLITCNICA DE PERNAMBUCO

40

Captulo 4

Descrio da Ferramenta

A ferramenta proposta tem como objetivo fornecer mecanismos de apoio ao pesquisador para a simulao e anlise de MOEAs. Para o desenvolvimento da ferramenta foi necessrio considerar algumas caractersticas importantes, como modularidade, interface amigvel e possibilidade de futuras extenses do cdigo desenvolvido. Foi utilizada a linguagem de programao Java [31] no desenvolvimento do simulador, o qual foi construdo com o auxlio das ferramentas Eclipse [32] e Netbeans [33]. Para a ilustrao dos grficos dos algoritmos simulados utilizou-se a biblioteca grfica JFreeChart [34], que contm funcionalidades de auxlio apresentao de grficos em Java. As sees seguintes descrevem cada mdulo da arquitetura desenvolvida e a estruturao da interface com o usurio.

4.1 Mdulos da Ferramenta


A arquitetura utilizada para o desenvolvimento da ferramenta proposta constituda de diversos mdulos que interagem entre si para a realizao conjunta das funcionalidades do sistema. Cada mdulo tem sua caracterstica especfica, que agrupa um conjunto de classes desenvolvidas para realizar as atividades daquele mdulo. Na Figura 22 esto ilustrados os principais mdulos utilizados no sistema e como eles interagem entre si. A estruturao dos mdulos tambm dividida em camadas, como ilustra a Figura 22. O mdulo de Interface Grfica interage diretamente com o mdulo de Negcios, que por sua vez pode ter acesso aos mdulos de Tcnicas, Mtricas e Funes de Teste. Esses, por sua vez tm acesso aos mdulos de tratamento de excees, classes bsicas e classes de apoio ao sistema. Cada um desses mdulos ser descrito nas sees seguintes. importante observar que a arquitetura em camadas foi estruturada a fim de facilitar reutilizao do cdigo e eventuais

ESCOLA POLITCNICA DE PERNAMBUCO

41

alteraes futuras. Na arquitetura utilizada o nvel de acesso entre as camadas realizado sempre de cima para baixo.

Interface Grfica

Negcios

Tcnicas

Mtricas

Funes de Teste

Excees

Classes Bsicas

Util

Figura 22. Representao da interao entre os mdulos da ferramenta.

4.1.1 Mdulo de Classes Bsicas


O mdulo de classes bsicas contm todas as classes primrias necessrias para o funcionamento do sistema. Muitos dos conceitos envolvidos na aplicao de MOEAs esto descritos nas classes desse mdulo. Dentre eles, podem-se encontrar os conceitos de gene, cromossomo, populao, Front, objetivo e operadores de algoritmos genticos. Cada conceito foi modelado de forma a se construir classes que representem objetos do sistema.

4.1.2 Mdulo Util


O mdulo Util responsvel por agregar classes que manipulam dados comuns a grande parte do sistema. Em sua maioria, as classes contidas nesse mdulo no precisam ser instanciadas para a utilizao de seus mtodos e apresentam um fraco vnculo com o restante do sistema. A maior funcionalidade desse mdulo oferecer suporte clculos comuns a diversas partes do sistema, como clculo de Distncia Euclidiana, ordenao e manipulao de dados das solues encontradas.

ESCOLA POLITCNICA DE PERNAMBUCO

42

4.1.3 Mdulo de Excees


O mdulo de excees contm o conjunto de excees que podem ser emitidas pelo sistema. um mdulo importante na construo de um projeto de software, pois permite um detalhamento melhor dos erros que possam vir a ocorrer, assim como auxilia na deteco de falhas no sistema. Dentre excees que podem ocorrer esto: parmetro invlido para a funo de teste, funo de teste incompatvel com o nmero de variveis de deciso, entre outros. Futuras excees que venham a ser detectadas sero agregadas a esse mdulo.

4.1.4 Mdulo de Funes de Teste


O mdulo de funes de teste realiza a implementao de todas as funes de teste utilizadas na ferramenta. A lista de funes de teste utilizadas encontra-se na seo de Apndice deste documento, onde so detalhas as equaes de cada funo, assim como ilustrado o Pareto timo de cada uma delas. Inicialmente foi definido uma interface, que conteria todos os mtodos implementados por cada uma das classes de funo de teste. Assim, cada classe nesse mdulo, que representa uma funo de teste, implementa em sua estrutura os mtodos para calcular os valores dos objetivos dado um conjunto de variveis de deciso, gerar nmeros aleatrios que satisfaam suas restries, assim como um mtodo que verifica essas restries. No total foram implementadas mais de 30 funes de teste, cada uma com caractersticas especficas, o que possibilita uma anlise dos diferentes graus de habilidades inerentes aos MOEAs estudados. Conforme observado no captulo 2 desse documento, as funes de teste so importantes para avaliao e validao das tcnicas analisadas.

4.1.5 Mdulo de Mtricas


O mdulo de mtricas contm mtodos que implementam as mtricas descritas no Captulo 2 deste documento. Esse mdulo utiliza alguns dos mtodos desenvolvidos no mdulo Util para a realizao dos clculos das mtricas.

4.1.6 Mdulo de Tcnicas


Esse mdulo contm as tcnicas de MOEAs utilizadas na ferramenta proposta, que so NSGAII, PAES, PESA2 e SPEA2. As tcnicas utilizadas, por apresentarem muitos conceitos relacionados aos algoritmos genticos, utilizam muitas das estruturas desenvolvidas no mdulo de Classes Bsicas, onde so descritos os mtodos de mutao, crossover e seleo. Por se tratar de

ESCOLA POLITCNICA DE PERNAMBUCO

43

utilizao de classes j existentes, as tcnicas desse mdulo diferenciam-se apenas em critrios de seleo, ordem de procedimentos e componentes utilizados. Dessa forma, a adio de novas tcnicas poder ser feita de forma simples e sua maioria, apenas reutilizando muitos dos conceitos j implementados. O procedimento de cada tcnica foi codificado utilizando os pseudocdigos apresentados no captulo 3 deste documento.

4.1.7 Mdulo de Negcios


O mdulo de negcios responsvel por realizar a comunicao entre o mdulo GUI e os mdulos de Tcnicas, Mtricas e Funes de Teste. Toda requisio de processamento do usurio passa por esse mdulo, que ento repassado para os mdulos das camadas abaixo. O mdulo de negcios facilita a portabilidade do sistema para diferentes tipos de interface.

4.1.8 Mdulo de Interface Grfica


O mdulo de Interface Grfica responsvel por oferecer a interface do sistema com o usurio. nele que esto contidas as classes que realizam a construo das janelas grficas, menus e exibio dos resultados processados nas camadas mais baixas do sistema. Esse mdulo tambm contm as classes que utilizam a biblioteca JFreeChart, que so responsveis pela apresentao dos resultados em um grfico. Todas as telas desenvolvidas nesse mdulo so detalhadas na seo seguinte.

4.2 Funcionamento
A ferramenta proposta foi desenvolvida para utilizao de forma intuitiva, permitindo ao usurio a configurao dos parmetros de simulao de forma simples e precisa. Inicialmente, apresentado ao usurio um conjunto de opes de customizao, que serviro como entradas para o processo de simulao. Aps a simulao, o usurio poder analisar os resultados obtidos de acordo com as configuraes solicitadas. A figura abaixo mostra o processo de utilizao da ferramenta, desde a escolha dos parmetros, at a anlise dos resultados. Conforme apresentado, a seleo de parmetros de simulao envolve escolha do algoritmo, mtricas e funes de teste. A configurao desses parmetros pode ser realizada em qualquer ordem e inicialmente so apresentados valores padres. A Figura 24 ilustra a tela de seleo do algoritmo.

ESCOLA POLITCNICA DE PERNAMBUCO

44 Incio

Parmetros de Simulao
Escolha do Algoritmo Escolha da Funo de Teste Escolha das Mtricas

Definio de Parmetros

Simular

Anlise dos resultados

Figura 23. Fluxo de utilizao da ferramenta proposta. No quadro Adicionar Algoritmo, possvel escolher um nome que representar a simulao daquele algoritmo, assim como o algoritmo base dele. A escolha do algoritmo base permite a seleo entre os quatro algoritmos implementados: NSGAII, PAES, PESA-II e SPEA2. Podem ser adicionados quantos algoritmos o usurio quiser, sendo exibidos os algoritmos adicionados no quadro Algoritmos Adicionados. Ao clicar no nome de um dos algoritmos na lista de algoritmos selecionados, mostrado abaixo, no quadro Parmetros, os parmetros referentes quele algoritmo. As opes de parmetros variam de acordo com o algoritmo base. Inicialmente, cada algoritmo iniciado com valores pr-definidos para todos os parmetros, mas podem ser customizados pelo usurio. A tela de escolha de funes de teste permite escolher uma funo de teste, dentre o conjunto de funes implementadas, para servir como aplicao dos algoritmos selecionados. A Figura 25 mostra essa tela. Como pode ser observado, possvel escolher uma dentre a lista de funes de teste apresentadas no quadro esquerdo. Ao selecionar alguma funo de teste so apresentadas informaes sobre ela no quadro Descrio, no lado direito da tela. Esse quadro contm informaes como nmero de objetivos, nmero de variveis de deciso, autor e se maximizao ou minimizao. A tela de escolha de mtricas permite a seleo das mtricas que sero calculadas para cada algoritmo simulado. Nessa tela possvel gerenciar quais mtricas faro parte dos resultados

ESCOLA POLITCNICA DE PERNAMBUCO

45

finais, assim como possvel observar a descrio de cada uma delas. A Figura 26 mostra essa tela.

Parmetros do Algoritmo

Figura 24. Tela de escolha dos algoritmos de simulao.

Figura 25. Tela de escolha da funo de teste.

ESCOLA POLITCNICA DE PERNAMBUCO

46

H tambm uma tela de configuraes que permite que o usurio escolha se quer que os resultados dos algoritmos contenham apenas o Pareto timo ou todas as solues finais. Nessa tela tambm possvel escolher um local para salvar a imagem do grfico de resultados.

Figura 26. Tela de seleo de mtricas. Aps serem selecionados os parmetros de configurao, realizada a simulao dos algoritmos e em seguida so apresentados seus resultados. A tela de resultados mostra os dados obtidos na simulao. Essa tela apresentada na Figura 27. Na tela de resultados apresentado um grfico onde so apresentados os indivduos obtidos na ltima gerao dos algoritmos simulados. Caso tenha sido escolhido mais de um algoritmo o grfico apresentar cores distintas para cada algoritmo, tendo sua legenda logo abaixo do grfico. Ao final da tela possvel observar os resultados das mtricas que foram escolhidas pelo usurio. No canto direito exibida a lista de algoritmos que foram simulados. Ao selecionar o algoritmo so mostrados os resultados das mtricas para o mesmo. No canto superior direito existe mais duas opes de interao com os resultados. No boto Salvar, pode-se escolher um local para salvar o grfico apresentado. Ao clicar no boto Expandir apresentada uma nova tela, onde possvel ajustar as dimenses do grfico, assim como permite a aproximao e distanciamento dos pontos observados. A Figura 28 ilustra a tela de expanso.

ESCOLA POLITCNICA DE PERNAMBUCO

47

Figura 27. Tela de Resultados da Simulao. Aps o processo de simulao ter sido concludo, possvel realizar novas simulaes alterando-se os parmetros de simulao. Isso permite a anlise comparativa do desempenho de diferentes algoritmos executando funes de teste distintas e com parmetros variados. Conforme mencionado, tambm possvel a anlise simultnea de diversos algoritmos em uma mesma simulao, observando-se assim os resultados de cada mtrica e as caractersticas de seus Paretos.

Permite efeito de aproximao

Figura 28. Tela de expanso dos resultados de simulao.

ESCOLA POLITCNICA DE PERNAMBUCO

48

Captulo 5

Estudo de Caso
5.1 Anlise de Desempenho entre Algoritmos de Otimizao Multi-Objetivos
Nesta seo so apresentados os resultados dos experimentos realizados com os algoritmos NSGAII, PAES, SPEA2 e PESA-II, simulados com a funo de teste Poloni [16]. Essa funo uma funo de maximizao, composta por dois objetivos e duas variveis de deciso. A equao que a representa, assim como seu Pareto timo pode ser visualizado nos apndices deste documento. A funo de teste Poloni foi escolhida para realizar essa anlise por se tratar de uma funo cujo Pareto apresenta descontinuidade e concavidade, oferecendo assim maior complexidade para os algoritmos multiobjetivos [20]. A Figura 29 mostra o resultado da simulao com o algoritmo NSGAII, utilizando a ferramenta proposta. Como parmetros de simulao foram utilizados populao inicial de 40 indivduos e nmero mximo de geraes igual a 100. A taxa de mutao foi ajustada em 10% e a de cruzamento em 80%. Como pode ser visualizado na Figura 29, o Pareto Front obtido se aproxima bastante do Pareto timo (apresentado na seo de apndices). No entanto, na regio superior do grfico o Pareto Front apresenta regies com representao ruim e pouco uniforme. Isso reflete nos resultados de algumas mtricas, como por exemplo a mtrica de diversidade, que apresentou um valor alto de 0,95. A Figura 30 apresenta os resultados obtidos para a simulao do algoritmo PAES, onde tambm realizado para a funo de teste Poloni. Foram utilizados como parmetros de simulao tamanho de arquivo externo igual a 20, nmero mximo de gerao igual a 200 e nmero de grids por eixo igual a 20.

ESCOLA POLITCNICA DE PERNAMBUCO

49

Figura 29. Pareto Front do algoritmo NSGAII para a funo de teste Poloni.

Figura 30. Pareto Front do algoritmo PAES para a funo de teste Poloni. Pode-se observar, de acordo com a Figura 30, que o Pareto Front econtrado apresenta-se bem prximo ao Pareto timo da funo de teste, apresentando o Pareto Front com a melhor distribuio entre os algoritmos simulados. A Figura 31 apresenta os resultados obtidos na simulao com o algoritmo PESA-II, utilizando a funo de teste Poloni. Dentre os parmetros de simulao utilizados esto tamanho da populao e nmero mximo de gerao igual a 40, probabilidade de mutao igual a 10% e utilizao de 10 grids por eixo.

ESCOLA POLITCNICA DE PERNAMBUCO

50

Figura 31. Pareto Front do algoritmo PESA-II para a funo de teste Poloni. Como pode ser visto na Figura 31, o Pareto apresentado pelo algoritmo PESA-II aproxima-se do Pareto timo da funo de teste, porm pouco distribudo e menos solues no dominadas quando comparado aos outros algoritmos analisados. A mtrica de diversidade apresenta bom resultado para esse algoritmo, com valor de 0,77, pois o Pareto Front composto por poucas solues afastadas entre si. A Figura 32 apresenta os resultados obtidos na simulao com o algoritmo SPEA2, simulado para a funo de teste Poloni. Para a simulao foram utilizados os seguintes parmetros: populao inicial e tamanho de arquivo externo igual a 30, nmero mximo de geraes igual a 200, probabilidade de mutao igual 10% e probabilidade de cruzamento igual a 80%. De acordo com a Figura 32, o Pareto Front encontrado bastante semelhante ao Pareto timo da funo de teste Poloni, apresentando o segundo melhor resultado entre os algoritmos analisados, por apresentar bastante solues dentro do Pareto timo, apesar de apresentar uma leve descontinuidade em seu Pareto Front . Entre os resultados analisados, o algoritmo PAES apresentou o Pareto Front com melhor convergncia, apresentando a melhor distribuio entre seus pontos e com Pareto Front semelhante ao Pareto timo. Na seo seguinte ser feito um estudo desse algoritmo para outras funes de teste.

ESCOLA POLITCNICA DE PERNAMBUCO

51

Figura 32. Pareto Front do algoritmo SPEA2 para a funo de teste Poloni.

5.2 Anlise de Desempenho com diferentes Funes de Teste


Nessa seo realizado um estudo sobre o comportamento do algoritmo PAES para diferentes funes de teste. Todas as simulaes foram realizadas utilizando-se os seguintes parmetros de simulao: probabilidade de mutao do gene igual a 40%, nmero mximo de geraes igual a 200, tamanho do arquivo externo igual a 20 e nmero de grids por eixo igual a 20. Na Figura 33 apresentado o Pareto Front obtido na simulao utilizando a funo de teste Rendon2 [35]. possvel observar a uniformidade e convergncia do Pareto Front, apresentando-se bem prximo ao Pareto timo. possvel notar que algumas solues esto bem distantes do Pareto Front, isto se deve a mutaes ocorridas durante o processo, o que permite a diversidade das solues encontradas. Na Figura 34 apresentado o Pareto Front para a funo de teste Kursawe [17]. Por apresentar um Pareto timo cncavo, oferece maior dificuldade para os algoritmos de otimizao. De acordo com o resultado apresentado pela figura, possvel observar que o Pareto Front encontrado conseguiu se aproximar do Pareto timo, embora tenha encontrado poucas solues devido ao nmero de restries envolvidas na funo de teste.

ESCOLA POLITCNICA DE PERNAMBUCO

52

Figura 33. Pareto Front do algoritmo PAES para a funo de teste Rendon2.

Figura 34. Pareto Front do algoritmo PAES para a funo de teste Kursawe. Na Figura 35 apresentado o apresentado o Pareto Front encontrado para a funo de teste Belegundu [36], cujo Pareto timo representado por uma funo linear. Apesar de o Pareto timo parecer simples de ser encontrado, o algoritmo PAES no conseguiu obter uma boa distribuio ao longo do Pareto Front, havendo maior densidade de solues em apenas uma parte do Pareto.

ESCOLA POLITCNICA DE PERNAMBUCO

53

Regio mais densa

Figura 35. Pareto Front do algoritmo PAES para a funo de teste Belegundu. A descontinuidade apresentada no Pareto Front encontrado na Figura 35 pode ser melhorada atravs de ajustes nos parmetros de simulao dos algoritmos, realizada na aba de algoritmos da ferramenta. Essa observao permitiu a anlise de um terceiro estudo de caso que verifica o impacto do da variao de parmetros no Pareto Front, conforme mostrado na seo seguinte.

5.3 Anlise do Impacto da Variao dos Parmetros


Inicialmente foi realizada a simulao do algoritmo, para a funo de teste Binh3 [37], utilizando-se os seguintes parmetros: populao inicial e nmero mximo de geraes iguais a 30, tamanho de arquivo externo igual a 10, probabilidade de mutao de 10%, probabilidade de cruzamento de 80% e cinco grids por eixo. Na Figura 36 apresentado o Pareto Front encontrado a partir da simulao com os parmetros de simulao descritos. Apesar da aproximao do Pareto Front em relao ao Pareto timo, possvel observar que as solues no esto dispostas uniformemente ao longo do Pareto Front. realizada uma segunda simulao para o algoritmo PESA2, utilizando-se a mesma funo de teste. Para essa simulao so mantidos os mesmos parmetros de simulao utilizados anteriormente, variando apenas o nmero de grids por eixo de 5 para 20. Na Figura 37 apresentado o Pareto Front obtido para com a nova configurao de parmetros. possvel observar que ouve uma melhora da distribuio de solues no Pareto

ESCOLA POLITCNICA DE PERNAMBUCO

54

Front em relao ao experimento anterior. Tambm foi possvel notar uma diminuio no valor da mtrica de diversidade, onde no primeiro experimento era de 1,6 e no segundo passou a ser de 0,82. Pode-se concluir que isso ocorre devido diminuio do tamanho dos grids, havendo uma maior percepo do algoritmo das regies que esto menos densamente povoadas.

Figura 36. Pareto Front do algoritmo PESA2 para a funo de teste Binh3, com 5 grids por eixo.

Figura 37. Pareto Front do algoritmo PESA2, para a funo Binh3, com 20 grids por eixo. Outras variaes foram utilizadas, tais como variao de probabilidade de mutao. Para esse caso foi observado que altas taxas de probabilidade de mutao causam uma maior incerteza

ESCOLA POLITCNICA DE PERNAMBUCO

55

nos resultados finais, podendo ajudar a convergir mais devagar, assim como a qualidade do Pareto, deixando o resultado muito aleatrio.

ESCOLA POLITCNICA DE PERNAMBUCO

56

Captulo 6

Consideraes Finais e Trabalhos Futuros


Foi apresentada, neste trabalho, uma ferramenta de simulao e anlise de algoritmos evolucionrios multi-objetivos, onde foram implementadas algumas das principais tcnicas existentes, dentre elas: NSGAII, PAES, PESA-II e SPEA2. O desenvolvimento da ferramenta foi realizado de forma modular, utilizando arquitetura em camadas, o que permitir a adio de futuras funcionalidades ferramenta, de forma simplificada. Foi realizado um levantamento bibliogrfico, obtendo-se as principais funes de testes encontradas na literatura, as quais foram agregadas ferramenta proposta. Foi realizada a implementao de 36 funes de teste, dentre as que foram coletadas, oferecendo ao usurio a possibilidade de simular diversos domnios de problema, com diferentes graus de dificuldade, a fim de permitir uma validao mais completa dos algoritmos analisados. Para avaliar os resultados encontrados, foram adicionadas 8 mtricas ferramenta, as quais esto entre as mais utilizadas na validao de MOEAs. Na seo de Estudo de Caso foi possvel comparar os resultados obtidos na ferramenta, demonstrando a usabilidade do sistema e a capacidade de anlise das tcnicas implementadas. Dessa forma, foi realizado um estudo comparativo entre os algoritmos NSGAII, PAES, PESA2 e SPEA2, simulados para a funo de teste Poloni. Nesse estudo foi possvel observar que todos os algoritmos conseguiam obter um Pareto Front prximo ao Pareto timo da funo, demonstrando que todos os algoritmos convergiam. No entanto, o Algoritmo PAES apresentou melhores resultados por apresentar um Pareto mais uniformemente distribudo, o que uma das condies almejadas em um MOEA. Em seguida, uma anlise do algoritmo PAES, realizando-se simulaes para outras funes de teste. Foi observado que para outras funes de teste tambm eram obtidos Paretos Front com boa convergncia, apesar de que, conforme observado, o nmero de restries da funo de teste pode interferir no nmero de solues finais encontradas e na distribuio de solues do Pareto Front.

ESCOLA POLITCNICA DE PERNAMBUCO

57

Outra anlise realizada, utilizando-se a ferramenta proposta, foi feita atravs da variao de parmetros de simulao, utilizando-se o algoritmo PESA-II, para a funo de teste Binh3. Nesse estudo foi verificado que a quantidade de grids por eixo utilizado no algoritmo pode afetar significativamente o grau de diversidade apresentado pelo Pareto Front. Foi possvel observar tambm que o aumento da taxa de mutao do indivduo na populao pode provocar um efeito aleatrio indesejado nos resultados do algoritmo, podendo em determinados momentos ajudar ou dificultar a convergncia do mesmo. Por fim, pde-se obter uma ferramenta de simulao de MOEAs, que, atravs de uma interface amigvel e intuitiva, permite realizar a simulao e anlise dos algoritmos NSGAII, PAES, PESA-II e SPEA2, alm de oferecer um conjunto de 36 funes de teste para validao dos algoritmos e 8 mtricas de anlise de resultados. Dentre as dificuldades encontradas, pode-se destacar a dificuldade de adaptao de algumas funes de teste encontradas em artigos cientficos, o que proporcionou, em alguns casos, a no identificao dos Paretos timos simulados com os dos apresentados nos artigos. Entre os trabalhos futuros pretendido melhorar o nvel de compatibilidade entre os Paretos timos obtidos em algumas funes de teste e os dos representados nos artigos correspondentes. Pretende-se tambm, futuramente, realizar a adio de novos algoritmos ferramenta. O objetivo que a adio dos novos algoritmos seja feita pelo usurio atravs da prpria ferramenta, sendo possvel a adio de variaes das tcnicas existentes ou a criao de novas tcnicas definidas pelo usurio.

ESCOLA POLITCNICA DE PERNAMBUCO

58

Bibliografia
[1] [2] [3] [4] [5] COELLO, C. A. C. Evolutionary Multi-Objective Optimizaton : A Historical View of the Field, IEEE Computational Intelligence Maganize, DEB K. Multi-Objective Optimization using Evolutionary Algorithms, WileyInterscience series in systems and optimization, p 17. PARETO, V. Cours DEconomie Politique, vol I e II, 1986.
KNOWLES, J. e CORNE D. , Approximating the Nondominated Front Using the Pareto Archived Evolution Strategy, Evolutionary Computation 8(2): 149-172.

DEB, K. AGRAWAL, S. e MEYARIVAN T., A Fast Elitist Nondominated Sorting Genetic Algorithm for Multi-objective Optimization: NSGA-II, Parallel Problem Solving from Nature, 2000, p. 849-858.

[6]

ZITZLER, E., LAUMMANS, M., THIELE, L. SPEA2: Improving the Strength of Pareto Evolutionary Algorithm for Multiobjective Optimization, Technical Report 103, Computer Engineering and Networks Laboratory(TIK), Swiss Federal Institute of Technology (ETH), Switzerland, 2001.

[7]

CORNE, D.W., JERRAM, N.R., KNOWLES, J. D., OATES, M. J., PESA-II: Regionbased Selection in Evolutionary Multiobjective Optimization. Proceedings of the Genetic and Evolutionary Computation Conference, So Francisco, 2001.

[8]

SILVA-FILHO, A. G., et al. An Optimization Mechanism Intended for Two-Level Cache Hierarchy to Improve Energy and Performance using the NSGAII Algorithm. In: SBAC-PAD, 2008, Campo Grande - MS. 20th International Symposium on Computer Architecture and High Performance Computing. Danvers, MA : IEEE Computer Society Conference Publishing Services, 2008. v. v1. p. 19-2

[9] [10] [11] [12]

DURILLO, J. J. et al, jMetal: a Java Framework for Developing Multi-Objective Optimization Metaheuristics, Tech Report, 2006. VELDHUIZEN, D. VAN, Multiobjective evolucionary algortihms: Classifications, analyzes, and new innovations, Air Force Inst. Technol., Dayton, OH, Tech. Rep. 1999. WOLPERT, DAVID H. e WILLIAM G. MACREADY. No Free Lunch Theorems for Optimization, IEEE Transactions on Evolucionary Computation, 1(1):67-82, Abril, 1997. DE JONG, KENNETH A. An Analysis of the Behavior of a Class of Genetic Adaptive Systems, dissertao PhD, The University of Michigan, Ann Arbor MI, 1975.

ESCOLA POLITCNICA DE PERNAMBUCO

59

[13] [14] [15]

GOLDBERG, DAVID E. Genetic Algorithms in Search Otimization and Machine. Reading, MA: Addison Wesley, 1989. WHITLEY, DARRELL, et al. Evaluating Evolutionary Algorithms, Artificial Intelligence, 85:245-276, 1996. FONSECA, C. M. e FLEMING, P.J. Multiobjective optimization and multiple constraint handling with evolutionary algorithms Part II: Application example, IEEE Trans. Syst., Man, Cybern. A, vol. 28, p. 38-47, 1998.

[16] [17] [18] [19] [20] [21]

POLONI, C., et al., Multiobjective Optimization by Gas: Application to System and Component Design. Computational Methods in Applied Sciences 96, p. 258-264, 1996. KURSAWE, F., A Variant of Evolution Strategies for Vector Optimization, Parallel Problem Solving from Nature. Berlin: Springer-Verlag, 1990. DEB, K., PRATAP, A., AGRAWL, S. e MEYARIVAN, T. A fast and elitist multiobjective genetic algorithm: NSGA-II. Technical Report No. 2000001, 2000. ZITZLER, E., DEB, D., e THIELE L. Comparison of multiobjective evolutionary algorithms : Empirical results, Evol. Comput., vol 8, no. 2, p. 173-195, 2000. DEB, K. Multiobjective genetic algorithms: Problems difficulties and construction of test functions, Evol. Comput., 1999, vol 7, p. 205-230. FONSECA, C. M., KNOWLES, J. D., THIELE, L. e ZITZLER, E. A tutorial on the performance assessment of stochastic multiobjective optimizers. Third International Conference on Evolutionary Multi-Criterion Optimization, 2005.

[22]

VELDHUIZEN D. A. V., LAMONT, G. B. On measuring multiobjective evolutionary algorithm performance, Congress on Evolutionary Computation, 2000, vol. 1, p. 204211.

[23] [24]

VELDHUIZEN D. A. V., LAMONT G. B. Multiobjective evolutionary algorithm research: A history and analysis,Tech. Rep. TR-98-03, 1998. TAN, K. C., LEE, T. H. e KHOR, E. F, Evolutionary algorithms with dynamic population size and local exploration for multiobjective optimization, vol. 5, p. 565599, 2001.

[25] [26]

ZITZLER, E. Evolutionary algorithms for multiobjective optimization: Methods and applications, dissertao Ph.D, 1999. ZITZLER, E., THIELE, L. Multiobjective optimization using evolutionary algorithms A comparative case study, Parallell Problem Solving from Nature, 1998, p. 292-301.

ESCOLA POLITCNICA DE PERNAMBUCO

60

[27] [28] [29] [30]

SCHOOT, J. R. Fault tolerant design using single and multicriteria genetic algorithm optimization, Tese de Mestrado, 1995. TOMAS, B. Evolutionary Algorithms in Theory and Practice, 1996. SRINIVAS, N. e DEB, K., Multiobjective Function Otimization Using Nondominated Sorting Genetic Algorithms, Evol. Comput., vol 2, no 3, p. 221-248, 1995. CORNE, D. W., KNOWLES, D. J., OATES M. J., The Pareto Envelope-based selection algorithm for multiobjective optimization. Proceedings of sixth international conference on parallel problem solving from Nature, p. 18-20, 2000.

[31] [32] [33] [34] [35] [36]

Site da Sun. ltima visualizao em 02/11/2008. Site da ferramenta Eclipse. ltima visualizao em 02/11/2008. Site da ferramenta Netbeans. ltima visualizao em 02/11/2008. Site do JFreeChart. ltima visualizao em 02/11/2008. RENDN, V., URESTI-CHARRE, M., URESTI-CHARRE, E., A Non-Generational Genetic Algorithm for Multiobjective Optimization, p. 658-655. BELEGUNDU, A. D., et al, Multi-Objective Optimization of Laminated Ceramic Composites Using Genetic Algorithms, on Proceedings Multidisciplinary of the 5th and AIAA/NASA/USAF/ISSMO Symposium Analysis

Optimization, p. 1015-1022, 1994. [37] [38] BINH, T. T. A Multiobjective Evolutionary Algorithm: The Study Cases. Technical Report, Institue for Automation and Communication, Barleben, Alemanha, 1999. BINH, T. T, KORN, U, An Evolution Strategy for the Multiobjective Optimization. Proceedings of the Second International Conference on Genetic Algorithms, p. 23-28, 1996. [39] BINH, T. T., KORN, U., Multiobjective Evoluion Strategy with Linear and Nonlinear Constraints, Proc. of the 15th IMACS World Congress on Scientific Computation, Modeling and Applied Mathematics, p. 357-362, 1997. [40] [41] FONSECA, C. M, FLEMING, P. J., An Overview of Evolutionary Algorithms in Multiobjective Optimization, Evolutionary Computation, 1995. FONSECA, C. M, FLEMING, P. J., Multiobjective Genetic Algorithms Made Easy: Selection, Sharing, and Mating Restriction. Proceedings of the 1st International Conference on Genetic Algorithms in Engineering Systems: Innovations and Applications, 1995.

ESCOLA POLITCNICA DE PERNAMBUCO

61

[42]

JIMNEZ, F., VERDEGAY, J. L., Contrained Multiobjective Optimization by Evolutionary Algorithms. Proceedings of the International ICSC Symposium on Engineering of Intelligent Systems, 1998.

[43] [44] [45]

KITA, H., et. al., Multi-Objective Optimization by Means of the Thermodynamic Genetic Algorithm. Parallel Problem Solving from Nature PPSN IV, p. 504-512, 1996. LAUMANNS, M., et. al, A Spatial Predator-Prey Approach to Multi-Objective Optimization, 1996. LIS, J., EIBEN, A. E, A Multi-Sexual Genetic Algorithm for Multiobjective Optimization, Proceedings of the 1997 (4th) IEEE International Conference on Evolutionary Computation, Piscataway, 1997.

[46] [47]

MURATA, T, et. al., Multi-Objective Genetic Algorithm and Its Application to Flowshop Scheduling, Computers and Industrial Engineering Journal, p 957-968, 1996. OBAYASHI, S., Pareto Genetic Algorithm for Aerodynamic Design Using the Navier-Stokes Equations. Genetic Algorithms and Evolution Strategy in Engineering and Computer Science: Recent Advances and Industrial Applications, p. 245-266, 1997.

[48]

OSYCZKA, A., KUNDU, S., A New Method to Solve Generalized Multicriteria Optimization Problems Using the Simple Genetic Algorithm, Structural Optimization, 1995.

[49]

QUALGLIARELLA, D., VICINI, A., Subpopulation Policies for a Parallel Multiobjective Genetic Algorithm with Applications to Wing Design, Proceedings of the 1998 IEEE International Conference on Systems, Man, and Cybernetics, 1998.

[50]

VALENZUELA-RENDN, M., URESTI-CHARRE, E., A Non-Generational Genetic Algorithm for Multiobjective Optimization, Proceedings of the Seventh Internation Conference on Genetics Algorithms, p. 658-665, 1997.

[51]

SCHAFFER, J. D, Multiple Objective Optimization with Vector Evaluated Genetic Algorithms, Proceedings of the First International Conference on Genetic Algorithms and Their Applications, p. 93-100, 1985.

[52] [53]

SRINIVAS, N., DEB. K., Multiobjective Optimization Using Nondominated Sorting in Genetic Algorithms, Evolutionary Computation, p. 221-248, 1994. TAMAKI, H, et. al., Multi-Objective Optimization by Genetic Algorithms: A Review. Proceedings of the Third IEEE Conference on Evolutionary Computation, p. 517-522, 1996.

ESCOLA POLITCNICA DE PERNAMBUCO

62

[54]

TANAKA, M., et al., GA-Based Decision Support System for Multicriteria Optimization. Proceedings of the International Conference on Systems, Man, and Cybernetics2, p. 1556-1561, 1995.

[55]

VIENNET, R., et. al., Multicriteraia Optimization Using a Genetic Algorithm for Determining a Pareto Set, International Journal of Systems Science, p. 255-260, 1996.

ESCOLA POLITCNICA DE PERNAMBUCO

63

Apndice A Funes de Teste


Esta seo apresenta as funes de teste utilizadas na ferramenta proposta, com o intuito de mostrar a estrutura das equaes, assim como as imagens dos Paretos-timos dessas funes. As figuras que demonstram os Paretos das funes utilizadas nessa seo so adaptaes das imagens contidas em [10]. A seguir so descritas cada funo de teste.

Belegundu
A funo de teste Belegundu foi originalmente proposta em [36] e representada por , , , , , 2 , , 2 , (52)

onde

(53) (54)

onde x, y representam as variveis de deciso e , e , representam os objetivos do equaes 0 5, 0 3, 0 1, 0 7. (55) (56) (57)

problema. A funo F representa um problema de minimizao e seu domnio restringido pelas

A Figura 38 apresenta o Pareto timo dessa funo de teste.


,
12 8

0 -10 -6 -2 2

Figura 38. Pareto timo da funo de teste Belegundu.

ESCOLA POLITCNICA DE PERNAMBUCO

64

Binh(1)
A funo de teste Binh(1) foi originalmente proposta em [38] e representada pela equao (52), onde , ,

problema. A funo F representa um problema de minimizao, possuindo as seguintes restries: 5 , 10 (60)

onde x e y representam as variveis de deciso e , e , representam os objetivos do

, 5 5 ,

(58) (59)

O Pareto timo dessa funo de teste mostrado na Figura 39. Os pontos em vermelho representam as solues que compem o Pareto timo, enquanto que os pontos em azul representam outras solues possveis de serem encontradas.
,
120

80

40

40

80

120

Figura 39. Pareto timo da funo de teste Binh(1).

Binh (2)
A funo de teste Binh (2) foi originalmente proposta em [38] e representada pela equao (52), onde , 4 4 , (61) (62)

, 5 5 ,

ESCOLA POLITCNICA DE PERNAMBUCO

problema. A funo F representa um problema de minimizao e seu domnio restringido pelas seguintes equaes: 0 5, 0 3, (63) (64) (65)

onde x, y representam as variveis de deciso e , e , representam os objetivos do

65

0 8 3 7.7. A Figura 40 apresenta o Pareto timo dessa funo de teste.


,

0 5 25,

100

50

200

400

Figura 40. Pareto timo da funo de teste Binh (2).

Binh(3)
A funo de teste Binh(3) foi originalmente proposta em [37] e representada por , , , , , , , 2 10 , , 2, , 10 , (66)

onde

(67) (68) (69)

onde x, y representam as variveis de deciso e , , , e , representam os objetivos do problema. A funo F representa um problema de minimizao, que mapeia duas variveis de deciso para trs objetivos. Seu domnio restringido pela seguinte equao:

ESCOLA POLITCNICA DE PERNAMBUCO

10 , 10 .

66

(70)

Binh (4)
A funo de teste Binh (4) foi originalmente proposta em [39] e representada pela equao (66), onde , 1.5 1 , (71) (72) (73)

onde x, y representam as variveis de deciso e , , , e , representam os objetivos do problema. A funo F representa um problema de minimizao, que mapeia duas variveis de deciso para trs objetivos. Seu domnio restringido pelas equaes 0 0.5 9, 10 , 10, (74) (75) (76)

, 2.625 1 ,

, 2.25 1 ,

0 1 0.5 6.25.

Fonseca(1)
A funo de teste Fonseca(1) foi originalmente proposta em [40] e representada pela equao (52), onde , 1 exp 1 1 , , 1 exp 1 1 ,

(77) (78)

onde x, y representam as variveis de deciso e , e , representam os objetivos do restrio. O Pareto timo dessa funo pode ser visualizado na Figura 41.

problema. A funo F representa um problema de maximizao, no apresentando nenhuma

Fonseca(2)
A funo de teste Fonseca(2) foi originalmente proposta em [41] e representada por , , (79)

onde

ESCOLA POLITCNICA DE PERNAMBUCO

onde representa um vetor de entrada com n variveis, representa a i-sima varivel de entrada da funo e 1e representam os objetivos do problema..
,

1 exp

1 exp

67

(80) (81)

0.5

0.5

Figura 41. Pareto Front da funo de teste Fonseca(1).

1 ,

A funo F representa um problema de maximizao, que mapeia n variveis de deciso para dois objetivos. Seu domnio restringido pela equao 4 4.

(82)

O Pareto timo dessa funo de teste, no caso de termos apenas duas variveis de deciso, x e y, mostrado na Figura 42.

Jimenez
A funo de teste Jimenez foi originalmente proposta em [42] e representada pela equao (52), onde , 5 3, (83) (84)

objetivos do problema.

onde x, y representam as variveis de deciso e , e , representam os

, 2 8,

ESCOLA POLITCNICA DE PERNAMBUCO

68 ,
1

0.5

0.5

1 ,

Figura 42. Pareto timo da funo de teste Fonseca(2). A funo F representa um problema de maximizao e seu domnio restringido pelas equaes , 0, (85) (86) (87) (88) (89)

0 3 2 150, 0 200 5 3, 0 75 2 8.
,

0 4 100,

A Figura 43 apresenta o Pareto timo dessa funo de teste.

200

140

80

200

225

250

Figura 43. Pareto timo da funo de teste Jimenez.

ESCOLA POLITCNICA DE PERNAMBUCO

69

Kita
A funo de teste Kita foi originalmente proposta em [43] e representada pela equao (52), onde , , 1 1, 2 , 0, (90) (91)

onde x, y representam as variveis de deciso e , e , representam os objetivos do equaes (92) (93) (94) (95) (96)

problema. A funo F representa um problema de maximizao e seu domnio restringido pelas 1 13 0 , 6 2 1 13 0 , 6 2 1 15 0 , 2 2 A Figura 44 apresenta o Pareto timo dessa funo de teste.
,
8

0 5 30.

1 -6

Figura 44. Pareto timo da funo de teste Kita.

Kursawe
A funo de teste Kursawe foi originalmente proposta em [17] e representada pela equao (79), onde

ESCOLA POLITCNICA DE PERNAMBUCO

70

onde representa um vetor de entrada com n variveis, representa a i-sima varivel de um problema de minimizao, no apresentando nenhuma restrio.

entrada da funo e e representam os objetivos do problema. A funo F representa A Figura 45 mostra o Pareto timo dessa funo de teste, no caso de termos apenas duas

10 .

| |. 5 ,

(97) (98)

variveis de deciso: x e y.
,

10

-10

-8

-6

-4

-2

Figura 45. Pareto Front timo da funo de teste Kursawe.

Laumanns
A funo de teste Laumanns foi originalmente proposta em [44] e representada pela equao (52), onde , ,

onde x, y representam as variveis de deciso e , e , representam os objetivos do equao 50 , 50.

, 2 ,

(99) (100)

problema. A funo F representa um problema de minimizao e seu domnio restringido pela

(101)

ESCOLA POLITCNICA DE PERNAMBUCO

71

Lis
A funo de teste Lis foi originalmente proposta em [45] e representada pela equao (52), onde , 0.5 0.5 ,

onde x, y representam as variveis de deciso e , e , representam os objetivos do seguinte equao: 5 , 10

, ,

(102) (103)

problema. A funo F representa um problema de minimizao e seu domnio restringido pela

(22)

A Figura 46 mostra o Pareto timo dessa funo de teste.


,
1.5

0.5

0.5

1.5 ,

Figura 46. Pareto timo da funo de teste Lis.

Murata
A funo de teste Murata foi originalmente proposta em [46] e representada pela equao (52), onde , 1 5, , 2, (104) (105)

problema. A funo F representa um problema de minimizao e seu domnio restringido pela equao

onde x, y representam as variveis de deciso e , e , representam os objetivos do

ESCOLA POLITCNICA DE PERNAMBUCO

A Figura 47 mostra o Pareto timo dessa funo de teste.


,

1 4, 1 2.

72

(106)

Figura 47. Pareto timo da funo de teste Murata.

Obayashi
A funo de teste Obayashi foi originalmente proposta em [47] e representada pela equao (52), onde , , (107) (108)

onde x, y representam as variveis de deciso e , e , representam os objetivos do equaes 0 , 1, 1. (109) (110)

, ,

problema. A funo F representa um problema de maximizao e seu domnio restringido pelas

A Figura 48 apresenta o Pareto timo dessa funo de teste.

Osyczka (1)
A funo de teste Osyczka (1) foi originalmente proposta em [48] e representada pela equao (52), onde , , (111) (112)

, ,

ESCOLA POLITCNICA DE PERNAMBUCO

problema. A funo F representa um problema de minimizao e seu domnio restringido pelas equaes 2 7, 5 10, 0 12 , (113) (114) (115)

onde x, y representam as variveis de deciso e , e , representam os objetivos do

73

0 10 16 80.
1

0.5

0.5

Figura 48. Pareto timo da funo de teste Obayashi.

1 ,

Osyczka (2)
A funo de teste Osyczka (2), assim como a Osyczka (1), foi originalmente proposta em [48] e representada pela equao (79), onde 25 2 2 1 4 _1 ,
,

(116) (117)

onde representa um vetor de entrada com n variveis, , , , , e representam representa um problema de minimizao, apresentando as restries 0 , , 10, 0 2, 0 6 , 0 2 , 1 , 5, 0 6, variveis de entrada da funo e e representam os objetivos do problema. A funo F (118) (119) (120) (121) (122) (123)

ESCOLA POLITCNICA DE PERNAMBUCO

0 4 3 , 0 3 4. duas variveis de deciso, x e y.


,

0 2 3 ,

74

(124) (125) (126)

A Figura 49 apresenta o Pareto timo dessa funo de teste, no caso de termos apenas

160

80

0 -300

-150

0 ,

Figura 49. Pareto timo da funo de teste Osyczka (2).

Poloni
A funo de teste Poloni foi originalmente proposta em [16] e representada pela equao (52), onde , 1 , 0.5 sin 1 2 cos 1 sin 2 1.5 cos 2, , 3 1 , (127) (128) (129) (130) (131) (132)

sendo que

onde x, y representam as variveis de deciso e , e , representam os objetivos do equao , . (133)

0.5 sin 2 cos sin 1.5 cos ,

1.5 sin cos 2 sin 0.5 cos ,

1.5 sin 1 cos 1 2 sin 2 0.5 cos 2,

problema. A funo F representa um problema de maximizao e seu domnio restringido pela

A Figura 50 mostra o Pareto timo dessa funo de teste.

ESCOLA POLITCNICA DE PERNAMBUCO

75 ,
0

-20

-40

-60 -70

-50

-30

-10

Figura 50. Pareto timo da funo de teste Poloni.

Quagliarella
A funo de teste Quagliarella foi originalmente proposta em [49] e representada pela equao (79), onde ,

(134)

sendo que

(135)

onde representa um vetor de entrada com n variveis, representa a i-sima varivel de um problema de minimizao, apresentando a restrio 5.12 5.12, 16.

entrada da funo e e representam os objetivos do problema. A funo F representa (138)

1.5 10 cos2 1.5 10,

10 cos2 10,

(136) (137)

A Figura 51 mostra o Pareto timo dessa funo de teste, no caso de termos apenas duas variveis de deciso: x e y.

ESCOLA POLITCNICA DE PERNAMBUCO

76

,
100

80

40

20

40

60

80

Figura 51. Pareto timo da funo de teste Quagliarella.

Rendon(1)
A funo de teste Rendon(1) foi originalmente proposta em [50] e representada pela equao (52), onde , 1 , 1

onde x, y representam as variveis de deciso e , e , representam os objetivos do equao 3 , 3. (141)

, 3 1,

(139) (140)

problema. A funo F representa um problema de minimizao e seu domnio restringido pela

A Figura 52 mostra o Pareto timo dessa funo de teste.

Rendon(2)
A funo de teste Rendon(2) foi originalmente proposta em [50] e representada pela equao (52), onde , 1, (142) (143)

problema.

onde x, y representam as variveis de deciso e , e , representam os objetivos do

, 2 1,

,
1

ESCOLA POLITCNICA DE PERNAMBUCO

77

0.5

0.5

Figura 52. Pareto timo da funo de teste Rendon (1).

1 ,

A funo F representa um problema de minimizao e seu domnio restringido pela equao 3 , 3. (144)

A Figura 53 mostra o Pareto timo dessa funo de teste.


,
10

-10

-6

-2

Figura 53. Pareto timo da funo de teste Rendon(2).

Schaffer(1)
A funo de teste Schaffer(1) foi originalmente proposta em [51] e representada por onde, , , (145)

ESCOLA POLITCNICA DE PERNAMBUCO

onde x representa a varivel de deciso e e representam os objetivos do problema. A funo F representa um problema de minimizao e seu domnio no possui nenhuma restrio. A Figura 54 apresenta o Pareto timo dessa funo de teste.

8

2 ,

78

(146) (147)

Figura 54. Pareto timo da funo de teste Schaffer(1).

Schaffer (2)
A funo de teste Schaffer (2) apresentado em [10] e composta pela equao (145), onde , 1 2 , 1 3 , 4 , 3 4 4 , 4 5 (148) (149)

onde x representa a varivel de deciso e e representam os objetivos do problema. A funo F representa um problema de minimizao, onde realizado o mapeamento de uma varivel de deciso para dois objetivos. O domnio da funo restringido por A Figura 55 apresenta o Pareto timo dessa funo de teste. 5 10. (150)

ESCOLA POLITCNICA DE PERNAMBUCO


15

79

-1.5

1.5

Figura 55. Pareto timo da funo de teste Schaffer (2).

Srinivas
A funo de teste Srinivas foi originalmente proposta em [52] e representada pela equao (52), onde: , 2 1 2, , 9 1 , 20 , 20, 0 3 10. (151) (152)

onde x, y representam as variveis de deciso e , e , representam os objetivos do problema. A funo F representa um problema de minimizao e seu domnio restringido por 0 225, A Figura 56 apresenta o Pareto timo dessa funo de teste. (153) (154) (155)

Tamaki
A funo de teste Tamaki foi originalmente proposta em [53] e representada por onde, , , , , , , , , , , , , , , , , , , (156) (157) (158) (159)

ESCOLA POLITCNICA DE PERNAMBUCO

representam os objetivos do problema.


,
0

onde x, y e z representam as variveis de deciso e , , , , , , ,

80

-150

-300

150

300

Figura 56. Pareto timo da funo de teste Srinivas.

A funo F representa um problema de minimizao que mapeia trs variveis de deciso para trs objetivos. O domnio dessa funo restringido por 1. 0 , , , (160) (161)

Tanaka
A funo de teste Tanaka foi originalmente proposta em [54] e representada pela equao (52), onde , , (162) (163)

onde x, y representam as variveis de deciso e , e , representam os objetivos do problema. A funo F representa um problema de minimizao e seu domnio restringido por 0 1 0.1 cos 16 arctan , 0 , , (164) (165) (166)

, .

1 1 1 . 2 2 2 A Figura 57 apresenta o Pareto timo dessa funo de teste.

ESCOLA POLITCNICA DE PERNAMBUCO

81 ,
1.2

0.6

0.6

1.2

Figura 57. Pareto timo da funo de teste Tanaka.

Viennet (1)
A funo de teste Viennet (1) foi originalmente proposta em [55] e representada pela equao (66), onde , 1 , (167) (168) (169)

onde x, y representam as variveis de deciso e , , , e , representam os objetivos do problema. A funo F representa um problema de minimizao, que mapeia duas variveis de deciso para trs objetivos. Seu domnio restringido por 2 , 2. (170)

, 1 2,

, 1 1,

Viennet (2)
A funo de teste Viennet (2), assim como a Viennet (1), foi originalmente proposta em [55] e representada pela equao (66), onde , 2 1 3, 2 13

3 2 17, 36 8 2 1 2 13, 175 17

(171) (172) (173)

ESCOLA POLITCNICA DE PERNAMBUCO

objetivos do problema. A funo F representa um problema de minimizao, que mapeia duas variveis de deciso para trs objetivos. Seu domnio restringido por 4 , 4. (174)

onde x, y representam as variveis de deciso e , , , e , representam os

82

Viennet (3)
A funo de teste Viennet (3), assim como a Viennet (1) e Viennet (2), foi originalmente proposta em [55] e representada pela equao (66), onde , , 0.5 sin , (175) (176) (177)

onde x, y representam as variveis de deciso e , , , e , representam os objetivos do problema. A funo F representa um problema de minimizao, que mapeia duas variveis de deciso para trs objetivos. Seu domnio restringido pela por 3 , 3 (178)

3 2 4 1 15, 8 27 1 , 1.1 . 1

Viennet (4)

A funo de teste Viennet (4), foi originalmente proposta em [55] e representada pela equao (66), onde , 2 1 3, 2 13

onde x, y representam as variveis de deciso e , , , e , representam os objetivos do problema. A funo F representa um problema de minimizao, que mapeia duas variveis de deciso para trs objetivos. Seu domnio restringido por 4 , 4, 4 4, (182) (183)

3 2 4 1 15, 8 27

3 2 13, 175 17

(179) (180) (181)

ESCOLA POLITCNICA DE PERNAMBUCO

2.

1,

83

(184) (185)

Вам также может понравиться