1 / 21

Comparação de métodos heurísticos para o problema de modularização de software

Comparação de métodos heurísticos para o problema de modularização de software. Rodrigo de Carvalho. Sumário . Introdução Descrição do Problema Algoritmos GRASP S.A AG Planejamento Experimental Objetivo Instância e métricas Design experimental Teste estatístico

Download Presentation

Comparação de métodos heurísticos para o problema de modularização de software

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Comparação de métodos heurísticos para o problema de modularizaçãode software Rodrigo de Carvalho

  2. Sumário • Introdução • Descrição do Problema • Algoritmos • GRASP • S.A • AG • Planejamento Experimental • Objetivo • Instância e métricas • Design experimental • Teste estatístico • Análise Experimental • Conclusões

  3. Introdução MANUTENÇÂO: Sistemas legados Falta de documentação

  4. Introdução • Clusterizaçãode grafos direcionados e não ponderados.

  5. Introdução • Particionar um grafo em subgrafos, de forma que o número de arestas entre pares de vértices em subgrafos distintos seja minimizado, bem como, o número de arestas internas a cada subgrafo seja maximizado.

  6. Introdução • N = 10  115.975 • N = 15  1.382.958.545

  7. Algoritmos • GRASP

  8. Algoritmos • SimulatedAnnealing

  9. Algoritmos • AG

  10. Objetivo do Experimento • Verificar a existência de diferença significativa no desempenho dos algoritmos quando aplicados ao problema de clusterização em grafos (modularização de software).

  11. Instâncias • 12 instâncias • 10 a 100 nós • 30 a 1200 arestas

  12. Métrica • MQ - Qualidade de Modularização (Dovallet al.,1999) • Esta medida leva em consideração a quantidade de arcos internos interligando vértices em um mesmo cluster, denominada intraconectividade, e a quantidade de arcos interligando vértices entre clusters diferentes, denominada interconectividade (Bi j).

  13. Design Experimental

  14. Planejamento Experimental • Hipótese: • H0: os algoritmos não apresentam diferença no desempenho quando aplicados ao problema estudado; • Fator: Algoritmo • Níveis: GRASP,SimulatedAnnealing, AG. • Blocos: por instância; • Replicações: 10. • Região de rejeição: Consiste em todos os valores da estatística do teste utilizado ,tais que sua probabilidade de ocorrência , sob H0, não supere α = 0,05 (nível de significância) .

  15. Teste estatístico • Teste de Friedman • Planejamento em blocos com único fator; • Uma alternativa robusta onde não é possível afirmar/justificar sobre a normalidade dos dados; (Teste não paramétrico); • Para aplicar o teste calcula-se o valor de uma estatística χ02; • Quando se tem uma amostra relativamente grande é possível mostrar que χ02tem uma distribuição aproximadamente qui-quadrada com k-1 gl.

  16. Ambiente Experimental • Algoritmos implementados na linguagem C++; • Testes realizados em um computador com: • Intel Core i3 2.3 GHz; • 4 Gb RAM; • Windows 7. • Para cada replicação foi dado um tempo aproximado de 40 segundos de processamento.

  17. Amostras Obtidas • Algoritmo x instância x replicação • 3 x 12 x 10 = 360 valores • 60 valores ignorados

  18. Análise estatística • Para teste de hipótese realizado foi considerado um nível de confiança de 95% ( α = 0,05); • O valor crítico: 5,991

  19. Análise estatística procedimento de comparação múltipla

  20. Conclusão • O teste realizado indica a existência de diferença estatisticamente significativa quanto ao desempenho dos algoritmos avaliados; • Baseado na média dos ranks e no intervalo de confiança pode ser perceber que o método GRASP é promissor para resolver esse problema.

  21. DOVAL, D., MANCORIDIS, S. E MITCHELL, B. S., “AutomaticClusteringof Software System using a GeneticAlgorithm”. Proc. Ofthe Int. Conf. On Software ToolandEnginneringPractice, pp 73-81,1999. • DIAS, C.R. Desenvolvimento e Análise Experimental de Algoritmos Evolutivos para o Problema de Clusterização Automática em Grafos Orientados , Univ. UFF,2004, Dissertação de Mestrado. • D. C. Montgomery e G. C. Runger. Applied statistics and probability for engineers. John Wiley, 3 edição, 2003.

More Related