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.
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.
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.
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).
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.
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.
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.
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