1,720,974 research outputs found
Strong connectivity in directed graphs under failures, with applications
In this paper, we investigate some basic connectivity problems in directed graphs (digraphs). Let G be a digraph with m edges and n vertices, and let Gsetminus e (resp., Gsetminus v) be the digraph obtained after deleting edge e (resp., vertex v) from G. As a first result, we show how to compute in O(m+ n) worst-case time: the total number of strongly connected components in Gsetminus e (resp., Gsetminus v) for all edges e (resp., for all vertices v) in G. Let G be strongly connected. We say that edge e (resp., vertex v) separates two vertices x and y if x and y are no longer strongly connected in G setminus e (resp., Gsetminus v). As a second set of results, we show how to build in O(m+n) time O(n)-space data structures that can answer in optimal time the following basic connectivity queries on digraphs: report in O(n) worst-case time all the strongly connected components of G setminus e (resp., G setminus v) for a query edge e (resp., vertex v); test whether an edge or a vertex separates two query vertices in O(1) worst-case time; report all edges (resp., vertices) that separate two query vertices in optimal worst-case time, i.e., in time O(k), where k is the number of separating edges (resp., separating vertices). (For k = 0, the time is O(1).) All our bounds are tight and are obtained with a common algorithmic framework, based on a novel compact representation of the decompositions induced by the 1-connectivity (i.e., 1-edge and 1-vertex) cuts in digraphs, which might be of independent interest. With the help of our data structures we can design efficient algorithms for several other connectivity problems on digraphs and we can also obtain in linear time a strongly connected spanning subgraph of G with O(n) edges that maintains the 1-connectivity cuts of G and the decompositions induced by those cuts
2-Vertex connectivity in directed graphs
Given a directed graph, two vertices v and w are 2-vertex-connected if there are two internally vertex-disjoint paths from v to w and two internally vertex-disjoint paths from w to v. In this paper, we show how to compute this relation in O(m + n) time, where n is the number of vertices and m is the number of edges of the graph. As a side result, we show how to build in linear time an O(n)-space data structure, which can answer in constant time queries on whether any two vertices are 2-vertex-connected. Additionally, when two query vertices v and w are not 2-vertex-connected, our data structure can produce in constant time a "witness" of this property, by exhibiting a vertex or an edge that is contained in all paths from v to w or in all paths from w to v. We are also able to compute in linear time a sparse certificate for 2-vertex connectivity, i.e., a subgraph of the input graph that has O(n) edges and maintains the same 2-vertex connectivity properties as the input graph
Approximating the smallest spanning subgraph for 2-edge-connectivity in directed graphs
Let G be a strongly connected directed graph. We consider the following three problems, where we wish to compute the smallest strongly connected spanning subgraph of G that maintains respectively: the 2-edge-connected blocks of G (2EC-B); the 2-edge-connected components of G (2EC-C); both the 2-edge-connected blocks and the 2-edge-connected components of G (2EC-B-C). All three problems are NP-hard, and thus we are interested in efficient approximation algorithms. For 2EC-C we can obtain a 3/2-approximation by combining previously known results. For 2EC-B and 2EC-B-C, we present new 4- approximation algorithms that run in linear time. We also propose various heuristics to improve the size of the computed subgraphs in practice, and conduct a thorough experimental study to assess their merits in practical scenarios
2-Edge connectivity in directed graphs
Edge and vertex connectivity are fundamental concepts in graph theory. While they have been thoroughly studied in the case of undirected graphs, surprisingly, not much has been investigated for directed graphs. In this article, we study 2-edge connectivity problems in directed graphs and, in particular, we consider the computation of the following natural relation: We say that two vertices v and w are 2-edge-connected if there are two edge-disjoint paths from v to w and two edge-disjoint paths from w to v. This relation partitions the vertices into blocks such that all vertices in the same block are 2-edge-connected. Differently from the undirected case, those blocks do not correspond to the 2-edge-connected components of the graph. The main result of this article is an algorithm for computing the 2-edge-connected blocks of a directed graph in linear time. Besides being asymptotically optimal, our algorithm improves significantly over previous bounds. Once the 2-edge-connected blocks are available, we can test in constant time if two vertices are 2-edge-connected. Additionally, when two query vertices v and w are not 2-edge-connected, we can produce in constant time a "witness" of this property by exhibiting an edge that is contained in all paths from v to w or in all paths from w to v. We are also able to compute in linear time a sparse certificate for this relation, i.e., a subgraph of the input graph that has O(n) edges and maintains the same 2-edge-connected blocks as the input graph, where n is the number of vertices
2-Connectivity in directed graphs: an experimental study
Graph connectivity is a fundamental concept in graph theory with numerous practical applications. Very recently, various notions of 2-connectivity in directed graphs (digraphs) have been introduced. In particular, 2-connectivity revealed to have a much richer and more complicated structure in directed graphs than in undirected graphs. In this paper we consider the computation of the 2-connected components and the 2-connected blocks of a digraph in practice, in the case of both edge and vertex connectivity. Specifically, we present efficient implementations of previously proposed and of new algorithms for computing the 2-vertex-connected components and the 2-vertex-connected blocks, the 2-edge-connected components and the 2-edge-connected blocks, and evaluate their performance experimentally on large digraphs taken from a variety of application areas. To the best of our knowledge, this is the first empirical study for these problems. Our extensive experimental study sheds light on the relative difficulty of computing these notions of 2-connectivity in digraphs in practice. Furthermore, our experimental results suggest that the 2-vertex- and 2-edge-connected components of digraphs that arise in many practical applications can be found efficiently, despite the fact that currently the best known asymptotical bound for their computation is O(mn)
Faster algorithms for computing maximal 2-connected subgraphs in sparse directed graphs
Connectivity related concepts are of fundamental interest in graph theory. The area has received extensive attention over four decades, but many problems remain unsolved, especially for directed graphs. A directed graph is 2-edge-connected (resp., 2-vertex-connected) if the removal of any edge (resp., vertex) leaves the graph strongly connected. In this paper we present improved algorithms for computing the maximal 2-edge and 2- vertex-connected subgraphs of a given directed graph. These problems were first studied more than 35 years ago, with eO(mn) time algorithms for graphs with m edges and n vertices being known since the late 1980s. In contrast, the same problems for undirected graphs are known to be solvable in linear time. Henzinger et al. [ICALP 2015] recently introduced O(n2) time algo- rithms for the directed case, thus improving the running times for dense graphs. Our new algorithms run in time O(m3=2), which further improves the running times for sparse graphs. The notion of 2-connectivity naturally generalizes to k-connectivity for k > 2. For constant values of k, we extend one of our algorithms to compute the maximal k-edge-connected in time O(m3=2 log n), improving again for sparse graphs the best known algorithm by Henzinger et al. [ICALP 2015] that runs in O(n2 log n) time
Sparse subgraphs for 2-connectivity in directed graphs
Let G be a strongly connected directed graph. We consider the problem of computing the smallest strongly connected spanning subgraph of G that maintains the pairwise 2-vertex-connectivity of G, i.e., the 2-vertex-connected blocks of G (2VC-B). We provide linear-time approximation algorithms for this problem that achieve an approximation ratio of 6. Based on these algorithms, we show how to approximate, in linear time, within a factor of 6 the smallest strongly connected spanning subgraph of G that maintains respectively: both the 2-vertexconnected blocks and the 2-vertex-connected components of G (2VC-BC); all the 2-connectivity relations of G (2C), i.e., both the 2-vertexand the 2-edge-connected components and blocks. Moreover, we provide heuristics that improve the size of the computed subgraphs in practice, and conduct a thorough experimental study to assess their merits in practical scenarios
Computing 2-Connected components and maximal 2-Connected subgraphs in directed graphs: An experimental study
Motivated by very recent work on 2-connectivity in directed graphs, we revisit the problem of computing the 2-edge- and 2-vertex-connected components, and the maximal 2-edge- and 2-vertex-connected subgraphs of a directed graph G. We explore the design space for efficient algorithms in practice, based on recently proposed techniques, and conduct a thorough empirical study to highlight the merits and weaknesses of each technique
Collaborative Procrastination
The problem of inconsistent planning in decision making, which leads to undesirable effects such as procrastination, has been studied in the behavioral-economics literature, and more recently in the context of computational behavioral models. Individuals, however, do not function in isolation, and successful projects most often rely on team work. Team performance does not depend only on the skills of the individual team members, but also on other collective factors, such as team spirit and cohesion. It is not an uncommon situation (for instance, experienced by the authors while working on this paper) that a hard-working individual has the capacity to give a good example to her team-mates and motivate them to work harder.
In this paper we adopt the model of Kleinberg and Oren (EC'14) on time-inconsistent planning, and extend it to account for the influence of procrastination within the members of a team. Our first contribution is to model collaborative work so that the relative progress of the team members, with respect to their respective subtasks, motivates (or discourages) them to work harder. We compare the total cost of completing a team project when the team members communicate with each other about their progress, with the corresponding cost when they work in isolation. Our main result is a tight bound on the ratio of these two costs, under mild assumptions. We also show that communication can either increase or decrease the total cost.
We also consider the problem of assigning subtasks to team members, with the objective of minimizing the negative effects of collaborative procrastination. We show that whereas a simple problem of forming teams of two members can be solved in polynomial time, the problem of assigning n tasks to n agents is NP-hard
- …
