Distributed Computing

, Volume 28, Issue 4, pp 233–244 | Cite as

A nearly optimal upper bound for the self-stabilization time in Herman’s algorithm



Self-stabilization algorithms are very important in designing fault-tolerant distributed systems. In this paper we consider Herman’s self-stabilization algorithm and study its expected termination time. McIver and Morgan have conjectured the optimal upper bound being \(0.148N^2\), where \(N\) denotes the number of processors. We present an elementary proof showing a bound of \(0.167N^2\), a sharp improvement compared with the best known bound \(0.521N^2\). Our proof is inspired by McIver and Morgan’s approach: we find a nearly optimal closed form of the expected stabilization time for any initial configuration, and apply the Lagrange multipliers method to give an upper bound.


Herman’s algorithm Self-stabilization Lagrange multipliers method 


  1. 1.
    Balding, D.: Diffusion–reaction in one dimension. J. Appl. Probab. 25, 733–743 (1988)MathSciNetCrossRefMATHGoogle Scholar
  2. 2.
    Dijkstra, E.: Self-stabilizing systems in spite of distributed control. Commun. ACM 17(11), 643–644 (1974)CrossRefMATHGoogle Scholar
  3. 3.
    Dolev, S.: Self-Stabilization. MIT Press, Cambridge (2000)MATHGoogle Scholar
  4. 4.
    Feller, W.: An Introduction to Probability Theory and Its Applications, vol. 1. Wiley, New York (1968)Google Scholar
  5. 5.
    Feng, Y., Zhang, L.: A tighter bound for the self-stabilization time in Herman’s algorithm. Inf. Process. Lett. 113(13), 486–488 (2013)Google Scholar
  6. 6.
    Feng, Y., Zhang, L.: A nearly optimal upper bound for the self-stabilization time in Herman’s algorithm. In: CONCUR, vol. 8704, pp. 342–356. Springer, Berlin (2014)Google Scholar
  7. 7.
    Fribourg, L., Messika, S., Picaronny, C.: Coupling and self-stabilization. Distrib. Comput. 18(3), 221–232 (2006)CrossRefGoogle Scholar
  8. 8.
    Herman, T.: Probabilistic self-stabilization. Inf. Process. Lett. 35(2), 63–67 (1990)MathSciNetCrossRefMATHGoogle Scholar
  9. 9.
    Kiefer, S., Murawski, A.S., Ouaknine, J., Wachter, B., Worrell, J.: Three tokens in Herman’s algorithm. Form. Asp. Comput. 24(4–6), 671–678 (2012)MathSciNetCrossRefMATHGoogle Scholar
  10. 10.
    Kiefer, S., Murawski, A.S., Ouaknine, J., Worrell, J., Zhang, L.: On Stabilization in Herman’s Algorithm. ICALP 2, 466–477 (2011)MathSciNetGoogle Scholar
  11. 11.
    Kwiatkowska, M.Z., Norman, G., Parker, D.: Probabilistic verification of Herman’s self-stabilisation algorithm. Form. Asp. Comput. 24(4–6), 661–670 (2012)MathSciNetCrossRefMATHGoogle Scholar
  12. 12.
    Liggett, T.: Interacting Particle Systems. Springer, Berlin (2005)MATHGoogle Scholar
  13. 13.
    McIver, A., Morgan, C.: An elementary proof that Herman’s ring is \(\Theta (N^2)\). Inf. Process. Lett. 94(2), 79–84 (2005)MathSciNetCrossRefMATHGoogle Scholar
  14. 14.
    Nakata, T.: On the expected time for Herman’s probabilistic self-stabilizing algorithm. Theor. Comput. Sci. 349(3), 475–483 (2005)MathSciNetCrossRefMATHGoogle Scholar
  15. 15.
    Schneider, M.: Self-stabilization. ACM Comput. Surv. 25(1), 45–67 (1993)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2015

Authors and Affiliations

  1. 1.Centre for Quantum Computation and Intelligent SystemsUniversity of Technology SydneySydneyAustralia
  2. 2.AMSS-UTS Joint Research Laboratory for Quantum ComputationChinese Academy of SciencesBeijingChina
  3. 3.State Key Laboratory of Computer Science, Institute of SoftwareChinese Academy of SciencesBeijingChina

Personalised recommendations