• Sonuç bulunamadı

BÖLÜM 2: KURUMSAL KURAMDA ÖRGÜTSEL DİL

2.1. Kurumsallaşma Sürecinde Aktörün ve Dilin Rolü

2.1.5. Sosyal İnşa ve Dil

Nesta sec¸˜ao, s˜ao avaliados resultados da implementac¸˜ao dos algoritmos vistos na sec¸˜ao anterior utilizando-se o framework proposto. Para tal, toma-se como base o trabalho de Chidamber e Kemerer (1994) que prop˜oe um conjunto de m´etricas para o esforc¸o de implementac¸˜ao de sistemas orientados a objeto. Os autores prop˜oem alguns indicadores, entre eles:

• M´etodos ponderados por classe (WMC – Weighted Method per class), definido como a soma da complexidade de cada m´etodo implementado na classe. Nesta an´alise, sup˜oe-se a complexidade de todos os m´etodos unit´aria, sendo que esta m´etrica torna o n´umero de m´etodos por classe.

• Profundidade da ´arvore de heranc¸a (DIT – Depth of inheritance tree), definido como o maior n´umero de classes-pai existentes no sistema.

Para realizar esta an´alise, ´e necess´ario entender como o sistema foi implementado permitindo o reuso, mostrado na Figura 3.5.

Figura 3.5: Reuso de c´odigo na implementac¸˜ao dos algoritmos estudados

Os resultados obtidos s˜ao interessantes, pois demonstram que, ao se obter um conjunto de algoritmos implementados por meio do framework proposto, implementac¸˜oes de sistemas muito mais complexos se tornam poss´ıveis com um esforc¸o ´ınfimo de codificac¸˜ao. Na verdade, o maior esforc¸o detectado por meio das m´etricas analisadas foi para gerar o algoritmo Ant-Cycle, um dos mais simples conceitualmente entre todos os implementados. Com esta estrutura, foram obtidos os resultados mostrados na tabela 3.3 . Nesta tabela, realizou-se duas an´alises da m´etrica WMC: na primeira, o n´umero total de m´etodos (WMC Total) ´e um indicador da complexidade da implementac¸˜ao do algoritmo sem a utilizac¸˜ao do framework proposto; a segunda, refere-se `a quantidade de m´etodos efetivamente implementados para o algoritmo analisado.

Algoritmo WMC sem se considerar o framework proposto

WMC requerido ao se usar o framework proposto

DIT AntCycle 38 38 0 AntDensity 38 3 1 AntQuantity 38 3 1 ACS 39 5 1 MMAS 40 3 2 Mac-Ho 38 1 2 Mac-He 42 0 2

Tabela 3.3: An´alise comparativa dos algoritmos estudados

Ao observar a tabela 3.3, pode-se notar que o maior n´umero de m´etodos necess´arios para a implementac¸˜ao das variac¸˜oes dos algoritmos AS se deu na implementac¸˜ao do Ant-

Cycle, seguido pelo ACS, Ant-Density/Ant-Quantity, MMAS/MAC-Ho e, por fim, o MAC-He.

Para compreender este resultado, ´e importante que se entenda as etapas de desenvolvimento do sistema analisado. Cada algoritmo, com excec¸˜ao do Ant-Cycle, implementou apenas as variac¸˜oes necess´arias em relac¸˜ao a um algoritmo-base.

Estes algoritmos foram implementados e executados. Nas tabelas 3.4 e 3.5, s˜ao mostrados os resultados (m´edia e desvio padr˜ao, respectivamente) dos algoritmos aplicados a 8 instˆancias distintas do problema do caixeiro viajante assim´etrico (ATSP – Asymetric Traveling Salesman

Problem) dispon´ıvel na TSPLib1. Os melhores valores da m´edia e desvio padr˜ao foram destacados em negrito. O quadro 3.1 traz a dimens˜ao dos problemas estudados. Cada problema foi resolvido com cada algoritmo 10 vezes. A parametrizac¸˜ao foi a mesma para todos os algoritmos. O resultado ´e mostrado em termos de variac¸˜ao do valor ´otimo dispon´ıvel na biblioteca TSPLib. A variac¸˜ao do valor ´otimo ´e definida conforme a equac¸˜ao 3.1. Os tempos m´edios de execuc¸˜ao s˜ao mostrados na Tabela 3.6.

opt =

Vencontrado−Votimo´ Votimo´

(3.1) Onde:

• ∆opt indica a variac¸˜ao do ´otimo

• Vencontradoindica o valor encontrado (ou seja, a distˆancia total percorrida) para a resposta

do problema ap´os a aplicac¸˜ao do algoritmo

• Votimo´ indica o valor ´otimo dispon´ıvel (ou seja, a distˆancia total percorrida) para a resposta

do problema

Para a an´alise dos valores de ∆opt ´e importante notar que, embora o ACS e outras meta-heur´ısticas como algoritmos gen´eticos e busca tabu, dificilmente conseguirem alcanc¸ar resultados aceit´aveis quando comparados com heur´ısticas desenvolvidas especificamente para o problema do ATSP. Por´em, ´e conhecido que para problemas mais complexos, os resultados obtidos pelo ACS s˜ao competitivos.

Problema N ´umero de cidades

br17.atsp 17 ft53.atsp 53 ft70.atsp 70 ftv170.atsp 170 ftv33.atsp 33 ftv35.atsp 35 ftv38.atsp 38 ftv70.atsp 70

Quadro 3.1: Dimens˜ao dos problemas analisados

Inst ˆancia Ant Quantity Ant Density A CS

MMAS MAS-Ho MAS-He

br17.atsp 135.90% 132.05% 135.90% 39.23% 135.90% 43.59% ft53.atsp 39.43% 38.86% 33.88% 27.18% 32.11% 26.66% ft70.atsp 17.47% 16.69% 11.06% 12.89% 10.00% 12.92% ftv170.atsp 40.83% 39.76% 38.85% 26.95% 36.92% 28.41% ftv33.atsp 20.86% 18.72% 24.31% 9.35% 22.56% 10.89% ftv35.atsp 18.39% 18.16% 19.30% 9.14% 15.27% 9.34% ftv38.atsp 19.39% 19.27% 12.96% 10.34% 13.14% 8.87% ftv70.atsp 29.01% 29.06% 27.90% 17.66% 20.79% 17.68%

Tabela 3.4: M´edia dos resultados encontrados pelos algoritmos ap´os execuc¸˜ao de testes computacionais

Inst ˆancia Ant Quantity Ant Density A CS

MMAS MAS-Ho MAS-He

br17.atsp 11.38 4.74 0 5.38 0 0 ft53.atsp 263.53 221.84 142.07 119.36 145.99 95.76 ft70.atsp 595.72 496.96 265.63 310.23 298.93 405.74 ftv170.atsp 85.13 99.49 95.51 62.97 70.24 60.65 ftv33.atsp 70.76 58.77 62.46 19.31 45.47 8.62 ftv35.atsp 84.23 40.39 46.37 18.16 45.52 20.12 ftv38.atsp 100.8 48.21 25.06 28.41 18.8 18.59 ftv70.atsp 99.08 70.44 91.72 17.41 47.23 37.69

Tabela 3.5: Desvio padr˜ao dos resultados encontrados pelos algoritmos ap´os execuc¸˜ao de testes computacionais Inst ˆancia Ant Quantity Ant Density A CS

MMAS MAS-Ho MAS-He

br17.atsp 398 140 93 100 483 492 ftv33.atsp 586 573 362 368 1810 1925 ftv35.atsp 658 685 411 409 2017 2324 ftv38.atsp 780 838 508 495 2440 2720 ft53.atsp 1576 1691 918 939 4693 4777 ft70.atsp 2558 2810 1709 1579 8520 8535 ftv70.atsp 2563 2850 1781 1617 7887 8587 ftv170.atsp 15496 16139 9768 9704 47746 50950

Tabela 3.6: Tempos computacionais t´ıpicos para a obtenc¸˜ao do resultado (em milissegundos)

Aos observar os dados, percebe-se que os algoritmos conseguiram realizar otimizac¸˜ao do problema em um tempo computacional relativamente pequeno (sempre menor que 1 minuto, mesmo para as maiores instˆancias). Com a parametrizac¸˜ao estabelecida, o algoritmo MMAS obteve melhores resultados em grande maioria dos problemas, embora semelhante ao MAS-He. Adicionalmente, os tempos computacionais necess´arios para o processamento dos algoritmos foi significativamente menor na execuc¸˜ao do MMAS, principalmente quando comparados com os algoritmos que se utilizam de v´arias colˆonias (MAS-Ho e MAS-He), assim como a quantidade de parˆametros envolvidos( o MAS-He possui um conjunto independente de

parˆametros para cada colˆonia). Tamb´em nota-se claramente que a dificuldade de um problema do tipo caixeiro viajante assim´etrico ser resolvido pelo algoritmo da colˆonia de formigas depende de fatores al´em do simples n´umero de cidades. Isto ´e verificado quando se percebe que o ACS, aplicado de forma idˆentica `as instˆancias br17 (17 cidades) e ft70 (70 cidades), teve um desvio do ´otimo de 136% e 12%, respectivamente. A existˆencia de um parˆametro adicional que reflita a complexidade do problema tamb´em ´e indicada quando se analisa apenas a resposta dos algoritmos nas instˆancias de 70 cidades (ft70 e ftv70). Por fim, independentemente dos resultados de∆opt obtidos, a validac¸˜ao do framework como uma estrutura computacional capaz de suportar a implementac¸˜ao de v´arios tipos de algoritmos ACO com pouco esforc¸o de computac¸˜ao tamb´em ´e um resultado importante nessa etapa do trabalho.