This paper was converted on www.awesomepapers.org from LaTeX by an anonymous user.
Want to know more? Visit the Converter page.

Realm: Real-Time Line-of-Sight Maintenance in Multi-Robot Navigation with Unknown Obstacles

Ruofei Bai1,2, Shenghai Yuan1, Kun Li3, Hongliang Guo4, Wei-Yun Yau2, Lihua Xie1, Fellow, IEEE 1Ruofei Bai, Shenghai Yuan and Lihua Xie are with the School of Electrical and Electronic Engineering, Nanyang Technological University, Singapore 639798 {ruofei001, shyuan, elhxie}@ntu.edu.sg2Ruofei Bai and Wei-Yun Yau are with the Institute for Infocomm Research (I2R), Agency for Science, Technology and Research (A*STAR), Singapore 138632 {stubair, wyyau}@i2r.a-star.edu.sg3Kun Li is with the School of Automation, Chongqing University, China 400044 likun@cqu.edu.cn4Hongliang Guo is with College of Computer Science, Sichuan University, China 610064 guohongliang@scu.edu.cn
Abstract

Multi-robot navigation in complex environments relies on inter-robot communication and mutual observations for coordination and situational awareness. This paper studies the multi-robot navigation problem in unknown environments with line-of-sight (LoS) connectivity constraints. While previous works are limited to known environment models to derive the LoS constraints, this paper eliminates such requirements by directly formulating the LoS constraints between robots from their real-time point cloud measurements, leveraging point cloud visibility analysis techniques. We propose a novel LoS-distance metric to quantify both the urgency and sensitivity of losing LoS between robots considering potential robot movements. Moreover, to address the imbalanced urgency of losing LoS between two robots, we design a fusion function to capture the overall urgency while generating gradients that facilitate robots’ collaborative movement to maintain LoS. The LoS constraints are encoded into a potential function that preserves the positivity of the Fiedler eigenvalue of the robots’ network graph to ensure connectivity. Finally, we establish a LoS-constrained exploration framework that integrates the proposed connectivity controller. We showcase its applications in multi-robot exploration in complex unknown environments, where robots can always maintain the LoS connectivity through distributed sensing and communication, while collaboratively mapping the unknown environment. The implementations are open-sourced at https://github.com/bairuofei/LoS_constrained_navigation.

I Introduction

Multi-robot navigation holds various applications in search and rescue [1], area inspection [2], and autonomous exploration [3], etc. While robots usually rely on inter-robot communication for timely coordination, its reliability can be compromised in practice due to the power limitation of robots’ onboard communication devices and the obstruction of obstacles in environments. Moreover, mutual observations between robots can also be critical for real-time situational awareness when robots are deployed in dangerous environments. Most existing works assume range-based communication models [4, 5, 6, 7], while omitting the presence of obstacles that can obstruct Line-of-Sight (LoS) between robots and degrade radio signals, leading to disrupted communication and observation within the multi-robot system [8]. To support reliable communication and coordination of multi-robot systems, one challenging problem is to maintain the LoS-connectivity between robots in the presence of obstacles while performing external navigation tasks [9].

Existing works address this problem by assuming known environment models, based on which the robot connectivity can be maintained in either a continuous or a discrete manner [9, 10, 11, 12]. The environment models help to formulate the potential functions to keep LoS between robots [11, 9], define safe zones for robots that ensure connectivity [13], or check the connectivity between robots’ target positions in discrete decision-making [4].

However, challenges arise when robots are deployed in unknown environments, where unpredictable obstacles may hinder the LoS connectivity between robots. Moreover, it is non-trivial to construct a consistent and concise obstacle point set among robots to describe the surrounding environment, which is usually required by traditional connectivity control methods [11].

Refer to caption
Figure 1: Real-time LoS maintenance of four robots while exploring an unknown environment. Robots’ visible regions (enclosed by curves with different colors) are constructed from their real-time point cloud measurements. The connectivity between robots is shown by the light green edges. To maintain connectivity, each robot only needs local information from its one-hop neighbors.

In this paper, we propose Realm, a Real-time LoS maintenance method that can be applied in complex unknown environments without relying on prior environment models, as shown in Fig. 1. Our method can directly formulate the LoS constraints between robots based on their real-time point cloud measurements (from 2D/3D LiDARs, RGB-D cameras, etc), by adopting techniques in point cloud visibility analysis. The LoS constraints are then encoded into a potential function to preserve the positivity of the Fiedler eigenvalue of the graph Laplacian matrix of robots’ underlying topology, which ensures the connectivity between robots. The control command of robots can be calculated distributively with only one-hop communication between its immediate neighbors, and allows time-varying connected topology of robots while performing external navigation tasks. Our contributions are summarized as follows:

  1. 1.

    We derive a novel LoS-distance metric that encodes both the urgency and sensitivity of losing LoS between robots, extending visibility analysis techniques from computer graphics to real-time formulation of inter-robot LoS constraints;

  2. 2.

    We design an effective LoS-distance fusion function that fuses imbalanced LoS-distance into a weighted connectivity graph, facilitating robots’ collaborative movement to maintain LoS;

  3. 3.

    We establish a LoS-constrained multi-robot navigation framework that integrates multi-robot mapping, task assignment, and path planning.

We demonstrate the applications of the proposed method in multi-robot exploration of complex unknown environments, where robots can successfully explore the entire environment while always ensuring LoS-connectivity. Our implementations will be open-sourced at https://github.com/bairuofei/LoS_constrained_navigation.

II Related Works

II-A Line-of-Sight-Constrained Multi-Robot Navigation

Existing works considering connectivity maintenance can be categorized into continuous and discrete types [9]. Continuous connectivity requires robots to always maintain a connected network during their operations. Giordano et al. propose a potential function-based method that guarantees connectivity by preserving the Fiedler eigenvalue of the underlying graph Laplacian to be positive [11, 9]. In their work, the LoS constraints are captured by the distance from the closest obstacle point to the LoS segment joining two robots. Alternatively, an analytical form of the LoS constraints is also derived in [14] by approximating the LoS segment with a minimum volume enclosing ellipsoid (MVEE). Chen et al. also consider the LoS constraints in multi-UAV deployment [13], where the movements of two robots are restricted in a safe zone defined by separating hyperplanes of obstacles.

In contrast, discrete connectivity only requires robots to be connected at certain time steps [15]. A typical procedure first determines a target connected topology for the robots based on spanning tree search, after which their positions are refined through local optimization to balance additional objectives such as travel distance or information gain [4, 16, 17, 10]. To ensure LoS constraints in the local optimization stage, Stump et al. apply polygonal decomposition of an environment, after which neighboring robots’ positions are restricted in a common polyhedron to ensure LoS [16]. Xia et al. formulate the LoS constraints based on robots’ visible regions described by star convex polytope [10]. However, as local optimization modifies robots’ positions, the corresponding changes in their visible regions may lead to potential LoS loss after optimization.

While most existing works rely on known environment models described by either obstacle points [11, 14] or occupancy maps [16, 10], few works have considered connectivity maintenance in unknown environments. Li et al. propose a reinforcement learning-based approach that generates control commands based on the inputs of range sensor measurements and the positions of other robots, and does not rely on prior environmental information [18]. However, the method has no guarantee of global connectivity.

III Preliminaries

III-A Graph Laplacian and Generalized Graph Connectivity

Given a graph 𝒢=𝒱,\mathcal{G}=\langle\mathcal{V},\mathcal{E}\rangle with NN vertices, the graph Laplacian matrix of 𝒢\mathcal{G} is defined as 𝐋=DA\mathbf{L}=D-A, where AN×NA\in\mathbb{R}^{N\times N} is the adjacency matrix with an element Aij=0A_{ij}=0 if (i,j)(i,j)\notin\mathcal{E}, and Aij>0A_{ij}>0 otherwise; DN×ND\in\mathbb{R}^{N\times N} is a diagonal degree matrix where Dii=j=1NAijD_{ii}=\sum_{j=1}^{N}A_{ij} and Dij=0D_{ij}=0 when iji\neq j. The second-smallest eigenvalue λ2\lambda_{2} of 𝐋\mathbf{L}, usually referred to as the Fiedler eigenvalue [19] or connectivity eigenvalue, can be used to check the connectivity of the graph 𝒢\mathcal{G}. It holds the property that λ2>0\lambda_{2}>0 if the graph 𝒢\mathcal{G} is connected, or λ2=0\lambda_{2}=0 otherwise.

By encoding the satisfaction levels of different kinds of connectivity constraints between two robots into the weight of their corresponding edge, the Fiedler eigenvalue λ2\lambda_{2} of the weighted graph Laplacian can be used to reflect the generalized graph connectivity [11]. In this work, we also use this concept to ensure connectivity between robots by enforcing that the Fiedler eigenvalue λ2\lambda_{2} of the weighted graph Laplacian remains positive during navigation.

III-B Visible Region Construction from Point Cloud

As shown in Fig. 2(a), given the point cloud measurement 𝒞j3\mathcal{C}_{j}\subseteq\mathbb{R}^{3} from the robot jj, its visible region can be constructed via the following steps [20, 21, 10]:

1) Augmentation. Add augmented points to fill the gaps in the point cloud 𝒞j\mathcal{C}_{j};

2) Spherical flipping. Map each point 𝐪𝒞j\mathbf{\boldsymbol{q}}\in\mathcal{C}_{j} along the ray originating from the robot jj to a point 𝐪\mathbf{\boldsymbol{q}}^{\prime} located outside a sphere of radius rr, following the equation 𝐪=2r𝐪𝐪𝐪\mathbf{\boldsymbol{q}}^{\prime}=2r\cdot\frac{\mathbf{\boldsymbol{q}}}{\|\mathbf{\boldsymbol{q}}\|}-\mathbf{\boldsymbol{q}}. The flipped point cloud is denoted as 𝒞j\mathcal{C}_{j}^{\prime};

3) Convex hull construction. Generate convex hull of 𝒞j\mathcal{C}_{j}^{\prime}, denoted as Conv(𝒞j)Conv(\mathcal{C}_{j}^{\prime}).

4) Inversion. Inverse the convex hull by performing the inverse spherical flipping. The inversed shape of the convex hull encloses the visible region of robot jj.

As shown in Fig. 2(a), the visibility of a point 𝐪i3\mathbf{\boldsymbol{q}}_{i}\in\mathbb{R}^{3} from the position 𝐪j3\mathbf{\boldsymbol{q}}_{j}\in\mathbb{R}^{3} of robot jj is determined by the distance dkd_{k^{*}}, defined as dk=maxk{dk=𝐧k(𝐪i𝒂k)|k=1,,K}d_{k^{*}}=\max_{k}\{d_{k}=\mathbf{\boldsymbol{n}}_{k}^{\top}(\mathbf{\boldsymbol{q}}_{i}^{\prime}-\boldsymbol{a}_{k})|k=1,...,K\}, where 𝐧k\mathbf{\boldsymbol{n}}_{k} is the outward normal vector of the kk-th face of Conv(𝒞j)Conv(\mathcal{C}_{j}^{\prime}) composed of KK faces; 𝒂k3\boldsymbol{a}_{k}\in\mathbb{R}^{3} is an arbitrary point on the face kk; 𝐪i\mathbf{\boldsymbol{q}}_{i}^{\prime} is the flipped point of 𝐪i\mathbf{\boldsymbol{q}}_{i} following the spherical flipping; and the index kk^{*} is defined as k=argmaxk[1,,K]dkk^{*}=\arg\max_{k\in[1,...,K]}d_{k}. If dk>0d_{k^{*}}>0, 𝐪i\mathbf{\boldsymbol{q}}_{i} is visible from 𝐪j\mathbf{\boldsymbol{q}}_{j}, i.e., they are within line-of-sight with each other; vice verse if dk0d_{k^{*}}\leq 0. The log-sum-exp relaxation is employed to get a differentiable approximation of dkd_{k^{*}}, defined as

dk1αlog(eαd1++eαdK),d_{k^{*}}\approx\frac{1}{\alpha}\log\left(e^{\alpha d_{1}}+\cdots+e^{\alpha d_{K}}\right), (1)

where α>0\alpha>0 is a coefficient that controls the degree of approximation [21]. The above process is adopted from the hidden point removal (HPR) operator in point cloud visibility analysis [20], with time complexity of 𝒪(nlogn)\mathcal{O}(n\log n), where nn is the size of a point cloud.

In this paper, we aim to derive the LoS constraints between robots from their point cloud measurements. Specifically, we first construct the visible regions of robots, and then design potential functions to keep them operating within each other’s visible regions to maintain LoS connectivity.

Refer to caption
(a)
Refer to caption
(b)
Figure 2: (a) Construction of the visible region [21]; (b) Imbalanced LoS-distance for two robots. Robot 11 is at a higher risk of losing LoS than robot 22, as robot 11 is easier to move beyond the visible region (enclosed by the green curve) of robot 22 after a delta movement.

IV Problem Formulation

IV-A Robot Model

Assume there are a set of robots ={1,2,,R}\mathcal{R}=\{1,2,...,R\} to perform navigation tasks in an initially unknown environment. The position and orientation of a robot ii\in\mathcal{R} at time tt is denoted as 𝐪i(t)3\mathbf{\boldsymbol{q}}_{i}(t)\in\mathbb{R}^{3} and Ri(t)𝒮𝒪(3)R_{i}(t)\in\mathcal{SO}(3) respectively. We assume the kinematic model of robot ii is a single-integrator as follows:

𝐪i(t+1)=𝐪i(t)+kic𝒖ic(t)+kin𝒖in(t),\mathbf{\boldsymbol{q}}_{i}(t+1)=\mathbf{\boldsymbol{q}}_{i}(t)+k^{\text{c}}_{i}\cdot\boldsymbol{u}^{\text{c}}_{i}(t)+k^{\text{n}}_{i}\cdot\boldsymbol{u}^{\text{n}}_{i}(t), (2)

where 𝒖ic,𝒖in3\boldsymbol{u}^{\text{c}}_{i},\boldsymbol{u}^{\text{n}}_{i}\in\mathbb{R}^{3} are the velocity commands for connectivity and navigation, respectively; kic,kin0k_{i}^{\text{c}},k_{i}^{\text{n}}\in\mathbb{R}_{\geq 0} are two scaling factors. Moreover, the combined velocity command is bounded by kic𝒖ic(t)+kin𝒖in(t)2Umax\|k^{\text{c}}_{i}\cdot\boldsymbol{u}^{\text{c}}_{i}(t)+k^{\text{n}}_{i}\cdot\boldsymbol{u}^{\text{n}}_{i}(t)\|_{2}\leq U_{\text{max}}, where Umax+U_{\text{max}}\in\mathbb{R}_{+} is the upper limit of robots’ velocities.

IV-B Connectivity Constraints

Let 𝒢(t)=𝒱,(t),ω\mathcal{G}(t)=\langle\mathcal{V},\mathcal{E}(t),\omega\rangle be an undirected time-varying graph, where 𝒱={1,,R}\mathcal{V}=\{1,...,R\} includes RR vertices that correspond to robots in \mathcal{R}; (t)𝒱×𝒱\mathcal{E}(t)\subseteq\mathcal{V}\times\mathcal{V} is the edge set at time tt; and the weighting function ω:𝒱×𝒱0\omega:\mathcal{V}\times\mathcal{V}\xrightarrow{}\mathbb{R}_{\geq 0} evaluates the strength of connectivity between two vertices in the graph. The relative distance between two robots i,ji,j\in\mathcal{R} is defined as dij=dji=𝐪i𝐪j2d_{ij}=d_{ji}=\lVert\mathbf{\boldsymbol{q}}_{i}-\mathbf{\boldsymbol{q}}_{j}\rVert_{2}. An edge (i,j)(i,j)\in\mathcal{E} if and only if the following conditions are satisfied:

  • (C1) Communication constraints. The relative distance between two robots ii and jj must be within the communication range dcomd^{\text{com}}, i.e., dijdcomd_{ij}\leq d^{\text{com}}.

  • (C2) Line-of-Sight constraints. The two robots must be within each other’s line-of-sight, i.e., η𝐪i+(1η)𝐪j𝒪\eta\mathbf{\boldsymbol{q}}_{i}+(1-\eta)\mathbf{\boldsymbol{q}}_{j}\notin\mathcal{O}, η[0,1]\forall\eta\in[0,1], where 𝒪3\mathcal{O}\subseteq\mathbb{R}^{3} includes obstacles in the environment that are unknown to the robots.

  • (C3) Collision avoidance constraints. The relative distance between robot ii and robot jj, and their distance to surrounding obstacles must be larger than a safe distance dcolld^{\text{coll}}, i.e., dijdcolld_{ij}\geq d^{\text{coll}}.

We define a set 𝒩i={j𝒱|(i,j)}\mathcal{N}_{i}=\{j\in\mathcal{V}|(i,j)\in\mathcal{E}\} as the collection of all neighboring robots of robot ii that satisfy above constraints. The graph 𝒢\mathcal{G} is referred to as the connectivity graph of the robot team. Initially, we assume 𝒢(0)\mathcal{G}(0) is connected.

IV-C Problem Statement

Given a sequence of target points 𝒵={𝒛1,,𝒛M}3\mathcal{Z}=\{\boldsymbol{z}^{1},...,\boldsymbol{z}^{M}\}\subseteq\mathbb{R}^{3} distributed in the free space of an unknown environment, and a group of robots ={1,,R}\mathcal{R}=\{1,...,R\} with kinematic models as in Eq. (2). We assume MRM\leq R. The index of the designated robot to a target 𝒛m𝒵\boldsymbol{z}^{m}\in\mathcal{Z} is denoted as the robot izmi_{z}^{m}. The problem is to find a sequence of velocity commands 𝒖ic\boldsymbol{u}^{\text{c}}_{i} and 𝒖in\boldsymbol{u}^{\text{n}}_{i} for each robot ii\in\mathcal{R} so that: (1) there exist a time sequence 0t1,,tM<0\leq t^{1},...,t^{M}<\infty when the corresponding target 𝒛m\boldsymbol{z}^{m} is visited by the assigned robot izmi_{z}^{m} at time tmt^{m}, and stay at 𝒛m\boldsymbol{z}^{m} for a pre-defined time duration ΔT\Delta T; (2) the connectivity graph 𝒢(t)\mathcal{G}(t) is connected for t0\forall t\geq 0.

The unknown obstacles present challenges for LoS maintenance between robots during navigation, which is our main focus in this paper. In contrast, the formulations of communication constraints (C1) and inter-robot collision avoidance (part of C3) only depend on robots’ relative distances, which can be derived following [11]. The details are provided in the Appendix for completeness.

V Methodology

This section first overviews the potential function design to ensure generalized graph connectivity, and then focuses on the formulation of the LoS constraints from robots’ visible regions. Finally, we show the connectivity velocity command of each robot can be derived distributively.

V-A Potential Function for Fiedler Eigenvalue

Based on the concept of generalized graph connectivity, we define ω(i,j)=Aij=αijβijγij\omega(i,j)=A_{ij}=\alpha_{ij}\cdot\beta_{ij}\cdot\gamma_{ij} for an edge (i,j)(i,j)\in\mathcal{E} in the connectivity graph, where αij,βij,γij0\alpha_{ij},\beta_{ij},\gamma_{ij}\in\mathbb{R}_{\geq 0} are the weights quantifying the satisfaction of constraints C1, C2, and C3 between two robots ii and jj, respectively. We define a potential function Vλ(λ2)=1λ2λ2minV^{\lambda}(\lambda_{2})=\frac{1}{\lambda_{2}-\lambda_{2}^{\text{min}}} to enforce the Fiedler eigenvalue λ2\lambda_{2} of 𝒢\mathcal{G} being larger than a preferred lower bound λ2min>0\lambda_{2}^{\text{min}}>0 as in [11, 12]. Then the velocity command for a robot ii\in\mathcal{R} to maintain the graph connectivity can be derived as [22]

𝒖ic=Vλ(λ2)λ2λ2𝐪i=Vλ(λ2)λ2j𝒩iAij𝐪i(v2iv2j)2,\small\boldsymbol{u}^{\text{c}}_{i}=-\frac{\partial V^{\lambda}(\lambda_{2})}{\partial\lambda_{2}}\cdot\frac{\partial\lambda_{2}}{\partial\mathbf{\boldsymbol{q}}_{i}}=-\frac{\partial V^{\lambda}(\lambda_{2})}{\partial\lambda_{2}}\cdot\sum_{j\in\mathcal{N}_{i}}\frac{\partial A_{ij}}{\partial\mathbf{\boldsymbol{q}}_{i}}(v_{2_{i}}-v_{2_{j}})^{2},

where v2iv_{2_{i}} and v2jv_{2_{j}} are respectively the ii-th and jj-th elements of the normalized eigenvector 𝒗2\boldsymbol{v}_{2} corresponding to the λ2\lambda_{2}.

In subsequent sections, we will focus on the formulation of βij()\beta_{ij}(\cdot) to quantify the LoS constraints between robots, while the definitions of αij()\alpha_{ij}(\cdot) and γij()\gamma_{ij}(\cdot) are provided in the Appendix due to space limitations.

V-B Urgency and Sensitivity Analysis of Losing LoS

Refer to caption
(a)
Refer to caption
(b)
Figure 3: (a) Sensitivity of losing LoS after applying delta movements to two test points (blue and red dots) with a same dkd_{k^{*}}; (b) Illustration of Δdk\Delta_{d_{k^{*}}} after applying a delta movement δ𝐪\delta\mathbf{\boldsymbol{q}} (red arrow) to 𝐪ji\mathbf{\boldsymbol{q}}_{ji} in 2D case.

This section presents a LoS-distance metric that quantifies both the urgency and sensitivity of losing LoS between two robots. While the distance dkd_{k^{*}} as in Eq. (1) can be used to determine the visibility between two robots, it cannot quantify the sensitivity of losing LoS as a robot moves. The situation is illustrated in Fig. 3(a), where, although the two cases have the same dkd_{k^{*}}, the change of dkd_{k^{*}} after applying a delta movement to the test point is significantly different.

Here we quantitatively analyze the sensitivity of robot ii losing LoS with robot jj, i.e., moving beyond the visible region of robot jj. To begin with, the position of robot ii in robot jj’s local coordinate frame is obtained by 𝐪ji=Rj1(𝐪i𝐪j)3\mathbf{\boldsymbol{q}}_{ji}=R_{j}^{-1}(\mathbf{\boldsymbol{q}}_{i}-\mathbf{\boldsymbol{q}}_{j})\in\mathbb{R}^{3}. Recall in Sec. III-B, the flipped point of 𝐪ji\mathbf{\boldsymbol{q}}_{ji} is calculated as 𝐪ji=2r𝐪ji𝐪ji𝐪ji\mathbf{\boldsymbol{q}}_{ji}^{\prime}=2r\cdot\frac{\mathbf{\boldsymbol{q}}_{ji}}{\lVert\mathbf{\boldsymbol{q}}_{ji}\rVert}-\mathbf{\boldsymbol{q}}_{ji}. To quantify the sensitivity of losing LoS, we introduce a disturbance movement δ𝐪\delta\mathbf{\boldsymbol{q}} to 𝐪ji\mathbf{\boldsymbol{q}}_{ji}, defined as δ𝐪=ξ1𝐞r+ξ2𝐞t+ξ3𝐞n\delta\mathbf{\boldsymbol{q}}=\xi_{1}\cdot\mathbf{\boldsymbol{e}}_{r}+\xi_{2}\cdot\mathbf{\boldsymbol{e}}_{t}+\xi_{3}\cdot\mathbf{\boldsymbol{e}}_{n}, where ξ1,ξ2,ξ3\xi_{1},\xi_{2},\xi_{3}\in\mathbb{R}; δ𝐪σ+\|\delta\mathbf{\boldsymbol{q}}\|\leq\sigma\in\mathbb{R}_{+} with σ0\sigma\xrightarrow{}0; 𝐞r,𝐞t,𝐞n\mathbf{\boldsymbol{e}}_{r},\mathbf{\boldsymbol{e}}_{t},\mathbf{\boldsymbol{e}}_{n} are orthogonal basis vectors in radial, tangential, and normal directions. The notations are illustrated in Fig. 3(b) in 2D cases. Note that 𝐞r\mathbf{\boldsymbol{e}}_{r} is parallel to 𝐧r\mathbf{\boldsymbol{n}}_{r}, defined as 𝐧r=𝐪ji𝐪ji\mathbf{\boldsymbol{n}}_{r}=\frac{\mathbf{\boldsymbol{q}}_{ji}^{\prime}}{\|\mathbf{\boldsymbol{q}}_{ji}^{\prime}\|}. After applying the delta movement to 𝐪ji\mathbf{\boldsymbol{q}}_{ji}, the resulting movement of 𝐪ji\mathbf{\boldsymbol{q}}_{ji}^{\prime} is δ𝐪ξ1𝐞r+2r𝐪ji𝐪ji(ξ2𝐞t+ξ3𝐞n)\delta\mathbf{\boldsymbol{q}}^{\prime}\approx-\xi_{1}\cdot\mathbf{\boldsymbol{e}}_{r}+\frac{2r-\|\mathbf{\boldsymbol{q}}_{ji}\|}{\|\mathbf{\boldsymbol{q}}_{ji}\|}(\xi_{2}\cdot\mathbf{\boldsymbol{e}}_{t}+\xi_{3}\cdot\mathbf{\boldsymbol{e}}_{n}). By projecting to the normal direction 𝐧k\mathbf{\boldsymbol{n}}_{k^{*}}, the resulting change of dkd_{k^{*}} is Δdk=(δ𝐪)𝐧kξ1cosθk+2r𝐪ji𝐪ji(ξ2+ξ3)sinθk\Delta_{d_{k^{*}}}=(\delta\mathbf{\boldsymbol{q}}^{\prime})^{\top}\mathbf{\boldsymbol{n}}_{k^{*}}\approx-\xi_{1}\cos{\theta_{k^{*}}}+\frac{2r-\|\mathbf{\boldsymbol{q}}_{ji}\|}{\|\mathbf{\boldsymbol{q}}_{ji}\|}(\xi_{2}+\xi_{3})\sin{\theta_{k^{*}}}. Considering ξ1,ξ2,ξ30\xi_{1},\xi_{2},\xi_{3}\xrightarrow{}0 and that the flipping radius rr is typically set to be much larger than 𝐪ji\|\mathbf{\boldsymbol{q}}_{ji}\|, we omit the term ξ1cosθk-\xi_{1}\cos{\theta_{k^{*}}} and get

Δdk2r𝐪ji𝐪ji(ξ2+ξ3)sinθk2r𝐪ji𝐪ji2σsinθk.\small\Delta_{d_{k^{*}}}\approx\frac{2r-\|\mathbf{\boldsymbol{q}}_{ji}\|}{\|\mathbf{\boldsymbol{q}}_{ji}\|}(\xi_{2}+\xi_{3})\sin{\theta_{k^{*}}}\leq\frac{2r-\|\mathbf{\boldsymbol{q}}_{ji}\|}{\|\mathbf{\boldsymbol{q}}_{ji}\|}\cdot\sqrt{2}\sigma\cdot\sin{\theta_{k^{*}}}.

According to the above expression, in the worst case, the sensitivity of dkd_{k^{*}} w.r.t. the robot’s delta movement is determined by sinθk\sin{\theta_{k^{*}}}, i.e., a larger |θk||\theta_{k^{*}}| will introduce larger potential decrease of dkd_{k^{*}}, and vice versa. The analysis is aligned with the illustrations in Fig. 3(a).

Therefore, we define a sensitivity-encoded LoS-distance metric that quantifies the distance from robot ii to the visible region of robot jj as d^jilos=dkcosθk\hat{d}^{\text{los}}_{ji}=d_{k^{*}}\cdot\cos{\theta_{k^{*}}}. A differentiable approximation of this metric is defined as

d^jilos=1αlog(k=1Keαdk)k=1Keαdkcosθkk=1Keαdk,\small\hat{d}^{\text{los}}_{ji}=\frac{1}{\alpha}\log(\sum_{k=1}^{K}e^{\alpha d_{k}})\cdot\frac{\sum_{k=1}^{K}e^{\alpha d_{k}}\cdot\cos{\theta_{k}}}{\sum_{k=1}^{K}e^{\alpha d_{k}}}, (3)

where cosθk=𝐧r𝐧k\cos{\theta_{k}}=\mathbf{\boldsymbol{n}}_{r}^{\top}\mathbf{\boldsymbol{n}}_{k}. The rationale behind this metric is, to increase d^jilos\hat{d}^{\text{los}}_{ji}, the movement of robot ii should not only contribute to a larger dkd_{k^{*}} (to reduce urgency), but also a larger cosθk\cos{\theta_{k^{*}}} to reduce the sensitivity of losing LoS with robot jj. The derivative of d^jilos\hat{d}^{\text{los}}_{ji} w.r.t. 𝐪ji\mathbf{\boldsymbol{q}}_{ji}^{\prime} is calculated as

d^jilos𝐪ji=\displaystyle\frac{\partial\hat{d}^{\text{los}}_{ji}}{\partial\mathbf{\boldsymbol{q}}_{ji}^{\prime}}= cosθ^k𝐧^k+d^k𝐪ji(𝐧^kcosθ^k𝐧r)\displaystyle\cos{\hat{\theta}_{k^{*}}}\cdot\hat{\mathbf{\boldsymbol{n}}}_{k^{*}}^{\top}+\frac{\hat{d}_{k^{*}}}{\|\mathbf{\boldsymbol{q}}_{ji}^{\prime}\|}(\hat{\mathbf{\boldsymbol{n}}}_{k^{*}}^{\top}-\cos{\hat{\theta}_{k^{*}}}\cdot\mathbf{\boldsymbol{n}}_{r}^{\top}) (4)
+αd^k(cosθk𝐧k^cosθ^k𝐧^k),\displaystyle+\alpha\cdot\hat{d}_{k^{*}}(\frac{\widehat{\cos{\theta_{k^{*}}}\cdot\mathbf{\boldsymbol{n}}_{k^{*}}^{\top}}}{\cos{\hat{\theta}_{k^{*}}}}-\hat{\mathbf{\boldsymbol{n}}}_{k^{*}}^{\top}),

where cosθ^k=eαdkcosθkeαdk\cos{\hat{\theta}_{k^{*}}}=\frac{\sum e^{\alpha d_{k}}\cdot\cos{\theta_{k}}}{\sum e^{\alpha d_{k}}}; 𝐧^k=eαdk𝐧keαdk\hat{\mathbf{\boldsymbol{n}}}_{k^{*}}^{\top}=\frac{\sum e^{\alpha d_{k}}\cdot\mathbf{\boldsymbol{n}}_{k}^{\top}}{\sum e^{\alpha d_{k}}}; d^k=d^jiloscosθ^k\hat{d}_{k^{*}}=\frac{\hat{d}^{\text{los}}_{ji}}{\cos{\hat{\theta}_{k^{*}}}}; cosθk𝐧k^=eαdk(cosθk𝐧k)eαdk\widehat{\cos{\theta_{k^{*}}}\cdot\mathbf{\boldsymbol{n}}_{k^{*}}^{\top}}=\frac{\sum e^{\alpha d_{k}}(\cos{\theta_{k}}\cdot\mathbf{\boldsymbol{n}}_{k}^{\top})}{\sum e^{\alpha d_{k}}}. Assuming ideal log-sum-exp approximation, Eq. (4) can be simplified as

d^jilos𝐪jicosθk𝐧k+dk𝐪ji(𝐧kcosθk𝐧r).\frac{\partial\hat{d}^{\text{los}}_{ji}}{\partial\mathbf{\boldsymbol{q}}_{ji}^{\prime}}\approx\cos{\theta_{k^{*}}}\cdot\mathbf{\boldsymbol{n}}_{k^{*}}^{\top}+\frac{d_{k^{*}}}{\|\mathbf{\boldsymbol{q}}_{ji}^{\prime}\|}(\mathbf{\boldsymbol{n}}_{k^{*}}^{\top}-\cos{\theta_{k^{*}}}\cdot\mathbf{\boldsymbol{n}}_{r}^{\top}). (5)

Note that when θk=0\theta_{k^{*}}=0, i.e., 𝐧k=𝐧r\mathbf{\boldsymbol{n}}_{k^{*}}=\mathbf{\boldsymbol{n}}_{r}, the derivative is calculated as d^jilos𝐪ji|θk=0𝐧k\frac{\partial\hat{d}^{\text{los}}_{ji}}{\partial\mathbf{\boldsymbol{q}}_{ji}^{\prime}}\Big{|}_{\theta_{k^{*}}=0}\approx\mathbf{\boldsymbol{n}}_{k^{*}}^{\top}, which is the same as the derivative when using Eq. (1) to measure the LoS-distance.

Remark 1

The new LoS-distance metric has two benefits: (1) when dk0d_{k^{*}}\geq 0, it holds that d^jilosdk\hat{d}^{\text{los}}_{ji}\leq d_{k^{*}}, which means that d^jilos\hat{d}^{\text{los}}_{ji} will incur a larger connectivity velocity in Eq. (7) when robots are more sensitive to losing LoS with a same dkd_{k^{*}}; (2) compared with using dkd_{k^{*}} alone as in Eq. (1), the derivative in Eq. (5) has an additional component (i.e., the second term on the right-hand side) that decreases |θk||\theta_{k^{*}}|, hence reduces sensitivity of losing LoS.

Finally, the derivative of d^jilos\hat{d}^{\text{los}}_{ji} w.r.t. 𝐪ji\mathbf{\boldsymbol{q}}_{ji} is calculated as

d^jilos𝐪ji=d^jilos𝐪ji𝐪ji𝐪ji=d^jilos𝐪ji(2r𝐪ji2r𝐪ji3𝐪ji𝐪ji1).\frac{\partial\hat{d}^{\text{los}}_{ji}}{\partial\mathbf{\boldsymbol{q}}_{ji}}=\frac{\partial\hat{d}^{\text{los}}_{ji}}{\partial\mathbf{\boldsymbol{q}}_{ji}^{\prime}}\cdot\frac{\partial\mathbf{\boldsymbol{q}}_{ji}^{\prime}}{\mathbf{\boldsymbol{q}}_{ji}}=\frac{\partial\hat{d}^{\text{los}}_{ji}}{\partial\mathbf{\boldsymbol{q}}_{ji}^{\prime}}(\frac{2r}{\|\mathbf{\boldsymbol{q}}_{ji}\|}-\frac{2r}{\|\mathbf{\boldsymbol{q}}_{ji}\|^{3}}\cdot\mathbf{\boldsymbol{q}}_{ji}\mathbf{\boldsymbol{q}}_{ji}^{\top}-1).

V-C Fusion of Imbalanced LoS-Distance

This section proposes the potential function β()\beta(\cdot) that encodes the LoS-distances between the robots ii and jj into the weight of the edge (i,j)(i,j)\in\mathcal{E}. To ensure that they are within each other’s LoS, it is required that d^ijlos,d^jilos0\hat{d}^{\text{los}}_{ij},\hat{d}^{\text{los}}_{ji}\geq 0.

However, directly designing a potential function for d^ijlos\hat{d}^{\text{los}}_{ij} and d^jilos\hat{d}^{\text{los}}_{ji} is not applicable, because it is often the case that d^ijlosd^jilos\hat{d}^{\text{los}}_{ij}\neq\hat{d}^{\text{los}}_{ji}, which will finally lead to asymmetric values of the edge weights AijA_{ij} and AjiA_{ji}. In fact, the different values of d^ijlos\hat{d}^{\text{los}}_{ij} and d^jilos\hat{d}^{\text{los}}_{ji} reflect the imbalanced urgency of losing LoS for two robots, as illustrated in Fig. 2(b). To keep the Laplacian matrix symmetric, we need to find a differentiable function to fuse d^ijlos\hat{d}^{\text{los}}_{ij} and d^jilos\hat{d}^{\text{los}}_{ji} while reflecting the urgency of losing LoS between the two robots. As such urgency is determined by the smaller value between d^ijlos\hat{d}^{\text{los}}_{ij} and d^jilos\hat{d}^{\text{los}}_{ji}, an intuitive option is to use a differentiable approximation of the min()\min(\cdot) function such as Softmin()\text{Softmin}(\cdot) function to take the smaller value. However, this will lead to poor cooperation between robots to maintain LoS, as verified in Sec. VII-B.

To address this issue, we define a LoS-distance fusion function dlos()d^{\text{los}}(\cdot) as

dijlos=d^ijlos+cd^ijlos+d^jilos+2cd^jilos+d^jilos+cd^ijlos+d^jilos+2cd^ijlos\small d^{\text{los}}_{ij}=\frac{\hat{d}^{\text{los}}_{ij}+c}{\hat{d}^{\text{los}}_{ij}+\hat{d}^{\text{los}}_{ji}+2c}\cdot\hat{d}^{\text{los}}_{ji}+\frac{\hat{d}^{\text{los}}_{ji}+c}{\hat{d}^{\text{los}}_{ij}+\hat{d}^{\text{los}}_{ji}+2c}\cdot\hat{d}^{\text{los}}_{ij} (6)

when d^ijlos,d^jilosdminlos\hat{d}^{\text{los}}_{ij},\hat{d}^{\text{los}}_{ji}\geq d^{\text{los}}_{\text{min}}. The Eq. (6) is essentially a weighted sum of d^ijlos\hat{d}^{\text{los}}_{ij} and d^jilos\hat{d}^{\text{los}}_{ji}, where c0c\in\mathbb{R}_{\geq 0} is a constant parameter that controls whether dijlosd^{\text{los}}_{ij} depends more on the smaller value among d^ijlos\hat{d}^{\text{los}}_{ij} and d^jilos\hat{d}^{\text{los}}_{ji} (when cc takes a small value) or their averaged value (otherwise). Particularly, the gradient of dijlosd^{\text{los}}_{ij} w.r.t. d^ijlos\hat{d}^{\text{los}}_{ij} and d^jilos\hat{d}^{\text{los}}_{ji} is less imbalanced that using the Softmin()\text{Softmin}(\cdot) function, and can be regulated by the parameter cc, which facilitates the less urgent robot’s movement to maintain LoS with its more urgent neighbor.

According to Eq. (6), it holds that dijlos=djilosd^{\text{los}}_{ij}=d^{\text{los}}_{ji}. Therefore, we design the potential function for dijlosd^{\text{los}}_{ij} or djilosd^{\text{los}}_{ji} that naturally ensures βij=βji\beta_{ij}=\beta_{ji} as follows:

βij={0,0djilos<dminlosks2[1cos(djilosdminlosdmaxlosdminlos)π],dminlosdjilos<dmaxlos,ks,djilosdmaxlos,\small\beta_{ij}=\left\{\begin{aligned} &0,&0\leq d^{\text{los}}_{ji}<d^{\text{los}}_{\text{min}}\\ &\frac{k_{s}}{2}[1-\cos(\frac{d^{\text{los}}_{ji}-d^{\text{los}}_{\text{min}}}{d^{\text{los}}_{\text{max}}-d^{\text{los}}_{\text{min}}})\pi],&d^{\text{los}}_{\text{min}}\leq d^{\text{los}}_{ji}<d^{\text{los}}_{\text{max}},\\ &k_{s},&d^{\text{los}}_{ji}\geq d^{\text{los}}_{\text{max}},\end{aligned}\right. (7)

where dmaxlos>0d^{\text{los}}_{\text{max}}>0 is the distance from which the LoS between two robots start being affected, until they lose LoS when djilos<dminlosd^{\text{los}}_{ji}<d^{\text{los}}_{\text{min}}. Finally, the derivative of βij\beta_{ij} w.r.t. 𝐪ji\mathbf{\boldsymbol{q}}_{ji} is obtained as βij𝐪ji=βijdjilosdjilosd^jilosd^jilos𝐪ji\frac{\partial\beta_{ij}}{\partial\mathbf{\boldsymbol{q}}_{ji}}=\frac{\partial\beta_{ij}}{\partial d^{\text{los}}_{ji}}\cdot\frac{\partial d^{\text{los}}_{ji}}{\partial\hat{d}^{\text{los}}_{ji}}\cdot\frac{\partial\hat{d}^{\text{los}}_{ji}}{\partial\mathbf{\boldsymbol{q}}_{ji}}. As 𝐪ji\mathbf{\boldsymbol{q}}_{ji} is defined in robot jj’s local frame, the gradient is transformed to the world frame as βij𝐪i=βij𝐪ji𝐪ji𝐪i=βij𝐪jiRj1\frac{\partial\beta_{ij}}{\partial\mathbf{\boldsymbol{q}}_{i}}=\frac{\partial\beta_{ij}}{\partial\mathbf{\boldsymbol{q}}_{ji}}\cdot\frac{\partial\mathbf{\boldsymbol{q}}_{ji}}{\partial\mathbf{\boldsymbol{q}}_{i}}=\frac{\partial\beta_{ij}}{\partial\mathbf{\boldsymbol{q}}_{ji}}\cdot R_{j}^{-1}.

V-D Derivation of Connectivity Velocity

After defining βij()\beta_{ij}(\cdot) as in Eq. (7), and αij()\alpha_{ij}(\cdot) and γij()\gamma_{ij}(\cdot) as in the Appendix, the connectivity velocity of each robot ii\in\mathcal{R} can be calculated as

𝒖ic=1(λ2λ2min)2j𝒩iAij𝐪i(v2iv2j)2,\small\boldsymbol{u}^{\text{c}}_{i}=-\frac{1}{(\lambda_{2}-\lambda_{2}^{\text{min})^{2}}}\cdot\sum_{j\in\mathcal{N}_{i}}\frac{\partial A_{ij}}{\partial\mathbf{\boldsymbol{q}}_{i}}\cdot(v_{2_{i}}-v_{2_{j}})^{2}, (8)

where Aij𝐪i=αij𝐪iγijβij+αijγij𝐪iβij+αijγijβij𝐪i\frac{\partial A_{ij}}{\partial\mathbf{\boldsymbol{q}}_{i}}=\frac{\partial\alpha_{ij}}{\partial\mathbf{\boldsymbol{q}}_{i}}\cdot\gamma_{ij}\cdot\beta_{ij}+\alpha_{ij}\cdot\frac{\partial\gamma_{ij}}{\partial\mathbf{\boldsymbol{q}}_{i}}\cdot\beta_{ij}+\alpha_{ij}\cdot\gamma_{ij}\cdot\frac{\partial\beta_{ij}}{\partial\mathbf{\boldsymbol{q}}_{i}}.

Proposition 1

The connectivity velocity in Eq. (8) can be calculated distributively by each robot, requiring only one-hop communication with its neighbors (See proof in the Appendix).

VI LoS-Constrained Navigation Framework

Refer to caption
Figure 4: The framework of LoS-constrained multi-robot exploration.

This section introduces how to derive the navigation velocity for robots to perform the navigation tasks as specified in Sec. IV-C. To achieve mapless navigation, we employ an attemptable path planner, called FAR Planner [23], which attempts to find a reference path to the goal point while updating a visibility graph online for quick replanning. Given a target 𝒛m\boldsymbol{z}^{m} for a robot ii\in\mathcal{R}, the FAR Planner will serve intermediate waypoints that are visible to robot ii step by step toward 𝒛m\boldsymbol{z}^{m}. Assume the waypoint served by the FAR Planner at time tt is 𝐩i(t)3\mathbf{\boldsymbol{p}}_{i}(t)\in\mathbb{R}^{3}, the navigation velocity is calculated as 𝒖in(t)=𝐩i(t)𝐪i(t)𝐩i(t)𝐪i(t)\boldsymbol{u}^{\text{n}}_{i}(t)=\frac{\mathbf{\boldsymbol{p}}_{i}(t)-\mathbf{\boldsymbol{q}}_{i}(t)}{\|\mathbf{\boldsymbol{p}}_{i}(t)-\mathbf{\boldsymbol{q}}_{i}(t)\|}.

Moreover, considering the potential conflicts between robots’ navigation directions, we adopted the role-based scaling mechanism proposed in [9] to improve their navigation efficiency. The robot that is closest to its target point will be elected as the leading robot, who will be assigned a larger scaling factor kink_{i}^{\text{n}} than the secondary robots, hence dominating the others’ behavior when they have conflicts. The overall LoS-constrained multi-robot navigation framework and details about role-based scaling mechanism are shown in Fig. 4, and evaluated in Sec. VII.

Proposition 2

The connectivity of the graph 𝒢\mathcal{G} is always guaranteed if the navigation velocity 𝐮in\boldsymbol{u}^{\text{n}}_{i} is bounded (See proof in the Appendix).

VII Experiments and Analysis

Refer to caption
Figure 5: (a) Comparison of the fused LoS-distances between two robots using Eq. (6) and using the Softmin()\text{Softmin}(\cdot) function; (b) Comparison of the derivatives of Eq. (6) (solid lines) and that of the Softmin()\text{Softmin}(\cdot) function (transparent lines).

This section first compares the effectiveness of different LoS-distance fusion methods on handling imbalanced LoS-distance between robots. For connectivity maintenance, as most existing methods assume known environments, it is difficult to conduct fair comparisons with them. Instead, we verify the effectiveness of our method in LoS-constrained exploration of complex unknown environments as shown in Fig. 6, and provide the quantitative analysis of the proposed method. The experiments are conducted in Gazebo on a desktop with an i9-13900 CPU and 32 GB of RAM, where robots are equipped with 2D LiDARs with 360 degrees of FoV. The laser points that hit neighboring robots are removed before constructing the visible regions. The multi-robot mapping algorithm we used is adopted from Karto [24].

VII-A Implementation Details

Obstacle Avoidance: While the high-level path planner handles obstacle avoidance, we also design potential functions for obstacle avoidance to ensure safety. Specifically, each robot ii\in\mathcal{R} will select the closest laser point 𝐪𝒞i\mathbf{\boldsymbol{q}}\in\mathcal{C}_{i} as its nearest obstacle point, which will be treated as a static virtual neighboring robot. Then the potential function for inter-robot collision avoidance as in [11] can be directly applied. The details are provided in the Appendix.

Target Generation: During multi-robot exploration, a sequence of targets 𝒵\mathcal{Z} is generated as the frontiers in the environment, which are located at boundaries between known and unknown areas. The frontiers are assigned to robots based on their distance to robots and the information gain.

VII-B Evaluation of LoS-Distance Fusion Function

This section compares the proposed fusion function in Eq. (6) with the Softmin()\text{Softmin}(\cdot) function, which is a differentiable relaxation of the min()\min(\cdot) function, defined as dijsoftmin=1βlog(eβd^ijlos+eβd^jilos)d^{\text{softmin}}_{ij}=-\frac{1}{\beta}\log(e^{-\beta\cdot\hat{d}^{\text{los}}_{ij}}+e^{-\beta\cdot\hat{d}^{\text{los}}_{ji}}), where β>0\beta>0 is a coefficient that controls the degree of approximation. We show in Fig. 5(a) the LoS-distance between two robots during the exploration of Env. 2 in Fig. 6. The Softmin()\text{Softmin}(\cdot) provides a well lower-bound approximation of the smaller value between d^ijlos\hat{d}^{\text{los}}_{ij} and d^jilos\hat{d}^{\text{los}}_{ji}. However, when the difference between d^ijlos\hat{d}^{\text{los}}_{ij} and d^jilos\hat{d}^{\text{los}}_{ji} is significant, the derivative corresponding to the larger value (i.e., the less urgent robot) is close to zero, as shown in Fig. 5(b). In that case, one robot may lose LoS with another robot because the less urgent robot (with a derivative close to zero) will not move to help maintain LoS. In contrast, the proposed fusion function dlos()d^{\text{los}}(\cdot) not only captures the LoS-distance of the more urgent robot, but also generates the less imbalanced gradients for both robots so that they will driven by the connectivity velocity to maintain LoS collaboratively.

VII-C Evaluation of Connectivity in Multi-Robot Navigation

Refer to caption
(a) Env. 1 (87m×69m87m\times 69m)
Refer to caption
(b) Env. 2 (40m×57m40m\times 57m)
Refer to caption
(c) Real-world demonstration
Figure 6: Snapshots of robots’ connectivity graphs (green edges) during the exploration of the Env. 1 (a) and Env. 2 (b), and during a navigation task in a real-world demonstration (c). In (a) and (b), the occupancy maps are incrementally built from multi-robot collaborative mapping. Note that the topology of robots’ connectivity graph varies over time.
Refer to caption
Figure 7: Record of parameters during multi-robot exploration of Env. 22. The shared x-axis represents time steps. (a) the magnitude of connectivity velocity 𝒖ic\boldsymbol{u}^{\text{c}}_{i}; (b) the fluctuation of λ2\lambda_{2} of the connectivity graph 𝒢\mathcal{G}; (c) the magnitude of navigation velocity 𝒖in\boldsymbol{u}^{\text{n}}_{i} after role-based scaling; (d) ID of the leading robot over time, which corresponds to a larger 𝒖in\boldsymbol{u}^{\text{n}}_{i} in (c).

We evaluate the multi-robot connectivity maintenance of the proposed methods during the exploration of complex unknown environments, as shown in Fig. 6. The environments are filled with sharp turns and dense walls, making it challenging for robots to maintain LoS. Despite this, our method successfully maintains LoS-connectivity between robots throughout the exploration, as verified by the positive Fiedler eigenvalue λ2\lambda_{2} in Fig. 7(b). The satisfaction of constraints (C1, C2, C3) is also illustrated by the robots’ exploration trajectories and their connectivity graphs over time in Fig. 6. Furthermore, we quantitively compare the connectivity velocity 𝒖ic\boldsymbol{u}^{\text{c}}_{i} and navigation velocity 𝒖in\boldsymbol{u}^{\text{n}}_{i} under varying Fiedler eigenvalue λ2\lambda_{2}. As shown in Fig. 7(a) and (b), when λ2\lambda_{2} approaches zero, the connectivity velocity grows unbounded while the navigation velocity 𝒖in\boldsymbol{u}_{i}^{\text{n}} is bounded as in Fig. 7(c), hence the combined velocity commands are dominated to maintain the connectivity. The role-based scaling of the navigation velocity is shown in Fig. 7 (c) and (d), where the leading robot has a larger magnitude of the navigation velocity to resolve deadlocks when two robots move in opposite directions.

We also demonstrate the proposed method in the real-world, as shown in Fig. 6(c), where three DJI Tello Mini Drones with simulated 2D laser with 360 degrees of FoV are deployed. One drone follows a sequence of user-specified goals while the others move to maintain LoS connectivity. The results show that the robots can always maintain LoS connectivity when navigating in an unknown environment with obstacles. More experiments and details can be found in the attached video.

VII-D Discussion

Multi-sensor fusion: Our method accepts different LiDAR configurations, where multiple point cloud measurements can be fused after calibration into a single, larger point cloud to directly determine the visible region for a robot with a larger field of view, without additional adaptation.

Kinematic model of robots: Although we assume a first-order kinematic model as in Eq. (2), the velocity commands 𝒖ic\boldsymbol{u}^{\text{c}}_{i} and 𝒖in\boldsymbol{u}^{\text{n}}_{i} can be mapped to control mobile robots with unicycle models using near-identity diffeomorphism as in [25].

VIII CONCLUSIONS

This paper presents a LoS-constrained multi-robot navigation method that ensures connectivity among robots during exploration in unknown environments. We eliminate assumptions on known environment models by deriving LoS constraints directly from robots’ real-time point cloud measurements, by adopting techniques in point cloud visibility analysis. The effectiveness of the proposed method for connectivity maintenance has been verified in experiments. The proposed method can be applied to explore environments with risks and complications, where mutual observations between robots are critical for situational awareness. Future work is to study methods that allow temporary disconnection (caused by dynamic or small obstacles) to further improve robots’ navigation efficiency under connectivity constraints.

References

  • [1] Y. Tian, K. Liu, K. Ok, L. Tran, D. Allen, N. Roy, and J. P. How, “Search and rescue under the forest canopy using multiple uavs,” The International Journal of Robotics Research, vol. 39, no. 10-11, pp. 1201–1221, 2020.
  • [2] X. Xu, M. Cao, S. Yuan, T. H. Nguyen, T.-M. Nguyen, and L. Xie, “A cost-effective cooperative exploration and inspection strategy for heterogeneous aerial system,” in 2024 IEEE 18th International Conference on Control & Automation (ICCA), pp. 673–678, 2024.
  • [3] R. Bai, H. Guo, W.-Y. Yau, and L. Xie, “Graph-based slam-aware exploration with prior topo-metric information,” IEEE Robotics and Automation Letters, vol. 9, no. 9, pp. 7597–7604, 2024.
  • [4] G. Shi, I. E. Rabban, L. Zhou, and P. Tokekar, “Communication-aware multi-robot coordination with submodular maximization,” in 2021 IEEE International Conference on Robotics and Automation (ICRA), pp. 8955–8961, 2021.
  • [5] C. Cao, H. Zhu, Z. Ren, H. Choset, and J. Zhang, “Representation granularity enables time-efficient autonomous exploration in large, complex worlds,” Science Robotics, vol. 8, no. 80, p. eadf0970, 2023.
  • [6] D. M. S. Tan, Y. Ma, J. Liang, Y. C. Chng, Y. Cao, and G. Sartoretti, “Ir 2: Implicit rendezvous for robotic exploration teams under sparse intermittent connectivity,” in 2024 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), pp. 13245–13252, IEEE, 2024.
  • [7] V. S. Varadharajan, D. St-Onge, B. Adams, and G. Beltrame, “Swarm relays: Distributed self-healing ground-and-air connectivity chains,” IEEE Robotics and Automation Letters, vol. 5, no. 4, pp. 5347–5354, 2020.
  • [8] J. Liu and G. Hu, “Relative localization estimation for multiple robots via the rotating ultra-wideband tag,” IEEE Robotics and Automation Letters, vol. 8, no. 7, pp. 4187–4194, 2023.
  • [9] F. Amigoni, J. Banfi, and N. Basilico, “Multirobot exploration of communication-restricted environments: A survey,” IEEE Intelligent Systems, vol. 32, no. 6, pp. 48–57, 2017.
  • [10] L. Xia, B. Deng, J. Pan, X. Zhang, P. Duan, B. Zhou, and H. Cheng, “RELINK: Real-time line-of-sight-based deployment framework of multi-robot for maintaining a communication network,” IEEE Robotics and Automation Letters, vol. 8, no. 12, pp. 8152–8159, 2023.
  • [11] P. Robuffo Giordano, A. Franchi, C. Secchi, and H. H. Bülthoff, “A passivity-based decentralized strategy for generalized connectivity maintenance,” The International Journal of Robotics Research, vol. 32, no. 3, pp. 299–323, 2013.
  • [12] T. Nestmeyer, P. Robuffo Giordano, H. H. Bülthoff, and A. Franchi, “Decentralized simultaneous multi-target exploration using a connected network of multiple robots,” Autonomous robots, vol. 41, pp. 989–1011, 2017.
  • [13] Y. Chen and M. Guo, “Multi-UAV deployment in obstacle-cluttered environments with LOS connectivity,” Arxiv, 2023. arXiv: 2308.12117 [cs.RO].
  • [14] Y. Yang, Y. Lyu, and W. Luo, “Minimally constrained multi-robot coordination with line-of-sight connectivity maintenance,” in 2023 IEEE international conference on robotics and automation (ICRA), pp. 7684–7690, 2023.
  • [15] G. A. Hollinger and S. Singh, “Multirobot coordination with periodic connectivity: Theory and experiments,” IEEE Transactions on Robotics, vol. 28, no. 4, pp. 967–973, 2012.
  • [16] E. Stump, N. Michael, V. Kumar, and V. Isler, “Visibility-based deployment of robot formations for communication maintenance,” in 2011 IEEE international conference on robotics and automation, pp. 4498–4505, 2011.
  • [17] A. Dutta, A. Ghosh, and O. P. Kreidl, “Multi-robot informative path planning with continuous connectivity constraints,” in 2019 International Conference on Robotics and Automation (ICRA), pp. 3245–3251, May 2019.
  • [18] M. Li, Y. Jie, Y. Kong, and H. Cheng, “Decentralized global connectivity maintenance for multi-robot navigation: a reinforcement learning approach,” in 2022 international conference on robotics and automation (ICRA), pp. 8801–8807, 2022.
  • [19] M. Fiedler, “Algebraic connectivity of graphs,” Czechoslovak mathematical journal, vol. 23, no. 2, pp. 298–305, 1973.
  • [20] S. Katz, A. Tal, and R. Basri, “Direct visibility of point sets,” in ACM SIGGRAPH 2007 papers, pp. 24–es, 2007.
  • [21] T. Liu, Q. Wang, X. Zhong, Z. Wang, C. Xu, F. Zhang, and F. Gao, “Star-convex constrained optimization for visibility planning with application to aerial inspection,” in 2022 IEEE International Conference on Robotics and Automation (ICRA), pp. 7861–7867, 2022.
  • [22] P. Yang, R. A. Freeman, G. J. Gordon, K. M. Lynch, S. S. Srinivasa, and R. Sukthankar, “Decentralized estimation and control of graph connectivity for mobile sensor networks,” Automatica, vol. 46, no. 2, pp. 390–396, 2010.
  • [23] F. Yang, C. Cao, H. Zhu, J. Oh, and J. Zhang, “FAR Planner: Fast, attemptable route planner using dynamic visibility update,” in 2022 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), pp. 9–16, 2022.
  • [24] K. Konolige, G. Grisetti, R. Kümmerle, W. Burgard, B. Limketkai, and R. Vincent, “Efficient sparse pose adjustment for 2d mapping,” in 2010 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), pp. 22–29, 2010.
  • [25] S. Wilson, P. Glotfelter, L. Wang, S. Mayya, G. Notomista, M. Mote, and M. Egerstedt, “The robotarium: Globally impactful opportunities, challenges, and lessons learned in remote-access, distributed control of multirobot systems,” IEEE Control Systems Magazine, vol. 40, no. 1, pp. 26–44, 2020.

Appendix

VIII-A Formulation of Communication and Collision Avoidance Constraints

Note we adopted the formulations in [11] to derive the communication radius (C1) and collision avoidance constraints (C3) in this work.

VIII-A1 C1: Communication Radius Constraints αij()\alpha_{ij}(\cdot)

For two robots i,ji,j\in\mathcal{R}, their relative distance is calculated as dij=𝐪i𝐪jd_{ij}=\|\mathbf{\boldsymbol{q}}_{i}-\mathbf{\boldsymbol{q}}_{j}\|. The potential function quantifies the communication constraints between the two robots is defined as

αij={kα,0dijdmincomkα2[1+cos(dijdmincomdmaxcomdmincom)π],dmincom<dijdmaxcom0,dij>dmaxcom\alpha_{ij}=\left\{\begin{aligned} &k_{\alpha},&0\leq d_{ij}\leq d^{\text{com}}_{\text{min}}\\ &\frac{k_{\alpha}}{2}[1+\cos(\frac{d_{ij}-d^{\text{com}}_{\text{min}}}{d^{\text{com}}_{\text{max}}-d^{\text{com}}_{\text{min}}})\pi],&d^{\text{com}}_{\text{min}}<d_{ij}\leq d^{\text{com}}_{\text{max}}\\ &0,&d_{ij}>d^{\text{com}}_{\text{max}}\end{aligned}\right. (9)

where dmincom0d^{\text{com}}_{\text{min}}\geq 0 is the distance at which communication reliability starts to decrease; and the communication breaks when dij>dmaxcomd_{ij}>d^{\text{com}}_{\text{max}}. The derivative of αij\alpha_{ij} w.r.t. 𝐪i\mathbf{\boldsymbol{q}}_{i} is calculated as

αij𝐪i=αijdijdij𝐪i.\frac{\partial\alpha_{ij}}{\partial\mathbf{\boldsymbol{q}}_{i}}=\frac{\partial\alpha_{ij}}{\partial d_{ij}}\cdot\frac{\partial d_{ij}}{\partial\mathbf{\boldsymbol{q}}_{i}}. (10)

VIII-A2 C3: Collision Avoidance Constraints γij()\gamma_{ij}(\cdot)

The potential function for collision avoidance constraints is defined as

γij={0,0dijdmincollkγ2[1cos(dijdmincolldmaxcolldmincoll)π],dmincoll<dijdmaxcollkγ,dij>dmaxcoll\gamma_{ij}^{*}=\left\{\begin{aligned} &0,&0\leq d_{ij}\leq d^{\text{coll}}_{\text{min}}\\ &\frac{k_{\gamma}}{2}[1-\cos(\frac{d_{ij}-d^{\text{coll}}_{\text{min}}}{d^{\text{coll}}_{\text{max}}-d^{\text{coll}}_{\text{min}}})\pi],&d^{\text{coll}}_{\text{min}}<d_{ij}\leq d^{\text{coll}}_{\text{max}}\\ &k_{\gamma},&d_{ij}>d^{\text{coll}}_{\text{max}}\end{aligned}\right. (11)

Here dmincolld^{\text{coll}}_{\text{min}} and dmaxcolld^{\text{coll}}_{\text{max}} are the minimum allowed inter-robot distance and the threshold of the inter-robot distance to influence safety, respectively.

The collision avoidance constraints are different from other constraints, as the robot may fail once it collides with others. This edge weight γij\gamma_{ij} is defined as [11]:

γij=(k𝒩iγik)(k𝒩j/{i}γjk)=γiγj/i,\gamma_{ij}=\left(\prod_{k\in\mathcal{N}_{i}}\gamma^{*}_{ik}\right)\cdot\left(\prod_{k\in\mathcal{N}_{j}/\{i\}}\gamma_{jk}^{*}\right)=\gamma_{i}\cdot\gamma_{j/i}, (12)

which is the product of weights of all edges (specifically that reflect the collision avoidance constraints) connected to robot ii and jj, without repetition. With such, if robot ii collides with other robots, the weights of all outgoing edges will be zero, i.e., robot ii will be disconnected to 𝒢\mathcal{G}. Moreover, it ensures that γij=γji\gamma_{ij}=\gamma_{ji}.

As introduced in Sec. VII-A, we treat the closest obstacle point around a robot ii\in\mathcal{R} as a virtual neighbor, with a virtual index iobsi^{\text{obs}}. The Eq. (12) is updated as:

γij=(k𝒩i{iobs}γik)(k𝒩j{jobs}/{i}γjk).\gamma_{ij}=\left(\prod_{k\in\mathcal{N}_{i}\cup\{i^{\text{obs}}\}}\gamma^{*}_{ik}\right)\cdot\left(\prod_{k\in\mathcal{N}_{j}\cup\{j^{\text{obs}}\}/\{i\}}\gamma_{jk}^{*}\right). (13)

The derivative of γij\gamma_{ij} w.r.t. 𝐪i\mathbf{\boldsymbol{q}}_{i} is calculated as

γij𝐪i=γijk𝒩i{iobs}(1γikαikdikdik𝐪i)\frac{\partial\gamma_{ij}}{\partial\mathbf{\boldsymbol{q}}_{i}}=\gamma_{ij}\cdot\sum_{k\in\mathcal{N}_{i}\cup\{i^{\text{obs}}\}}\left(\frac{1}{\gamma_{ik}^{*}}\cdot\frac{\partial\alpha_{ik}^{*}}{\partial d_{ik}}\cdot\frac{\partial d_{ik}}{\partial\mathbf{\boldsymbol{q}}_{i}}\right) (14)

VIII-B Proof of Propositions

VIII-B1 Proof of Proposition 1

Proof:

To compute the derivative in Eq. (8), each robot ii\in\mathcal{R} only needs local information from its one-hop neighbors 𝒩i\mathcal{N}_{i}. For each robot j𝒩ij\in\mathcal{N}_{i}, its pose 𝐪j,Rj\langle\mathbf{\boldsymbol{q}}_{j},R_{j}\rangle and the convex hull Conv(𝒞j)Conv(\mathcal{C}_{j}^{\prime}) derived from point cloud measurements need to be communicated to robot ii. Note robots do not need to share their raw point cloud, but only the flipped convex hull, which is more compact. The derivative of the other two weights αij\alpha_{ij} (C1) and γij\gamma_{ij} (C3) can also be obtained through distributed calculation, as proved in [11]. Therefore, this method can be deployed in a distributed manner. The only concern is that the graph Laplacian matrix is global information for the robot team. However, it is shown in [22] that both λ2\lambda_{2} and v2iv_{2i} can be estimated through distributed estimation. In conclusion, the connectivity force in Eq. (8) can be calculated distributedly. ∎

VIII-B2 Proof of Proposition 2

Proof:

According to the definition of the connectivity velocity 𝒖ic\boldsymbol{u}^{\text{c}}_{i} in Eq. (8), if λ2\lambda_{2} approaches λ2min\lambda_{2}^{\text{min}}, the term 1(λ2λ2min)2\frac{1}{(\lambda_{2}-\lambda_{2}^{\text{min}})^{2}} grows unbounded. When the navigation velocity 𝒖in\boldsymbol{u}^{\text{n}}_{i} is bounded, the connectivity velocity 𝒇ic\boldsymbol{f}^{\text{c}}_{i} will dominate the movement of robot ii, forcing robots to be connected. Note that Prop. 2 is also verified in experiments as shown in Fig. 7. ∎