Skip to main content
Log in

Experimental investigation of distributed navigation and collision avoidance for a robotic swarm

  • Original Article
  • Published:
Artificial Life and Robotics Aims and scope Submit manuscript

Abstract

In this study, we focus on the navigation of a robotic swarm and perform an experimental investigation. A decentralized control method using only local information has been proposed in many previous studies. However, because global coordinates are used and control input is calculated on a single PC in experiments, the system is regarded as partially centralized control. Thus, we first realize machines that are suitable for the distributed navigation control method. In conducting experiments using these machines, we encountered two problems. The first was loss of connectivity caused by the target’s coordinates being momentarily out of the sensing range. The second was collisions between robots caused by the target being in the blind spot of the camera’s field of view and loss of sight of the target. Note that each robot had a target and moved by following it. To solve these problems, we propose a method that removes unexpectedly output coordinates and adds rotational motion to each robot. The experimental results demonstrated that we achieved distributed navigation control with collision avoidance in an actual machine experiment.

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

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10
Fig. 11
Fig. 12
Fig. 13
Fig. 14
Fig. 15

Similar content being viewed by others

References

  1. Bayindir L (2016) A review of swarm robotics tasks. Neurocomputing 172:292–321

    Article  Google Scholar 

  2. Taheri H, Zhao CX (2020) Omnidirectional mobile robots, mechanisms and navigation approaches. Mech Mach Theory 153:103958

    Article  Google Scholar 

  3. Suarez P, Iglesias A, Galvez A (2019) Make robots be bats: specializing robotic swarms to the Bat algorithm. Swarm Evol Comput 44:113–129

    Article  Google Scholar 

  4. Tuci E, Alkilabi MH, Akanyeti O (2018) Cooperative object transport in multi-robot systems: a review of the state-of-the-art. Front Robot AI 5:59

    Article  Google Scholar 

  5. Ota J (2006) Multi-agent robot systems as distributed autonomous systems. Adv Eng Inform 20(1):59–70

    Article  Google Scholar 

  6. Maeda R, Endo T, Matsuno F (2017) Decentralized navigation for heterogeneous swarm robots with limited field of view. IEEE Robot Autom Lett 18:904–911

    Article  Google Scholar 

  7. Sano Y, Endo T, Shibuya T, Matsuno F (2022) Decentralized navigation and collision avoidance for robotic swarm with heterogeneous abilities. Adv Robot. https://doi.org/10.1080/01691864.2022.2117996

    Article  Google Scholar 

  8. Ovchinnikov K, Semakova A, Matveev A (2015) Cooperative surveillance of unknown environmental boundaries by multiple nonholonomic robots. Rob Auton Syst 72:164–180

    Article  Google Scholar 

  9. Zhou Y, Zhou D, Wang Z, Schwager M (2018) Agile coordination and assistive collision avoidance for quadrotor swarms using virtual structures. IEEE Trans Robot 34:916–923

    Article  Google Scholar 

Download references

Acknowledgements

This research is supported, in part, by the Japan Science and Technology Agency, the Strategic International Collaborative Research Program (JST SICORP), e-ASIA Joint Research Program (Grant Number JPMJSC18E4), Project No. 18065977.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Takumi Shibuya.

Additional information

Publisher's Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Appendix

Appendix

We briefly describe the control input (5). In the control input, we determine \({u}_{ir}(t)\) and \({u}_{i\theta }(t)\) as follows. We divide the control input into three cases: (i) the control input before the target is determined, (ii) the control input for maintaining connectivity during navigation, and (iii) the control input for collision avoidance.

  • Case (i)  \(t<t_i\):

    $$\begin{aligned} u_{ir}(t) = 0,\qquad u_{i\theta }(t) = 0. \end{aligned}$$
    (13)
  • Case (ii)  \(t \ge t_i \cap d_i(t):=\Vert {\varvec{x}}_k^i(t)\Vert > \rho ''_i\):

  1. (a)

    When \(\rho ^{e-}_i(t) \le r_i(t):=\Vert {\varvec{x}}_j^i(t)\Vert \le \rho ''_i\),

    $$\begin{aligned} u_{ir}(t) = \tfrac{U_i(r_i(t) - \rho ''_i)}{\rho ''_i - \rho '''_i},\qquad u_{i\theta }(t) = 0. \end{aligned}$$
    (14)
  2. (b)

    When \(\rho ''_i < r_i(t) \le (\rho ''_i + \rho '_i) / 2\),

    $$\begin{aligned} u_{ir}(t) = 0,\qquad u_{i\theta }(t) = \tfrac{2\sigma _i(t) U'_i(t)}{\rho '_i - \rho ''_i} (r_i(t) - \rho ''_i). \end{aligned}$$
    (15)
  3. (c)

    When \((\rho ''_i + \rho '_i) / 2< r_i(t) < \rho '_i\),

    $$\begin{aligned} u_{ir}(t) = 0,\qquad u_{i\theta }(t) = \tfrac{2\sigma _i(t) U'_i(t)}{\rho '_i - \rho ''_i} (\rho '_i - r_i(t)). \end{aligned}$$
    (16)
  4. (d)

    When \(\rho '_i \le r_i(t) \le \rho ^c_i(t) \),

    $$\begin{aligned} u_{ir}(t) = \tfrac{U_i(r_i(t) - \rho '_i)}{\rho _i - \rho '_i},\qquad u_{i\theta }(t) = \sigma _i(t) u_{ir}(t). \end{aligned}$$
    (17)
  5. (e)

    When \(\rho ^c_i(t) < r_i(t) \le \rho ^{e+}_i(t) \),

    $$\begin{aligned} u_{ir}(t) = \tfrac{U_i(r_i(t) - \rho '_i)}{\rho _i - \rho '_i},\qquad u_{i\theta }(t) = \sigma _i(t) (U'_i(t) - u_{ir}(t)), \end{aligned}$$
    (18)

where

$$\begin{aligned}&U'_i(t) := \underset{0 \le \tau \le t}{\mathrm {max}}\Vert u_{ir}(\tau )\Vert , \end{aligned}$$
(19)
$$\begin{aligned}&\left\{ \begin{array}{l} \rho _i^{e-}(t) := \rho ''_i - \tfrac{U'_i(t)}{U_i} (\rho ''_i - \rho '''_i), \quad \rho _i^{c}(t) := \rho '_i + \tfrac{U'_i(t)}{2 U_i} (\rho _i - \rho '_i), \quad \\ \rho _i^{e+}(t) := \rho '_i + \tfrac{U'_i(t)}{U_i} (\rho _i - \rho '_i) \end{array} \right. \end{aligned}$$
(20)

and \(\sigma _i (t) \in [-1, 1]\) is a parameter used to change the shape of the swarm. Note that, when \(r_i(t)\le \rho _i''\), \(r_i(t)\ge \rho _i^{e-}\) always holds from Eqs. (14) and (19). Furthermore, when \(r_i(t)\ge \rho _i'\), \(r_i(t)\le \rho _i^{e+}\) always holds from Eqs. (17)–(19). Thus, it is sufficient to design the control input in the range \(\rho _i^{e-}(t)< r_i(t) < \rho _i^{e+}(t)\).

  • Case (iii)  \(t \ge t_i \cap d_i(t) \le \rho ''_i\):

$$\begin{aligned} {\varvec{u}}_i(t) = {\varvec{u}}_i^j + \tfrac{t - t_i^{\mathrm {start}}}{T_i} ({\varvec{u}}_i^k(t) - {\varvec{u}}_i^j), \end{aligned}$$
(21)

where \(T_i = h_i / (\zeta U_i)\), \(h_i = \min \{\rho _i - \rho '_i , \rho ''_i - \rho '''_i\}\), \(\zeta \) is a positive constant that satisfies \(2\pi (1 - \mathrm {e}^{-1/\zeta }) /\zeta \le 1\) (we used \(\zeta = 2.253\) in this paper). Furthermore, let \(t^{\mathrm {start}}_i\) be the time at which \(d_i(t) = \rho ''_i\), and agent k be the new target at \(t = t^{\mathrm {start}}_i\). Note that if another agent comes into the area closer than \(\rho _i''\), it becomes a new target. In addition, \({\varvec{u}}_i^j:={\varvec{u}}_i(t^{\mathrm {start}}_i)\). From the implementation point of view, it is difficult to switch targets instantly. Thus, the input is changed from the previous target reference to the new target reference over \(T_i\).

We designed the control input \(u_{ir}(t)\) to guarantee that followers maintain LSC. By contrast, we designed \(u_{i\theta }(t)\) to widen the swarm shape and prevent it from becoming a chain structure. As a result, the follower behaves as follows in each case: In Case (II)-(a), the follower moves away from the target to avoid colliding with it. In Case (II)-(b) and (c), the follower moves away from the other agents to avoid approaching them. In Case (II)-(d) and (e), the follower moves away from the other agents while approaching the target to maintain connectivity. An outline of the control input in case (ii) is shown in Fig. 3.

For more details, see [7].

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Shibuya, T., Endo, T. & Matsuno, F. Experimental investigation of distributed navigation and collision avoidance for a robotic swarm. Artif Life Robotics 28, 50–61 (2023). https://doi.org/10.1007/s10015-022-00843-x

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10015-022-00843-x

Keywords

Navigation