Algoritmos paralelos para árvores de cortes e medidas de centralidade em grafos
Resumo
Resumo: Uma árvore de cortes é uma representação compacta da aresta-conectividade de um grafo não orientado. As árvores de cortes resolvem de maneira eficiente o problema de calcular a arestaconectividade entre todos os pares de vértices do grafo. As árvores de cortes têm muitas aplicações como, por exemplo, no projeto de redes confiáveis, na partição de grafos, no agrupamento em grafos, na análise de redes sociais, dentre outras. Dois algoritmos para a construção de árvores de cortes de grafos não orientados e capacitados são bem conhecidos: o algoritmo de Gomory-Hu e o algoritmo de Gusfield. Este trabalho apresenta propostas de implementações paralelas de três algoritmos para encontrar uma árvore de cortes. Versões paralelas para os algoritmos de Gusfield e de Gomory-Hu são descritas e avaliadas experimentalmente. Um algoritmo híbrido que combina esses dois algoritmos e que busca tirar proveito das vantagens de cada um deles também é apresentado. Resultados experimentais mostram que os três algoritmos apresentam boas acelerações nos tempos de execução. Os experimentos também mostram que o algoritmo híbrido é quase sempre mais rápido do que o algoritmo de Gomory-Hu e em certas instâncias ele é muito mais rápido do que o algoritmo de Gusfield. Heurísticas para a melhoria do algoritmo de Gomory-Hu e do algoritmo híbrido são propostas e analisadas. Na segunda parte desta tese, são estudadas medidas de centralidade dos vértices de um grafo que são baseadas na conectividade - algumas delas podem ser calculadas a partir de árvores de cortes. As medidas de centralidade de vértices têm como objetivo quantificar a importância dos vértices de um grafo com base em diferentes critérios. Dentre as medidas de centralidade propostas, destaca-se a i-aresta-conectividade, que mede a aresta-conectividade dos vértices em relação ao grafo. Uma medida de conectividade baseada em cortes de vértices também é proposta. Um estudo experimental com as medidas de conectividade foi executado para avaliar a relação das medidas propostas com outras medidas de centralidade mais conhecidas. Esse estudo mostra empiricamente que vértices com alta conectividade tendem a ter baixa excentricidade. Além disso, experimentos mostram que as medidas de conectividade não são equivalentes ao grau como critério de ordenação dos vértices. Abstract: A cut tree is a combinatorial structure that represents the edge-connectivity between all pairs of nodes of an undirected graph. Cut trees solve the all pairs minimum s-t-cut problem efficiently. Cut trees have a large number of applications including the solution of important combinatorial problems in fields such as routing, graph partitioning, graph clustering and graph connectivity. Cut trees have also been applied in scheduling problems, social network analysis, biological data analysis, among others. Two algorithms to compute a cut tree of a capacitated undirected graph are well known: Gomory-Hu algorithm and Gusfield algorithm. A main contribution of this work is the proposal, implementation and evaluation of three parallel cut tree algorithms. Parallel versions of Gusfield and Gomory-Hu algorithms are presented as well as a hybrid algorithm that combines those two. Experimental results show that the three algorithms achieve significant speedups on real and synthetic graphs. The hybrid algorithm outperformed the Gomory-Hu algorithm on most instances and it was faster than Gusfield algorithm on a few graphs. Heuristics to improve the performance of both Gomory-Hu algorithm and the hybrid algorithm are described and evaluated. The second part of this work is dedicated to centrality measures in graphs. Centrality measures quantify various intuitive notions of the importance of nodes to networks. Families of centrality measures based on connectivity concepts are presented - some of them can be computed using cut trees. The concepts of edge-cuts and vertex-cuts induce different families of connectivity measures. The proposed i-edge-connectivity index quantifies the edge-connectivity of a vertex with respect to the graph. The locality of the measure can be configured by changing the value of i: smaller values of i produce measures that are more local, while large values produce global measures. An experimental evaluation of the proposed centrality measures shows the relationship between the connectivity measures with other well known centrality measures. It is shown that vertices with high connectivity are likely to have low eccentricities. Furthermore the results imply that the connectivity measures are not equivalent to the degree as a vertex sorting criteria.
Collections
- Teses & Dissertações [10146]