, Volume 78, Issue 3, pp 869–895 | Cite as

Robustness of the Rotor–Router Mechanism

  • Evangelos BampasEmail author
  • Leszek Gąsieniec
  • Nicolas Hanusse
  • David Ilcinkas
  • Ralf Klasing
  • Adrian Kosowski
  • Tomasz Radzik


The rotor–router model, also called the Propp machine, was first considered as a deterministic alternative to the random walk. The edges adjacent to each node v (or equivalently, the exit ports at v) are arranged in a fixed cyclic order, which does not change during the exploration. Each node v maintains a port pointer \(\pi _v\) which indicates the exit port to be adopted by an agent on the conclusion of the next visit to this node (the “next exit port”). The rotor–router mechanism guarantees that after each consecutive visit at the same node, the pointer at this node is moved to the next port in the cyclic order. It is known that, in an undirected graph G with m edges, the route adopted by an agent controlled by the rotor–router mechanism eventually forms an Euler tour based on arcs obtained via replacing each edge in G by two arcs with opposite direction. The process of ushering the agent to an Euler tour is referred to as the lock-in problem. In Yanovski et al. (Algorithmica 37(3):165–186, 2003), it was proved that, independently of the initial configuration of the rotor–router mechanism in G, the agent locks-in in time bounded by \(2mD\), where \(D\) is the diameter of G. In this paper we examine the dependence of the lock-in time on the initial configuration of the rotor–router mechanism. Our analysis is performed in the form of a game between a player \({\mathcal {P}}\) intending to lock-in the agent in an Euler tour as quickly as possible and its adversary \({\mathcal {A}}\) with the counter objective. We consider all cases of who decides the initial cyclic orders and the initial values \(\pi _v\). We show, for example, that if \({\mathcal {A}}\) provides its own port numbering after the initial setup of pointers by \({\mathcal {P}}\), the worst-case complexity of the lock-in problem is \({\varTheta }(m\cdot \min \{\log m,D\})\). We also investigate the robustness of the rotor–router graph exploration in presence of faults in the pointers \(\pi _v\) or dynamic changes in the graph. We show, for example, that after the exploration establishes an Eulerian cycle, if k edges are added to the graph, then a new Eulerian cycle is established within \(\mathcal {O}(km)\) steps.


Graph exploration Rotor–router mechanism Propp machine Network faults Dynamic graphs 



We would like to thank Shay Kutten for several inspiring discussions during the early stages of this work, and the anonymous reviewer for a thorough reading of the manuscript and pertinent suggestions for improving the presentation of the results.


  1. 1.
    Afek, Y., Gafni, E.: Distributed algorithms for unidirectional networks. SIAM J. Comput. 23(6), 1152–1178 (1994)MathSciNetCrossRefzbMATHGoogle Scholar
  2. 2.
    Akbari, H., Berenbrink, P.: Parallel rotor walks on finite graphs and applications in discrete load balancing. In: Blelloch, G.E., Vöcking, B. (eds.) 25th ACM Symposium on Parallelism in Algorithms and Architectures, SPAA ’13, Montreal, QC, Canada—July 23–25, 2013. pp. 186–195. ACM (2013)Google Scholar
  3. 3.
    Aldous, D., Fill, J.A.: Reversible markov chains and random walks on graphs (2002), unfinished monograph, recompiled 2014.
  4. 4.
    Ambühl, C., Gasieniec, L., Pelc, A., Radzik, T., Zhang, X.: Tree exploration with logarithmic memory. ACM Trans. Algorithms 7(2), 17 (2011)MathSciNetCrossRefzbMATHGoogle Scholar
  5. 5.
    Bender, M.A., Fernández, A., Ron, D., Sahai, A., Vadhan, S.P.: The power of a pebble: exploring and mapping directed graphs. Inf. Comput. 176(1), 1–21 (2002)MathSciNetCrossRefzbMATHGoogle Scholar
  6. 6.
    Berenbrink, P., Klasing, R., Kosowski, A., Mallmann-Trenn, F., Uznanski, P.: Improved analysis of deterministic load-balancing schemes. In: Georgiou, C., Spirakis, P.G. (eds.) Proceedings of the 2015 ACM Symposium on Principles of Distributed Computing, PODC 2015, Donostia-San Sebastián, Spain, July 21–23, 2015. pp. 301–310. ACM (2015)Google Scholar
  7. 7.
    Bhatt, S.N., Even, S., Greenberg, D.S., Tayar, R.: Traversing directed eulerian mazes. J. Graph Algorithms Appl. 6(2), 157–173 (2002)MathSciNetCrossRefzbMATHGoogle Scholar
  8. 8.
    Chalopin, J., Das, S., Gawrychowski, P., Kosowski, A., Labourel, A., Uznanski, P.: Lock-in problem for parallel rotor-router walks. CoRR abs/1407.3200 (2014)Google Scholar
  9. 9.
    Cooper, C., Ilcinkas, D., Klasing, R., Kosowski, A.: Derandomizing random walks in undirected graphs using locally fair exploration strategies. Distrib. Comput. 24(2), 91–99 (2011)CrossRefzbMATHGoogle Scholar
  10. 10.
    Cooper, J.N., Spencer, J.: Simulating a random walk with constant error. Comb. Probab. Comput. 15(6), 815–822 (2006)MathSciNetCrossRefzbMATHGoogle Scholar
  11. 11.
    Deng, X., Papadimitriou, C.H.: Exploring an unknown graph. J. Graph Theory 32(3), 265–297 (1999)MathSciNetCrossRefzbMATHGoogle Scholar
  12. 12.
    Dereniowski, D., Kosowski, A., Pajak, D., Uznanski, P.: Bounds on the cover time of parallel rotor walks. In: 31st International Symposium on Theoretical Aspects of Computer Science (STACS 2014), STACS 2014, March 5–8, 2014, Lyon, France. pp. 263–275 (2014)Google Scholar
  13. 13.
    Doerr, B., Friedrich, T.: Deterministic random walks on the two-dimensional grid. Comb. Probab. Comput. 18(1–2), 123–144 (2009)MathSciNetCrossRefzbMATHGoogle Scholar
  14. 14.
    Fraenkel, A.S.: Economic traversal of labyrinths. Math. Mag. 43(3), 125–130 (1970)MathSciNetCrossRefzbMATHGoogle Scholar
  15. 15.
    Fraigniaud, P., Ilcinkas, D., Peer, G., Pelc, A., Peleg, D.: Graph exploration by a finite automaton. Theor. Comput. Sci. 345(2–3), 331–344 (2005)MathSciNetCrossRefzbMATHGoogle Scholar
  16. 16.
    Gasieniec, L., Radzik, T.: Memory efficient anonymous graph exploration. In: Broersma, H., Erlebach, T., Friedetzky, T., Paulusma, D. (eds.) WG. Lecture Notes in Computer Science, vol. 5344, pp. 14–29 (2008)Google Scholar
  17. 17.
    Holroyd, A.E., Levine, L., Mészáros, K., Peres, Y., Propp, J., Wilson, D.B.: Chip-firing and rotor-routing on directed graphs. Progress in Probability, vol. 60, pp. 331–364. Birkhäuser Basel (2008)Google Scholar
  18. 18.
    Klasing, R., Kosowski, A., Pajak, D., Sauerwald, T.: The multi-agent rotor-router on the ring: a deterministic alternative to parallel random walks. In: ACM Symposium on Principles of Distributed Computing, PODC ’13, Montreal, QC, Canada, July 22–24, 2013. pp. 365–374 (2013)Google Scholar
  19. 19.
    Kosowski, A., Pajak, D.: Does adding more agents make a difference? A case study of cover time for the rotor-router. In: Automata, Languages, and Programming—41st International Colloquium, ICALP 2014, Copenhagen, Denmark, July 8–11, 2014, Proceedings, Part II. pp. 544–555 (2014)Google Scholar
  20. 20.
    Priezzhev, V.B., Dhar, D., Dhar, A., Krishnamurthy, S.: Eulerian walkers as a model of self-organized criticality. Phys. Rev. Lett. 77, 5079–5082 (Dec 1996),
  21. 21.
    Reingold, O.: Undirected connectivity in log-space. J. ACM 55(4), Article 17 (2008)Google Scholar
  22. 22.
    Strahler, A.N.: Hypsometric (area-altitude) analysis of erosional topography. Geol. Soc. Am. Bull. 63(11), 1117–1142 (1952)CrossRefGoogle Scholar
  23. 23.
    Tutte, W.T., Smith, C.A.B.: On unicursal paths in a network of degree 4. Am. Math. Mon. 48(4), 233–237 (1941)MathSciNetCrossRefzbMATHGoogle Scholar
  24. 24.
    Wagner, I.A., Lindenbaum, M., Bruckstein, A.M.: Distributed covering by ant-robots using evaporating traces. IEEE Trans. Robot. Autom. 15(5), 918–933 (1999)CrossRefGoogle Scholar
  25. 25.
    Yanovski, V., Wagner, I.A., Bruckstein, A.M.: A distributed ant algorithm for efficiently patrolling a network. Algorithmica 37(3), 165–186 (2003)MathSciNetCrossRefzbMATHGoogle Scholar

Copyright information

© Springer Science+Business Media New York 2016

Authors and Affiliations

  1. 1.LIFCNRS and Aix-Marseille UniversityMarseilleFrance
  2. 2.Department of Computer ScienceUniversity of LiverpoolLiverpoolUK
  3. 3.LaBRICNRS and University of BordeauxBordeauxFrance
  4. 4.Inria Paris and LIAFACNRS and Paris Diderot UniversityParisFrance
  5. 5.Department of InformaticsKing’s College LondonLondonUK

Personalised recommendations