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 SizeFormat 
EfficientDynamicdata.pdfTese1.6 MBAdobe PDFThumbnail
View/Open


This item is licensed under a Creative Commons License Creative Commons