Probabilistic Self-stabilizing Vertex Coloring in Unidirectional Anonymous Networks
Résumé
A distributed algorithm is self-stabilizing if after faults and attacks hit the system and place it in some arbitrary global state, the system 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. The focus of this work is on the classical vertex coloring problem, that is a basic building block for many resource allocation problems arising in wireless sensor networks.
In this paper, we investigate the gain in complexity that can be obtained through randomization. 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. Our case study hints that randomization could help filling the complexity gap between bidirectionnal and unidirectionnal networks.