A large body of work on multi-robot systems and robotic swarms deals with how to coordinate large teams of robots to produce collective behaviors that go beyond the capabilities of the robots as individuals [
3]. As such, the aim is to perform collective, emerging behaviors that arise from rules executed by individual robots acting on local information. The fulfillment of objectives is thus typically analyzed from the team-level behavior, rather than from the individual actions of the robots. For instance, robot team performance can be evaluated in terms of overall geometrical deployment of the robots, as discussed in Reference [
68].
Taking the taxonomy outlined in Reference [
13] as a reference, we analyze the legibility of standard coordinated control algorithms commonly used for achieving multi-robot coordination objectives. Specifically, we examine consensus, formation, and coverage algorithms. These algorithms are posed such that the group’s coordination objective is encoded through a cost that represents the performance of the team as a whole, and the individuals cooperate toward that objective by following a direction of the gradient of the cost.
In this section, we outline the control laws executed for each of the coordination objectives utilized in the user study. To this end, let us consider a team of
N planar robots,
1 with the position of robot
i being denoted as
\(x_i\in \mathbb {R}^2\),
\(i\in \mathcal {N}=\lbrace 1,\dots ,N\rbrace\). While many kinematic configurations can be considered for the individual platforms in robotic swarms (e.g., omnidirectional [
35] or differential drive [
48,
71,
72]), we here opt for omnidirectional robots to minimally distort the ideal collective behavior considered in the control laws. Consequently, the movement of the robots can be described through single integrator dynamics, i.e.,
with
\(x={[x_1^T,\dots ,x_N^T]}^T\in \mathbb {R}^{2N}\) being the aggregate state of the system, and
\(u={[u_1^T,\dots ,u_N^T]}^T\in \mathbb {R}^{2N}\), its control. If a coordination objective is to be fulfilled, then the control input of each particular robot,
\(u_i\),
\(i\in \mathcal {N}\), will be influenced by the state and the actions of its neighbors. This flow of information among adjacent robots is typically represented through a graph
\(\mathcal {G} =(\mathcal {V},\mathcal {E})\), where the vertex set,
\(\mathcal {V} = \lbrace 1, \dots , N\rbrace\), represents the robots and the edge set,
\(\mathcal {E}\in \mathcal {V}\times \mathcal {V}\), encodes the adjacency relationships, i.e.,
\((i,j)\in \mathcal {E}\) if robot
i communicates with or can sense/be sensed by robot
j. For the control laws considered in this article, the relationships between robots are bidirectional, namely,
\((i,j)\in \mathcal {E}\) if
\((j,i)\in \mathcal {E}\), that is,
\(\mathcal {G}\) is undirected. In addition, they are subjected to change over time: the edge set
\(\mathcal {E}\) need not be static. For notational convenience, the neighboring set of robot
i is denoted as
\(\mathcal {N}_i=\lbrace j\in \mathcal {N}~|~(i,j)\in \mathcal {E}\rbrace\).
The remainder of this section provides an outline of the different multi-robot coordination objectives analyzed in the user study in Section
4, i.e., consensus, formation and coverage. For each of them, we include a general description of the expected behavior as well as the laws to be executed by the robots. Additional details about implementation, including parameter choices, are reported in Appendix
A for the purpose of reproducibility of results.
3.1 Consensus
The consensus protocol deals with the spatial aggregation of agents in a common point through local coordination of neighbors [
1,
14,
43]. Assuming the graph describing inter-robot sensing,
\(\mathcal {G}\), is connected
2, the team converges to a common location if each individual executes the control law
where
\(\kappa \in \mathbb {R_+}\) is a proportional gain.
3 Executing the control law in Equation (
1) implies that robot
i will be moving in the direction that averages the relative positions of its neighbors,
\(x_j-x_i\),
\(\forall j\) adjacent to robot
i. Asymptotically, this will make them converge to a point
\(\bar{x} = x_1(\infty) = \dots = x_N(\infty)\), that is, the robots will reach consensus about where to meet, as long as the graph stays connected.
An instance of the consensus protocol in Equation (
1) is shown in Figure
1, where a group of ideal robots, modeled as points, starts scattered over the domain and agree on a location where to meet. Note that, in the experiments included in Section
4, the robots have a physical footprint and, therefore, are unable to finish stacked on top of each other. As opposed to the ideal case presented in Figure
1, when executing the consensus protocol on a team of real robots, they will aggregate as much as possible without incurring inter-robot collisions, thanks to the implemented collision avoidance (see Appendix
A.2).
3.2 Formation Control
A standard problem when controlling a multi-robot team is that of moving the individual robots so that they display a particular shape. This is typically achieved through formation control strategies, e.g., References [
31,
54,
73], that specify how the individual robots should move to collectively display a shape.
The specification of the geometry to be realized by the team is key to the operation of a formation controller. To this end, we can specify a 2D formation
\(\Delta\) through a set of relative, desired inter-agent distances,
We assume here that
\(\Delta\) is a feasible formation, that is, that the distances are not conflicting and, thus, the geometry can can be realized (see Reference [
46] for details on feasible formations).
Having specified the formation, we can recover the structure of the consensus protocol in Equation (
1) and make each robot move according to a weighted average of the relative positions of its neighbors,
where the weight
\(w_{ij}\) is positive if the neighboring robot is further than the desired distance, i.e., if
\(\Vert x_i-x_j\Vert \gt \delta _{ij}\), and negative otherwise. For the experiments in Section
4, the weights are calculated as
Note that, to execute the control law in Equation (
2), each robot needs to be cognizant of which robots conform its neighborhood,
\(\mathcal {N}_i\), their relative positions,
\(x_j-x_i\), and which distance is to be maintained with respect to each of them,
\(\delta _{ij}\), as reflected in
\(\Delta\). Therefore, under this protocol the robots are no longer anonymous: each robot needs to know the identities of other robots to discriminate which ones it needs to coordinate with.
Figure
2 shows the evolution of a team of 10 robots achieving a formation composed by two concentric pentagons, as specified by a formation
\(\Delta\). The formation control protocol in Equation (
2) ensures that the inter-robot distances are maintained but it does not influence the rotation of the formation with respect to the global frame.
3.3 Coverage Control
Coverage control deals with the problem of distributing robots over a domain
\(D\subset \mathbb {R}^2\) such that the events of interest are optimally monitored by the team [
15]. When covering an area, a standard strategy is to partition it so that each robot only takes responsibility over a portion. A typical way of dividing responsibilities is to make robot
i be in charge of those points in the domain that are closer to it than to any other robot. This partitioning is known as a Voronoi tessellation [
53],
where
\(V_i\) denotes the Voronoi cell assigned to robot
i.
In general, this partition is not uniform across the domain in terms of area assigned to each robot. Indeed, the objective of the coverage problem is to monitor closely areas of higher importance by making the robots concentrate around them, which, in turn, results in differently sized Voronoi cells. The relative importance of a point in the domain typically reflects the probability of occurrence of an event or the concentration of a resource and is described through a spatial field, hereinafter referred to as
density function,
\(\phi\). An example of this density function is depicted in Figure
3, with
yellow shades corresponding to higher values of
\(\phi\).
When the density function is solely a function of the points in the domain and does not evolve over time,
\(\phi :D\mapsto \mathbb {R_+}\), the overall coverage performance of the multi-robot team can be quantified by the locational cost defined in References [
15,
22],
with a lower cost corresponding to a better coverage of
\(\phi\). The multi-robot system can minimize this cost following a direction of descent [
15], which lends a continuous version of Lloyd’s algorithm [
44],
with
\(\kappa \in \mathbb {R}_+\) a proportional gain, and
\(c_i(x)\) the center of mass of the Voronoi cell of robot
i,
3.3.1 Time-varying Coverage.
In some situations, the importance of the points in the domain may evolve over time. As a result, the coverage strategy outlined in Equations (
3)–(
5) needs to adapt to reflect possible dynamic changes to the density function. Considering a dynamic density,
\(\phi :(q,t)\in D\times \mathbb {R}_+\mapsto \phi (q,t)\in \mathbb {R}_+\), the locational cost can be reformulated as
The introduction of a dynamic density in the locational cost calls for a modification of the coverage controller. As investigated in Reference [
40], one can minimize the locational cost in Equation (
6) by setting
where
\(c = {[c_1^T, \dots , c_N^T]}^T \in \mathbb {R}^{2N}\) is the vector containing the centers of mass calculated as in Equation (
5) but with respect to the time-varying density function,
\(\kappa \in \mathbb {R}_+\) is a proportional gain, and
\(I\in \mathbb {R}^{2N\times 2N}\) is the identity matrix.