• Nenhum resultado encontrado

3.4 Trabalhos relacionados

3.4.1 Algoritmos MOPSO com m´ ultiplos enxames da literatura

El-Abd e Kamel [36] apresentam um survey que descreve diversos algoritmos MOPSO com m´ultiplos enxames da literatura. Os algoritmos desenvolvidos nesse estudo cobrem

uma gama de diferentes problemas, dentre eles problemas monoobjetivo, multiobjetivo e problemas de otimiza¸c˜ao com restri¸c˜ao. A partir da an´alise e descri¸c˜ao de diversos traba-lhos da literatura, o estudo apresentado por El-Abd e Kamel prop˜oe uma taxonomia para a classifica¸c˜ao dos algoritmos PSO com m´ultiplos enxames. Essa taxonomia ´e baseada nos m´etodos de decomposi¸c˜ao do problema adotados por cada algoritmo. De forma geral, os algoritmos s˜ao divididos entre os algoritmos que usam m´ultiplos enxames para trocar solu¸c˜oes entre si, chamado de m´etodo de decomposi¸c˜ao do problema e os algoritmos que utilizam m´ultiplos enxames para cobrir diferentes ´areas do espa¸co de busca, chamado de m´etodo de decomposi¸c˜ao do espa¸co. Os trabalhos discutidos a seguir s˜ao restritos `a otimiza¸c˜ao multiobjetivo, principal tema desta tese.

Dentre os trabalhos de PSO com m´ultiplos enxames, destacam-se os algoritmos que utilizam multi-swarms na otimiza¸c˜ao multiobjetivo. Em [73] ´e discutida a aplica¸c˜ao de um algoritmo PSO multi-swarm em problemas com muitos objetivos. ´E proposta a pa-raleliza¸c˜ao do algoritmo VEPSO [74] e a aplica¸c˜ao deste algoritmo em muitos objetivos.

O VEPSO ´e uma variante cooperativa do PSO baseado no algoritmo Vector Evaluated Genetic Algorithm (VEGA) [74]. O VEGA ´e um algoritmo evolucion´ario que seleciona subpopula¸c˜oes da gera¸c˜ao de acordo com cada objetivo separadamente. Ap´os a sele¸c˜ao, as subpopula¸c˜oes s˜ao misturadas e uma pr´oxima gera¸c˜ao ´e obtida atrav´es de etapas de recombina¸c˜ao e muta¸c˜ao. No VEPSO, cada objetivo ´e otimizado por umswarm e durante a busca osswarms trocam informa¸c˜oes sobre as melhores solu¸c˜oes encontradas at´e ent˜ao.

Nesse trabalho, o VEPSO ´e aplicado a diferentes problemas com muitos objetivos, vari-ando entre 2 e 10 objetivos. Por´em, o VEPSO ´e apenas comparado ao VEGA, para cada objetivo, e n˜ao ´e feita nenhuma an´alise sobre o desempenho dos VEPSO em rela¸c˜ao ao aumento do n´umero objetivos. N˜ao se sabe como o VEPSO se comporta quando o n´umero de objetivos cresce, s´o ´e conhecido o seu desempenho em rela¸c˜ao ao VEGA. ´E mostrado que o VEPSO consegue melhores resultados que o VEGA para todos os objetivos.

Em [56] ´e apresentado um algoritmo multi-swarm que ´e aplicado ao problema de aprendizado da resposta de agentes. Nesse estudo, a fun¸c˜ao de premia¸c˜ao ´e dividida em v´arias fun¸c˜oes e o problema ´e modelado como um problema multiobjetivo. Para a

solu¸c˜ao do problema ´e proposto um novo algoritmo PSO com m´ultiplos enxames, chamado de MS-PSO. Como no VEPSO, este algoritmo tamb´em define um sub-swarm para cada objetivo a ser otimizado, por´em possui uma forma diferente de troca de informa¸c˜oes entre osswarms. Nesta abordagem, cada swarm vizinho troca informa¸c˜ao atrav´es de um novo componente na equa¸c˜ao da velocidade das part´ıculas, que representa a distˆancia da part´ıcula para a melhor part´ıcula do swarm vizinho. O MS-PSO ´e comparado com o algoritmo PSO tradicional e o algoritmo MO-PSO [21]. O MO-PSO n˜ao ´e discutido em nosso trabalho, pois n˜ao ´e representativo e n˜ao apresenta bons resultados quando comparado aos algoritmos PSO do estado-da-arte. Os algoritmos foram utilizados em dois ambientes diferentes do agente e o MS-PSO conseguiu obter melhores resultados que o algoritmo b´asico do PSO e que o algoritmo MO-PSO.

Outro algoritmo que utiliza multi-swarm para problemas multiobjetivo ´e apresentado em [76]. Por´em, diferentemente dos trabalhos anteriores, todos os sub-swarms otimizam todos os objetivos. Nesse trabalho, o multi-swarm ´e utilizado com o intuito de cobrir diferentes partes do espa¸co de busca em uma s´o execu¸c˜ao, evitando o deslocamento des-necess´ario de part´ıculas. Nessa abordagem, cada swarm representa um pr´oprio nicho, com um mesmo n´umero de part´ıculas e com seus pr´oprios l´ıderes. Cada nicho ´e otimizado separadamente e ao final da atualiza¸c˜ao de todos osswarms, todos os l´ıderes, de todos os nichos, s˜ao agrupados. Em seguida, os l´ıderes semelhantes s˜ao divididos entre os swarms existentes. Os resultados do algoritmo proposto, chamado de AMOPSO, s˜ao compara-dos com alguns algoritmos multiobjetivo, como o NSGA-II [28] e o MO-PSO [21]. Os algoritmos s˜ao aplicados em fun¸c˜oes de teste com dois objetivos e s˜ao consideradas medi-das como Generational Distance e Spacing [84]. Conclui-se que o algoritmo AMOPSO ´e competitivo com os melhores algoritmos multiobjetivo da literatura.

Por fim, outro trabalho relevante ´e apresentado em [68]. Aqui, ´e apresentado um al-goritmo multi-swarm que divide a busca em diferentes regi˜oes de forma expl´ıcita. Nesse algoritmo, cadasub-swarm limita a regi˜ao de busca de sua popula¸c˜ao. Essa regi˜ao ´e defi-nida atrav´es de uma part´ıcula semente, a qual ser´a o centro da regi˜ao de busca. Em cada itera¸c˜ao do algoritmo, as sementes s˜ao escolhidas e ´e gerada a popula¸c˜ao dentro da regi˜ao

definida pela semente. O algoritmo executa um processo iterativo de escolha das sementes e defini¸c˜ao das novas regi˜oes de busca. Ao final de cada itera¸c˜ao as melhores solu¸c˜oes de cada sub-swarm s˜ao reunidas e as novas sementes s˜ao definidas. Esse processo ´e repetido por um n´umero de itera¸c˜oes definido pelo usu´ario. O trabalho prop˜oe diferentes m´etodos de escolha das sementes. Um dos m´etodos ´e baseado em agrupamento: inicialmente as solu¸c˜oes s˜ao agrupadas utilizado o vetor objetivo; o n´umero de grupos ´e definido como o n´umero desub-swarms do algoritmo; a semente ´e o centr´oide de cada grupo. Esse m´etodo

´e utilizado como base para o desenvolvimento de um algoritmo multi-swarm aplicado `a problemas com muitos objetivos proposto nesta tese, discutido no Cap´ıtulo 6.

3.4.2 Algoritmos MOPSO aplicados ` a Otimiza¸ c˜ ao com Muitos