Locally-optimal multi-robot navigation under delaying disturbances using homotopy constraints


We study the problem of reliable motion coordination strategies for teams of mobile robots when any of the robots can be temporarily stopped by an exogenous disturbance at any time. We assume that an arbitrary multi-robot planner initially provides coordinated trajectories computed without considering such disturbances. We are interested in designing a control strategy that handles delaying disturbance such that collisions and deadlocks are provably avoided, and the travel time is minimized. The problem is analyzed in a coordination space framework, in which each dimension represents the position of a single robot along its planned trajectory. We demonstrate that to avoid deadlocks, the trajectory of the system in the coordination space must be homotopic to the trajectory corresponding to the planned solution. We propose a controller that abides this homotopy constraint while minimizing the travel time. Besides being provably deadlock-free, our experiments show that travel time is significantly smaller with our method than than with a reactive method.

This is a preview of subscription content, log in to check access.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9


  1. 1.

    Each component \(\varphi _i:[0,1] \rightarrow [0,T]\) has to be non-decreasing.

  2. 2.

    Note that we can see \(\delta \) as a representative of the homotopy class, while in Gregoire (2014) the homotopy class is uniquely represented by its priority graph.

  3. 3.

    In a well-formed infrastructure a start and destination of each robot is constrained to lie at a position where it does not completely prevent other robots from reaching their goals - most man-made infrastructures, e.g., a national road network system, satisfy the property.

  4. 4.

    Average travel time between origin and destination ignoring collisions and without disturbance is around 25 s.


  1. Alonso-Mora, J., Gohl, P., Watson, S., Siegwart, R., & Beardsley, P. (2014). Shared control of autonomous vehicles based on velocity space optimization. In: Proceedings of the IEEE international conference on robotics and automation, IEEE (pp. 1639–1645).

  2. Brock, O., & Khatib, O. (2002). Elastic strips: A framework for motion generation in human environments. The International Journal of Robotics Research, 21(12), 1031–1052.

    Article  Google Scholar 

  3. Čáp, M., Gregoire, J., & Frazzoli, E. (2016) Provably safe and deadlock-free execution of multi-robot plans under delaying disturbances. In: Proceedings of the IEEE conference on intelligent robots and systems (pp. 5113–5118). https://doi.org/10.1109/IROS.2016.7759750.

  4. Čáp, M., Novák, P., Kleiner, A., & Selecký, M. (2015). Prioritized planning algorithms for trajectory coordination of multiple mobile robots. IEEE transactions on automation science and engineering, 12(3), 835–849. https://doi.org/10.1109/TASE.2015.2445780.

    Article  Google Scholar 

  5. Čáp, M., Vokřínek, J., & Kleiner, A. (2015b). Complete decentralized method for on-line multi-robot trajectory planning in well-formed infrastructures. In: Proceedings of the international conference on automated planning and scheduling (pp. 324–332).

  6. Dresner, K., & Stone, P. (2008). A multiagent approach to autonomous intersection management. Journal of Artificial Intelligence Research, 31, 591–656.

  7. Erdmann, M., & Lozano-Pérez, T. (1987). On multiple moving objects. Algorithmica, 2, 1419–1424.

    MathSciNet  Article  MATH  Google Scholar 

  8. Ghrist, R., & Lavalle, S. M. (2006). Nonpositive curvature and pareto optimal coordination of robots. SIAM Journal on Control and Optimization, 45, 1697–1713.

    MathSciNet  Article  MATH  Google Scholar 

  9. Ghrist, R., O’Kane, J. M., & LaValle, S. M. (2005). Computing pareto optimal coordinations on roadmaps. The International Journal of Robotics Research, 12, 997–1012.

    Article  Google Scholar 

  10. Gregoire, J. (2014). Priority-based coordination of mobile robots. arXiv preprint arXiv:14100879.

  11. Guizzo, E. (2008). Three engineers, hundreds of robots, one warehouse. Spectrum, IEEE, 45(7), 26–34.

    Article  Google Scholar 

  12. Guy, S. J., Chhugani, J., Kim, C., Satish, N., Lin, M., Manocha, D., et al. (2009). Clearpath: Highly parallel collision avoidance for multi-agent simulation. In: Proceedings of the 2009 ACM SIGGRAPH/Eurographics symposium on computer animation, ACM, New York, NY, USA, SCA ’09 (pp. 177–187).

  13. Kant, K., & Zucker, S. W. (1986). Toward efficient trajectory planning: The path-velocity decomposition. International Journal of Robotics Research, 5(3), 72–89.

    Article  Google Scholar 

  14. Kowshik, H., Caveney, D., & Kumar, P. (2011). Provable systemwide safety in intelligent intersections. IEEE Transactions on Vehicular Technology, 60(3), 804–818.

    Article  Google Scholar 

  15. LaValle, S. M. (2006). Planning algorithms. Cambridge University Press, Cambridge. Available at http://planning.cs.uiuc.edu/.

  16. Lumelsky, V. J., & Harinarayan, K. (1997). Decentralized motion planning for multiple mobile robots: The cocktail party model. In: Robot colonies (pp. 121–135). Berlin: Springer.

  17. O’Donnell, P., & Lozano-Perez, T. (1989). Deadlock-free and collision-free coordination of two robot manipulators. In: Proceedings of the IEEE international conference on robotics and automation (pp. 484 –489, Vol. 1).

  18. Pallottino, L., Scordio, V. G., Bicchi, A., & Frazzoli, E. (2007). Decentralized cooperative policy for conflict resolution in multivehicle systems. IEEE Transactions on Robotics, 23(6), 1170–1183.

    Article  Google Scholar 

  19. Quinlan, S., & Khatib, O. (1993). Elastic bands: Connecting path planning and control. In: Proceedings of the IEEE international conference on robotics and automation (pp. 802–807), IEEE.

  20. Solovey, K., & Halperin, D. (2016). On the hardness of unlabeled multi-robot motion planning. The International Journal of Robotics Research, 35(14), 1750–1759. https://doi.org/10.1177/0278364916672311.

    Article  Google Scholar 

  21. Solovey, K., Yu, J., Zamir, O., & Halperin, D. (2015). Motion planning for unlabeled discs with optimality guarantees. In: Proceedings of robotics: Science and systems, Rome, Italy. https://doi.org/10.15607/RSS.2015.XI.011.

  22. Spirakis, P. G., & Yap, C. K. (1984). Strong NP-hardness of moving many discs. Information Processing Letters, 19(1), 55–59.

    MathSciNet  Article  MATH  Google Scholar 

  23. Turpin, M., Mohta, K., Michael, N., & Kumar, V. (2014). Goal assignment and trajectory planning for large teams of interchangeable robots. Autonomous Robots, 37(4), 401–415. https://doi.org/10.1007/s10514-014-9412-1.

    Article  Google Scholar 

  24. Van Den Berg, J., Guy, S., Lin, M., & Manocha, D. (2011). Reciprocal n-body collision avoidance. Robotics Research, 70, 3–19.

  25. Van den Berg, J., Lin, M., & Manocha, D. (2008). Reciprocal velocity obstacles for real-time multi-agent navigation. In: Proceedings of the IEEE international conference on robotics and automation, IEEE (pp. 1928–1935).

Download references

Author information



Corresponding author

Correspondence to Jean Gregoire.

Additional information

This is one of several papers published in Autonomous Robots comprising the Special Issue on Online Decision Making in Multi-Robot Coordination.


Appendix A: Completion of the obstacle region

In this section, we construct the maximal set \(\chi ^\delta \subset {\chi ^\mathrm {free}}\). We start by defining \(\Delta ^{NW}\) and \(\Delta ^{SE}\) as follows:

$$\begin{aligned} \Delta ^{NW}:= & {} \left\{ (a,b)\in [0,T]^2:b>a\right\} \end{aligned}$$
$$\begin{aligned} \Delta ^{SE}:= & {} \left\{ (a,b)\in [0,T]^2:b<a\right\} . \end{aligned}$$

Then, we build the completed obstacle region \({\chi ^\mathrm {obs}}^\delta \) as follows:

$$\begin{aligned} C^{NW}_{ij}:= & {} \left( (C_{ij}\cap \Delta ^{NW})+(\mathbb {R}_-\times \mathbb {R}_+) \right) \cap [0,T]^2 \end{aligned}$$
$$\begin{aligned} C^{SE}_{ij}:= & {} \left( (C_{ij}\cap \Delta ^{SE})+(\mathbb {R}_+\times \mathbb {R}_-)\right) \cap [0,T]^2 \end{aligned}$$

where \(A+B\) denotes the set of \(a+b\) with \((a,b)\in A\times B\), \(\mathbb {R}_+:=\{x\in \mathbb {R}:x\ge 0\}\) and \(\mathbb {R}_-:=\{x\in \mathbb {R}:x\le 0\}\). The completion process is depicted in Fig. 2.

We use \(\min (x,y)\) and \(\max (x,y)\) operators on two points xy in the coordination space, defined component-wise as:

$$\begin{aligned} (\min (x,y))_i:= & {} \min (x_i,y_i)\end{aligned}$$
$$\begin{aligned} (\max (x,y))_i:= & {} \max (x_i,y_i). \end{aligned}$$

Property 2

(Invariance through \(\min \) and \(\max \) operators) For all \(x,y\in \chi ^\delta \), we have \(\min (x,y)\in \chi ^\delta \) and \(\max (x,y)\in \chi ^\delta \).

Fig. 10

Illustration of the transformation of \(\varphi ^1\) into \(\max (\varphi ^1,\varphi ^2)\). Two cases may appear, and in both cases, the transformation remains within \(\chi ^\delta \)

Appendix B: Proof of Theorem 1


(Necessary condition) We first prove that taking values in \(\chi ^\delta \) is a necessary condition for being homotopic to \(\delta \) by contradiction. Consider a solution \(\varphi \). Assume that \(\varphi \) is homotopic to \(\delta \), but it does not take only values in \(\chi ^\delta \). As a consequence, it takes some value \(x^c\in {\chi ^\mathrm {obs}}^\delta \) at some point \(\tau ^c\) such that \((\varphi _i,\varphi _j)(\tau ^c)=(x^c_i,x^c_j)\in C_{ij}^{NW}\) for some \(i,j\in \{1\ldots n\}\) (or, equivalently, \((x^c_j,x^c_i)\in C_{ji}^{SE}\)). By construction of \(C_{ij}^{NW}\), there exists \((x^0_i,x^0_j)\in C_{ij}\) distinct from \((x^c_i,x^c_j)\) (because \(\varphi \) is collision-free) such that \(x^0_i\ge x^c_i\) and \(x^0_j\le x^c_i\). Consider the maximal segment \(\Sigma \subset [0,T]^2\) going through points \((x^0_i,x^0_j)\) and \((x^c_i,x^c_j)\). As \(\varphi \) is assumed to be homotopic to \(\delta \), there exists a continuous transformation \(H:[0,1]\rightarrow \varPhi \) such that \(H(0)=\varphi \) and \(H(1)=\delta \). For all \(\alpha \in [0,1]\), \(H(\alpha )\) intersects \(\Sigma \). \(H(\alpha )=\varphi \) intersects at configuration \((x^c_i,x^c_j)\) and H(1) intersects \(\Sigma \) at a configuration on the image of \(\delta \). As a consequence, by continuity, \(H(\alpha )\) goes through \((x^0_i,x^0_j)\) for some \(\alpha \), which is absurd as \(H(\alpha )\) should be a solution for all \(\alpha \in [0,1]\) (solution \(H(\alpha )\) should be collision-free in particular). \(\square \)


(Sufficient condition) Now, we prove that taking values in \(\chi ^\delta \) is a sufficient condition. Consider two arbitrary solutions \(\varphi ^1, \varphi ^2\in \varPhi \) taking values in \(\chi ^\delta \) and the following continuous transformation H defined as follows for all \(\alpha \in [0,1],~\tau \in [0,1]\):

$$\begin{aligned} H(\alpha )(\tau ):=\min \left( \varphi ^1(\tau +\alpha ), \max \left( \varphi ^1(\tau ), \varphi ^2(\tau )\right) \right) \end{aligned}$$

where \(\varphi ^1(\tau +\alpha ) \equiv (T\ldots T)\) if \(\tau +\alpha > 1\) by convention.

We have \(H(0)(\tau )=\min (\varphi ^1(\tau ), \max (\varphi ^1(\tau ), \varphi ^2(\tau )))= \varphi ^1(\tau )\), so that \(H(0)=\varphi ^1\). Moreover,

$$\begin{aligned} H(1)(\tau )= & {} \min (\varphi ^1(1+\tau ),\max (\varphi ^1(\tau ), \varphi ^2(\tau )))\end{aligned}$$
$$\begin{aligned}= & {} \min (T,\max (\varphi ^1(\tau ), \varphi ^2(\tau )))\end{aligned}$$
$$\begin{aligned}= & {} \min (T,\max (\varphi ^1(\tau ), \varphi ^2(\tau )))\end{aligned}$$
$$\begin{aligned}= & {} \max (\varphi ^1(\tau ), \varphi ^2(\tau ))\text {.} \end{aligned}$$

As a result, \(H(1)=\max (\varphi ^1,\varphi ^2)\). Finally, by Property 2 (see also Fig. 10), \(\varphi ^1\) and \(\varphi ^2\) taking values in \(\chi ^\delta \) implies that for all \(\alpha \in [0,1]\), \(H(\alpha )\) takes values in \(\chi ^\delta \). Moreover, \(H(\alpha )\) is non-decreasing as \(\min \) and \(\max \) operators do not affect that property. As a result, H continuously transforms \(\varphi ^1\) into \(\max (\varphi ^1, \varphi ^2)\) while remaining in \(\varPhi \). By symmetry of the roles played by \(\varphi ^1\) and \(\varphi ^2\), there also exists a continuous transformation transforming \(\varphi ^2\) into \(\max (\varphi ^1, \varphi ^2)\) while remaining in \(\varPhi \). As a result, \(\varphi ^1\) and \(\varphi ^2\) are both homotopic to \(\max (\varphi ^1, \varphi ^2)\), so that \(\varphi ^1\) and \(\varphi ^2\) are homotopic solutions. In particular, choosing for \(\varphi ^1\) an arbitrary solution taking values in \(\chi ^\delta \) and \(\varphi ^2 \equiv \delta \), we obtain that any solution taking values in \(\chi ^\delta \) is homotopic to \(\delta \). \(\square \)

Rights and permissions

Reprints and Permissions

About this article

Verify currency and authenticity via CrossMark

Cite this article

Gregoire, J., Čáp, M. & Frazzoli, E. Locally-optimal multi-robot navigation under delaying disturbances using homotopy constraints. Auton Robot 42, 895–907 (2018). https://doi.org/10.1007/s10514-017-9673-6

Download citation


  • Autonomous robots
  • Planning
  • Coordination
  • Control
  • Homotopy classes