On Stabilization in Herman’s Algorithm

  • Stefan Kiefer
  • Andrzej S. Murawski
  • Joël Ouaknine
  • James Worrell
  • Lijun Zhang
Part of the Lecture Notes in Computer Science book series (LNCS, volume 6756)


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 Θ(N 2). Our first contribution is to give an upper bound of 0.64N 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.


Companion Pairing Interact Particle System Synchronous Case Token Ring Neighboring Token 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Balding, D.: Diffusion-reaction in one dimension. J. Appl. Prob. 25, 733–743 (1988)CrossRefzbMATHMathSciNetGoogle Scholar
  2. 2.
    PRISM case studies. Randomised self-stabilising algorithms,
  3. 3.
    Cox, D., Miller, H.: The theory of stochastic processes. Chapman & Hall/CRC (2001)Google Scholar
  4. 4.
    Dijkstra, E.W.: Self-stabilizing systems in spite of distributed control. Commun. ACM 17(11), 643–644 (1974)CrossRefzbMATHGoogle Scholar
  5. 5.
    Dolev, S.: Self-Stabilization. MIT Press, Cambridge (2000)zbMATHGoogle Scholar
  6. 6.
    Durrett, R., Kesten, H.: Random Walks, Brownian Motion and Interacting Particle Systems. Birkhauser Verlag AG, Basel (1991)CrossRefzbMATHGoogle Scholar
  7. 7.
    Feller, W.: An introduction to probability theory and its applications, vol. 1. John Wiley & Sons, Chichester (1968)zbMATHGoogle Scholar
  8. 8.
    Flatebo, M., Datta, A.K.: Two-state self-stabilizing algorithms for token rings. IEEE Trans. Softw. Eng. 20(6), 500–504 (1994)CrossRefGoogle Scholar
  9. 9.
    Fribourg, L., Messika, S., Picaronny, C.: Coupling and self-stabilization. Distributed Computing 18, 221–232 (2005)CrossRefzbMATHGoogle Scholar
  10. 10.
    Habib, S., Lindenberg, K., Lythe, G., Molina-Paris, C.: Diffusion-limited reaction in one dimension: Paired and unpaired nucleation. Journal of Chemical Physics 115, 73–89 (2001)CrossRefGoogle Scholar
  11. 11.
    Herman, T.: Probabilistic self-stabilization. Information Processing Letters 35(2), 63–67 (1990), Technical Report at CrossRefzbMATHMathSciNetGoogle Scholar
  12. 12.
    Israeli, A., Jalfon, M.: Token management schemes and random walks yield self-stabilizing mutual exclusion. In: Proceedings of PODC 1990, pp. 119–131. ACM, New York (1990)Google Scholar
  13. 13.
    Kiefer, S., Murawski, A., Ouaknine, J., Worrell, J., Zhang, L.: On stabilization in Herman’s algorithm. Technical report, (2011),
  14. 14.
    Kutten, S., Patt-Shamir, B.: Stabilizing time-adaptive protocols. Theor. Comput. Sci. 220(1), 93–111 (1999)CrossRefzbMATHMathSciNetGoogle Scholar
  15. 15.
    Liggett, T.M.: Interacting particle systems. Springer, Heidelberg (2005)zbMATHGoogle Scholar
  16. 16.
    McIver, A., Morgan, C.: An elementary proof that Herman’s ring is θ(n 2). Inf. Process. Lett. 94(2), 79–84 (2005)CrossRefzbMATHMathSciNetGoogle Scholar
  17. 17.
    Nakata, T.: On the expected time for Herman’s probabilistic self-stabilizing algorithm. Theoretical Computer Science 349(3), 475–483 (2005)CrossRefzbMATHMathSciNetGoogle Scholar
  18. 18.
    Schneider, M.: Self-stabilization. ACM Comput. Surv. 25(1), 45–67 (1993)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2011

Authors and Affiliations

  • Stefan Kiefer
    • 1
  • Andrzej S. Murawski
    • 2
  • Joël Ouaknine
    • 1
  • James Worrell
    • 1
  • Lijun Zhang
    • 3
  1. 1.Department of Computer ScienceUniversity of OxfordUK
  2. 2.Department of Computer ScienceUniversity of LeicesterUK
  3. 3.DTU InformaticsTechnical University of DenmarkDenmark

Personalised recommendations