Hostname: page-component-89b8bd64d-sd5qd Total loading time: 0 Render date: 2026-05-08T06:01:52.537Z Has data issue: false hasContentIssue false

Algorithmic aspects of temporal betweenness

Published online by Cambridge University Press:  12 April 2024

Sebastian Buß
Affiliation:
Algorithmics and Computational Complexity, Technical University of Berlin, Berlin, Germany
Hendrik Molter*
Affiliation:
Algorithmics and Computational Complexity, Technical University of Berlin, Berlin, Germany Department of Computer Science, Ben-Gurion University of the Negev, Be’er Sheva, Israel
Rolf Niedermeier
Affiliation:
Algorithmics and Computational Complexity, Technical University of Berlin, Berlin, Germany
Maciej Rymar
Affiliation:
Algorithmics and Computational Complexity, Technical University of Berlin, Berlin, Germany
*
Corresponding author: Hendrik Molter; Email: molterh@post.bgu.ac.il
Rights & Permissions [Opens in a new window]

Abstract

The betweenness centrality of a graph vertex measures how often this vertex is visited on shortest paths between other vertices of the graph. In the analysis of many real-world graphs or networks, the betweenness centrality of a vertex is used as an indicator for its relative importance in the network. In particular, it is among the most popular tools in social network analysis. In recent years, a growing number of real-world networks have been modeled as temporal graphs instead of conventional (static) graphs. In a temporal graph, we have a fixed set of vertices and there is a finite discrete set of time steps, and every edge might be present only at some time steps. While shortest paths are straightforward to define in static graphs, temporal paths can be considered “optimal” with respect to many different criteria, including length, arrival time, and overall travel time (shortest, foremost, and fastest paths). This leads to different concepts of temporal betweenness centrality, posing new challenges on the algorithmic side. We provide a systematic study of temporal betweenness variants based on various concepts of optimal temporal paths.

Computing the betweenness centrality for vertices in a graph is closely related to counting the number of optimal paths between vertex pairs. While in static graphs computing the number of shortest paths is easily doable in polynomial time, we show that counting foremost and fastest paths is computationally intractable (#P-hard), and hence, the computation of the corresponding temporal betweenness values is intractable as well. For shortest paths and two selected special cases of foremost paths, we devise polynomial-time algorithms for temporal betweenness computation. Moreover, we also explore the distinction between strict (ascending time labels) and non-strict (non-descending time labels) time labels in temporal paths. In our experiments with established real-world temporal networks, we demonstrate the practical effectiveness of our algorithms, compare the various betweenness concepts, and derive recommendations on their practical use.

Information

Type
Research Article
Creative Commons
Creative Common License - CCCreative Common License - BY
This is an Open Access article, distributed under the terms of the Creative Commons Attribution licence (http://creativecommons.org/licenses/by/4.0/), which permits unrestricted re-use, distribution and reproduction, provided the original article is properly cited.
Copyright
© The Author(s), 2024. Published by Cambridge University Press
Figure 0

Table 1. An overview of the computational complexity of the temporal betweenness variants we consider, both for the strict and the non-strict cases. Here, $n$ refers to the number of vertices, $M$ refers to the total number of time edges, and $T$ refers to the total number of time steps

Figure 1

Figure 1. This temporal graph features a shortest, a foremost, and a fastest temporal path from $s$ to $z$.

Figure 2

Figure 2. Assume $V_1$ and $V_2$ are sets of vertices that are adjacent to $v_1$ and $v_2$ at time steps $1$ and $T$, respectively. Then, $v_1$ and $v_2$ are vertices with high temporal betweenness based on temporal paths, whereas $v_3$ has very low temporal betweenness based on temporal paths. However for, example, foremost temporal walks, $v_3$ would also have a high temporal betweenness.

Figure 3

Figure 3. Given a static bipartite graph $G$, we construct a temporal graph $\mathcal{G}$ such that the number of matchings in $G$ equals the number of strict paths from $a^{\prime}$ to $b^{\prime}$ in $\mathcal{G}$. In this example, the matching $ \{\{a_1,b_2\},\{a_3,b_3\}\}$ (highlighted in bold) translates to the path $\left(a^{\prime}\overset{1}{\rightarrow}{a_1}\overset{2}{\rightarrow}{b_2}\overset{5}{\rightarrow}{a_3}\overset{6}{\rightarrow}{b_3}\overset{7}{\rightarrow}{b^{\prime}}\right)$.

Figure 4

Figure 4. Given a temporal graph $\mathcal{G}$, we construct a temporal graph $\mathcal{G}^{\prime}$ such that we can compute the number of $a$-$b$-paths in $\mathcal{G}$ from the betweenness of $v$ in $\mathcal{G}^{\prime}$.

Figure 5

Algorithm 1 Shortest (foremost) betweenness in temporal graphs

Figure 6

Algorithm 2 Strict prefix-foremost betweenness

Figure 7

Table 2. Statistics for the data sets used in our experiments. The lifetime $T^\star$ of a graph is the difference between the largest and smallest time stamp on an edge in the graph. The resolution $r$ indicates how often edges were measured. Note that the number of times steps is $T=T^\star/r$

Figure 8

Table 3. Running times in seconds of our implementation, where the last two columns correspond to the algorithms based on static expansions. From left to right: non-strict shortest and shortest foremost betweenness, strict shortest and shortest foremost betweenness, strict prefix-foremost betweenness, non-strict shortest and shortest foremost betweenness computed with static-expansion-based algorithms, strict shortest and shortest foremost betweenness computed with static-expansion-based algorithms. A -1 indicates that the instance was not solved within five hours

Figure 9

Figure 5. Top: temporal betweenness histogram of “highschool-2013” data set. Vertices are collected in 10 evenly distributed buckets between 0 and the highest temporal betweenness value. The $y$-axis corresponds to the number of vertices. Middle: temporal betweenness histogram of “Facebook-like” data set. The $y$-axis is on a log-scale. Bottom: temporal betweenness histogram of “primary school” data set. The temporal betweenness types from left to right are as follows: non-strict shortest, non-strict shortest foremost, strict shortest, strict shortest foremost, strict prefix foremost. Variants of shortest betweenness are colored in shades of red; foremost betweenness is colored in shades of blue.

Figure 10

Table 4. Kendall’s tau correlation measure for each pair of vertex rankings induced by the different temporal betweenness versions. Values close to 1 indicate strong agreement, and values close to -1 indicate strong disagreement between the rankings

Figure 11

Table 5. Size of the intersection of each pair of sets containing the ten vertices with highest temporal betweenness values