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

Swarm Herding: A Leader-Follower Framework For Multi-Robot Navigation

Xiaotian Xu  and Yancy Diaz-Mercado Authors are with the Department of Mechanical Engineering, 2181 Glenn L. Martin Hall, Building 088, University of Maryland, College Park, MD 20742, USA. Email: [email protected], [email protected].
Abstract

A leader-follower framework is proposed for multi-robot navigation of large scale teams where the leader agents corral the follower agents. A group of leaders is modeled as a 2D deformable object where discrete masses (i.e., leader robots) are interconnected by springs and dampers. A time-varying domain is defined by the positions of leaders while the external forces induce deformations of the domain from its nominal configuration. The team of followers is performing coverage over the time-varying domain by employing a perspective transformation that maps between the nominal and deformed configurations. A decentralized control strategy is proposed where a leader only takes local sensing information and information about its neighbors (connected by virtual springs and dampers), and a follower only needs partial information about leaders and information about its Delaunay neighbors.

1 Introduction

Multi-robot systems (MRS) have received a lot of attention for decades for their advantage of using coordinating efforts to achieve complex tasks and applications [1, 2]. The navigation of a multi-robot system is one of the topics in the field which has excited researchers’ interest in recent years. The behavior of a multi-robot system in navigation has been significantly inspired by some biological systems, e.g., flocking of birds [3], swarming of bees [4]. It can be noticed that these biological systems possess common features to MRS such as consisting of a large number of individuals, each individual determining its motion based on local sensing information and communication only.

The control of navigation of a multi-robot system contains multiple objectives: first, avoiding collision among robots and between a robot and evironmental obstacles using local information; second, maintaining certain level of cohesion between robots in the group; third, tracking the optimal path under the appropriate metric. Many algorithms for cooperative control of a group of robots have been developed, e.g., behavior-based controller [5], virtual structural approach [6], leader-follower network [7], potential field approach [8]. However, most of these algorithms can only partially achieve the objectives above, thus these methods are usually modified and coupled together. In [9], the swarm is modeled as an incompressible fluid subject to external force generated by potential field, and the smoothed particle hydrodynamics method is used to deal with the inter-robot coordination. In [10], a region-based shape control strategy is proposed by combining the controller of updating a virtual-circle (ellipse) based on the sensing information of the environment and the controller of maintaining robots to stay inside the virtual-region and keep certain formation.

In this paper, to achieve the objectives mentioned above, a three-layer control strategy is proposed. Specifically, the first layer of the controller provides a global optimal reference path from a start position to a goal position in the environment. The reference path can either be obtained beforehand for the known environment, or be computed online with available sensing information in an unknown environment by using different existing off-the-shore path-planning algorithms (e.g., Dijkstra [11], RRT [12], road map method [13]). One can employ any reliable path-planning algorithm to find the global optimal path under the desired metric and pass it as an input to the second layer of the controller.

The second layer of the control strategy coordinates the motion planning for a team of leader robots. A time-varying domain is defined by the leader robots. The leader robots will track the reference path provided by the first layer of the control strategy and avoid the obstacles based on the sensing information about the environment. The team of leader robots will be modeled as a deformable object, i.e., a mass-spring-damper (MSD) network. The path planning for 3D deformable objects are investigated in reduced configuration space [14]. In [15], 3D objects deform under manipulation constrains, and the path planner searches the roadmap given the initial and final configuraitons. In this paper, we consider a 2D deformable domain formed by leader robots and for which the control is decentralized since each leader robots only interact with its neighbors in the MSD network.

The third layer provides control for a team of follower robots which stay in the time-varing domain defined by leader robots and perform coverage over it [16]. This layer of controller allows the followers to distributed in the domain defined by the leaders, to coordinates with each other to avoid collision (in point particle case), and to efficiently capture the motion of leaders. As the leaders are avoiding the obstacles, the induced time-varying domain becomes non-convex which limits the applicability of standard coverage strategies. To address this problem, a perspective transformation is used to transform quadrilaterals defined by groups of four leaders into static rectangular ones. A follower only needs local information, i.e., partial information about the leaders and information about the followers which are in its Delaunay neighborhood, to figure out its motion, thus the third layer of the control is decentralized.

The organization of the paper is as follows. In Section 2, we begin with modeling a group of leader robots as a mass-spring-damper system and design the external forces such that the motion of the leaders can be controlled. The control strategy of a team of follower robots is presented in Section 3. In Section 4, a simulation using the proposed control scheme is conducted. Conclusions are drawn in Section 5.

2 Motion Planning of A team of Leaders

In this section, we will discuss the second layer of the proposed control strategy. The leader robots will coordinate with each other and interact with the environment to define a time-varying domain. This domain will be used to perform coverage control of follower robots in the third layer of the controller. The induced time-varying domain should preserve a minimum area for the followers to occupy, and we assume that there exists a reference path that allows for passage through the environment.

2.1 Model of a team of leader robots

In this paper, a team of leader robots is modeled as a mass-spring-damper network subject to external forces which are generated by multiple constraints. The leaders are considered as masses that are interconnected by virtual springs and dampers as shown in the Fig. 1.

Refer to caption
Figure 1: Mass-Spring-Damper Network

Let xk,k=1,,Mx_{k}\in\mathbb{R},\,k=1,\cdots,M (MM is an even number) denote the position of the leaders. Based on Newton’s second law, the equation of motion is given by

mx¨k=l𝒩kgkl+l𝒩kfkl+Fk\displaystyle m\ddot{x}_{k}=\sum_{l\in\mathcal{N}_{k}}g_{kl}+\sum_{l\in\mathcal{N}_{k}}f_{kl}+F_{k} (1)

where 𝒩k\mathcal{N}_{k} denotes a set which contains masses connected to mass kk (i.e., neighbor set of mass kk), the spring force and the damping force on mass ii are gkl=c(x˙kx˙l)g_{kl}=-c(\dot{x}_{k}-\dot{x}_{l}) and fkl=κ(xkxllklo)xkxlxkxlf_{kl}=-\kappa(\|x_{k}-x_{l}\|-l_{kl}^{o})\frac{x_{k}-x_{l}}{\|x_{k}-x_{l}\|} respectively, and the FkF_{k} is the external forces applied on mass kk. Moreover, cc denotes the damping constant, κ\kappa denotes the stiffness, lklol_{kl}^{o} represents the rest length of the spring between mass kk and ll.

For such a system, the stability property can be described as the following proposition.

Proposition 1 (Stability of the MSD Network).

The homogeneous version of the mass-spring-damper (MSD) system defined in eq. (1) is asymptotically stable.

Proof.

Without loss of generality, we consider a general mass-spring-damper network with MM masses. The homogeneous version of the motion equation can be rearranged,

x¨k=1ml𝒩kc(x˙lx˙k)+1ml𝒩kκ(xkxllklo)xlxkxkxl\displaystyle\ddot{x}_{k}=\frac{1}{m}\sum_{l\in\mathcal{N}_{k}}c(\dot{x}_{l}-\dot{x}_{k})+\frac{1}{m}\sum_{l\in\mathcal{N}_{k}}\kappa(\|x_{k}-x_{l}\|-l_{kl}^{o})\frac{x_{l}-x_{k}}{\|x_{k}-x_{l}\|}

Let us consider the topology of interaction for the MSD network to be given by an undirected and connected graph [17]. Define the Laplacian matrix L=DDTL=DD^{T} and the weighted Laplacian matrix Lw=DWDTL_{w}=DWD^{T}, where DD denotes the incidence matrix which encodes the edge information, wkl=κ(xkxllklo)mxkxlw_{kl}=\frac{\kappa(\|x_{k}-x_{l}\|-l_{kl}^{o})}{m\|x_{k}-x_{l}\|} represents the weight on the edge between mass kk and ll, and W=diag(wkl)W=\text{diag}(w_{kl}) is a diagonal matrix with wklw_{kl} on its diagonal. The Laplacian matrix is positive semi-definite (L0L\succeq 0) and the weighted Laplacian matrix is symmetric (Lw=LwTL_{w}=L_{w}^{T}). Then, by letting x=[x1,,xM]Tx=[x_{1},\cdots,x_{M}]^{T}, the ensemble-level dynamics can be written as

ddt[xx˙]=[0ILwcmL][xx˙]\displaystyle\frac{d}{dt}\begin{bmatrix}x\\ \dot{x}\end{bmatrix}=\begin{bmatrix}0&I\\ -L_{w}&-\frac{c}{m}L\end{bmatrix}\begin{bmatrix}x\\ \dot{x}\end{bmatrix}

Further define k=l𝒩kκ2m(xkxllklo)2\mathcal{E}_{k}=\sum_{l\in\mathcal{N}_{k}}\frac{\kappa}{2m}(\|x_{k}-x_{l}\|-l_{kl}^{o})^{2}, and =[1,2,,M]T\mathcal{E}=[\mathcal{E}_{1},\mathcal{E}_{2},\cdots,\mathcal{E}_{M}]^{T}, and choose a candidate Lyapunov function to be

V=12𝟙T+12x˙2,\displaystyle V=\frac{1}{2}\mathds{1}^{T}\mathcal{E}+\frac{1}{2}\|\dot{x}\|^{2},

where 𝟙=[1, 1,,1]T\mathds{1}=[1,\,1,\cdots,1]^{T}, then

V˙=12𝟙Txx˙+x˙Tx¨\displaystyle\dot{V}=\frac{1}{2}\mathds{1}^{T}\frac{\partial\mathcal{E}}{\partial x}\dot{x}+\dot{x}^{T}\ddot{x}

where

x=[1x11x21xM2x1Mx1MxM].\displaystyle\frac{\partial\mathcal{E}}{\partial x}=\begin{bmatrix}\frac{\partial\mathcal{E}_{1}}{\partial x_{1}}&\frac{\partial\mathcal{E}_{1}}{\partial x_{2}}&\cdots&\frac{\partial\mathcal{E}_{1}}{\partial x_{M}}\\ \frac{\partial\mathcal{E}_{2}}{\partial x_{1}}&\ddots&&\vdots\\ \vdots&&\ddots&\vdots\\ \frac{\partial\mathcal{E}_{M}}{\partial x_{1}}&\cdots&\cdots&\frac{\partial\mathcal{E}_{M}}{\partial x_{M}}\end{bmatrix}.

It can be found that

kxk=l𝒩kκ(xkxllklo)mxkxl(xkxl)T\displaystyle\frac{\partial\mathcal{E}_{k}}{\partial x_{k}}=\sum_{l\in\mathcal{N}_{k}}\frac{\kappa(\|x_{k}-x_{l}\|-l_{kl}^{o})}{m\|x_{k}-x_{l}\|}(x_{k}-x_{l})^{T}
kxl={κ(xkxllklo)mxkxl(xkxl)T,l𝒩k0,otherwise\displaystyle\frac{\partial\mathcal{E}_{k}}{\partial x_{l}}=\begin{cases}-\frac{\kappa(\|x_{k}-x_{l}\|-l_{kl}^{o})}{m\|x_{k}-x_{l}\|}(x_{k}-x_{l})^{T},~{}~{}~{}&l\in\mathcal{N}_{k}\\ 0,&\text{otherwise}\end{cases}
lxk={κ(xlxklklo)mxlxk(xlxk)T,k𝒩l0,otherwise\displaystyle\frac{\partial\mathcal{E}_{l}}{\partial x_{k}}=\begin{cases}-\frac{\kappa(\|x_{l}-x_{k}\|-l_{kl}^{o})}{m\|x_{l}-x_{k}\|}(x_{l}-x_{k})^{T},~{}~{}~{}&k\in\mathcal{N}_{l}\\ 0,&\text{otherwise}\end{cases}

and the kkth column of 𝟙Tx\mathds{1}^{T}\frac{\partial\mathcal{E}}{\partial x} yields

𝟙T[1xk2xkMxk]=2l𝒩kκ(xkxllklo)mxkxl(xkxl)T\displaystyle\mathds{1}^{T}\begin{bmatrix}\frac{\partial\mathcal{E}_{1}}{\partial x_{k}}\\ \frac{\partial\mathcal{E}_{2}}{\partial x_{k}}\\ \vdots\\ \frac{\partial\mathcal{E}_{M}}{\partial x_{k}}\end{bmatrix}=2\sum_{l\in\mathcal{N}_{k}}\frac{\kappa(\|x_{k}-x_{l}\|-l_{kl}^{o})}{m\|x_{k}-x_{l}\|}(x_{k}-x_{l})^{T}

Then

𝟙Tx\displaystyle\mathds{1}^{T}\frac{\partial\mathcal{E}}{\partial x} =2[l𝒩1κ(x1xll1lo)mx1xl(x1xl)Tl𝒩2κ(x2xll2lo)mx2xl(x2xl)Tl𝒩Mκ(xMxllNlo)mxMxl(xMxl)T]T\displaystyle=2\begin{bmatrix}\sum_{l\in\mathcal{N}_{1}}\frac{\kappa(\|x_{1}-x_{l}\|-l_{1l}^{o})}{m\|x_{1}-x_{l}\|}(x_{1}-x_{l})^{T}\\ \sum_{l\in\mathcal{N}_{2}}\frac{\kappa(\|x_{2}-x_{l}\|-l_{2l}^{o})}{m\|x_{2}-x_{l}\|}(x_{2}-x_{l})^{T}\\ \vdots\\ \sum_{l\in\mathcal{N}_{M}}\frac{\kappa(\|x_{M}-x_{l}\|-l_{Nl}^{o})}{m\|x_{M}-x_{l}\|}(x_{M}-x_{l})^{T}\end{bmatrix}^{T}
=2(Lwx)T.\displaystyle=2(L_{w}x)^{T}.

Hence,

V˙\displaystyle\dot{V} =12𝟙Txx˙+x˙Tx¨\displaystyle=\frac{1}{2}\mathds{1}^{T}\frac{\partial\mathcal{E}}{\partial x}\dot{x}+\dot{x}^{T}\ddot{x}
=xTLwTx˙+x˙T(LwxcmLx˙)\displaystyle=x^{T}L_{w}^{T}\dot{x}+\dot{x}^{T}(-L_{w}x-\frac{c}{m}L\dot{x})
=cmx˙TLx˙0\displaystyle=-\frac{c}{m}\dot{x}^{T}L\dot{x}\leq 0

Now define Ωα={x,x˙N|V(x,x˙)α,α>0}\Omega_{\alpha}=\big{\{}x,\dot{x}\in\mathbb{R}^{N}\,\big{|}\,V(x,\dot{x})\leq\alpha,\,\alpha>0\big{\}}, and let E={x,x˙Ωα|V˙(x,x˙)=0}={x,x˙|xN,x˙null(L)=span{𝟙}}E=\big{\{}x,\dot{x}\in\Omega_{\alpha}\,\big{|}\,\dot{V}(x,\dot{x})=0\big{\}}=\big{\{}x,\dot{x}\,\big{|}\,x\in\mathbb{R}^{N},\dot{x}\in\text{null}(L)=\text{span}\{\mathds{1}\}\big{\}}, applying the invariance condition x¨=0\ddot{x}=0, we find that the largest invariant set ΩI={x,x˙N|xkxl=lklok,l;x˙span{𝟙}}\Omega_{I}=\big{\{}x,\dot{x}\in\mathbb{R}^{N}\,\big{|}\,\|x_{k}-x_{l}\|=l_{kl}^{o}\,\forall k,l;\,\dot{x}\in\text{span}\{\mathds{1}\}\big{\}}. By LaSalle’s Invariance Principle [18], every solution to the system starts in Ωα\Omega_{\alpha} will asymptotically approach to ΩI\Omega_{I} as tt\to\infty. Finally, let α\alpha\to\infty, the set ΩI\Omega_{I} is global asymptotically stable. ∎

From the proof above, without the external input force FkF_{k}, it can be noticed that given an initial condition the MSD system will asymptotically converge to the configuration with springs at their rest lengths, and all the masses have the same velocity. Now we can design the external forces such that the domain defined by leaders will move along the reference path, and the vertices of the domain (leader robots) will avoid the obstacles.

To satisfy the constraint that the domain defined by the leaders always sustains an area for the follower robots to occupy, we introduce the following lemma.

Lemma 1 (Constraint on deformation of MSD system).

Let the rest length of the vertical and horizontal springs be lol^{o}, and the diagonal springs be 2lo\sqrt{2}l^{o}, then in the worst case, each triangle formed by three interconnected leaders must satisfies the triangle inequality when deforms subject to external forces. It can be found that if for each spring, the rate of elongation or compression does not exceed 222+2×100%17.2%\frac{2-\sqrt{2}}{2+\sqrt{2}}\times 100\%\approx 17.2\%, the induced domain will sustain certain amount of area, and each mesh defined by four interconnected leaders will be convex for all time.

Lemma 1 imposes a restriction on the deformation of the mass-spring-damper network such that each mesh defined by 4 masses will always be a convex quadrilateral, and this property will be used in next section.

2.2 Motion planning of the mass-spring-damper system

Several constraints are imposed on the masses of the MSD network, the “head” of the MSD network (i.e., the m1m_{1} and m2m_{2} shown in Fig. 1) will take the responsibility of tracking the reference path and determining the orientation of the system, and all the masses (leader robots) will avoid the obstacles based on the sensing information.

The external force applied to a mass is defined as

Fk=ffrictionk+ftrackingk+forientingk+fsensingk\displaystyle F_{k}=f_{\text{friction}}^{k}+f_{\text{tracking}}^{k}+f_{\text{orienting}}^{k}+f_{\text{sensing}}^{k} (2)

where ffrictionKf_{\text{friction}}^{K} is a virtual friction force imposed on masses to dissipate kinetic energy stored in the system. ftrackingkf_{\text{tracking}}^{k} is the force which drives the team of leaders to move along the reference path, the force forientingkf_{\text{orienting}}^{k} adjusts the orientation of the system, and fsensingkf_{\text{sensing}}^{k} is the force generated based on sensing information that drives the kkth leader robot to move away from the obstacles.

The sensing information about the environment obtained by the sensors installed on the leaders can be presented as [ok,dk][o_{k},\,d_{k}], where oko_{k} denotes the position of the nearest obstacle, and dkd_{k} denotes the distance from the nearest obstacle detected in the kkth leader’s reference frame, then the external force which drives the leader robot away from the obstacle is defined as

fsensingk=κ1(xkok)xkok(dkδsensing)2\displaystyle f_{\text{sensing}}^{k}=-\frac{\kappa_{1}(x_{k}-o_{k})}{\|x_{k}-o_{k}\|(d_{k}-\delta_{\text{sensing}})^{2}} (3)

where κ1>0\kappa_{1}>0 is a tuning parameter, and δsensing\delta_{\text{sensing}} is the prescribed safe distance between a leader robot and the obstacles. Perceivably, fsensingk\|f_{\text{sensing}}^{k}\|\to\infty as dkδsensingd_{k}\to\delta_{\text{sensing}}.

Moreover, we assume that the first layer of our control scheme returns the information of global reference path in the form of [Γ,Γ˙][\Gamma,\,\dot{\Gamma}], then ftrackingkf_{\text{tracking}}^{k} is defined as

ftrackingk={c˙x=Γ˙+κ2(Γcx),k=1, 20otherwise\displaystyle f_{\text{tracking}}^{k}=\begin{cases}\dot{c}_{x}=\dot{\Gamma}+\kappa_{2}(\Gamma-c_{x}),\,&k=1,\,2\\ 0\,&\text{otherwise}\end{cases} (4)

which has a feedforward term Γ˙\dot{\Gamma} and a feedback term κ2(Γcx)\kappa_{2}(\Gamma-c_{x}) to drive the bisecting point of the positions of “head” of the system (i.e., cx=12(x1+x2)c_{x}=\frac{1}{2}(x_{1}+x_{2})) to track the reference path, where κ2>0\kappa_{2}>0 is a tuning parameter.

As we shown in Proposition 1, even if the external force becomes zero, the system will keep moving at certain speed, thus friction is necessary to exist for dissipation of the kinetic energy stored in the system and can be designed as

ffrictionk=κ3x˙k\displaystyle f_{\text{friction}}^{k}=-\kappa_{3}\dot{x}_{k}

where κ3>0\kappa_{3}>0 is a control parameter.

Besides, the “head” of the MSD network (i.e., m1m_{1} and m2m_{2}) also takes the responsibility to determine the orientation of the system, i.e., the line x1x2¯\overline{x_{1}x_{2}} maintains orthogonal to the path Γ\Gamma. Thus the force forientingkf_{\text{orienting}}^{k} can be designed as

forientingk={κ4((x1x2)TΓ˙)Γ˙,k=1κ4((x1x2)TΓ˙)Γ˙,k=20,otherwise\displaystyle f_{\text{orienting}}^{k}=\begin{cases}-\kappa_{4}\left((x_{1}-x_{2})^{T}\dot{\Gamma}\right)\dot{\Gamma},\,&k=1\\ \kappa_{4}\left((x_{1}-x_{2})^{T}\dot{\Gamma}\right)\dot{\Gamma},\,&k=2\\ 0,\,&\text{otherwise}\end{cases} (5)

where κ4>0\kappa_{4}>0. The inner product of vector x1x2x_{1}-x_{2} and the tangent of path Γ˙\dot{\Gamma} is greater than zero indicates the angle between the two vectors is less than 9090^{\circ}, then the the force forienting1f_{\text{orienting}}^{1} will drive m1m_{1} opposite to the direction of Γ˙\dot{\Gamma} until the inner product becomes zero.

It can be seen that by applying the designed external forces to the MSD network, the “head” of network will steer and lead entire system, and the orientation information will be propagated through the network until it finally reaches the “tail” of the network; the robots will also avoid the obstacles based on the sensing information.

Now we can define a time-varying domain 𝒮(t)\mathcal{S}(t) with vertices {xk,k=1,,M}\{x_{k},\,k=1,\cdots,M\}. The time-varying domain will evolve subject to the external force defined by (2). In the next section, we can design the control scheme for a team of followers.

3 Coverage Control of A Team of Followers

A coverage control algorithm naturally offers the ability to coordinate the motion of robots in a team. In this section, we will employ a coverage control law which is decentralized and can efficiently capture the evolution of the time-varying domain by extending ideas from our previous work [16]. The advantage of coverage control is that the individual controller for each robot in a team is synthesized such that the team can be controlled as a whole with time-varying densities[20] and time-varying domains[16]. For completeness, we begin this section with briefly introducing the coverage algorithm over convex time-varying domains.

3.1 Coverage over time-varying convex domains

To find the best configuration formed by the robotic team over a domain, we partition the domain into non-overlapping regions and let each region be taken care of by a robot. Formally, let pi𝒮(t),i{1,,N}p_{i}\in\mathcal{S}(t),i\in\{1,\ldots,N\} be the positions of a group of follower robots in a convex domain 𝒮(t)\mathcal{S}(t) defined by leaders, the coverage problem is dictated as finding the best configuration of robots p(t)=[p1T(t),,pNT(t)]Tp(t)=\left[p_{1}^{T}(t),\ldots,p_{N}^{T}(t)\right]^{T} to minimize the locational cost [21] which evaluates the coverage performance of pp over the domain 𝒮\mathcal{S}:

(p(t),t)=i=1nVi(p(t),t)pi(t)q2ϕ(q,t)𝑑q\mathcal{H}(p(t),t)=\sum_{i=1}^{n}\int_{V_{i}(p(t),t)}\|p_{i}(t)-q\|^{2}\phi(q,t)\,dq (6)

where ϕ(q,t):𝒮(t)×[0,)>0\phi(q,t):\mathcal{S}(t)\times[0,\infty)\to\mathbb{R}_{>0} is a density function that represents the relative importance of each point in the domain at time tt, and Vi(p,t)={q𝒮(t)|piqpjqj}V_{i}(p,t)=\left\{q\in\mathcal{S}(t)~{}\middle|~{}\|p_{i}-q\|\leq\|p_{j}-q\|~{}\forall j\right\} is a Voronoi tessellation.

It is known that a necessary condition to minimize the locational cost defined in (6) is the centroidal Voronoi tessellation (CVT) configuration, i.e., pi(t)=Ci(p,t)ip_{i}(t)=C_{i}(p,t)\,\,\,\forall i, where Ci(p,t)C_{i}(p,t) is the cener of mass (centroid) of iith Voronoi cell. A control law is proposed for time-varying densities and time-varying domains to exponentially converge to a centroidal Voronoi configuration in [20, 16],

p˙=(ICp)1(K(C(p,t)p)+Ct)\dot{p}=\left(I-\frac{\partial C}{\partial p}\right)^{-1}\left(K(C(p,t)-p)+\frac{\partial C}{\partial t}\right) (7)

where the exponential convergence rate is tuned by the parameter K>0K>0.

The control law given in (7) can be approximated as

p˙=(I+Cp)(K(C(p,t)p)+Ct)\dot{p}=\left(I+\frac{\partial C}{\partial p}\right)\left(K(C(p,t)-p)+\frac{\partial C}{\partial t}\right) (8)

by truncating the Neumann series for the matrix inverse to make the control law decentralized.

The expressions of the centroids Ci(p,t)C_{i}(p,t), and matrices Cp\frac{\partial C}{\partial p} and Ct\frac{\partial C}{\partial t} in (7) and (8) can be found in [16]. The matrix Cp\frac{\partial C}{\partial p} is a block matrix with sparsity structure encoding the adjacency information in the Voronoi tessellation [20], and the matrix Ct\frac{\partial C}{\partial t} captures the evolution of time-varying densities and time-varying domains.

Refer to caption

(i) Quadrilateral-to-quadrilateral projection Refer to caption
(ii) Time-varying domain defined by leaders Refer to caption
(iii) Resulting rectangular domain by projection

Figure 2: Perspective Projection

The coverage control law in (7) and (8) can only treat a time-varying convex domain. However, for a domain induced by a group of leader robots moving in a cluttered environment, it is likely that the domain will become non-convex. In previous work [22], we dealt with a non-convex domain by using a diffeomorphism [23] to map points between the non-convex domain and its convex hull. In this paper, we will treat the problem in a different way that leverages the quadrilateral structure of the mesh formed by the leader agents.

Refer to caption Refer to caption Refer to caption Refer to caption
Refer to caption Refer to caption Refer to caption Refer to caption
(i) t=3st=3s (ii) t=6st=6s (iii) t=14st=14s (iv) t=18st=18s
Figure 3: Ten leader robots (blue circles) are modeled as a mass-spring-damper system and used to define the time-varying domain. The domain becomes non-convex due to the external forces, i.e., tracking the reference path, avoiding the red obstacles and steering the orientation. Each mesh is transformed to a rectangle such that the MSD system is transfomed as a big static rectangle. The projection of twenty follower robots are performing coverage over the virtual rectangular domain, and the control signal is brought back to the real world by the inverse of the transformation. In (i), (ii), (iii) and (iv), show the simulation at 3ss, 6ss, 14ss and 18ss respectively. The black dashed curve represents the reference path, and the blue curve represents the actual trajectory of the ”head” of the MSD system (mid point cxc_{x} of x1x_{1} and x2x_{2}).
Refer to caption
Figure 4: Tracking error and coverage aggregating error

3.2 Coverage over time-varying non-convex domains

As a consequence of Lemma 1, a mesh in the mass-spring-damper network will always be a quadrilateral by restricting the elongation and compression of the springs, thus the time-varying domain defined by a team of leaders will be a composition of quadrilaterals. The strategy for performing coverage control of a group of followers over the composition of quadrilaterals will be to transform the successive quadrilaterals one by one such that a long rectangular region with prescribed height and length is obtained, as illustrated in Fig. 2. In this way, the coverage control law (7) and (8) can be directly utilized, and the resulting control signals can be transformed back into the actual domain.

Without loss of generality, let the MM leaders (MM being an even number) be labeled as illustrated in Fig. 2(ii), then there are M21\frac{M}{2}-1 meshes in the network, and the hhth mesh (denoted as mesh(h)(h)) will be defined by vertices x2h1,x2h,x2h+2x_{2h-1},\,x_{2h},\,x_{2h+2} and x2h+1,h=1,,M21x_{2h+1},\,h=1,\cdots,\frac{M}{2}-1 in counterclockwise order. Given these vertices and by using a perspective projection as in [24], the mesh(h)(h) can be transformed to an arbitrary convex quadrilateral mesh(h~)(\widetilde{h}) of vertices with prescribed positions x~2h1,x~2h,x~2h+2\widetilde{x}_{2h-1},\,\widetilde{x}_{2h},\,\widetilde{x}_{2h+2} and x~2h+1\widetilde{x}_{2h+1}, i.e., Th:mesh(h)mesh(h~)T_{h}:\text{mesh}(h)\to\text{mesh}(\widetilde{h}).

The position of iith follower robot pip_{i} in the actual domain will be transformed by ThT_{h} if pimesh(h)p_{i}\in\text{mesh}(h), i.e., p~i=Th(pi)\widetilde{p}_{i}=T_{h}(p_{i}). The transformed followers {p~i}i=1N\{\widetilde{p}_{i}\}_{i=1}^{N} will be performing coverage over the resulting long rectangular domain 𝒮~(t)\widetilde{\mathcal{S}}(t) defined by vertices {x~k}k=1M\{\widetilde{x}_{k}\}_{k=1}^{M}.

For p~i=Th(pi)\widetilde{p}_{i}=T_{h}(p_{i}), by the chain rule we can obtain that

p~˙i=Th(pi)pip˙i+Th(pi)t\displaystyle\dot{\widetilde{p}}_{i}=\frac{\partial T_{h}(p_{i})}{\partial p_{i}}\dot{p}_{i}+\frac{\partial T_{h}(p_{i})}{\partial t}

which leads to

p˙i=(Th(pi)pi)1(p~˙iTh(pi)t)\displaystyle\dot{p}_{i}=\left(\frac{\partial T_{h}(p_{i})}{\partial p_{i}}\right)^{-1}\left(\dot{\widetilde{p}}_{i}-\frac{\partial T_{h}(p_{i})}{\partial t}\right) (9)

where from (7) and (8),

p~˙i=(IC~ip~i)1(K(C~ip~i)+C~it).\dot{\widetilde{p}}_{i}=\left(I-\frac{\partial\widetilde{C}_{i}}{\partial\widetilde{p}_{i}}\right)^{-1}\left(K(\widetilde{C}_{i}-\widetilde{p}_{i})+\frac{\partial\widetilde{C}_{i}}{\partial t}\right).

we can find that Ci~t\frac{\partial\widetilde{C_{i}}}{\partial t} is zero in this case since the time-dependency of the domain is captured by the defined transformation ThT_{h} when the result virtual rectangular domain and the density are static.

4 Multi-Robot Simulation

In previous sections, a time-varying domain is defined by a group of leader robots, and a coverage control law (9) is developed to distribute a team of follower robots in a non-convex environment. The proposed control strategy is validated through simulation in this section.

In the simulation, we employ potential field method to obtain a reference path in the first layer of the controller. Then ten leader robots are modeled as masses interconnected by virtual springs and dampers subject to external forces. Each leader is equipped with sensors which can generate forces near obstacles, the first two leaders are tracking the reference path and determine the orientation of the MSD system. A time-varying non-convex domain is defined by considering the positions of leaders as vertices. For each quadrilateral mesh defined by 4 robots, we develop a perspective transformation to transform it into a static rectangle, such that the successive meshes are transformed into a large static rectangle as shown in Fig. 3. A team of ten follower robots is also transformed into the virtual rectangular domain and commanded to perform coverage. The velocity commands generated in the virtual domain can then be mapped back by using the inverse transformation.

We employ two metrics to evaluate the performance of the leaders and followers, i.e., the reference path tracking error EΓE_{\Gamma} and aggregate coverage error EcE_{c}. The tracking error captures the minimum distance from the “head” of the MSD system (mid point cxc_{x} between x1x_{1} and x2x_{2}) to the path, and the aggregate coverage error captures the error between followers and centroids for the corresponding Voronoi cells in the virtual domain. The result is shown in Fig. 4. As we can see from Fig. 3 and Fig. 4, the leaders are able to track the reference path while avoiding the obstacle. If there is no obstacles in the environment, the reference path tracking error will asymptotically approach to zero due to the tracking force designed by (4); but in a cluttered environment, the tracking error is influenced by several factors, e.g., the size of the time-varying domain, and the obstacles which locate on the both sides of the reference path. The followers in the real world move correspondingly to maintain a centroidal Voronoi tessellation configuration in the virtual domain.

5 Conclusion

In this paper, we present a leader-follower framework for navigation of a multi-robot system. The team of leaders are modeled a MSD system which navigates and interacts with the environment. A team of followers coordinates with each other and distribute optimally over the domain defined by leaders in a transformed virtual convex domain, and this results in near-optimal distribution of the followers in the real world when the deformation of the domain is slight. The leaders are able to track the reference path, avoid the obstacles and sustain a minimum amount of area required for the followers to distribute over. The followers are capable of occupying the domain defined by leaders and capture the motion of the leaders in a decentralized fashion.

References

  • [1] Keiji Nagatani, Yoshito Okada, Naoki Tokunaga, Seiga Kiribayashi, Kazuya Yoshida, Kazunori Ohno, Eijiro Takeuchi, Satoshi Tadokoro, Hidehisa Akiyama, Itsuki Noda, et al. Multirobot exploration for search and rescue missions: A report on map building in robocuprescue 2009. Journal of Field Robotics, 28(3):373–387, 2011.
  • [2] Terry Huntsberger, Paolo Pirjanian, Ashitey Trebi-Ollennu, H Das Nayar, Hrand Aghazarian, Anthony J Ganino, Michael Garrett, Shirish S Joshi, and Paul S Schenker. Campout: A control architecture for tightly coupled coordination of multirobot systems for planetary surface exploration. IEEE Transactions on Systems, Man, and Cybernetics-Part A: Systems and Humans, 33(5):550–559, 2003.
  • [3] Fasheng Zou, Harrison Jones, Demeng Jiang, Tien-Ming Lee, Ari Martínez, Kathryn Sieving, Min Zhang, Qiang Zhang, Eben Goodale, et al. The conservation implications of mixed-species flocking in terrestrial birds, a globally-distributed species interaction network. Biological conservation, 224:267–276, 2018.
  • [4] Anne Fünfhaus, Josefine Göbel, Julia Ebeling, Henriette Knispel, Eva Garcia-Gonzalez, and Elke Genersch. Swarming motility and biofilm formation of paenibacillus larvae, the etiological agent of american foulbrood of honey bees (apis mellifera). Scientific reports, 8(1):1–12, 2018.
  • [5] Xi Wang, P. Lee, A. Ray, and S. Phopa. A behavior-based collaborative multi-agent system. In SMC’03 Conference Proceedings. 2003 IEEE International Conference on Systems, Man and Cybernetics. Conference Theme - System Security and Assurance (Cat. No.03CH37483), volume 5, pages 4242–4248 vol.5, 2003.
  • [6] Haibo Du, Wenwu Zhu, Guanghui Wen, Zhisheng Duan, and Jinhu Lü. Distributed formation control of multiple quadrotor aircraft based on nonsmooth consensus algorithms. IEEE transactions on cybernetics, 49(1):342–353, 2017.
  • [7] HC-H Hsu and Alan Liu. Multiple teams for mobile robot formation control. In Proceedings of the 2004 IEEE International Symposium on Intelligent Control, 2004., pages 168–173. IEEE, 2004.
  • [8] Luiz Chaimowicz, Nathan Michael, and Vijay Kumar. Controlling swarms of robots using interpolated implicit functions. In Proceedings of the 2005 IEEE international conference on robotics and automation, pages 2487–2492. IEEE, 2005.
  • [9] Luciano CA Pimenta, Guilherme AS Pereira, Nathan Michael, Renato C Mesquita, Mateus M Bosque, Luiz Chaimowicz, and Vijay Kumar. Swarm coordination based on smoothed particle hydrodynamics technique. IEEE Transactions on Robotics, 29(2):383–399, 2013.
  • [10] Dibyendu Roy, Arijit Chowdhury, Madhubanti Maitra, and Samar Bhattacharya. Geometric region-based swarm robotics path planning in an unknown occluded environment. IEEE Transactions on Industrial Electronics, 2020.
  • [11] Donald B Johnson. A note on dijkstra’s shortest path algorithm. Journal of the ACM (JACM), 20(3):385–388, 1973.
  • [12] Steven M LaValle. Rapidly-exploring random trees: A new tool for path planning. 1998.
  • [13] Lydia E Kavraki, Mihail N Kolountzakis, and J-C Latombe. Analysis of probabilistic roadmaps for path planning. IEEE Transactions on Robotics and Automation, 14(1):166–171, 1998.
  • [14] Arthur Mahoney, Joshua Bross, and David Johnson. Deformable robot motion planning in a reduced-dimension configuration space. In 2010 IEEE International Conference on Robotics and Automation, pages 5133–5138. IEEE, 2010.
  • [15] Elliot Anshelevich, Scott Owens, Florent Lamiraux, and Lydia E Kavraki. Deformable volumes in path planning applications. In Proceedings 2000 ICRA. Millennium Conference. IEEE International Conference on Robotics and Automation. Symposia Proceedings (Cat. No. 00CH37065), volume 3, pages 2290–2295. IEEE, 2000.
  • [16] Xiaotian Xu and Yancy Diaz-Mercado. Multi-agent control using coverage over time-varying domains. In 2020 American Control Conference (ACC), pages 2030–2035. IEEE, 2020.
  • [17] Mehran Mesbahi and Magnus Egerstedt. Graph theoretic methods in multiagent networks, volume 33. Princeton University Press, 2010.
  • [18] Joseph LaSalle. Some extensions of liapunov’s second method. IRE Transactions on circuit theory, 7(4):520–527, 1960.
  • [19] Hassan K Khalil and Jessy W Grizzle. Nonlinear systems, volume 3. Prentice hall Upper Saddle River, NJ, 2002.
  • [20] Y. Diaz-Mercado, S. G. Lee, and M. Egerstedt. Human-swarm interactions via coverage of time-varying densities. In Trends in Control and Decision-Making for Human–Robot Collaboration Systems, chapter 15, pages 357–385. Springer, Cham, Switzerland, 2017.
  • [21] J. Cortes, S. Martinez, T. Karatas, and F. Bullo. Coverage control for mobile sensing networks: variations on a theme. In Mediterranean Conference on Control and Automation, 2002.
  • [22] X. Xu and Y. Diaz-Mercado. Multi-robot control using coverage over time-varying non-convex domains. In 2020 IEEE International Conference on Robotics and Automation (ICRA), pages 4536–4542, 2020.
  • [23] Carlos H Caicedo-Nunez and Milos Zefran. Performing coverage on nonconvex domains. In 2008 IEEE International Conference on Control Applications, pages 1019–1024. IEEE, 2008.
  • [24] Antonio Criminisi, Ian Reid, and Andrew Zisserman. A plane measuring device. Image and Vision Computing, 17(8):625–634, 1999.