Note: This is an archvied version of our old webpage. Some links might be broken. The current one can be found here.
I7 Logo
Chair for Foundations of Software Reliability and Theoretical Computer Science
Informatik Logo TUM Logo
Publications - On Stabilization in Herman's Algorithm


Stefan Kiefer, Andrzej S. Murawski, Joël Ouaknine, James Worrell, and Lijun Zhang. On stabilization in Herman's algorithm. In L. Aceto, M. Henzinger, and J. Sgall, editors, Proceedings of the 38th International Colloquium on Automata, Languages and Programming (ICALP), volume 6756 of LNCS, pages 466–477, Zürich, Switzerland, 2011. Springer.


Herman's algorithm is a synchronous randomized protocol for achieving self-stabilization in a token ring consisting of N processes. The interaction of tokens makes the dynamics of the protocol very difficult to analyze. In this paper we study the expected time to stabilization in terms of the initial configuration. It is straightforward that the algorithm achieves stabilization almost surely from any initial configuration, and it is known that the worst-case expected time to stabilization (with respect to the initial configuration) is Theta(N^2). Our first contribution is to give an upper bound of 0.64 N^2 on the expected stabilization time, improving on previous upper bounds and reducing the gap with the best existing lower bound. We also introduce an asynchronous version of the protocol, showing a similar O(N^2) convergence bound in this case. Assuming that errors arise from the corruption of some number k of bits, where k is fixed independently of the size of the ring, we show that the expected time to stabilization is O(N). This reveals a hitherto unknown and highly desirable property of Herman's algorithm: it recovers quickly from bounded errors. We also show that if the initial configuration arises by resetting each bit independently and uniformly at random, then stabilization is significantly faster than in the worst case.

Suggested BibTeX entry:

    address = {Z\"{u}rich, Switzerland},
    author = {Stefan Kiefer and Andrzej S. Murawski and Jo\"el Ouaknine and James Worrell and Lijun Zhang},
    booktitle = {Proceedings of the 38th International Colloquium on Automata, Languages and Programming (ICALP)},
    editor = {L. Aceto and M. Henzinger and J. Sgall},
    pages = {466--477},
    publisher = {Springer},
    series = {LNCS},
    title = {On Stabilization in {H}erman's Algorithm},
    volume = {6756},
    year = {2011}

PDF (190 kB)
Tech report version