A graph whose edges only appear at certain points in time is called a temporal graph (among other... more A graph whose edges only appear at certain points in time is called a temporal graph (among other names). Such a graph is temporally connected if each ordered pair of vertices is connected by a path which traverses edges in chronological order (i.e., a temporal path). In this paper, we consider a simple model of random temporal graph, obtained from an Erdős-Rényi random graph G ∼ G n,p by considering a random permutation π of the edges and interpreting the ranks in π as presence times. We give a thorough study of the temporal connectivity of such graphs and derive implications for the existence of several kinds of sparse spanners. It turns out that temporal reachability in this model exhibits a surprisingly regular sequence of thresholds. In particular, we show that, at p = log n/n, any fixed pair of vertices can a.a.s. reach each other; at 2 log n/n, at least one vertex (and in fact, any fixed vertex) can a.a.s. reach all others; and at 3 log n/n, all the vertices can a.a.s. reach each other, i.e., the graph is temporally connected. Furthermore, the graph admits a temporal spanner of size 2n + o(n) as soon as it becomes temporally connected, which is nearly optimal as 2n -4 is a lower bound. This result is quite significant because temporal graphs do not admit spanners of size O(n) in general (Kempe, Kleinberg, Kumar, STOC 2000). In fact, they do not even always admit spanners of size o(n 2 ) (Axiotis, Fotakis, ICALP 2016). Thus, our result implies that the obstructions found in these works, and more generally, any non-negligible obstruction, is statistically insignificant: nearly optimal spanners always exist in random temporal graphs. All the above thresholds are sharp. Carrying the study of temporal spanners a step further, we show that pivotal spanners-i.e., spanners of size 2n -2 composed of two spanning trees glued at a single vertex (one descending in time, the other ascending subsequently)-exist a.a.s. at 4 log n/n, this threshold being also sharp. Finally, we show that optimal spanners (of size 2n -4) also exist a.a.s. at p = 4 log n/n. Whether this value is a sharp threshold is open; we conjecture that it is. For completeness, we compare the above results to existing results in related areas, including edge-ordered graphs, gossip theory, and population protocols, showing that our results can be interpreted in these settings as well, and that in some cases, they improve known results therein. Finally, we discuss an intriguing connection between our results and Janson's celebrated results on percolation in weighted graphs.
Beaucoup de réseaux dynamiques sont constitués d'entités durables dont les liens évoluent à trave... more Beaucoup de réseaux dynamiques sont constitués d'entités durables dont les liens évoluent à travers le temps. D'un point de vue global et discret, ces réseaux se modélisent bien sous forme d'un graphe évolutif, c'est à dire une suite de graphes G = {G 1 , G 2 , ..., G δ } telle que G i = (V, E i) représente la topologie du réseau pendant la période i. Une telle suite est dite T-intervalle connexe si pour tout t ∈ [1, δ − T + 1] les graphes G t , G t+1 , ..., G t+T −1 partagent un même sous-graphe couvrant connexe. Dans cet article, nous étudions le problème de décider si une suite G donnée est Tintervalle connexe pour un T donné. Nous étudions également la variante où T n'est pas donné et il s'agit de trouver le plus grand T tel que G est T-intervalle connexe. Nous supposons que les changements entre deux graphes consécutifs sont arbitraires, et que deux opérations (intersection binaire et test de connexité) sont utilisées comme briques de base. Nous montrons que Ω(δ) de ces opérations sont nécessaires pour les deux variantes et présentons des solutions qui en utilisent O(δ) également. Ces solutions sont donc optimales à une constante multiplicative près.
JBOTSIM is a java library that offers basic primitives for prototyping, running, and visualizing ... more JBOTSIM is a java library that offers basic primitives for prototyping, running, and visualizing distributed algorithms in dynamic networks. With JBOTSIM, one can implement an idea in minutes and interact with it (e.g., add, move, or delete nodes) while it is running. JBOTSIM is well suited to prepare live demonstrations of algorithms to colleagues or students; it can also be used to evaluate performance at the algorithmic level (number of messages, number of rounds, etc.). Unlike most simulation tools, JBOTSIM is not an integrated environment. It is a lightweight library to be used in java programs. In this paper, I present an overview of its distinctive features and architecture.
Highly dynamic networks are characterized by frequent changes in the availability of communicatio... more Highly dynamic networks are characterized by frequent changes in the availability of communication links. These networks are often partitioned into several components, which split and merge unpredictably. We present a distributed algorithm that maintains a forest of (as few as possible) spanning trees in such a network, with no restriction on the rate of change. Our algorithm is inspired by highlevel graph transformations, which we adapt here in a (synchronous) message passing model for dynamic networks. The resulting algorithm has the following properties: First, every decision is purely local-in each round, a node only considers its role and that of its neighbors in the tree, with no further information propagation (in particular, no wave mechanisms). Second, whatever the rate and scale of the changes, the algorithm guarantees that, by the end of every round, the network is covered by a forest of spanning trees in which 1) no cycle occur, 2) every node belongs to exactly one tree, and 3) every tree contains exactly one root (or token). We primarily focus on the correctness of this algorithm, which is established rigorously. While performance is not the main focus, we suggest new complexity metrics for such problems, and report on preliminary experimentation results validating our algorithm in a practical scenario. * A preliminary version of this work (without proofs of correctness and much revisited since) was presented at the 18th Int. Conf. on Principles of Distributed Systems (OPODIS, 2014).
The consensus problem is a fundamental paradigm in distributed systems, because it captures the d... more The consensus problem is a fundamental paradigm in distributed systems, because it captures the difficulty to solve other agreement problems. Many current systems evolve with time, e.g., due to node mobility, and consensus has been little studied in these systems so far. Specifically, it is not well established how to define an appropriate set of assumptions for consensus in dynamic distributed systems. This paper studies a hierarchy of three classes of time-varying graphs, and provides a solution for each class to the problem of Terminating Reliable Broadcast (TRB). The classes introduce increasingly stronger assumptions on timeliness, so that the trade-off between weakness versus implementability and efficiency can be analysed. Being TRB equivalent to consensus in synchronous systems, the paper extends this equivalence to dynamic systems.
HAL is a multi-disciplinary open access archive for the deposit and dissemination of scientific r... more HAL is a multi-disciplinary open access archive for the deposit and dissemination of scientific research documents, whether they are published or not. The documents may come from teaching and research institutions in France or abroad, or from public or private research centers. L'archive ouverte pluridisciplinaire HAL, est destinée au dépôt et à la diffusion de documents scientifiques de niveau recherche, publiés ou non, émanant des établissements d'enseignement et de recherche français ou étrangers, des laboratoires publics ou privés.
Computing a (short) path between two vertices is one of the most fundamental primitives in graph ... more Computing a (short) path between two vertices is one of the most fundamental primitives in graph algorithmics. In recent years, the study of paths in temporal graphs, that is, graphs where the vertex set is fixed but the edge set changes over time, gained more and more attention. A path is time-respecting, or temporal, if it uses edges with non-decreasing time stamps. We investigate a basic constraint for temporal paths, where the time spent at each vertex must not exceed a given duration , referred to as-restless temporal paths. This constraint arises naturally in the modeling of real-world processes like packet routing in communication networks and infection transmission routes of diseases where recovery confers lasting resistance. While finding temporal paths without waiting time restrictions is known to be doable in polynomial time, we show that the "restless variant" of this problem becomes computationally hard even in very restrictive settings. For example, it is W[1]-hard when parameterized by the distance to disjoint path of the underlying graph, which implies W[1]-hardness for many other parameters like feedback vertex number and pathwidth. A natural question is thus whether the problem becomes tractable in some natural settings. We explore several natural parameterizations, presenting FPT algorithms for three kinds of parameters: (1) output-related parameters (here, the maximum length of the path), (2) classical parameters applied to the underlying graph (e.g., feedback edge number), and (3) a new parameter called timed feedback vertex number, which captures finer-grained temporal features of the input temporal graph, and which may be of interest beyond this work.
The development of applications that target dynamic networks often adresses the same difficulties... more The development of applications that target dynamic networks often adresses the same difficulties. Since the underlying network topology is unstable, the application has to handle it in a contextreactive manner, and, when possible, with algorithms that are localized and decentralized. The present paper shows how the DA-GRS model, that is a high level abstract model for localized graph algorithms, can be used to drastically improve the development time of self-organized systems. The canonical method that is proposed makes use of generic pieces of code, along with some additional code generation. All the concepts presented here are illustrated by means of a spanning forest algorithm, that can then be used by the application at a high abstraction level.
Besides the complexity in time or in number of messages, a common approach for analyzing distribu... more Besides the complexity in time or in number of messages, a common approach for analyzing distributed algorithms is to look at their assumptions on the underlying network. This paper focuses on the study of such assumptions in dynamic networks, where the connectivity is expected to change, predictably or not, during the execution. Our main contribution is a theoretical framework dedicated to such analysis. By combining several existing components (local computations, graph relabellings, and evolving graphs), this framework allows to express detailed properties on the network dynamics and to prove that a given property is necessary, or sufficient, for the success of an algorithm. Consequences of this work include (i) the possibility to compare distributed algorithms on the basis of their topological requirements, (ii) the elaboration of a formal classification of dynamic networks with respect to these properties, and (iii) the possibility to check automatically whether a network trace belongs to one of the classes, and consequently to know which algorithm should run on it.
Let G = (V, E) be an undirected graph on n vertices and λ : E → 2 N a mapping that assigns to eve... more Let G = (V, E) be an undirected graph on n vertices and λ : E → 2 N a mapping that assigns to every edge a non-empty set of integer labels (discrete times when the edge is present). Such a labelled graph G = (G, λ) is temporally connected if a path exists with non-decreasing times from every vertex to every other vertex. In a seminal paper, Kempe, Kleinberg, and Kumar [17] asked whether, given such a temporally connected graph, a sparse subset of edges always exists whose labels suffice to preserve temporal connectivity -a temporal spanner. Axiotis and Fotakis answered negatively by exhibiting a family of Θ(n 2 )-dense temporal graphs which admit no temporal spanner of density o(n 2 ). In this paper, we give the first positive answer as to the existence of o(n 2 )-sparse spanners in a dense class of temporal graphs, by showing (constructively) that if G is a complete graph, then one can always find a temporal spanner with O(n log n) edges. * This article is the full version of an article presented at ICALP 2019 [9]. This paper is best read in colour. If this is not possible, the colour "green" appears with a lighter tone than the colour "red", making their interpretation possible.
This paper revisits two classical distributed problems in anonymous networks, namely spanning tre... more This paper revisits two classical distributed problems in anonymous networks, namely spanning tree construction and topology recognition, from the point of view of graph covering theory. For both problems, we characterize necessary and sufficient conditions on the communication graph in terms of directed symmetric coverings. These characterizations answer a long-standing open question posed by Yamashita and Kameda [YK96], and shed new light on the connection between coverings and the concepts of views and quotient graphs developed by the same authors. Characterizing conditions in terms of coverings is significant because it connects the field with a vast body of classical literature in graph theory and algebraic topology. In particular, it gives access to powerful tools such as Reidemeister's theorem and Mazurkiewicz's algorithm. Combined together, these tools allow us to present elegant proofs of otherwise intricate results, and their constructive nature makes them effectively usable in the algorithms. This paper also gives us the opportunity to present the field of covering theory in a pedagogical way, with a focus on the two aforementioned tools, whose potential impact goes beyond the specific problems considered in this work.
HAL (Le Centre pour la Communication Scientifique Directe), Jun 3, 2014
Nous considérons le problème de tester si un graphe dynamique donné est temporellement connexe, i... more Nous considérons le problème de tester si un graphe dynamique donné est temporellement connexe, i.e. s'il existe un chemin temporel (aussi appelé trajet) entre toute paire de sommets. Nous considérons une version simplifiée du problème où la dynamique est représentée par un graphe évolutif non-temporisé G = {G 1 , G 2 , ..., G δ } dont l'ensemble des sommets est invariant et les arêtes sont orientées (arcs). Deux variantes du problème sont étudiées, selon que l'on autorise la traversée consécutive d'un seul ou d'un nombre illimité d'arcs à chaque étape (trajets stricts vs non-stricts). Dans le cas des trajets stricts, deux algorithmes pré-existants pour d'autres problèmes peuvent être adaptés. Cependant, nous montrons qu'une approche dédiée permet d'obtenir une meilleure complexité en temps que le premier algorithme dans tous les cas, et que le second dans certaines familles de graphes, notamment les graphes dont la densité est faible à tout instant (bien que potentiellement élevée à travers le temps). La complexité de notre algorithme est en O(δµn), où δ est le nombre d'étapes |G| et µ = max(|E i |) est le nombre maximal d'arcs pouvant exister à un instant donné. Ce paramètre est à contraster avec m = | ∪ E i |, l'union de tous les arcs apparaissant au cours du temps. En effet, il n'est pas rare qu'un scénario de mobilité exhibe à la fois un µ petit et un m grand. Nous caractérisons les principales valeurs charnières de δ, µ et m permettant de décider quel algorithme utiliser. Dans le cas des trajets non-stricts, pour lesquels nous ne connaissons pas d'algorithme existant, nous montrons que notre algorithme peut être adapté pour répondre à la question, et ce, toujours en O(δµn). Nos deux algorithmes construisent graduellement la fermeture transitive des trajets stricts (notée G * st) ou non-stricts (notée G *) à mesure que les arcs sont examinés. Ce sont des algorithmes de type streaming qui sont aussi capables d'arrêter leur exécution sitôt la connexité temporelle atteinte. Un sous-produit intéressant est de rendre G * st et G * disponibles pour de futures requêtes d'accessibilité temporelle de type source-destination.
We investigate a special case of hereditary property that we refer to as robustness. A property i... more We investigate a special case of hereditary property that we refer to as robustness. A property is robust in a given graph if it is inherited by all connected spanning subgraphs of this graph. We motivate this definition in different contexts, showing that it plays a central role in highly dynamic networks, although the problem is defined in terms of classical (static) graph theory. In this paper, we focus on the robustness of maximal independent sets (MIS). Following the above definition, a MIS is said to be robust (RMIS) if it remains a valid MIS in all connected spanning subgraphs of the original graph. We characterize the class of graphs in which all possible MISs are robust. We show that, in these particular graphs, the problem of finding a robust MIS is local; that is, we present an RMIS algorithm using only a sublogarithmic number of rounds (in the number of nodes n) in the LOCAL model. On the negative side, we show that, in general graphs, the problem is not local. Precisely, we prove a Ω(n) lower bound on the number of rounds required for the nodes to decide consistently in some graphs. This result implies a separation between the RMIS problem and the MIS problem in general graphs. It also implies that any strategy in this case is asymptotically (in order) as bad as collecting all the network information at one node and solving the problem in a centralized manner. Motivated by this observation, we present a centralized algorithm that computes a robust MIS in a given graph, if one exists, and rejects otherwise. Significantly, this algorithm requires only a polynomial amount of local computation time, despite the fact that exponentially many MISs and exponentially many connected spanning subgraphs may exist.
This document is the first part of the author's habilitation thesis (HDR) [37], defended on June ... more This document is the first part of the author's habilitation thesis (HDR) [37], defended on June 4, 2018 at the University of Bordeaux. Given the nature of this document, the contributions that involve the author have been emphasized; however, these four chapters were specifically written for distribution to a larger audience. We hope they can serve as a broad introduction to the domain of highly dynamic networks, with a focus on temporal graph concepts and their interaction with distributed computing.
Besides the complexity in time or in number of messages, a common approach for analyzing distribu... more Besides the complexity in time or in number of messages, a common approach for analyzing distributed algorithms is to look at the assumptions they make on the underlying network. We investigate this question from the perspective of network dynamics. In particular, we ask how a given property on the evolution of the network can be rigorously proven as necessary or sufficient for a given algorithm. The main contribution of this paper is to propose the combination of two existing tools in this direction: local computations by means of graph relabelings, and evolving graphs. Such a combination makes it possible to express fine-grained properties on the network dynamics, then examine what impact those properties have on the execution at a precise, intertwined, level. We illustrate the use of this framework through the analysis of three simple algorithms, then discuss general implications of this work, which include (i) the possibility to compare distributed algorithms on the basis of their topological requirements, (ii) a formal hierarchy of dynamic networks based on these requirements, and (iii) the potential for mechanization induced by our framework, which we believe opens a door towards automated analysis and decision support in dynamic networks.
Besides the complexity in time or in number of messages, a common approach for analyzing distribu... more Besides the complexity in time or in number of messages, a common approach for analyzing distributed algorithms is to look at the assumptions they make on the underlying network. We investigate this question from the perspective of network dynamics. In particular, we ask how a given property on the evolution of the network can be rigorously proven as necessary or sufficient for a given algorithm. The main contribution of this paper is to propose the combination of two existing tools in this direction: local computations by means of graph relabelings, and evolving graphs. Such a combination makes it possible to express fine-grained properties on the network dynamics, then examine what impact those properties have on the execution at a precise, intertwined, level. We illustrate the use of this framework through the analysis of three simple algorithms, then discuss general implications of this work, which include (i) the possibility to compare distributed algorithms on the basis of their topological requirements, (ii) a formal hierarchy of dynamic networks based on these requirements, and (iii) the potential for mechanization induced by our framework, which we believe opens a door towards automated analysis and decision support in dynamic networks.
We address the problem of testing whether a given dynamic graph is temporally connected, i.e. a t... more We address the problem of testing whether a given dynamic graph is temporally connected, i.e. a temporal path (also called a journey) exists between all pairs of vertices. We consider a discrete version of the problem, where the topology is given as an evolving graph G = {G1, G2, ..., G k } whose set of vertices is invariant and the set of (directed) edges varies over time. Two cases are studied, depending on whether a single edge or an unlimited number of edges can be crossed in a same Gi (strict journeys vs non-strict journeys). In the case of strict journeys, a number of existing algorithms designed for more general problems can be adapted. We adapt one of them to the above formulation of the problem and characterize its running time complexity. The parameters of interest are the length of the graph sequence k = |G|, the maximum instant density µ = max(|Ei|), and the cumulated density m = | ∪ Ei|. Our algorithm has a time complexity of O(kµn), where n is the number of nodes. This complexity is compared to that of the other solutions: one is always more costly (keep in mind that is solves a more general problem), the other one is more or less costly depending on the interplay between instant density and cumulated density. The length k of the sequence also plays a role. We characterize the key values of k, µ and m for which either algorithm should be used. Our solution is relevant for sparse mobility scenario (e.g. robots or UAVs exploring an area) where the number of neighbors at a given time is low, though many nodes can be seen over the whole execution. In the case of non-strict journeys, for which no algorithm is known, we show that some pre-processing of the input graph allows us to re-use the same algorithm than before. By chance, these operations happens to cost again O(kµn) time, which implies that the second problem is not more difficult than the first. Both algorithms gradually build the transitive closure of strict journeys (G * st) or non-strict journeys (G *) as the edges are examined; these are streaming algorithms. They stop their execution whenever temporal connectivity is satisfied (or after the whole graph has been examined). A by-product of the execution is to make G * st and G * available for further connectivity queries (in a temporal version), these queries being then reduced to simple adjacency tests in a static graph.
Computing a (short) path between two vertices is one of the most fundamental primitives in graph ... more Computing a (short) path between two vertices is one of the most fundamental primitives in graph algorithmics. In recent years, the study of paths in temporal graphs, that is, graphs where the vertex set is fixed but the edge set changes over time, gained more and more attention. A path is time-respecting, or temporal, if it uses edges with non-decreasing time stamps. We investigate a basic constraint for temporal paths, where the time spent at each vertex must not exceed a given duration ∆, referred to as ∆-restless temporal paths. This constraint arises naturally in the modeling of real-world processes like packet routing in communication networks and infection transmission routes of diseases where recovery confers lasting resistance. While finding temporal paths without waiting time restrictions is known to be doable in polynomial time, we show that the "restless variant" of this problem becomes computationally hard even in very restrictive settings. For example, it is W[1]-hard when parameterized by the distance to disjoint path of the underlying graph, which implies W[1]-hardness for many other parameters like feedback vertex number and pathwidth. A natural question is thus whether the problem becomes tractable in some natural settings. We explore several natural parameterizations, presenting FPT algorithms for three kinds of parameters: (1) output-related parameters (here, the maximum length of the path), (2) classical parameters applied to the underlying graph (e.g., feedback edge number), and (3) a new parameter called timed feedback vertex number, which captures finer-grained temporal features of the input temporal graph, and which may be of interest beyond this work. 2012 ACM Subject Classification Mathematics of computing → Graph algorithms Keywords and phrases Temporal graphs, disease spreading, waiting-time policies, restless temporal paths, timed feedback vertex set, NP-hard problems, parameterized algorithms Funding Arnaud Casteigts: Supported by the ANR, project ESTATE (ANR-16-CE25-0009-03).
A graph whose edges only appear at certain points in time is called a temporal graph (among other... more A graph whose edges only appear at certain points in time is called a temporal graph (among other names). Such a graph is temporally connected if each ordered pair of vertices is connected by a path which traverses edges in chronological order (i.e., a temporal path). In this paper, we consider a simple model of random temporal graph, obtained from an Erdős-Rényi random graph G ∼ G n,p by considering a random permutation π of the edges and interpreting the ranks in π as presence times. We give a thorough study of the temporal connectivity of such graphs and derive implications for the existence of several kinds of sparse spanners. It turns out that temporal reachability in this model exhibits a surprisingly regular sequence of thresholds. In particular, we show that, at p = log n/n, any fixed pair of vertices can a.a.s. reach each other; at 2 log n/n, at least one vertex (and in fact, any fixed vertex) can a.a.s. reach all others; and at 3 log n/n, all the vertices can a.a.s. reach each other, i.e., the graph is temporally connected. Furthermore, the graph admits a temporal spanner of size 2n + o(n) as soon as it becomes temporally connected, which is nearly optimal as 2n -4 is a lower bound. This result is quite significant because temporal graphs do not admit spanners of size O(n) in general (Kempe, Kleinberg, Kumar, STOC 2000). In fact, they do not even always admit spanners of size o(n 2 ) (Axiotis, Fotakis, ICALP 2016). Thus, our result implies that the obstructions found in these works, and more generally, any non-negligible obstruction, is statistically insignificant: nearly optimal spanners always exist in random temporal graphs. All the above thresholds are sharp. Carrying the study of temporal spanners a step further, we show that pivotal spanners-i.e., spanners of size 2n -2 composed of two spanning trees glued at a single vertex (one descending in time, the other ascending subsequently)-exist a.a.s. at 4 log n/n, this threshold being also sharp. Finally, we show that optimal spanners (of size 2n -4) also exist a.a.s. at p = 4 log n/n. Whether this value is a sharp threshold is open; we conjecture that it is. For completeness, we compare the above results to existing results in related areas, including edge-ordered graphs, gossip theory, and population protocols, showing that our results can be interpreted in these settings as well, and that in some cases, they improve known results therein. Finally, we discuss an intriguing connection between our results and Janson's celebrated results on percolation in weighted graphs.
Beaucoup de réseaux dynamiques sont constitués d'entités durables dont les liens évoluent à trave... more Beaucoup de réseaux dynamiques sont constitués d'entités durables dont les liens évoluent à travers le temps. D'un point de vue global et discret, ces réseaux se modélisent bien sous forme d'un graphe évolutif, c'est à dire une suite de graphes G = {G 1 , G 2 , ..., G δ } telle que G i = (V, E i) représente la topologie du réseau pendant la période i. Une telle suite est dite T-intervalle connexe si pour tout t ∈ [1, δ − T + 1] les graphes G t , G t+1 , ..., G t+T −1 partagent un même sous-graphe couvrant connexe. Dans cet article, nous étudions le problème de décider si une suite G donnée est Tintervalle connexe pour un T donné. Nous étudions également la variante où T n'est pas donné et il s'agit de trouver le plus grand T tel que G est T-intervalle connexe. Nous supposons que les changements entre deux graphes consécutifs sont arbitraires, et que deux opérations (intersection binaire et test de connexité) sont utilisées comme briques de base. Nous montrons que Ω(δ) de ces opérations sont nécessaires pour les deux variantes et présentons des solutions qui en utilisent O(δ) également. Ces solutions sont donc optimales à une constante multiplicative près.
JBOTSIM is a java library that offers basic primitives for prototyping, running, and visualizing ... more JBOTSIM is a java library that offers basic primitives for prototyping, running, and visualizing distributed algorithms in dynamic networks. With JBOTSIM, one can implement an idea in minutes and interact with it (e.g., add, move, or delete nodes) while it is running. JBOTSIM is well suited to prepare live demonstrations of algorithms to colleagues or students; it can also be used to evaluate performance at the algorithmic level (number of messages, number of rounds, etc.). Unlike most simulation tools, JBOTSIM is not an integrated environment. It is a lightweight library to be used in java programs. In this paper, I present an overview of its distinctive features and architecture.
Highly dynamic networks are characterized by frequent changes in the availability of communicatio... more Highly dynamic networks are characterized by frequent changes in the availability of communication links. These networks are often partitioned into several components, which split and merge unpredictably. We present a distributed algorithm that maintains a forest of (as few as possible) spanning trees in such a network, with no restriction on the rate of change. Our algorithm is inspired by highlevel graph transformations, which we adapt here in a (synchronous) message passing model for dynamic networks. The resulting algorithm has the following properties: First, every decision is purely local-in each round, a node only considers its role and that of its neighbors in the tree, with no further information propagation (in particular, no wave mechanisms). Second, whatever the rate and scale of the changes, the algorithm guarantees that, by the end of every round, the network is covered by a forest of spanning trees in which 1) no cycle occur, 2) every node belongs to exactly one tree, and 3) every tree contains exactly one root (or token). We primarily focus on the correctness of this algorithm, which is established rigorously. While performance is not the main focus, we suggest new complexity metrics for such problems, and report on preliminary experimentation results validating our algorithm in a practical scenario. * A preliminary version of this work (without proofs of correctness and much revisited since) was presented at the 18th Int. Conf. on Principles of Distributed Systems (OPODIS, 2014).
The consensus problem is a fundamental paradigm in distributed systems, because it captures the d... more The consensus problem is a fundamental paradigm in distributed systems, because it captures the difficulty to solve other agreement problems. Many current systems evolve with time, e.g., due to node mobility, and consensus has been little studied in these systems so far. Specifically, it is not well established how to define an appropriate set of assumptions for consensus in dynamic distributed systems. This paper studies a hierarchy of three classes of time-varying graphs, and provides a solution for each class to the problem of Terminating Reliable Broadcast (TRB). The classes introduce increasingly stronger assumptions on timeliness, so that the trade-off between weakness versus implementability and efficiency can be analysed. Being TRB equivalent to consensus in synchronous systems, the paper extends this equivalence to dynamic systems.
HAL is a multi-disciplinary open access archive for the deposit and dissemination of scientific r... more HAL is a multi-disciplinary open access archive for the deposit and dissemination of scientific research documents, whether they are published or not. The documents may come from teaching and research institutions in France or abroad, or from public or private research centers. L'archive ouverte pluridisciplinaire HAL, est destinée au dépôt et à la diffusion de documents scientifiques de niveau recherche, publiés ou non, émanant des établissements d'enseignement et de recherche français ou étrangers, des laboratoires publics ou privés.
Computing a (short) path between two vertices is one of the most fundamental primitives in graph ... more Computing a (short) path between two vertices is one of the most fundamental primitives in graph algorithmics. In recent years, the study of paths in temporal graphs, that is, graphs where the vertex set is fixed but the edge set changes over time, gained more and more attention. A path is time-respecting, or temporal, if it uses edges with non-decreasing time stamps. We investigate a basic constraint for temporal paths, where the time spent at each vertex must not exceed a given duration , referred to as-restless temporal paths. This constraint arises naturally in the modeling of real-world processes like packet routing in communication networks and infection transmission routes of diseases where recovery confers lasting resistance. While finding temporal paths without waiting time restrictions is known to be doable in polynomial time, we show that the "restless variant" of this problem becomes computationally hard even in very restrictive settings. For example, it is W[1]-hard when parameterized by the distance to disjoint path of the underlying graph, which implies W[1]-hardness for many other parameters like feedback vertex number and pathwidth. A natural question is thus whether the problem becomes tractable in some natural settings. We explore several natural parameterizations, presenting FPT algorithms for three kinds of parameters: (1) output-related parameters (here, the maximum length of the path), (2) classical parameters applied to the underlying graph (e.g., feedback edge number), and (3) a new parameter called timed feedback vertex number, which captures finer-grained temporal features of the input temporal graph, and which may be of interest beyond this work.
The development of applications that target dynamic networks often adresses the same difficulties... more The development of applications that target dynamic networks often adresses the same difficulties. Since the underlying network topology is unstable, the application has to handle it in a contextreactive manner, and, when possible, with algorithms that are localized and decentralized. The present paper shows how the DA-GRS model, that is a high level abstract model for localized graph algorithms, can be used to drastically improve the development time of self-organized systems. The canonical method that is proposed makes use of generic pieces of code, along with some additional code generation. All the concepts presented here are illustrated by means of a spanning forest algorithm, that can then be used by the application at a high abstraction level.
Besides the complexity in time or in number of messages, a common approach for analyzing distribu... more Besides the complexity in time or in number of messages, a common approach for analyzing distributed algorithms is to look at their assumptions on the underlying network. This paper focuses on the study of such assumptions in dynamic networks, where the connectivity is expected to change, predictably or not, during the execution. Our main contribution is a theoretical framework dedicated to such analysis. By combining several existing components (local computations, graph relabellings, and evolving graphs), this framework allows to express detailed properties on the network dynamics and to prove that a given property is necessary, or sufficient, for the success of an algorithm. Consequences of this work include (i) the possibility to compare distributed algorithms on the basis of their topological requirements, (ii) the elaboration of a formal classification of dynamic networks with respect to these properties, and (iii) the possibility to check automatically whether a network trace belongs to one of the classes, and consequently to know which algorithm should run on it.
Let G = (V, E) be an undirected graph on n vertices and λ : E → 2 N a mapping that assigns to eve... more Let G = (V, E) be an undirected graph on n vertices and λ : E → 2 N a mapping that assigns to every edge a non-empty set of integer labels (discrete times when the edge is present). Such a labelled graph G = (G, λ) is temporally connected if a path exists with non-decreasing times from every vertex to every other vertex. In a seminal paper, Kempe, Kleinberg, and Kumar [17] asked whether, given such a temporally connected graph, a sparse subset of edges always exists whose labels suffice to preserve temporal connectivity -a temporal spanner. Axiotis and Fotakis answered negatively by exhibiting a family of Θ(n 2 )-dense temporal graphs which admit no temporal spanner of density o(n 2 ). In this paper, we give the first positive answer as to the existence of o(n 2 )-sparse spanners in a dense class of temporal graphs, by showing (constructively) that if G is a complete graph, then one can always find a temporal spanner with O(n log n) edges. * This article is the full version of an article presented at ICALP 2019 [9]. This paper is best read in colour. If this is not possible, the colour "green" appears with a lighter tone than the colour "red", making their interpretation possible.
This paper revisits two classical distributed problems in anonymous networks, namely spanning tre... more This paper revisits two classical distributed problems in anonymous networks, namely spanning tree construction and topology recognition, from the point of view of graph covering theory. For both problems, we characterize necessary and sufficient conditions on the communication graph in terms of directed symmetric coverings. These characterizations answer a long-standing open question posed by Yamashita and Kameda [YK96], and shed new light on the connection between coverings and the concepts of views and quotient graphs developed by the same authors. Characterizing conditions in terms of coverings is significant because it connects the field with a vast body of classical literature in graph theory and algebraic topology. In particular, it gives access to powerful tools such as Reidemeister's theorem and Mazurkiewicz's algorithm. Combined together, these tools allow us to present elegant proofs of otherwise intricate results, and their constructive nature makes them effectively usable in the algorithms. This paper also gives us the opportunity to present the field of covering theory in a pedagogical way, with a focus on the two aforementioned tools, whose potential impact goes beyond the specific problems considered in this work.
HAL (Le Centre pour la Communication Scientifique Directe), Jun 3, 2014
Nous considérons le problème de tester si un graphe dynamique donné est temporellement connexe, i... more Nous considérons le problème de tester si un graphe dynamique donné est temporellement connexe, i.e. s'il existe un chemin temporel (aussi appelé trajet) entre toute paire de sommets. Nous considérons une version simplifiée du problème où la dynamique est représentée par un graphe évolutif non-temporisé G = {G 1 , G 2 , ..., G δ } dont l'ensemble des sommets est invariant et les arêtes sont orientées (arcs). Deux variantes du problème sont étudiées, selon que l'on autorise la traversée consécutive d'un seul ou d'un nombre illimité d'arcs à chaque étape (trajets stricts vs non-stricts). Dans le cas des trajets stricts, deux algorithmes pré-existants pour d'autres problèmes peuvent être adaptés. Cependant, nous montrons qu'une approche dédiée permet d'obtenir une meilleure complexité en temps que le premier algorithme dans tous les cas, et que le second dans certaines familles de graphes, notamment les graphes dont la densité est faible à tout instant (bien que potentiellement élevée à travers le temps). La complexité de notre algorithme est en O(δµn), où δ est le nombre d'étapes |G| et µ = max(|E i |) est le nombre maximal d'arcs pouvant exister à un instant donné. Ce paramètre est à contraster avec m = | ∪ E i |, l'union de tous les arcs apparaissant au cours du temps. En effet, il n'est pas rare qu'un scénario de mobilité exhibe à la fois un µ petit et un m grand. Nous caractérisons les principales valeurs charnières de δ, µ et m permettant de décider quel algorithme utiliser. Dans le cas des trajets non-stricts, pour lesquels nous ne connaissons pas d'algorithme existant, nous montrons que notre algorithme peut être adapté pour répondre à la question, et ce, toujours en O(δµn). Nos deux algorithmes construisent graduellement la fermeture transitive des trajets stricts (notée G * st) ou non-stricts (notée G *) à mesure que les arcs sont examinés. Ce sont des algorithmes de type streaming qui sont aussi capables d'arrêter leur exécution sitôt la connexité temporelle atteinte. Un sous-produit intéressant est de rendre G * st et G * disponibles pour de futures requêtes d'accessibilité temporelle de type source-destination.
We investigate a special case of hereditary property that we refer to as robustness. A property i... more We investigate a special case of hereditary property that we refer to as robustness. A property is robust in a given graph if it is inherited by all connected spanning subgraphs of this graph. We motivate this definition in different contexts, showing that it plays a central role in highly dynamic networks, although the problem is defined in terms of classical (static) graph theory. In this paper, we focus on the robustness of maximal independent sets (MIS). Following the above definition, a MIS is said to be robust (RMIS) if it remains a valid MIS in all connected spanning subgraphs of the original graph. We characterize the class of graphs in which all possible MISs are robust. We show that, in these particular graphs, the problem of finding a robust MIS is local; that is, we present an RMIS algorithm using only a sublogarithmic number of rounds (in the number of nodes n) in the LOCAL model. On the negative side, we show that, in general graphs, the problem is not local. Precisely, we prove a Ω(n) lower bound on the number of rounds required for the nodes to decide consistently in some graphs. This result implies a separation between the RMIS problem and the MIS problem in general graphs. It also implies that any strategy in this case is asymptotically (in order) as bad as collecting all the network information at one node and solving the problem in a centralized manner. Motivated by this observation, we present a centralized algorithm that computes a robust MIS in a given graph, if one exists, and rejects otherwise. Significantly, this algorithm requires only a polynomial amount of local computation time, despite the fact that exponentially many MISs and exponentially many connected spanning subgraphs may exist.
This document is the first part of the author's habilitation thesis (HDR) [37], defended on June ... more This document is the first part of the author's habilitation thesis (HDR) [37], defended on June 4, 2018 at the University of Bordeaux. Given the nature of this document, the contributions that involve the author have been emphasized; however, these four chapters were specifically written for distribution to a larger audience. We hope they can serve as a broad introduction to the domain of highly dynamic networks, with a focus on temporal graph concepts and their interaction with distributed computing.
Besides the complexity in time or in number of messages, a common approach for analyzing distribu... more Besides the complexity in time or in number of messages, a common approach for analyzing distributed algorithms is to look at the assumptions they make on the underlying network. We investigate this question from the perspective of network dynamics. In particular, we ask how a given property on the evolution of the network can be rigorously proven as necessary or sufficient for a given algorithm. The main contribution of this paper is to propose the combination of two existing tools in this direction: local computations by means of graph relabelings, and evolving graphs. Such a combination makes it possible to express fine-grained properties on the network dynamics, then examine what impact those properties have on the execution at a precise, intertwined, level. We illustrate the use of this framework through the analysis of three simple algorithms, then discuss general implications of this work, which include (i) the possibility to compare distributed algorithms on the basis of their topological requirements, (ii) a formal hierarchy of dynamic networks based on these requirements, and (iii) the potential for mechanization induced by our framework, which we believe opens a door towards automated analysis and decision support in dynamic networks.
Besides the complexity in time or in number of messages, a common approach for analyzing distribu... more Besides the complexity in time or in number of messages, a common approach for analyzing distributed algorithms is to look at the assumptions they make on the underlying network. We investigate this question from the perspective of network dynamics. In particular, we ask how a given property on the evolution of the network can be rigorously proven as necessary or sufficient for a given algorithm. The main contribution of this paper is to propose the combination of two existing tools in this direction: local computations by means of graph relabelings, and evolving graphs. Such a combination makes it possible to express fine-grained properties on the network dynamics, then examine what impact those properties have on the execution at a precise, intertwined, level. We illustrate the use of this framework through the analysis of three simple algorithms, then discuss general implications of this work, which include (i) the possibility to compare distributed algorithms on the basis of their topological requirements, (ii) a formal hierarchy of dynamic networks based on these requirements, and (iii) the potential for mechanization induced by our framework, which we believe opens a door towards automated analysis and decision support in dynamic networks.
We address the problem of testing whether a given dynamic graph is temporally connected, i.e. a t... more We address the problem of testing whether a given dynamic graph is temporally connected, i.e. a temporal path (also called a journey) exists between all pairs of vertices. We consider a discrete version of the problem, where the topology is given as an evolving graph G = {G1, G2, ..., G k } whose set of vertices is invariant and the set of (directed) edges varies over time. Two cases are studied, depending on whether a single edge or an unlimited number of edges can be crossed in a same Gi (strict journeys vs non-strict journeys). In the case of strict journeys, a number of existing algorithms designed for more general problems can be adapted. We adapt one of them to the above formulation of the problem and characterize its running time complexity. The parameters of interest are the length of the graph sequence k = |G|, the maximum instant density µ = max(|Ei|), and the cumulated density m = | ∪ Ei|. Our algorithm has a time complexity of O(kµn), where n is the number of nodes. This complexity is compared to that of the other solutions: one is always more costly (keep in mind that is solves a more general problem), the other one is more or less costly depending on the interplay between instant density and cumulated density. The length k of the sequence also plays a role. We characterize the key values of k, µ and m for which either algorithm should be used. Our solution is relevant for sparse mobility scenario (e.g. robots or UAVs exploring an area) where the number of neighbors at a given time is low, though many nodes can be seen over the whole execution. In the case of non-strict journeys, for which no algorithm is known, we show that some pre-processing of the input graph allows us to re-use the same algorithm than before. By chance, these operations happens to cost again O(kµn) time, which implies that the second problem is not more difficult than the first. Both algorithms gradually build the transitive closure of strict journeys (G * st) or non-strict journeys (G *) as the edges are examined; these are streaming algorithms. They stop their execution whenever temporal connectivity is satisfied (or after the whole graph has been examined). A by-product of the execution is to make G * st and G * available for further connectivity queries (in a temporal version), these queries being then reduced to simple adjacency tests in a static graph.
Computing a (short) path between two vertices is one of the most fundamental primitives in graph ... more Computing a (short) path between two vertices is one of the most fundamental primitives in graph algorithmics. In recent years, the study of paths in temporal graphs, that is, graphs where the vertex set is fixed but the edge set changes over time, gained more and more attention. A path is time-respecting, or temporal, if it uses edges with non-decreasing time stamps. We investigate a basic constraint for temporal paths, where the time spent at each vertex must not exceed a given duration ∆, referred to as ∆-restless temporal paths. This constraint arises naturally in the modeling of real-world processes like packet routing in communication networks and infection transmission routes of diseases where recovery confers lasting resistance. While finding temporal paths without waiting time restrictions is known to be doable in polynomial time, we show that the "restless variant" of this problem becomes computationally hard even in very restrictive settings. For example, it is W[1]-hard when parameterized by the distance to disjoint path of the underlying graph, which implies W[1]-hardness for many other parameters like feedback vertex number and pathwidth. A natural question is thus whether the problem becomes tractable in some natural settings. We explore several natural parameterizations, presenting FPT algorithms for three kinds of parameters: (1) output-related parameters (here, the maximum length of the path), (2) classical parameters applied to the underlying graph (e.g., feedback edge number), and (3) a new parameter called timed feedback vertex number, which captures finer-grained temporal features of the input temporal graph, and which may be of interest beyond this work. 2012 ACM Subject Classification Mathematics of computing → Graph algorithms Keywords and phrases Temporal graphs, disease spreading, waiting-time policies, restless temporal paths, timed feedback vertex set, NP-hard problems, parameterized algorithms Funding Arnaud Casteigts: Supported by the ANR, project ESTATE (ANR-16-CE25-0009-03).
Uploads
Papers by Arnaud Casteigts