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

  • Yuan Feng
  • Lijun Zhang


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 



The authors would like to thank the anonymous reviewers for their insightful and helpful comments. This work was partially supported by the Australian Research Council (Grant No. DP130102764), the National Natural Science Foundation of China (Grant Nos. 61428208, 61472473, 61472412 and 61361136002), and the CAS/SAFEA International Partnership Program for Creative Research Teams.


  1. 1.
    Balding, D.: Diffusion–reaction in one dimension. J. Appl. Probab. 25, 733–743 (1988)MathSciNetCrossRefzbMATHGoogle Scholar
  2. 2.
    Dijkstra, E.: Self-stabilizing systems in spite of distributed control. Commun. ACM 17(11), 643–644 (1974)CrossRefzbMATHGoogle Scholar
  3. 3.
    Dolev, S.: Self-Stabilization. MIT Press, Cambridge (2000)zbMATHGoogle 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)MathSciNetCrossRefzbMATHGoogle 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)MathSciNetCrossRefzbMATHGoogle 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)MathSciNetCrossRefzbMATHGoogle Scholar
  12. 12.
    Liggett, T.: Interacting Particle Systems. Springer, Berlin (2005)zbMATHGoogle 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)MathSciNetCrossRefzbMATHGoogle Scholar
  14. 14.
    Nakata, T.: On the expected time for Herman’s probabilistic self-stabilizing algorithm. Theor. Comput. Sci. 349(3), 475–483 (2005)MathSciNetCrossRefzbMATHGoogle 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