1,308 research outputs found
Matching Is as Easy as the Decision Problem, in the NC Model
Is matching in NC, i.e., is there a deterministic fast parallel algorithm for
it? This has been an outstanding open question in TCS for over three decades,
ever since the discovery of randomized NC matching algorithms [KUW85, MVV87].
Over the last five years, the theoretical computer science community has
launched a relentless attack on this question, leading to the discovery of
several powerful ideas. We give what appears to be the culmination of this line
of work: An NC algorithm for finding a minimum-weight perfect matching in a
general graph with polynomially bounded edge weights, provided it is given an
oracle for the decision problem. Consequently, for settling the main open
problem, it suffices to obtain an NC algorithm for the decision problem. We
believe this new fact has qualitatively changed the nature of this open
problem.
All known efficient matching algorithms for general graphs follow one of two
approaches: given by Edmonds [Edm65] and Lov\'asz [Lov79]. Our oracle-based
algorithm follows a new approach and uses many of the ideas discovered in the
last five years.
The difficulty of obtaining an NC perfect matching algorithm led researchers
to study matching vis-a-vis clever relaxations of the class NC. In this vein,
recently Goldwasser and Grossman [GG15] gave a pseudo-deterministic RNC
algorithm for finding a perfect matching in a bipartite graph, i.e., an RNC
algorithm with the additional requirement that on the same graph, it should
return the same (i.e., unique) perfect matching for almost all choices of
random bits. A corollary of our reduction is an analogous algorithm for general
graphs.Comment: Appeared in ITCS 202
Locally Optimal Load Balancing
This work studies distributed algorithms for locally optimal load-balancing:
We are given a graph of maximum degree , and each node has up to
units of load. The task is to distribute the load more evenly so that the loads
of adjacent nodes differ by at most .
If the graph is a path (), it is easy to solve the fractional
version of the problem in communication rounds, independently of the
number of nodes. We show that this is tight, and we show that it is possible to
solve also the discrete version of the problem in rounds in paths.
For the general case (), we show that fractional load balancing
can be solved in rounds and discrete load
balancing in rounds for some function , independently of the
number of nodes.Comment: 19 pages, 11 figure
Linear Programming in the Semi-streaming Model with Application to the Maximum Matching Problem
In this paper, we study linear programming based approaches to the maximum
matching problem in the semi-streaming model. The semi-streaming model has
gained attention as a model for processing massive graphs as the importance of
such graphs has increased. This is a model where edges are streamed-in in an
adversarial order and we are allowed a space proportional to the number of
vertices in a graph.
In recent years, there has been several new results in this semi-streaming
model. However broad techniques such as linear programming have not been
adapted to this model. We present several techniques to adapt and optimize
linear programming based approaches in the semi-streaming model with an
application to the maximum matching problem. As a consequence, we improve
(almost) all previous results on this problem, and also prove new results on
interesting variants
Faster Algorithms for the Maximum Common Subtree Isomorphism Problem
The maximum common subtree isomorphism problem asks for the largest possible
isomorphism between subtrees of two given input trees. This problem is a
natural restriction of the maximum common subgraph problem, which is -hard in general graphs. Confining to trees renders polynomial time
algorithms possible and is of fundamental importance for approaches on more
general graph classes. Various variants of this problem in trees have been
intensively studied. We consider the general case, where trees are neither
rooted nor ordered and the isomorphism is maximum w.r.t. a weight function on
the mapped vertices and edges. For trees of order and maximum degree
our algorithm achieves a running time of by
exploiting the structure of the matching instances arising as subproblems. Thus
our algorithm outperforms the best previously known approaches. No faster
algorithm is possible for trees of bounded degree and for trees of unbounded
degree we show that a further reduction of the running time would directly
improve the best known approach to the assignment problem. Combining a
polynomial-delay algorithm for the enumeration of all maximum common subtree
isomorphisms with central ideas of our new algorithm leads to an improvement of
its running time from to ,
where is the order of the larger tree, is the number of different
solutions, and is the minimum of the maximum degrees of the input
trees. Our theoretical results are supplemented by an experimental evaluation
on synthetic and real-world instances
Coresets Meet EDCS: Algorithms for Matching and Vertex Cover on Massive Graphs
As massive graphs become more prevalent, there is a rapidly growing need for
scalable algorithms that solve classical graph problems, such as maximum
matching and minimum vertex cover, on large datasets. For massive inputs,
several different computational models have been introduced, including the
streaming model, the distributed communication model, and the massively
parallel computation (MPC) model that is a common abstraction of
MapReduce-style computation. In each model, algorithms are analyzed in terms of
resources such as space used or rounds of communication needed, in addition to
the more traditional approximation ratio.
In this paper, we give a single unified approach that yields better
approximation algorithms for matching and vertex cover in all these models. The
highlights include:
* The first one pass, significantly-better-than-2-approximation for matching
in random arrival streams that uses subquadratic space, namely a
-approximation streaming algorithm that uses space
for constant .
* The first 2-round, better-than-2-approximation for matching in the MPC
model that uses subquadratic space per machine, namely a
-approximation algorithm with memory per
machine for constant .
By building on our unified approach, we further develop parallel algorithms
in the MPC model that give a -approximation to matching and an
-approximation to vertex cover in only MPC rounds and
memory per machine. These results settle multiple open
questions posed in the recent paper of Czumaj~et.al. [STOC 2018]
- …