862 research outputs found

    Optimal Dynamic Distributed MIS

    Full text link
    Finding a maximal independent set (MIS) in a graph is a cornerstone task in distributed computing. The local nature of an MIS allows for fast solutions in a static distributed setting, which are logarithmic in the number of nodes or in their degrees. The result trivially applies for the dynamic distributed model, in which edges or nodes may be inserted or deleted. In this paper, we take a different approach which exploits locality to the extreme, and show how to update an MIS in a dynamic distributed setting, either \emph{synchronous} or \emph{asynchronous}, with only \emph{a single adjustment} and in a single round, in expectation. These strong guarantees hold for the \emph{complete fully dynamic} setting: Insertions and deletions, of edges as well as nodes, gracefully and abruptly. This strongly separates the static and dynamic distributed models, as super-constant lower bounds exist for computing an MIS in the former. Our results are obtained by a novel analysis of the surprisingly simple solution of carefully simulating the greedy \emph{sequential} MIS algorithm with a random ordering of the nodes. As such, our algorithm has a direct application as a 33-approximation algorithm for correlation clustering. This adds to the important toolbox of distributed graph decompositions, which are widely used as crucial building blocks in distributed computing. Finally, our algorithm enjoys a useful \emph{history-independence} property, meaning the output is independent of the history of topology changes that constructed that graph. This means the output cannot be chosen, or even biased, by the adversary in case its goal is to prevent us from optimizing some objective function.Comment: 19 pages including appendix and reference

    Linear-Time Algorithms for Edge-Based Problems

    Get PDF
    There is a dearth of algorithms that deal with edge-based problems in trees, specifically algorithms for edge sets that satisfy a particular parameter. The goal of this thesis is to create a methodology for designing algorithms for these edge-based problems. We will present a variant of the Wimer method [Wimer et al. 1985] [Wimer 1987] that can handle edge properties. We call this variant the Wimer edge variant. The thesis is divided into three sections, the first being a chapter devoted to defining and discussing the Wimer edge variant in depth, showing how to develop an algorithm using this variant, and an example of this process, including a run of an algorithm developed using this method. The second section involves algorithms developed using the Wimer edge variant. We will provide algorithms for a variety of edge parameters, including four different matching parameters (connected, disconnected, induced and 2-matching), three different domination parameters (edge, total edge and edge-vertex) and two covering parameters (edge cover and edge cover irredundance). Each of these algorithms are discussed in detail and run in linear time. The third section involves an attempt to characterize the Wimer edge variant. We show how the variant can be applied to three classes of graphs: weighted trees, unicyclic graphs and generalized series-parallel graphs. For each of these classes, we detail what adaptations are required (if any) and design an algorithm, including showing a run on an example graph. The fourth chapter is devoted to a discussion of what qualities a parameter has to have in order to be likely to have a solution using the Wimer edge variant. Also in this chapter we discuss classes of graphs that can utilize the Wimer edge variant. Other topics discussed in this thesis include a literature review, and a discussion of future work. There are plenty of options for future work on this topic, which hopefully this thesis can inspire. The intent of this thesis is to provide the foundation for future algorithms and other work in this area

    Design of Self-Stabilizing Approximation Algorithms via a Primal-Dual Approach

    Get PDF
    Self-stabilization is an important concept in the realm of fault-tolerant distributed computing. In this paper, we propose a new approach that relies on the properties of linear programming duality to obtain self-stabilizing approximation algorithms for distributed graph optimization problems. The power of this new approach is demonstrated by the following results: - A self-stabilizing 2(1+?)-approximation algorithm for minimum weight vertex cover that converges in O(log? /(?log log ?)) synchronous rounds. - A self-stabilizing ?-approximation algorithm for maximum weight independent set that converges in O(?+log^* n) synchronous rounds. - A self-stabilizing ((2?+1)(1+?))-approximation algorithm for minimum weight dominating set in ?-arboricity graphs that converges in O((log?)/?) synchronous rounds. In all of the above, ? denotes the maximum degree. Our technique improves upon previous results in terms of time complexity while incurring only an additive O(log n) overhead to the message size. In addition, to the best of our knowledge, we provide the first self-stabilizing algorithms for the weighted versions of minimum vertex cover and maximum independent set

    NCUWM Talk Abstracts 2015

    Get PDF

    Self-Stabilizing Distributed Cooperative Reset

    Get PDF
    Self-stabilization is a versatile fault-tolerance approach that characterizes the ability of a system to eventually resume a correct behavior after any finite number of transient faults. In this paper, we propose a self-stabilizing reset algorithm working in anonymous networks. This algorithm resets the network in a distributed non-centralized manner, i.e., it is multi-initiator, as each process detecting an inconsistency may initiate a reset. It is also cooperative in the sense that it coordinates concurrent reset executions in order to gain efficiency. Our approach is general since our reset algorithm allows to build self-stabilizing solutions for various problems and settings. As a matter of facts, we show that it applies to both static and dynamic specifications since we propose efficient self-stabilizing reset-based algorithms for the (1-minimal) (f, g)-alliance (a generalization of the dominating set problem) in identified networks and the unison problem in anonymous networks. Notice that these two latter instantiations enhance the state of the art. Indeed, in the former case, our solution is more general than the previous ones, while in the latter case, the complexity of our unison algorithm is better than that of previous solutions of the literature

    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 S⊂V\mathcal{S} \subset V such that any two vertices v1,v2∈Sv_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

    Self-Stabilization in the Distributed Systems of Finite State Machines

    Get PDF
    The notion of self-stabilization was first proposed by Dijkstra in 1974 in his classic paper. The paper defines a system as self-stabilizing if, starting at any, possibly illegitimate, state the system can automatically adjust itself to eventually converge to a legitimate state in finite amount of time and once in a legitimate state it will remain so unless it incurs a subsequent transient fault. Dijkstra limited his attention to a ring of finite-state machines and provided its solution for self-stabilization. In the years following his introduction, very few papers were published in this area. Once his proposal was recognized as a milestone in work on fault tolerance, the notion propagated among the researchers rapidly and many researchers in the distributed systems diverted their attention to it. The investigation and use of self-stabilization as an approach to fault-tolerant behavior under a model of transient failures for distributed systems is now undergoing a renaissance. A good number of works pertaining to self-stabilization in the distributed systems were proposed in the yesteryears most of which are very recent. This report surveys all previous works available in the literature of self-stabilizing systems

    Polynomial Silent Self-Stabilizing p-Star Decomposition

    Get PDF
    We present a silent self-stabilizing distributed algorithm computing a maximal p-star decomposition of the underlying communication network. Under the unfair distributed scheduler, the most general scheduler model, the algorithm converges in at most 12∆m + O(m + n) moves, where m is the number of edges, n is the number of nodes, and ∆ is the maximum node degree. Regarding the move complexity, our algorithm outperforms the previously known best algorithm by a factor of ∆. While the round complexity for the previous algorithm was unknown, we show a 5 [n/(p+1)] + 5 bound for our algorithm
    • …
    corecore