Please use this identifier to cite or link to this item:
https://repositorio.ufu.br/handle/123456789/39334
ORCID: | http://orcid.org/0000-0002-1281-244X |
Document type: | Tese |
Access type: | Acesso Aberto |
Title: | Efficient dynamic data structures for reachability queries on large temporal graphs |
Alternate title (s): | Estruturas de dados eficientes para consultas de alcance em grafos temporais grandes |
Author: | Brito, Luiz Fernando Afra |
First Advisor: | Albertini, Marcelo Keese |
Second Counselor: | Travençolo, Bruno Augusto Nassif |
First member of the Committee: | Louza, Felipe Alves da |
Second member of the Committee: | Razente, Humberto Luiz |
Third member of the Committee: | Telles, Guilherme Pimentel |
Fourth member of the Committee: | Valejo, Alan Demétrius Baria |
Summary: | Temporal graphs serve as a modeling tool to represent interactive phenomena that occur over time. By adding the time dimension to these models, we can better describe systems, study them as a continuously evolving process, and discover better solutions to existing problems. There are many high-level queries that aid us in the analysis of temporal graphs, such as checking whether vertices are reachable through temporal paths and reconstructing such temporal paths. However, these tasks are computationally demanding and the increasing volume of data produced at high speeds brings us new challenges. In this scenario, the memory hierarchy, including secondary memory, should be taken into consideration when designing applications for temporal graphs. In this document, we present dynamic data structures for primary and second memories that answer reachability queries on large temporal graphs. During our investigation, we seek strategies that improve the time and space needed to maintain such data structures, and the time to compute reachability queries. Among our results, we highlight a new mathematical object called Timed Transitive Closure (TTC), which generalizes the standard Transitive Closure (TC) concept for temporal graphs. By using this novel object, we propose three new dynamic data structures. The first data structure maintains the TTC information in primary memory using O(n2τ) space while answering reachability queries in time O(log τ) and inserting new contacts in O(n2 log τ), where τ is the number of timestamps and n is the number of vertices in a temporal graph. The second data structure uses a compact representation, also in primary memory, that greatly reduces the space usage in several scenarios while retaining similar performance. Finally, the third data structure persists the reachability information on disk using O(n2τ) space while accessing O(1) pages for answering reachability queries and O(n2τ/B) pages for performing updates, where B is the size of a page in secondary memory. |
Abstract: | Grafos temporais são ferramentas usadas para representar fenômenos que ocorrem ao longo do tempo. Ao incluir o tempo nos estudos sobre grafos, pode-se descrever sistemas como processos que evoluem continuamente e, assim, descobrir novas soluções em problemas relacionados. Existem várias consultas de alto nível que podem nos ajudar na análise de grafos temporais como a verificação do alcance entre vértices por meio de caminhos temporais e a reconstrução desses caminhos quando possível. Entretanto, tarefas como essas são computacionalmente intensivas e, ademais, nota-se atualmente um aumento substancial do volume de novos dados produzidos. Neste cenário, a hierarquia de memória, incluindo memórias secundárias e caches, deve ser levada em consideração durante o desenvolvimento de aplicações para grafos temporais. Neste trabalho, serão apresentadas estruturas de dados dinâmicas implementadas em memórias primária e secundária que respondem consultas de alcance em grandes grafos temporais. Dentre nossos resultados, destacamos um novo objeto matemático chamado Fecho Transitivo Temporal, uma generalização do Fecho Transitivo comumente estudado em grafos não-temporais. Usando esse novo conceito, propomos três novas estruturas de dados dinâmicas. A primeira estrutura mantém um Fecho Transitivo Temporal em memória primária usando espaço O(n2τ), responde consultas de alcance em tempo O(log τ) e insere novos contatos em O(n2 log τ), onde τ é a quantidade de etiquetas de tempo e n é o número de vértices em um grafo temporal. A segunda estrutura usa uma representação compacta, também em memória primária, que reduz o espaço utilizado pela estrutura em varios cenários e possui desempenho similar na execução das operações. Finalmente, a terceira estrutura persiste os dados em memória secundária usando espaço O(n2τ) e usa algoritmos para responder consultas de alcance e fazer atualizações que acessam, respectivamente, O(1) e O(n2τ/B) páginas em disco, ond B é o tamanho de uma página em memória secundária. |
Keywords: | grafo temporal temporal graph estrutura de dados dinâmica dynamic data structure consultas de alcance reachability queries fecho transitivo transitive closure memória principal primary memory memória secundária secondary memory |
Area (s) of CNPq: | CNPQ::CIENCIAS EXATAS E DA TERRA |
Subject: | Computação Grafos de ligação Teoria dos grafos Estruturas de dados (Computação) |
Language: | eng |
Country: | Brasil |
Publisher: | Universidade Federal de Uberlândia |
Program: | Programa de Pós-graduação em Ciência da Computação |
Quote: | BRITO, Luiz Fernando Afra. Efficient dynamic data structures for reachability queries on large temporal graphs. 2023. 131 f. Tese (Doutorado em Ciência da Computação) - Universidade Federal de Uberlândia, Uberlândia, 2023. DOI http://doi.org/10.14393/ufu.te.2023.460. |
Document identifier: | http://doi.org/10.14393/ufu.te.2023.460 |
URI: | https://repositorio.ufu.br/handle/123456789/39334 |
Date of defense: | 21-Jul-2023 |
Appears in Collections: | TESE - Ciência da Computação |
Files in This Item:
File | Description | Size | Format | |
---|---|---|---|---|
EfficientDynamicdata.pdf | Tese | 1.6 MB | Adobe PDF | View/Open |
This item is licensed under a Creative Commons License