• Nenhum resultado encontrado

6 Experimentos Computacionais

6.4 Análises Comparativas entre os Algoritmos de For migas

Nesta seção, relatamos os resultados dos algoritmos de formigas e comparamos seus resultados com os produzidos pelo solver de otimização e pelas cinco versões das heurísticas naive. Também comparamos os algoritmo de formigas entre si.

A Tabela 7 apresenta a comparação entre os resultados dos algoritmos de formigas e o solver para instâncias com 10 vértices. Os resultados mostram a distância, υ, entre o melhor resultado encontrado por um dos algoritmos de formigas e a solução obtida pelo solver. A equação (6.3) mostra a fórmula para calcular υ, onde χalgo e χ∗ denotam a

melhor solução encontrada pelo algoritmo de formigas e a solução produzida pelo solver, respectivamente. Valores positivos mostram que a solução obtida pelo solver foi melhor do que a obtida pelo algoritmo de formigas. Valores negativos denotam o oposto.

υ = χalgo

χ∗ − 1 (6.3)

Assimétrico Simétrico

Instância AS ACS MS-ACS AS ACS MS-ACS A-10-3 0,11 0,11 0,11 0,11 0,11 0,00 A-10-4 0,29 0,12 0,12 0,00 0,36 0,00 A-10-5 -0,15 -0,15 -0,24 0,16 0,12 0,00 B-10-3 0,07 0,25 0,00 0,00 0,00 0,00 B-10-4 -0,22 0,00 -0,22 0,00 0,00 0,00 B-10-5 0,01 0,30 0,01 0,09 0,08 -0,02 C-10-3 0,01 0,32 0,01 0,09 0,19 0,09 C-10-4 -0,12 -0,15 -0,15 0,05 0,04 -0,01 C-10-5 0,04 0,21 -0,01 -0,17 -0,22 -0,23

Tabela 7: Distância entre os resultados obtidos pelos algoritmos de formigas e as melhores soluções encontradas no experimento exato.

A Tabela 7 demostra que os resultados dos algoritmos de formigas estão próximos dos obtidos pelo solver. O algoritmo MS-ACS foi o melhor para esse conjunto de instâncias. Este foi capaz de encontrar os mesmos resultados encontrados pelo solver para 6 instâncias e melhorar a solução encontrada pelo solver para outras 7 instâncias.

A Tabela 8 apresenta um resumo da comparação entre as heurísticas naive e os algo- ritmos de formigas. Os dados apresentados na Tabela 8 incluem 72 instâncias simétricas e 72 assimétricas. Comparamos os melhores resultados obtidos por cada método. Os re-

sultados estão no formato X × Y , onde X e Y representam o número de instâncias nas quais a heurística naive encontrou a melhor solução e o número de instâncias nas quais o algoritmo de formigas encontrou a melhor solução, respectivamente. As Tabelas 36 - 39 (A) apresentam resultados detalhados das heurísticas naive. As Tabelas 42 - 41 (B) mostram os resultados dos algoritmos de formigas.

Assimétrico Simétrico

AS ACS MS-ACS AS ACS MS-ACS HN 1 7 x 65 11 x 61 0 x 72 3 x 69 7 x 65 0 x 72 HN 2 1 x 71 6 x 66 0 x 72 0 x 72 2 x 70 0 x 72 HN 3 0 x 72 1 x 71 0 x 72 1 x 71 1 x 71 1 x 71 HN 4 0 x 72 0 x 72 0 x 72 0 x 72 1 x 71 0 x 72 HN 5 1 x 71 2 x 70 0 x 72 1 x 71 1 x 71 0 x 72

Tabela 8: Comparativo entre a heurística naive e os algoritmos de formigas.

As heurísticas HN criam soluções tentando encontrar o caminho mais curto para atin- gir a cota mínima. Os algoritmos de formigas se comportaram de maneira diferente destas heurísticas. Durante o processo de resolução do problema, as formigas frequentemente selecionavam os arcos que viabilizavam que o maior número de solicitações de viagem fossem atendidas. Isto ocorreu devido as formigas atualizarem as trilhas de feromônios com base no custo rateado de cada arco pelos ocupantes do veículo. De acordo com a equação (3.28), o custo de cada arco em uma rota é reduzido, pois é rateado pelo número de passageiros no veículo. A Tabela 8 mostra que os algoritmos de formigas se saíram melhores que as versões da heurística naive.

A Tabela 9 apresenta a comparação entre os algoritmos de formigas. Nesta Tabela, observa-se que o MS-ACS foi o melhor algoritmo deste experimento. A adequação do MS- ACS ás diferentes facetas do problema resultou na expansão do processo de tomada de decisão, que inclui informações heurísticas diferentes. Neste sentido, pode-se dizer que o projeto das múltiplas estrategias heurísticas mostrou-se útil para diversificar a busca por melhores soluções.

Assimétrico Simétrico

AS ACS MS-ACS AS ACS MS-ACS AS – 39 x 31 2 x 66 – 28 x 41 4 x 64 ACS 31 x 39 – 0 x 68 41 x 28 – 1 x 69 MS-ACS 66 x 2 68 x 0 – 64 x 4 69 x 1 –

Também podemos deduzir da Tabela 9 que o AS funciona melhor que o ACS para as instâncias assimétricas. Nos cenários simétricos, o ACS é superior ao AS. Essas conclusões também são suportadas pelos dados da Tabela 10 que classificam os algoritmos de formigas com base no teste de Friedman (FRIEDMAN, 1937) e post-hoc de Nemenyi (NEMENYI, 1963). Em relação ao nível de significância de 0,05, os p-values apresentados na Tabela 10 mostram que o desempenho dos algoritmos de formigas não foram semelhantes, ou seja, a hipótese nula (NEMENYI, 1963) foi rejeitada em todos os casos.

Assimétrico Simétrico

p-value AS ACS MS-ACS p-value AS ACS MS-ACS g10 0,019034 b b a 0,012778 b b a g20 0,000611 b c a 0,003096 a b a g30 0,000816 b c a 0,004320 b b a g40 0,000585 b c a 0,000912 b b a g50 0,004828 b b a 0,001139 b b a g100 0,000912 b b a 0,000585 c b a g200 0,000300 b c a 0,000123 c b a g500 0,000123 c b a 0,000300 c b a

Tabela 10: Valoração dos p-values do teste Friedman e rankeamento segundo post-hoc de Nemenyi para os algoritmos de formigas.

Para analisar a variabilidade de cada algoritmo heurístico, adotamos duas métricas em relação aos resultados produzidos pelos experimentos. A primeira métrica, ν, denota a média das porcentagens em relação ao número de vezes que um algoritmo de formigas encontrou o melhor resultado em 20 execuções independentes. As Tabelas 44 e 45 (B) mostram os dados referentes a esses resultados. A segunda métrica, Φ, é a distância re- lativa entre o custo das melhores soluções χb e a solução média χa de cada algoritmo de formigas. Para calcular Φ, usamos a equação 6.4.

Φ = χ

a

χb − 1 (6.4)

A Tabela 11 mostra o valor de ν e Φ. Nesta Tabela, concluímos que o MS-ACS é o melhor referente as métricas ν e Φ. Isto quer dizer que, dentre os algoritmos de formigas, este algoritmo foi o que mais vezes encontrou a melhor solução conhecida do banco de instâncias e que aquele que apresentou os resultados de melhor qualidade.

Assimétrico Simétrico

Métrica AS ACS M S-ACS AS ACS M S-ACS ν 4,1% 2.54% 8.95% 1,81% 0,69% 9,22% Φ 0,178644 0,244575 0,0300307 0,227144 0,2336825 0,0589827

Tabela 11: Variabilidade dos algoritmos de formigas.

As Tabelas 12 e 13 apresentam o tempo médio em segundos gasto por cada heurística. As instâncias foram agrupadas por número de vértices. Nessas Tabelas, o símbolo ∗ indica que o solver concluiu sua execução devido ao consumo excessivo de memória primária. Os resultados demonstram que as heurísticas naive que utilizaram procedimentos exatos não se mostraram viáveis para resolver grandes instâncias. Também pode-se observar que o AS foi o algoritmo de formiga mais rápido e o HN4 foi a heurística ingênua mais rápida. Tabelas 36 - 39 (A) e Tabelas 42 - 41 (A) apresentam resultados detalhados sobre o tempo médio exigido por essas heurísticas.

n AS ACS MS-ACS HN1 HN2 HN3 HN4 HN5 10 0,05 0,06 0,12 5,62 0,37 5,07 0,01 0,01 20 0,10 0,13 0,27 45,95 1,49 42,42 0,02 0,02 30 0,18 0,24 0,49 141,59 3,75 138,94 0,03 0,038 40 0,28 0,38 0,73 306,63 8,49 293,99 0,09 0,07 50 0,40 0,56 5,41 299,49 24,47 294,02 0,12 0,13 100 8,13 13,51 29,17 ∗ 415,16 ∗ 0,18 0,23 200 22,94 51,92 112,58 ∗ ∗ ∗ 0,66 1,01 500 40,53 75,72 127,83 ∗ ∗ ∗ 4,42 22,07

Tabela 12: Tempo médio para resolver as instâncias simétricas do problema pelos algorit- mos de formigas. n AS ACS MS-ACS HN1 HN2 HN3 HN4 HN5 10 0,05 0,06 0,12 6,26 0,29 5,97 0,01 0,01 20 0,10 0,13 0,26 42,64 1,03 41,75 0,02 0,02 30 0,20 0,30 1,9 250,65 3,19 231,31 0,032 0,04 40 0,34 0,48 2,29 240,99 7,60 223,86 0,05 0,092 50 0,41 2,20 5,77 388,36 17,99 372,86 0,11 0,13 100 6,68 28,85 32,69 ∗ 388,04 ∗ 0,21 0,48 200 31,81 270,94 409,72 ∗ ∗ ∗ 1,03 6,11 500 41,72 3477,13 3545,20 ∗ ∗ ∗ 12,21 371,62

Tabela 13: Tempo médio para resolver as instâncias assimétricas do problema dos algo- ritmos de formigas e heurísticas naive.

6.5

Análises Comparativas entre os Algoritmos Evolu-