• Nenhum resultado encontrado

Comparação entre abordagens baseadas em GGGP

3.7 Seleção/Geração de algoritmos para PSO

5.3.1 Análise da geração de algoritmos

5.3.1.2 Comparação entre abordagens baseadas em GGGP

Este experimento visa analisar os algoritmos produzidos pela hiper-heurística adotada no módulo de geração de algoritmos. Deste modo, os resultados dos algoritmos obtidos pelo CFG-GP foram comparados com os de outra abordagem baseada em GGGP, o GE. Comple- mentarmente ao CFG-GP e ao GE, também foi adotado o algoritmo de busca aleatória (do inglês, Random Search) (RS) nos experimentos. Este procedimento foi executado repetidamente produzindo soluções usando um método de inicialização aleatória da GE. Em cada iteração, o melhor indivíduo encontrado foi mantido. A intenção é usar o RS como um baseline contra o qual o desempenho do CFG-GP e GE é avaliado. Vale salientar que todas as abordagens baseadas em GGGP utilizaram a mesma gramática adotada pelo CFG-GP (a gramática desenvolvida nesta

Tabela 6 – Média dos valores de fitness dos algoritmos CFG-GPprope CFG-GPadv em cada problema de otimização.

Categoria Problemas Algoritmos

CFG-GPprop CFG-GPadv

Bowl

f1 1.22e-188(± 1.33e-125) 2.36e-168(± 3.1e-120)

f2 1.42e-123(± 1.55e-80) 1.64e-118(± 2.3e-69)

f3 1.67e-169(± 1.49e-126) 4.84e-134(± 2.3e-32)H

f4 1.33e-168(± 2.21e-129) 1.42e-163(± 2.8e-121)

f5 2.63e-172(± 1.87e-135) 2.19e-163(± 3.4e-123)

f6 1.43e-72(± 1.32e-61) 1.31e-56(± 3.4e-41)

f7 2.41e-169(± 1.36e-137) 1.45e-143(± 3.4e-54)H

f8 2.32e-84(± 2.38e-56) 3.52e-59(± 3.8e-34)H

Plate

f9 1.20e-44(± 1.32e-21) 3.15(± 1.5)H

f10 1.43e-68(± 2.98e-32) 0.34(± 2.6e-04)H

f11 2.51e-31(± 2.23e-19) 9.16(± 2.7)H

f12 1.31e-49(± 1.65e-23) 3.23(± 1.3)H

f13 1.14e-87(± 2.24e-54) 5.34e-04(± 0.028)H

f14 3.12e-26(± 2.76e-14) 10.72(± 1.2)H

f15 1.18e-57(± 1.76e-37) 1.32e-04(± 3.4e-04)H

f16 1.73e-53(± 3.47e-43) 4.0e-05(± 4.2e-04)H

Valley

f17 2.97e-25(± 1.97e-22) 5.41(± 1.1)H

f18 6.54e-24(± 1.32e-18) 8.12(± 1.9)H

f19 8.25e-11(± 1.45e-08) 11.55(± 2.3)H

f20 1.12e-20(± 2.97e-15) 0.51(± 1.5e-05)H

f21 1.24e-52(± 2.76e-42) 0.023(± 1.2e-04)H

f22 1.07e-39(± 3.13e-28) 6.18(± 1.4)H f23 1.16e-19(± 1.39e-12) 6.17(± 0.3)H f24 1.56e-19(± 2.38e-11) 7.36(± 1.2)H Many f25 1.41e-44(± 1.34e-32) 11.15(± 1.7)H f26 0.0(± 0.0) 11.83(± 2.4)H f27 2.69e-24(± 3.65e-18) 14.97(± 3.1)H f28 2.18e-59(± 2.43e-44) 10.17(± 2.1)H f29 1.13e-26(± 1.76e-19) 16.18(± 2.4)H f30 1.23e-38(± 1.37e-24) 15.42(± 2.9)H f31 0.0(± 0.0) 12.62(± 3.5)H f32 1.25e-23(± 1.45e-18) 17.27(± 2.3)H

Capítulo 5. Experimentos e Resultados 77

tese). As implementações das abordagens deste experimento estão disponíveis no Github1. Os parâmetros adotados pelas abordagens baseadas em GGGP, CFG-GP e GE, são os mesmos propostos por (WHIGHAM et al., 2015). Todos os hiper-parâmetros e seus respectivos valores são apresentados na tabela 5. Além disso, os algoritmos gerados pelo CFG-GP, GE e RS usaram as mesmas configurações de parâmetros: tamanho populacional com 30 indivíduos, critério de parada de 5.000 iterações por simulação e cada algoritmo executou 20 vezes para gerar um valor médio de fitness (desempenho do algoritmo). Vale salientar que o tamanho populacional e número de iterações foram escolhidos experimentalmente, sendo estes valores suficientes para aquisição de bons resultados.

O algoritmo de RS foi dividido em 50 grupos de 500 indivíduos. Este processo é con- siderado igual à amostragem de 50 populações, cada uma com 500 indivíduos, mantendo-se o melhor indivíduo em cada iteração. Estes valores foram escolhidos para coincidir com os valores adotados nos experimentos: tamanho populacional igual a 500 e 50 gerações.

Na tabela 7 é apresentada a média dos valores de fitness e o desvio padrão de cada algoritmo produzido pelas abordagens de GGGP para cada problema de otimização. Como pode ser visto nesta tabela, os valores de fitness alcançados pelos algoritmos de PSO gerados pelo CFG-GP superaram o GE e o RS na maioria dos problemas de otimização. Para avaliar os resultados mais adequadamente, foi aplicado o teste de Wilcoxon para verificar se os resultados do CFG-GP são estatisticamente melhores que os das demais abordagens. O símbolo (H) indica que os resultados alcançados por uma determinada abordagem são piores estatisticamente que os resultados do CFG-GP. Os algoritmos gerados aleatoriamente não foram capazes de alcançar resultados satisfatórios e, consequentemente, foram superados estatisticamente pelos algoritmos gerados pelo CFG-GP em 100% dos problemas. Diferentemente da abordagem aleatória, os algoritmos produzidos pelo GE atingiram resultados promissores. No entanto, o CFG-GP venceu o GE em 28 dos 32 problemas de otimização, e nos outros 4 problemas, ambas as abordagens alcançaram resultados estatisticamente iguais.

Objetivando-se realizar uma investigação mais detalhada sobre os algoritmos gerados por cada abordagem, decidiu-se analisar como estes algoritmos comportam-se durante o processo de busca por soluções. A intenção desta análise é identificar possíveis obstáculos (e.g. estagnação) que possam surgir, em cada categoria de problemas, durante a simulação. Deste modo, cada algoritmo foi executado utilizando 30 partículas na população e 5.000 iterações como critério de parada para cada problema. Cada PSO foi executado 20 vezes para gerar a média de seus valores de fitness. Com isto, 32 distribuições de valores (valores de fitness por iteração) foram armazenadas, uma para cada problema. Como cada categoria possui 8 diferentes distribuições (uma para cada problema), decidiu-se gerar uma distribuição média por categoria.

A figura 28 apresenta as distribuições de valores de fitness médios das abordagens de 1 https://github.com/grantdick/libgges

Tabela 7 – Média dos valores de fitness dos algoritmos CFG-GP, GE e RS em cada problema de otimização.

Categoria Problemas Algoritmos

CFG-GP GE RS

Bowl

f1 1.22e-188(± 1.33e-125) 1.46e-148(± 2.41e-100)H 2.12(± 3.1)H

f2 1.42e-123(± 1.55e-80) 2.52e-73(± 2.12e-25)H 3.70(± 2.3)H

f3 1.67e-169(± 1.49e-126) 3.04e-127(± 1.85e-98)H 5.87(± 2.3)H

f4 1.33e-168(± 2.21e-129) 2.13e-138(± 2.11e-102)H 7.32(± 2.8)H

f5 2.63e-172(± 1.87e-135) 2.36e-144(± 2.31e-105)H 12.10(± 3.4)H

f6 1.43e-72(± 1.32e-61) 1.34e-51(± 1.34e-26) 8.24(± 3.4)H

f7 2.41e-169(± 1.36e-137) 2.14e-135(± 2.39e-101)H 7.40(± 3.4)H

f8 2.32e-84(± 2.38e-56) 2.23e-29(± 2.26e-15)H 8.49(± 3.8)H

Plate

f9 1.20e-44(± 1.32e-21) 1.02e-4(± 0.034)H 13.02(± 4.5)H

f10 1.43e-68(± 2.98e-32) 1.34e-28(± 2.31e-12)H 10.30(± 3.67)H

f11 2.51e-31(± 2.23e-19) 2.15(± 1.12)H 19.11(± 6.7)H

f12 1.31e-49(± 1.65e-23) 2.13e-15(± 1.31e-06)H 23.14(± 9.8)H

f13 1.14e-87(± 2.24e-54) 1.2e-57(± 2.37e-23)H 15.29(± 5.3)H

f14 3.12e-26(± 2.76e-14) 3.21(± 0.036)H 20.24(± 7.2)H

f15 1.18e-57(± 1.76e-37) 1.22e-21(± 3.76e-10)H 10.28(± 3.4)H

f16 1.73e-53(± 3.47e-43) 1.37e-19(± 3.25e-08)H 14.24(± 4.2)H

Valley

f17 2.97e-25(± 1.97e-22) 2.79(± 0.5)H 15.12(± 3.1)H

f18 6.54e-24(± 1.32e-18) 6.54(± 1.2)H 12.07(± 3.9)H

f19 8.25e-11(± 1.45e-08) 8.25(± 0.9)H 20.74(± 4.3)H

f20 1.12e-20(± 2.97e-15) 0.44(± 0.0062) 12.86(± 1.5)H

f21 1.24e-52(± 2.76e-42) 2.42e-19(± 2.3e-05)H 9.70(± 1.2)H

f22 1.07e-39(± 3.13e-28) 0.49(± 0.0043)H 16.11(± 6.4)H

f23 1.16e-19(± 1.39e-12) 0.61(± 0.02)H 21.08(± 5.3)H

f24 1.56e-19(± 2.38e-11) 0.615(± 0.05)H 27.07(± 5.8)H

Many

f25 1.41e-44(± 1.34e-32) 2.14e-9(± 1.35e-03)H 30.10(± 6.7)H

f26 0.0(± 0.0) 0.0(± 0.0) 21.80(± 1.2)H

f27 2.69e-24(± 3.65e-18) 2.96(± 1.2)H 24.91(± 5.7)H

f28 2.18e-59(± 2.43e-44) 1.75e-27(± 1.56e-13)H 25.09(± 7.1)H

f29 1.13e-26(± 1.76e-19) 0.31(± 0.05)H 26.11(± 6.4)H

f30 1.23e-38(± 1.37e-24) 1.79e-12(± 2.65e-03)H 25.41(± 5.9)H

f31 0.0(± 0.0) 0.0(± 0.0) 22.56(± 6.5)H

Capítulo 5. Experimentos e Resultados 79

Figura 28 – Média dos valores de fitness (a cada 500 iterações) dos algoritmos gerados pelos CFG-GP, GE e RS para todas as categorias de problemas.

Fonte: os autores

GGGP quando aplicadas nos problemas das categorias Bowl, Plate, Valley-shaped e Many Local Minimarespectivamente.

Considerando a categoria Bowl (ver Figura 28 (A)), nas iterações iniciais, os resultados de todas as abordagens são estatisticamente iguais. Porém, da geração 580 a 5.000 os resultados do CFG-GP são estatisticamente melhores que os das demais abordagens.

Com relação à categoria Plate (ver Figura 28 (B)), o desempenho do CFG-GP e GE são estatisticamente iguais durante as primeiras 1.000 iterações. Após isso, o CFG-GP foi capaz de gerar algoritmos capazes de evitar a estagnação, convergindo rapidamente em direção à solução ótima. Consequentemente, a abordagem proposta superou o GE e RS estatisticamente até a última iteração.

Na categoria Valley, assim como na categoria Plate, o CFG-GP realizou uma exploração maior nas primeiras iterações. Apenas a partir da iteração 1.980 que uma melhor região foi encontrada, fazendo com que houvesse a convergência em direção ao ótimo. O GE também apresentou um forte comportamento exploratório, no entanto demorou para encontrar uma região promissora. Apenas após 3.490 iterações, o GE alcançou melhores soluções. O CFG-GP superou estatisticamente os resultados obtidos pelo GE desde a iteração 1.980. Antes disso, seus resultados são considerados estatisticamente iguais. A estagnação apresentada pelos algoritmos gerados pelas abordagens pode ser explicada pela complexidade da superfície de fitness dos problemas destas categorias. Como mencionado na seção 5.2, ambas as categorias Plate e Valley

apresentam o ótimo global em um plano uniforme. Esta característica torna a tarefa de encontrar o ótimo mais difícil que em problemas da categoria Bowl.

Considerando a categorias Many Local Minima, o CFG-GP também superou o GE e o RS. Como os problemas desta categoria são mais complexos de solucionar, os algoritmos gerados pelos CFG-GP e GE levaram mais iterações para convergir. Porém, os algoritmos gerados pelo CFG-GP demonstraram ser capazes de explorar melhor o espaço de busca, evitando estagnação e convergindo rapidamente em direção ao ótimo como desejado. O resultado do CFG-GP é estatisticamente melhor que o do GE desde a iteração 2.005 até a última. Assim como aconteceu nas demais categorias, os algoritmos gerados pelo RS não foram capazes de evitar a estagnação sendo superados desde as primeiras iterações até o final.

Esta massiva superioridade do CFG-GP em relação às demais abordagens pode ser relacionada a forma como a abordagem proposta representa seus indivíduos. Como previamente mencionado na seção 2.3 do caítulo 2, os operadores de mutação e cruzamento desenvolvidos para abordagens que utilizam a representação por genoma linear (e.g. GE) podem causar o problema da localidade e geração de indivíduos inválidos. Estes problemas prejudicam o desempenho das abordagens lineares na tarefa de otimização de algoritmos. O mesmo problema não acontece com abordagens que adotam a representação baseada em árvore, como o CFG-GP.

Embora abordagens baseadas em árvore não tenham sido investigadas até então no contexto de otimização do PSO, os resultados apresentados aqui mostraram que este método, especificamente o CFG-GP, obteve resultados melhores que o GE, podendo ser útil também em outros contextos.