A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

UM FRAMEWORK PARA ALGORITMOS BASEADOS NA TEORIA DOS GRAFOS Acadêmico: Maicon Rafael Zatelli Orientador: Dr. Paulo C é sar Rodacki Gomes.

Apresentações semelhantes


Apresentação em tema: "UM FRAMEWORK PARA ALGORITMOS BASEADOS NA TEORIA DOS GRAFOS Acadêmico: Maicon Rafael Zatelli Orientador: Dr. Paulo C é sar Rodacki Gomes."— Transcrição da apresentação:

1 UM FRAMEWORK PARA ALGORITMOS BASEADOS NA TEORIA DOS GRAFOS Acadêmico: Maicon Rafael Zatelli Orientador: Dr. Paulo C é sar Rodacki Gomes

2 Roteiro Introdução Objetivos do trabalho Fundamentação teórica Desenvolvimento do trabalho Conclusão Extensões

3 Introdu ç ão Importância da teoria dos grafos - Redes - Transportes - Comunicações - Jogos Problemas - Muitos algoritmos - Muitas propriedades - Dificuldade em criar grafos com muitos vértices e arestas Solu ç ão - Um framework voltado para a teoria dos grafos

4 Objetivos do trabalho  Construir um framework para auxiliar no desenvolvimento de softwares baseados na teoria dos grafos;  Disponibilizar um subconjunto de algoritmos clássicos;  Disponibilizar opção para extrair propriedades de grafos;  Disponibilizar geradores de grafos com base em restrições;  Persistir grafos;  Documentar o framework;  Disponibilizar uma aplicação de exemplo.

5 Fundamenta ç ão te ó rica - Definição de grafo - Algoritmos de grafos - Propriedades de grafos - JgraphT (2005) - TCC Hackbarth (2008) - TCC Braun (2009) Conceitos básicos Trabalhos correlatos

6 JgraphT (2005)

7 HACKBARTH (2008)

8 BRAUN (2009)

9 A B C D E Fundamenta ç ão te ó rica Grau 4 Grau 3 Isolado Pendente Articulação 1 4 3 2 Grau entrada 1 Grau saída 2

10 Fundamenta ç ão te ó rica Base (grau entrada 0) Antibase (grau saída 0)

11 Fundamenta ç ão te ó rica Laço Arestas paralelas Ponte Atributos A B C D E 54 65 29 8 32 76

12 Fundamenta ç ão te ó rica A B C D E Ciclo ABCA A B C D E Caminho ABCD

13 1 Busca em largura 2 5 6 4 8 7 9 3 Resultado: 1 2 5 3 6 4 7 9 8

14 1 Busca em profundidade 2 5 6 4 8 7 9 3 Resultado: 1 2 3 5 6 4 7 8 9

15 1 Ordena ç ão topol ó gica 2 5 6 4 8 7 9 3 Resultado: 7 > 8 > 9 > 4 > 1 > 2 > 3 > 6 > 5

16 A Ford-Fulkerson B E D C Resultado (A, E): 9 6 3 5 2 2 2 7 A B E D C 3 3 2 2 2 2 7

17 A Prim B E D C Resultado: 61 F 50 100 40 5 3 15 7 1 2

18 A Kruskal B E D C Resultado: 75 F 50 100 40 5 3 15 7 1 2 G H 14

19 Dijkstra Resultado (B,C): 10 Caminho: [2 > 4 > 1 > 3] B A C D 5 3 2 3 9 4

20 Bellman-Ford B A C D 5 3 2 3 9 4 9 4 7E F ABCDEF B7010349 Resultado (B)

21 Floyd-Warshall B A C D 5 3 2 3 9 4 ABCD A0538 B70103 C9205 D4970 Resultado

22 Hopcroft-Tarjan ABCD EF GH

23 A B C E F D

24 G H I

25 J K L

26 Desenvolvimento do trabalho Levantamento dos requisitos; Especifica ç ão do framework atrav é s de diagramas da UML; Especifica ç ão do modelo de persistência de grafos; Implementa ç ão do framework; Documenta ç ão do framework.

27 Requisitos do framework - Disponibilizar funções para criação e edição de grafos - Disponibilizar funções para gerar grafos - Permitir extrair propriedades de grafos - Disponibilizar um subconjunto de algoritmos clássicos - Permitir persistir e carregar grafos - Ser implementado utilizando o ambiente Fedora Eclipse 3.4.1 e a linguagem Java versão 6 - Conter documentação detalhada sobre os recursos oferecidos pelo framework Requisitos funcionais Requisitos não-funcionais

28 Diagrama de casos de uso

29 Diagrama de pacotes

30 Diagrama de classes

31

32

33

34 Diagrama de atividades

35 Diagrama de sequência

36 Modelo de persistência XML

37 Implementa ç ão - Java versão 6 - Fedora Eclipse 3.4.1 - DOM - JavaDoc - Estrutura do grafo - Persistência - Algoritmos de grafos - Geradores de grafos - Aplica ç ão de exemplo Técnicas e ferramentas utilizadas Implementação

38 Operacionalidade Estender classe Vertice; Instanciar grafo; Criar v é rtices e arestas; Executar algoritmos; Obter resultados.

39 Operacionalidade - Demonstra ç ão

40 Resultados e discussões Comparação entre algoritmos da teoria dos grafos Implementação de parte do framework na linguagem Objective-C O algoritmo ideal para cada tipo problema

41 Resultados e discussões Vértices Dijkstra Tempo (ms) Bellman-Ford Tempo (ms) Floyd-Warshall Tempo (ms) 103211 3091553 604269137 1004654446 20080943775 5001133453177766

42 Resultados e discussões VérticesConsultas Dijkstra Tempo (ms) Bellman-Ford Tempo (ms) Floyd-Warshall Tempo (ms) 105416 30151074056 603020147171 1005063165439 20010066532333882 500250158305231875219

43 Resultados e discussões VérticesConsultas Dijkstra Tempo (ms) Bellman-Ford Tempo (ms) Floyd-Warshall Tempo (ms) 10581113 3015797757 6030214326151 1005010141657436 20010013870366524352 500250546846190824085741

44 ALGORITMO DE PRIM OBJECTIVE-C

45 Comparativo JGRAPHT HACKBARTBRAUNFRAMEWORK Cria ç ão de grafos Estender classes Gerar grafos Persistir grafos Verificar propriedades Disponibiliza algoritmos Permite criar novos algoritmos Permite acompanhar execu ç ão de algoritmos Não possui a funcionalidadePossui a funcionalidade

46 Conclusão Requisitos foram cumpridos;  Novos recursos adicionados Comparação de desempenho dos algoritmos; Criação de instâncias de grafos com muitos vértices e arestas; Verificação de propriedades dos grafos; Possibilidade de persistência dos grafos;  DOM Documentação gerada.

47 Conclusão Baixo desempenho para trabalhar com grafos grandes; Muito consumo de memória para grafos com muitos vértices e arestas; Não está construída na aplicação de exemplo uma forma de ter uma representação visual do grafo criado. Limitações

48 Extensões Verificar outras propriedades de grafos: cordal, hipercubo, perfeito, cactos, planar, isomorfo a outro grafo; Gerar os tipos de grafos acima comentados; Implementar recursos para trabalhar com o grafo em modo visual; Possibilitar a exporta ç ão do grafo para outros formatos; Implementar outros algoritmos da teoria dos grafos: emparelhamento perfeito, clique m á ximo, ciclo hamiltoniano, ciclo euleriano, relabel-to- front, Boruvka.

49


Carregar ppt "UM FRAMEWORK PARA ALGORITMOS BASEADOS NA TEORIA DOS GRAFOS Acadêmico: Maicon Rafael Zatelli Orientador: Dr. Paulo C é sar Rodacki Gomes."

Apresentações semelhantes


Anúncios Google