Coupling and self-stabilization (original) (raw)

Observations on self-stabilizing graph algorithms for anonymous networks

… of the second workshop on self- …, 1995

We investigate the existence of deterministic uniform self-stabilizing algorithms (DUSSAs) for a number or problems on connected undirected graphs. This investigation is carried out under three models of parallelism, namely central daemon, restricted parallelism, and maximal parallelism. We observe that for several problems including 2-coloring odd-degree complete bipartite graphs, 2-coloring trees, nding maximal independent sets in general graphs, and obtaining a valid coloring of planar graphs, no DUSSAs exist under the maximal parallelism model. A DUSSA for the 6-coloring problem for planar graphs under the central daemon model was presented in GK93]. For the other problems listed above, we present DUSSAs under the central daemon model. We observe that these DUSSAs work correctly under a restricted parallelism model as well. This fact enables us to apply a technique in SRR94] to obtain randomized USSAs (RUSSAs) under the maximal parallelism model for all the above problems. These RUSSAs achieve self-stabilization with probability 1. We also observe that techniques due to Angluin Ang80] lead to general results that establish the non-existence of DUSSAs for a large collection of graph problems under any of the parallelism models. The problems in this collection include determining the parity of the number of nodes in a graph and membership testing for various graph classes (for example, planar graphs, chordal graphs, and interval graphs).

DISTANCE-TWO INFORMATION IN SELF-STABILIZING ALGORITHMS

Parallel Processing Letters, 2004

In the state-based self-stabilizing algorithmic paradigm for distributed computing, each node has only a local view of the system (seeing its neighbors' states), yet in a finite amount of time the system converges to a global state satisfying some desired property. In this paper we introduce a general mechanism that allows a node to act only on correct distance-two knowledge, provided there are IDs. We then apply the mechanism to graph problems in the areas of coloring and domination. For example, we obtain an algorithm for maximal 2-packing which is guaranteed to stabilize in polynomial moves under a central daemon.

Randomized uniform self-stabilizing mutual exclusion

Information Processing Letters, 2000

A system is self-stabilizing if when started in any arbitrary con guration it eventually reaches a legal con guration and then remains in legal con gurations. A mutual exclusion is valid when in each con guration only one processor is in a privileged state while all the other are in unprivileged states and any processor get the privilege in nitely often. In this article, we present a randomized self-stabilizing mutual exclusion. It works on any (nite connected) uniform graphs, i.e., anonymous graphs where processors are de ned only by their degrees. The number of states is the maximal degree multiplied by the logarithm of the number of vertices. The expected stabilization time, in rounds, is polynomial in the number of vertices.

Bounds for Self-stabilization in Unidirectional Networks

A distributed algorithm is self-stabilizing if after faults and attacks hit the system and place it in some arbitrary global state, the systems recovers from this catastrophic situation without external intervention in finite time. Unidirectional networks preclude many common techniques in self-stabilization from being used, such as preserving local predicates. In this paper, we investigate the intrinsic complexity of achieving self-stabilization in unidirectional networks, and focus on the classical vertex coloring problem. When deterministic solutions are considered, we prove a lower bound of n states per process (where n is the network size) and a recovery time of at least n(n − 1)/2 actions in total. We present a deterministic algorithm with matching upper bounds that performs in arbitrary graphs. When probabilistic solutions are considered, we observe that at least ∆ + 1 states per process and a recovery time of Ω(n) actions in total are required (where ∆ denotes the maximal degree of the underlying simple undirected graph). We present a probabilistically self-stabilizing algorithm that uses k states per process, where k is a parameter of the algorithm. When k = ∆ + 1, the algorithm recovers in expected O(∆n) actions. When k may grow arbitrarily, the algorithm recovers in expected O(n) actions in total. Thus, our algorithm can be made optimal with respect to space or time complexity.

Distance- k knowledge in self-stabilizing algorithms

Theoretical Computer Science, 2008

Many graph problems seem to require knowledge that extends beyond the immediate neighbors of a node. The usual self-stabilizing model only allows for nodes to make decisions based on the states of their immediate neighbors. We provide a general transformation for constructing self-stabilizing algorithms which utilize distance-k knowledge. Our transformation has both a slowdown and space overhead in n O(log k) , and might be thought of as a distance-k resource allocation algorithm. Our main application is a polynomial-time self-stabilizing algorithm for finding maximal irredundant sets, a problem which seems to require distance-4 information. These results can be generalized to efficiently find maximal P-sets, for properties P which we call local monotonic. Our techniques extend results in a recent paper by Gairing et al. for achieving distance-two information.

A survey on self-stabilizing algorithms for independence, domination, coloring, and matching in graphs

2010

Dijkstra defined a distributed system to be self-stabilizing if, regardless of the initial state, the system is guaranteed to reach a legitimate (correct) state in a finite time. Even though the concept of selfstabilization received little attention when it was introduced, it has become one of the most popular fault tolerance approaches. On the other hand, graph algorithms form the basis of many network protocols. They are used in routing, clustering, multicasting and many other tasks. The objective of this paper is to survey the self-stabilizing algorithms for dominating and independent set problems, colorings, and matchings. These graph theoretic problems are well studied in the context of self-stabilization and a large number of algorithms have been proposed for them.

A Self-stabilizing 1-maximal Independent Set Algorithm

Journal of Information Processing

We consider the 1-maximal independent set (1-MIS) problem: given a graph G = (V, E), our goal is to find a 1-maximal independent set (1-MIS) of a given network G, that is, a maximal independent set (MIS) S ⊂ V of G such that S ∪ {v, w} \ {u} is not an independent set for any nodes u ∈ S , and v, w S (v w). We give a silent, self-stabilizing, and asynchronous distributed algorithm to construct a 1-MIS on a network of any topology. We assume the processes have unique identifiers and the scheduler is weakly-fair and distributed. The time complexity, i.e., the number of rounds to reach a legitimate configuration in the worst case of the proposed algorithm is O(nD), where n is the number of processes in the network and D is the diameter of the network. We use a composition technique called loop composition [Datta et al., 2017] to iterate the same procedure consistently, which results in a small space complexity, O(log n) bits per process.

Distance-k Information in Self-stabilizing Algorithms

Lecture Notes in Computer Science, 2006

Many graph problems seem to require knowledge that extends beyond the immediate neighbors of a node. The usual self-stabilizing model only allows for nodes to make decisions based on the states of their immediate neighbors. We provide a general polynomial transformation for constructing self-stabilizing algorithms which utilize distancek knowledge, with a slowdown of n O(log k) . Our main application is a polynomial-time self-stabilizing algorithm for finding maximal irredundant sets, a problem which seems to require distance-4 information. We also show how to find maximal k-packings in polynomial-time. Our techniques extend results in a recent paper by Gairing et al. for achieving distance-two information.

Analyzing the Fault-Containment Time of Self-Stabilizing Algorithms-A Case Study for Graph Coloring

The paper presents techniques to derive upper bounds for the mean time to recover from a single fault for self-stabilizing algorithms in the message passing model. For a new ∆ + 1-coloring algorithm we analytically derive a bound for the mean time to recover and show that the variance is bounded by a small constant independent of the network's size. For the class of bounded-independence graphs (e.g. unit disc graphs) all containment metrics are in O(1).

Verifying a Self-Stabilizing Mutual Exclusion Algorithm

Programming Concepts and Methods PROCOMET ’98, 1998

We present a detailed description of a machine-assisted veri cation of an algorithm for self-stabilizing mutual exclusion that is due to Dijkstra Dij74]. This veri cation was constructed using PVS. We compare the mechanical veri cation to the informal proof sketch on which it is based. This comparison yields several observations regarding the challenges of formalizing and mechanically verifying distributed algorithms in general.