329 research outputs found

    Finding All Global Minimum Cuts in Practice

    Get PDF
    We present a practically efficient algorithm that finds all global minimum cuts in huge undirected graphs. Our algorithm uses a multitude of kernelization rules to reduce the graph to a small equivalent instance and then finds all minimum cuts using an optimized version of the algorithm of Nagamochi, Nakao and Ibaraki. In shared memory we are able to find all minimum cuts of graphs with up to billions of edges and millions of minimum cuts in a few minutes. We also give a new linear time algorithm to find the most balanced minimum cuts given as input the representation of all minimum cuts

    Faster Algorithms for Edge Connectivity via Random 22-Out Contractions

    Full text link
    We provide a simple new randomized contraction approach to the global minimum cut problem for simple undirected graphs. The contractions exploit 2-out edge sampling from each vertex rather than the standard uniform edge sampling. We demonstrate the power of our new approach by obtaining better algorithms for sequential, distributed, and parallel models of computation. Our end results include the following randomized algorithms for computing edge connectivity with high probability: -- Two sequential algorithms with complexities O(mlogn)O(m \log n) and O(m+nlog3n)O(m+n \log^3 n). These improve on a long line of developments including a celebrated O(mlog3n)O(m \log^3 n) algorithm of Karger [STOC'96] and the state of the art O(mlog2n(loglogn)2)O(m \log^2 n (\log\log n)^2) algorithm of Henzinger et al. [SODA'17]. Moreover, our O(m+nlog3n)O(m+n \log^3 n) algorithm is optimal whenever m=Ω(nlog3n)m = \Omega(n \log^3 n). Within our new time bounds, whp, we can also construct the cactus representation of all minimal cuts. -- An O˜(n0.8D0.2+n0.9)\~O(n^{0.8} D^{0.2} + n^{0.9}) round distributed algorithm, where D denotes the graph diameter. This improves substantially on a recent breakthrough of Daga et al. [STOC'19], which achieved a round complexity of O˜(n11/353D1/353+n11/706)\~O(n^{1-1/353}D^{1/353} + n^{1-1/706}), hence providing the first sublinear distributed algorithm for exactly computing the edge connectivity. -- The first O(1)O(1) round algorithm for the massively parallel computation setting with linear memory per machine.Comment: algorithms and data structures, graph algorithms, edge connectivity, out-contractions, randomized algorithms, distributed algorithms, massively parallel computatio

    Finding Optimal 2-Packing Sets on Arbitrary Graphs at Scale

    Full text link
    A 2-packing set for an undirected graph G=(V,E)G=(V,E) is a subset SV\mathcal{S} \subset V such that any two vertices v1,v2Sv_1,v_2 \in \mathcal{S} have no common neighbors. Finding a 2-packing set of maximum cardinality is a NP-hard problem. We develop a new approach to solve this problem on arbitrary graphs using its close relation to the independent set problem. Thereby, our algorithm red2pack uses new data reduction rules specific to the 2-packing set problem as well as a graph transformation. Our experiments show that we outperform the state-of-the-art for arbitrary graphs with respect to solution quality and also are able to compute solutions multiple orders of magnitude faster than previously possible. For example, we are able to solve 63% of our graphs to optimality in less than a second while the competitor for arbitrary graphs can only solve 5% of the graphs in the data set to optimality even with a 10 hour time limit. Moreover, our approach can solve a wide range of large instances that have previously been unsolved

    Algorithmic Graph Theory

    Get PDF
    The main focus of this workshop was on mathematical techniques needed for the development of efficient solutions and algorithms for computationally difficult graph problems. The techniques studied at the workshhop included: the probabilistic method and randomized algorithms, approximation and optimization, structured families of graphs and approximation algorithms for large problems. The workshop Algorithmic Graph Theory was attended by 46 participants, many of them being young researchers. In 15 survey talks an overview of recent developments in Algorithmic Graph Theory was given. These talks were supplemented by 10 shorter talks and by two special sessions

    Broadcasting with Mobile Agents in Dynamic Networks

    Get PDF
    We study the standard communication problem of broadcast for mobile agents moving in a network. The agents move autonomously in the network and can communicate with other agents only when they meet at a node. In this model, broadcast is a communication primitive for information transfer from one agent, the source, to all other agents. Previous studies of this problem were restricted to static networks while, in this paper, we consider the problem in dynamic networks modelled as an evolving graph. The dynamicity of the graph is unknown to the agents; in each round an adversary selects which edges of the graph are available, and an agent can choose to traverse one of the available edges adjacent to its current location. The only restriction on the adversary is that the subgraph of available edges in each round must span all nodes; in other words the evolving graph is constantly connected. The agents have global visibility allowing them to see the location of other agents in the graph and move accordingly. Depending on the topology of the underlying graph, we determine how many agents are necessary and sufficient to solve the broadcast problem in dynamic networks. While two agents plus the source are sufficient for ring networks, much larger teams of agents are necessary for denser graphs such as grid graphs and hypercubes, and finally for complete graphs of n nodes at least n-2 agents plus the source are necessary and sufficient. We show lower bounds on the number of agents and provide some algorithms for solving broadcast using the minimum number of agents, for various topologies

    Calculo del clique-width en graficas simples de acuerdo a su estructura

    Get PDF
    El cálculo del cliquewidth, un número entero que es un invariante para gráficas, ha sido estudiado de manera activa, ya que existen problemas catalogados como NP-Completos que tienen complejidad baja si su representación en gráficas tiene cliquewidth acotado. De cierta manera este parametro mide la dificultad de descomponer una gráfica en una estructura llamada árbol (por su topología). La importancia de este invariante radica en que si un problema de gráficas puede ser acotado por ella entonces puede ser resuelto en tiempo polinomial según el teorema principal de Courcelle. Por otra parte el cliquewidth tiene una relación directa con el invariante tree-width con la distinción de que el primero es más general que el segundo. Para calcular este tipo de invariantes se han propuesto en la literatura diferentes procedimientos que dividen la gráfica original en subgráficas las cuales determinan la complejidad, por lo que en la investigación aquí reportada se ha utilizado una descomposición particular de una gráfica simple, la cual consiste en descomponer la gráfica en ciclos simples y árboles. Las gráficas que consisten de ciclos simples y árboles se denominan cactus, sobre las cuales hemos demostrado que el clique-width es menor o igual a 4 lo que mejora la cota establecida por la relación entre el clique-width y el invariante treewidth la cual establece que el cwd(G) ≤ 3·2twd(G)−1. De igual manera se han estudiado otro tipo de gráficas denominadas poligonales, formadas por polígonos con mismo número de lados los cuales comparten entre si una única arista; sobre este tipo de gráficas en esta investigación se ha demostrado que el cliquewidth es igual a 5, de igual manera mejorando la cota conocida por la relación de las invariantes mencionadas anteriormente. Finalmente, estudiando el comportamiento de operaciones de union de estas subgráficas se ha propuesto un método de aproximación para el cálculo del cliquewidth de una gráfica simple de manera general. El algoritmo esta basado en el clásico algoritmo de Disjktra que encuentra el camino mas corto entre dos vértices de una gráfica. Del planteamiento de los algoritmos mencionados anteriormente se obtuvo la publicación de tres artículos, en los que se incluye el desarrollo de las demostraciones para el cálculo del clique-width en los diferentes escenarios de estudio.CONACy
    corecore