Making Randomized Algorithms Self-stabilizing

  • Volker TurauEmail author
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 11639)


It is well known that the areas of self-stabilizing algorithms and local algorithms are closely related. Using program transformation techniques local algorithms can be made self-stabilizing, albeit an increase in run-time or memory consumption is often unavoidable. Unfortunately these techniques often do not apply to randomized algorithms, which are often simpler and faster than deterministic algorithms. In this paper we demonstrate that it is possible to take over ideas from randomized distributed algorithms to self-stabilizing algorithms. We present two simple self-stabilizing algorithms computing a maximal independent set and a maximal matching and terminate in the synchronous model with high probability in \(O(\log n)\) rounds. The algorithms outperform all existing algorithms that do not rely on unique identifiers.


  1. 1.
    Afek, Y., Kutten, S., Yung, M.: The local detection paradigm and its applications to self-stabilization. Theor. Comput. Sci. 186(1), 199–229 (1997)MathSciNetCrossRefGoogle Scholar
  2. 2.
    Alon, N., Babai, L., Itai, A.: A fast and simple randomized parallel algorithm for the maximal independent set problem. J. Algorithms 7(4), 567–583 (1986)MathSciNetCrossRefGoogle Scholar
  3. 3.
    Awerbuch, B., Varghese, G.: Distributed program checking: a paradigm for building self-stabilizing distributed protocols. In: Proceedings of 32nd Annual Symposium of Foundations of Computer Science, pp. 258–267, October 1991Google Scholar
  4. 4.
    Awerbuch, B., Patt-Shamir, B., Varghese, G., Dolev, S.: Self-stabilization by local checking and global reset. In: Tel, G., Vitányi, P. (eds.) WDAG 1994. LNCS, vol. 857, pp. 326–339. Springer, Heidelberg (1994). Scholar
  5. 5.
    Barenboim, L., Elkin, M., Goldenberg, U.: Locally-iterative distributed \((\varDelta +1)\)-Coloring below szegedy-vishwanathan barrier, and applications to self-stabilization and to restricted-bandwidth models. In: Proceedings of ACM Symposium on Principles of Distributed Computing, pp. 437–446 (2018)Google Scholar
  6. 6.
    Barenboim, L., Elkin, M., Pettie, S., Schneider, J.: The locality of distributed symmetry breaking. J. ACM 63(3), 20:1–20:45 (2016)MathSciNetCrossRefGoogle Scholar
  7. 7.
    Boulinier, C., Petit, F., Villain, V.: Synchronous vs. Asynchronous Unison. In: Tixeuil, S., Herman, T. (eds.) SSS 2005. LNCS, vol. 3764, pp. 18–32. Springer, Heidelberg (2005). Scholar
  8. 8.
    Cohen, J., Lefevre, J., Maamra, K., Pilard, L., Sohier, D.: A self-stabilizing algorithm for maximal matching in anonymous networks. PPL 26(04), 1650016 (2016)MathSciNetzbMATHGoogle Scholar
  9. 9.
    Devismes, S., Tixeuil, S., Yamashita, M.: Weak vs. self vs. probabilistic stabilization. Int. J. Found. Comput. Sci. 26(3), 291–319 (2015)MathSciNetCrossRefGoogle Scholar
  10. 10.
    Dolev, S., Israeli, A., Moran, S.: Analyzing expected time by scheduler-luck games. IEEE Trans. Softw. Eng. 21(5), 429–439 (1995)CrossRefGoogle Scholar
  11. 11.
    Fischer, M.: Improved deterministic distributed matching via rounding. In: Richa, A. (ed.) Distributed Computing, vol. 91, pp. 17:1–17:15. Springer, Heidelberg (2017). Scholar
  12. 12.
    Ghaffari, M.: An improved distributed algorithm for maximal independent set. In: Proceedings of 27th Annual ACM-SIAM Symposium on Discrete Algorithms, pp. 270–277 (2016)Google Scholar
  13. 13.
    Guellati, N., Kheddouci, H.: A survey on self-stabilizing algorithms for independence, domination, coloring, and matching in graphs. J. Parallel Distrib. Comput. 70(4), 406–415 (2010)CrossRefGoogle Scholar
  14. 14.
    Herman, T.: Probabilistic self-stabilization. IPL 35(2), 63–67 (1990)MathSciNetCrossRefGoogle Scholar
  15. 15.
    Herman, T., Ghosh, S.: Stabilizing phase-clocks. IPL 54(5), 259–265 (1995)CrossRefGoogle Scholar
  16. 16.
    Israeli, A., Itai, A.: A fast and simple randomized parallel algorithm for maximal matching. IPL 22(2), 77–80 (1986)MathSciNetCrossRefGoogle Scholar
  17. 17.
    Kravchik, A., Kutten, S.: Time optimal synchronous self stabilizing spanning tree. In: Afek, Y. (ed.) DISC 2013. LNCS, vol. 8205, pp. 91–105. Springer, Heidelberg (2013). Scholar
  18. 18.
    Lenzen, C., Suomela, J., Wattenhofer, R.: Local algorithms: self-stabilization on speed. In: Guerraoui, R., Petit, F. (eds.) SSS 2009. LNCS, vol. 5873, pp. 17–34. Springer, Heidelberg (2009). Scholar
  19. 19.
    Lotker, Z., Patt-Shamir, B., Pettie, S.: Improved distributed approximate matching. J. ACM 62(5), 38:1–38:17 (2015)MathSciNetCrossRefGoogle Scholar
  20. 20.
    Métivier, Y., Robson, J.M., Saheb-Djahromi, N., Zemmari, A.: An optimal bit complexity randomized distributed MIS algorithm. Distrib. Comput. 23(5), 331–340 (2011)CrossRefGoogle Scholar
  21. 21.
    Peleg, D.: Distributed Computing: A Locality-Sensitive Approach. SIAM Society for Industrial and Applied Mathematics, Philadelphia (2000)CrossRefGoogle Scholar
  22. 22.
    Turau, V.: Computing fault-containment times of self-stabilizing algorithms using lumped Markov chains. Algorithms 11(5), 58 (2018)MathSciNetCrossRefGoogle Scholar

Copyright information

© Springer Nature Switzerland AG 2019

Authors and Affiliations

  1. 1.Institute of TelematicsHamburg University of TechnologyHamburgGermany

Personalised recommendations