Paolo Robuffo Giordano

Antonio Franchi
email: antonio.franchi@tuebingen.mpg.de.

Cristian Secchi
email: cristian.secchi@unimore.it

Heinrich H Bülthoff

P Robuffo

A Passivity-Based Decentralized Strategy for Generalized Connectivity Maintenance

The design of decentralized controllers coping with the typical constraints on the inter-robot sensing/communication capabilities represents a promising direction in multi-robot research thanks to the inherent scalability and fault tolerance of these approaches. In these cases, connectivity of the underlying interaction graph plays a fundamental role: it represents a necessary condition for allowing a group or robots achieving a common task by resorting to only local information. Goal of this paper is to present a novel decentralized strategy able to enforce connectivity maintenance for a group of robots in a flexible way, that is, by granting large freedom to the group internal configuration so as to allow establishment/deletion of interaction links at anytime as long as global connectivity is preserved. A peculiar feature of our approach is that we are able to embed into a unique connectivity preserving action a large number of constraints and requirements for the group: (i) presence of specific inter-robot sensing/communication models, (ii) group requirements such as formation control, and (iii) individual requirements such as collision avoidance. This is achieved by defining a suitable global potential function of the second smallest eigenvalue λ2 of the graph Laplacian, and by computing, in a decentralized way, a gradient-like controller built on top of this potential. Simulation results obtained with a group of quadorotor UAVs and UGVs, and experimental results obtained with four quadrotor UAVs, are finally presented to thoroughly illustrate the features of our approach on a concrete case study.

I. INTRODUCTION

Over the last years, the challenge of coordinating the actions of multiple robots has increasingly drawn the attention of the robotics and control communities, being inspired by the idea that proper coordination of many simple robots can lead to the fulfillment of arbitrarily complex tasks in a robust (to single robot failures) and highly flexible way. Teams of multi-robots can take advantage of their number to perform, for example, complex manipulation and assembly tasks, or to obtain rich spatial awareness by suitably distributing themselves in the environment. Use of multiple robots, or in general distributed sensing/computing resources, is also at the core of the foreseen Cyber-Physical Society [START_REF] Lee | Cyber-physical systems: Design challenges[END_REF] envisioning a network of computational and physical resources (such as robots) spread over large areas and able to collectively monitor the environment and act upon it. Within the scope of robotics, autonomous search and rescue, firefighting, exploration and intervention in dangerous or inaccessible areas are the most promising applications. We refer the reader to [START_REF] Murray | Recent research in cooperative control of multi-vehicle systems[END_REF] for a survey and to [START_REF] Howard | Experiments with a large heterogeneous mobile robot team: Exploration, mapping, deployment and detection[END_REF]; [START_REF] Franchi | The sensorbased random graph method for cooperative robot exploration[END_REF]; [START_REF] Schwager | Eyes in the sky: Decentralized control for the deployment of robotic camera networks[END_REF]; [START_REF] Renzaglia | Multi-robot three dimensional coverage of unknown areas[END_REF] for examples of multi-robot exploration, coverage and surveillance tasks.

In any multi-robot application, a typical requirement when devising motion controllers is to rely on only relative measurements w.r.t. other robots or the environment, as for example relative distances, bearings or positions. In fact, these can be usually obtained from direct onboard sensing, and are thus free from the presence of global localization modules such as GPS or SLAM algorithms (see, e.g., [START_REF] Durham | Distributed pursuit-evasion without global localization via local frontiers[END_REF]), or other forms of centralized localization systems. Similarly, when exploiting a communication medium in order to exchange information across robots (e.g., by dispatching data via radio signals), decentralized solutions requiring only local and 1-hop information are always preferred because of their higher tolerance to faults and inherent lower communication load [START_REF] Murray | Recent research in cooperative control of multi-vehicle systems[END_REF]; [START_REF] Leonard | Virtual leaders, artificial potentials and coordinated control of groups[END_REF].

In all these cases, properly modeling the ability of each robot to sense and/or communicate with surrounding robots and environment is a fundamental and necessary step. Graph theory, in this sense, has provided an abstract but effective set of theoretical tools for fulfilling this need in a compact way: presence of an edge among pairs of agents represents their ability to interact, i.e., to exchange (by direct sensing and/or communication) those quantities needed to implement their local control actions. Several properties of the interaction graph, in particular of its topology, have direct consequences on the convergence and performance of controllers for multirobot applications. Among them, connectivity of the graph is perhaps the most 'fundamental requirement' in order to allow a group of robots accomplishing common goals by means of decentralized solutions (examples in this sense are given by consensus [START_REF] Olfati-Saber | Consensus and cooperation in networked multi-agent systems[END_REF], rendezvous [START_REF] Martinez | On synchronous robotic networks -Part II: Time complexity of rendezvous and deployment algorithms[END_REF], flocking [START_REF] Olfati-Saber | Flocking for multi-agent dynamic systems: algorithms and theory[END_REF], leader-follower [START_REF] Mariottini | Vision-based localization for leader-follower formation control[END_REF], and similar cooperative tasks). In fact, graph connectivity ensures the needed continuity in the data flow among all the robots in the group which, over time, makes it possible to share and distribute the needed information.

The importance of maintaining connectivity of the interaction graph during task execution has motivated a large number of works over the last years. Broadly speaking, in literature two classes of connectivity maintenance approaches are present: i) the conservative methods, which aim at preserving the initial (connected) graph topology during the task, and ii) the flexible approaches, which allow to switch anytime among any of the connected topologies. These usually produce local control actions aimed at optimizing over time some measure of the degree of connectivity of the graph, such as the wellknown quantity λ 2 , the second smallest eigenvalue of the graph Laplacian [START_REF] Fiedler | Algebraic connectivity of graphs[END_REF].

Within the first class of conservative solutions, the approach detailed in [START_REF] Ji | Distributed coordination control of multiagent systems while preserving connectednes[END_REF] considers an interrobot sensing model based on maximum range, and a similar situation is addressed in [START_REF] Dimarogonas | Connectedness preserving distributed swarm aggregation for multiple kinematic robots[END_REF] where, however, the possibility of permanently adding edges over time is also included. In [START_REF] Stump | Visibility-based deployment of robot formations for communication maintenance[END_REF], inter-robot visibility is also taken into account as criterium for determining the neighboring condition, and a centralized solution for a given known (and fixed) topology of the group is proposed. Finally, a probabilistic approach for optimizing the multi-hop communication quality from a transmitting node to a receiving node over a given line topology is detailed in [START_REF] Yan | Robotic router formation in realistic communication environments[END_REF].

Among the second class of more flexible approaches, the authors of [START_REF] Kim | On maximizing the second smallest eigenvalue of a state-dependent graph laplacian[END_REF] propose a centralized method to optimally place a set of robots in an obstacle-free environment and with maximum range constraints in order to realize a given value of λ 2 , i.e., of the degree of connectivity of the resulting interaction graph. A similar objective is also pursued in De [START_REF] De Gennaro | Decentralized control of connectivity for multi-agent systems[END_REF] but by devising a decentralized solution. In [START_REF] Zavlanos | Potential fields for maintaining connectivity of mobile networks[END_REF], the authors develop a centralized feedback controller based on artificial potential fields in order to maintain connectivity of the group (with only maximum range constraints) and to avoid inter-robot collisions. An extension is also presented in [START_REF] Zavlanos | Hybrid control for connectivity preserving flocking[END_REF] for achieving velocity synchronization while maintaining connectivity under the usual maximum range constraints. Another decentralized approach based on a gradient-like controller aimed at maximizing the value of λ 2 over time is developed in [START_REF] Yang | Decentralized estimation and control of graph connectivity for mobile sensor networks[END_REF] by including maximum range constraints, but without considering obstacle or inter-robot collision avoidance. In [START_REF] Antonelli | A selfconfiguring MANET for coverage area adaptation through kinematic control of a platoon of mobile robots[END_REF][START_REF] Antonelli | Coordinated control of mobile antennas for ad-hoc networks in cluttered environments[END_REF], the authors address the problem of controlling the motion of a Mobile Ad-hoc NETwork (MANET) in order to maintain a communication link between a fixed base station and a mobile robot via a group of mobile antennas. Maximum range constraints and obstacle avoidance are taken into account, and a centralized solution for the case of a given (fixed) line topology for the antennas is developed. Finally, in [START_REF] Stump | Connectivity management in mobile robot teams[END_REF] a similar problem is addressed by resorting to a centralized solution and by considering maximum range constraints and obstacle avoidance. However, connectivity maintenance is not guaranteed at all times.

With respect to this state-of-the-art, the goal of this paper is to extend and generalize the latter class of methods maintaining connectivity in a flexible way, i.e., by allowing complete freedom for the graph topology as long as connectivity is preserved. Specifically, we aim for the following features: (i) possibility of considering complex sensing models determining the neighboring condition besides the sole (and usual) maximum range (e.g., including non-obstructed visibility because of occlusions by obstacles), (ii) possibility to embed into a unique connectivity preserving action a number of additional desired behaviors for the robot group such as formation control or inter-robot and obstacle collision avoid-ance, (iii) possibility to establish or lose inter-agent links at any time and also concurrently as long as global connectivity is preserved, (iv) possibility to execute additional exogenous tasks besides the sole connectivity maintenance action such as, e.g., exploration, coverage, patrolling, and finally (v) a fully decentralized design for the connectivity maintenance action implemented by the robots.

The rest of the paper is structured as follows: Sect. II illustrates our approach (and its underlying motivations) and introduces the concept of Generalized Connectivity, which is central for the rest of the developments. This is then further detailed in Sect. III where the design of a possible interrobot sensing model and of desired group behaviors is described. Section IV then focuses on the proposed connectivity preserving control action, by highlighting its decentralized structure and by characterizing the stability of the overall group behavior in closed-loop. As a case study of the proposed machinery, Section V presents an application involving a bilateral shared control task between two human operators and a group of mobile robots navigating in a cluttered environment, and bound to follow the operator motion commands while preserving connectivity of the group at all times. Simulation results obtained with a heterogeneous group of UAVs (quadrotors) and UGVs (differentially driven wheeled robots), and experimental results obtained with a group of quadrotor UAVs are then reported in Sect. VI, and Sect. VII concludes the paper and discusses future directions.

Throughout the rest of the paper, we will make extensive use of the port-Hamiltonian formalism for modeling and design purposes, and of passivity theory for drawing conclusions about closed-loop stability of the group motion. In fact, in our opinion the use of these and related energy-based arguments provides a powerful and elegant approach for the analysis and control design of multi-robot applications. The reader is referred to [START_REF] Secchi | Control of Interactive Robotic Interfaces: a port-Hamiltonian Approach[END_REF]; [START_REF] Duindam | Modeling and Control of Complex Physical Systems: The Port-Hamiltonian Approach[END_REF] for an introduction to port-Hamiltonian modeling and control of robotic systems, and to [START_REF] Franchi | A passivity-based decentralized approach for the bilateral teleoperation of a group of UAVs with switching topology[END_REF]; Robuffo Giordano et al. (2011b,a); Franchi et al. (2012b); [START_REF] Secchi | Bilateral teleoperation of a group of UAVs with communication delays and switching topology[END_REF] for a collection of previous works sharing the same theoretical background with the present one. In particular, part of the material developed hereafter has been preliminarily presented in Robuffo Giordano et al. (2011a).

II. GENERALIZED CONNECTIVITY A. Preliminaries and Notation

In the following, the symbol 1 N will denote a vector of all ones of dimension N , and similarly 0 N for a vector of all zeros. The symbol I N will represent the identity matrix of dimension N , and the operator ⊗ will denote the Kronecker product among matrixes. For the reader's convenience, we will provide here a short introduction to some aspects of graph theory pertinent to our work. For a more comprehensive treatment, we refer the interested reader to any of the existing books on this topic, for instance [START_REF] Mesbahi | Graph Theoretic Methods in Multiagent Networks[END_REF].

Let G = (V, E) be an undirected graph with vertex set V = {1 . . . N } and edge set E ⊂ (V × V)/ ∼, where ∼ is the equivalence relation identifying the pairs (i, j) and (j, i). Elements in E encode the adjacency relationship among vertexes of the graph: [(i, j)] ∈ E iff agents i and j are considered as neighbors or as adjacent1 . We assume [(i, i)] / ∈ E, ∀i ∈ V (no self-loops), and also take by convention (i, j), i < j, as the representative element of the equivalence class [(i, j)]. Several matrixes can be associated to graphs and, symmetrically, several graph-related properties can be represented by matrixrelated quantities. For our goals, we will mainly rely on the adjacency matrix A, the incidence matrix E, and the Laplacian matrix L.

The adjacency matrix A ∈ R N ×N is a square symmetric matrix with elements A ij ≥ 0 such that A ij = 0 if (i, j) / ∈ E and A ij > 0 otherwise (in particular, A ii = 0 by construction). As for the incidence matrix, we consider a slight variation from its standard definition. Let

E * = {(1, 2), (1, 3) . . . (1, N ) . . . (N -1, N )} = {e 1 , e 2 . . . e N -1 . . . . . . , e N (N -1)/2 } (1)
be the set of all the possible representative elements of the equivalence classes in (V × V)/ ∼, i.e., all the vertex pairs (i, j) such that i < j, sorted in lexicographical order. We define

E ∈ R |V|×|E * | such that, ∀e k = (i, j) ∈ E * , E ik = -1 and E jk = 1, if e k ∈ E
, and E ik = E jk = 0 otherwise. In short, this definition yields a 'larger' incidence matrix E accounting for all the possible representative edges listed in E * but with columns of all zeros in presence of those edges not belonging to the actual edge set E.

The Laplacian matrix L ∈ R N ×N is a square positive semi-definite symmetric matrix defined as L = diag(δ i ) -A with δ i = N j=1 A ij , or, equivalently, as L = EE T . The Laplacian matrix L encodes some fundamental properties of its associated graph which will be heavily exploited in the following developments. Specifically, owing to its symmetry and positive semi-definiteness, all the N eigenvalues of L are real and non-negative. Second, by ordering them in ascending order 0 ≤ λ 1 ≤ λ 2 ≤ . . . ≤ λ N , one can show that: (i) λ 1 = 0 by construction, and (ii) λ 2 > 0 if the graph G is connected and λ 2 = 0 otherwise. The second smallest eigenvalue λ 2 is then usually referred to as the 'connectivity eigenvalue' or Fiedler eigenvalue Fiedler (1973).

Finally, we let ν i ∈ R N represent the normalized eigenvector of the Laplacian L associated to λ i , i.e., a vector satisfying

ν T i ν i = 1 and λ i = ν T i Lν i .
Owing to the properties of the Laplacian matrix, it is ν 1 = 1 N / √ N and ν T i ν j = 0, i = j. The eigenvector ν 2 associated to λ 2 will be denoted hereafter as the 'connectivity eigenvector'.

B. Definition of Generalized Connectivity

Consider a system made of N agents: presence of an interaction link among a pair of agents (i, j) is usually modeled by setting the corresponding elements A ij = A ji = {0, 1} in the adjacency matrix A, with A ij = A ji = 0 if no information can be exchanged at all, and A ij = A ji = 1 otherwise. This idea can be easily extended to explicitly consider more sophisticated agent sensing/communication models representing the actual (physical) ability to exchange mutual information because of the agent relative state. For illustration, let x i ∈ R 3 denote the i-th robot position and assume an environment modeled as a collection of obstacle points O = {o k ∈ R 3 }. An inter-robot sensing/communication model is any sufficiently smooth scalar function γ ij (x i , x j , O) ≥ 0 measuring the 'quality' of the mutual information exchange, with γ ij = 0 if no exchange is possible and γ ij > 0 otherwise (the larger γ ij the better the quality). Common examples are:

Proximity sensing model: assume agents i and j are able to interact iff x ix j < D, with D > 0 being a suitable sensing/communication maximum range. For example, if radio signals are employed to deliver messages, there typically exists a maximum range beyond which no signal can be reliably dispatched. In this case γ ij does not depend on surrounding obstacles and can be defined as any sufficiently smooth function such that γ ij (x i , x j ) > 0 for x ix j < D and

γ ij (x i , x j ) = 0 for x i -x j ≥ D.
Proximity-visibility sensing model: let S ij be the segment (line-of-sight) joining x i and x j . Agents i and j are able to interact iff x ix j < D and

σx j + (1 -σ)x i -o k > D vis , ∀σ ∈ [0, 1], ∀o k ∈ O,
with D vis > 0 being a minimum visibility range, i.e., a minimum clearance between all the points on S ij and any close obstacle o k . In this case, γ ij (x i , x j , o k ) = 0 as either the maximum range is exceeded (

x i -x j ≥ D) or line-of- sight visibility is lost ( σx j +(1-σ)x i -o k ≤ D vis for some o k and σ), while γ ij (x i , x j , o k ) > 0 otherwise.
Examples of this situation can occur when onboard cameras are the source of position feedback, so that maximum range and occlusions because of obstacles hinder the ability to sense surrounding robots.

Clearly, more complex situations involving specific models of onboard sensors (e.g., antenna directionality or limited field of view) can be taken into account by suitably shaping the functions γ ij . Probabilistic extensions accounting for stochastic properties of the adopted sensors/communication medium as, for instance, transmission error rates, can also be considered, see, e.g., [START_REF] Yan | Robotic router formation in realistic communication environments[END_REF].

Once functions γ ij have been chosen, one can exploit them as weights on the inter-agent links, i.e., by setting in the adjacency matrix A ij = γ ij . This way, the value of λ 2 becomes a (smooth) measure of the graph connectivity and, in particular, a (smooth) function of the system state (e.g., of the agent and obstacle relative positions). Second, and consequently, it becomes conceivable to devise (local) gradient-like controllers aimed at either maximizing the value of λ 2 over time, or at just ensuring a minimum level of connectivity λ 2 ≥ λ min 2 > 0 for the graph G, while, for instance, the robots are performing additional tasks of interest for which connectivity maintenance is a necessary requirement. This approach has been investigated in the past literature especially for the proximity sensing model case: see, among the others, [START_REF] Stump | Connectivity management in mobile robot teams[END_REF]; [START_REF] Sabattini | On decentralized connectivity maintenance for mobile robotic systems[END_REF]; [START_REF] Kim | On maximizing the second smallest eigenvalue of a state-dependent graph laplacian[END_REF]; De Gennaro and Jadbabaie (2006); [START_REF] Zavlanos | Potential fields for maintaining connectivity of mobile networks[END_REF]; [START_REF] Yang | Decentralized estimation and control of graph connectivity for mobile sensor networks[END_REF].

One of the contributions of this work is the extension of these ideas to not only embed in A ij the physical quality of the interaction among pairs of robots (the sensing model), but to also encode a number of additional inter-agent behaviors and constraints to be fulfilled by the group as a whole. This is achieved by designing the weights A ij so that the interaction graph G is forced to decrease its degree of connectivity whenever: (i) any two agents lose ability to physically exchange information as per their sensing model γ ij , and (ii) any of the existing inter-agent behaviors or constraints is not met with the required accuracy (and, in this case, even though the agents could still be able to interact from a pure sensing/communication standpoint). By then designing a gradient-like controller built on top of the unique scalar quantity λ 2 , and by exploiting the monotonic relationship between λ 2 and the weights A ij [START_REF] Yang | Decentralized estimation and control of graph connectivity for mobile sensor networks[END_REF], we are able to simultaneously optimize: (i) as customary, the physical connectivity of the graph, i.e., that due to the inter-agent sensing model γ ij , and (ii) additional individual or group requirements, such as, e.g., obstacle avoidance or formation control.

Specifically, we propose to augment the previous definition of the weights A ij = γ ij as follows:

A ij = α ij β ij γ ij .
(2)

The weight β ij ≥ 0 is meant to account for additional interagent soft requirements that should be preferably realized by the individual pair (i, j) (e.g., for formation control purposes,

β ij (d ij ) could have a unique maximum at some desired inter- distance d ij = d 0 and β ij (d ij ) → 0 as d ij deviates too much from d 0 )
. Failure in complying with β ij will lead to a disconnected edge (i, j) and to a corresponding decrease of λ 2 , but will not (in general) result in a global loss of connectivity for the graph G. The weight α ij ≥ 0 is meant to represent hard requirements that must be necessarily satisfied by agents i or j with some desired accuracy. A straightforward example is obstacle or inter-agent collision avoidance: whatever the task, collisions with obstacles or other agents must be mandatorily avoided. Considering agent i, in our framework this will be achieved by letting α ij → 0, ∀j ∈ 1 . . . N , whenever any of such behaviors is not sufficiently met, e.g., when the distance of agent i to an obstacle becomes smaller than some safety threshold. Failure in complying with a hard requirement will then result in a null i-th row (and i-th column) in the adjacency matrix A, necessarily leading to a disconnected graph (λ 2 → 0). Ensuring graph connectivity (λ 2 > 0) at all times will then automatically enforce fulfillment of all the mandatory behaviors encoded within α ij . We finally note that, as it will be clear in the following, all the individual weights in (2) will be designed as sufficiently smooth functions of the agent and obstacle relative positions. This will ultimately make it possible for any agent to implement a decentralized gradient controller aimed at keeping λ 2 > 0 during motion and, thus, as explained before, at realizing all the desired behaviors and at complying with all the existing constraints. Motivated by these considerations, we then speak about the concept of Generalized Connectivity Maintenance throughout the rest of the paper, to reflect the generalized role played by the value of λ 2 in our context besides representing the sole (and usual) sensing/communication

λ 2 V λ (λ 2 )
Fig. 1: An illustrative shape for V λ (λ2) ≥ 0 with λ min 2 = 0.2 and

λ max 2 = 1. The shape of V λ (λ2) is chosen such that V λ (λ2) → ∞ as λ2 → λ min 2 , V λ (λ2) → 0 (with vanishing slope) as λ2 → λ max 2 , and V λ (λ2) ≡ 0 for λ2 ≥ λ max 2 .
connectivity of the interaction graph G.

C. Generalized Connectivity Potential

In order to devise gradient-like controllers based on λ 2 , we informally introduce the concept of Generalized Connectivity Potential, that is, a scalar function

V λ (λ 2 ) ≥ 0 in the domain (λ min 2 , ∞) such that V λ (λ 2 ) → ∞ as λ 2 → λ min 2 > 0, and V λ (λ 2 ) ≡ 0 if λ 2 ≥ λ max 2 > λ min 2 , with λ max 2 > λ min 2
> 0 representing desired maximum and minimum values for λ 2 . The potential V λ (λ 2 ) is required to be C 1 over its domain, in particular at λ max 2 . Figure 1 shows a possible shape of V λ (λ 2 ).

For the sake of illustration, let again x i ∈ R 3 represent the position of the i-th agent and x = (x T 1 . . . x T N ) T . Assume also that the weights A ij in (2) are designed as sufficiently smooth functions of the agent and obstacle positions, so that λ 2 = λ 2 (x, O) is also sufficiently smooth. From a conceptual point of view, minimization of V λ (λ 2 (x, O)) can then be achieved by letting every agent i implement the gradient controller

F λ i (x, O) = - ∂V λ (λ 2 (x, O)) ∂x i (3)
which will be denoted as the Generalized Connectivity Force. We note that in general F λ i (x, O) would depend on the state of all the agents and obstacle points, thus requiring some form of centralization for its evaluation by means of agent i. However, the next sections will show that our design of F λ i (x, O) actually exhibits a decentralized structure, so that its evaluation by agent i can be performed by only relying on local and 1-hop information. This important feature will then form the basis for a fully decentralized implementation of our approach.

We also note that, while following the gradient force F λ i (x, O), the agents will not be bound to keep a given fixed topology (i.e. a constant edge set E) for the interaction graph G. Creation or deletion of single or multiple links (also concurrently) will be fully permitted as long as the current value of the generalized connectivity does not fall below a minimum threshold, i.e., while ensuring that λ 2 > λ min 2 . The stability issues arising when controlling the agent motion by means of the proposed generalized connectivity force will also be thoroughly analyzed and discussed in the following developments.

III. DESIGN OF THE GROUP BEHAVIOR

After the general overview given in the previous Section, we will now proceed to a more detailed illustration of our approach. Specifically, this Section will focus on the modeling assumptions for the group of agents considered in this work, and on the shaping of the weights in (2). The next Sect. IV will then address the design of the control action F λ i and discuss the stability of the resulting closed-loop system.

A. Agent Model

Consider a group of N agents modeled as floating masses in R 3 and coupled by means of suitable inter-agent forces. Exploiting the port-Hamiltonian modeling formalism, we model each agent i as an element storing kinetic energy

   ṗi = F λ i + F e i -B i M -1 i p i v i = ∂K i ∂p i = M -1 i p i i = 1, . . . , N (4)
where p i ∈ R 3 and M i ∈ R 3×3 are the momentum and positive definite inertia matrix of agent i, respectively,

K i (p i ) = 1 2 p T i M -1
i p i is the kinetic energy stored by the agent during its motion, and B i ∈ R 3×3 is a positive definite matrix representing a velocity damping term (this can be either artificially introduced, or representative of phenomena such as fluid drag or viscous friction). The force input F λ i ∈ R 3 represents the Generalized Connectivity Force, i.e., the interaction of agent i with the other agents and surrounding environment. Force F e i ∈ R 3 , on the other hand, is an additional input that can be exploited for implementing other tasks of interest besides the sole Generalized Connectivity maintenance action2 . Finally, v i ∈ R 3 is the velocity of the agent and x i ∈ R 3 its position, with ẋi = v i . Following the port-Hamiltonian terminology, the pair (v i , F λ i + F e i ) represents the power port by which agent i can exchange energy with other agents and the environment.

We note that the dynamics of ( 4) is purposely kept simple (linear dynamics) for the sake of exposition clarity. In fact, as it will be clear later on, the only fundamental requirement of model ( 4) is its output strict passivity w.r.t. the pair (v i , F λ i +F e i ) with storage function the kinetic energy K i (p i ). This requirement, trivially met by system (4), would nevertheless hold for more complex (also nonlinear) mechanical systems [START_REF] Sabattini | Decentralized connectivity maintenance for networked lagrangian dynamical systems[END_REF], thus allowing a straightforward extension of the proposed analysis to more general cases. Being this true, we believe model (4) represents a sufficient compromise between modeling complexity and representation power.

Remark 1: Another alternative to more complex agent modeling is to make use of suitable low-level motion controllers able to track the Cartesian trajectory generated by (4) with negligible tracking errors. Devising closed-loop controllers for exact tracking of the trajectories generated by ( 4) is always possible for all those systems whose Cartesian position is part of the flat outputs [START_REF] Fliess | Flatness and defect of nonlinear systems: Introductory theory and examples[END_REF], i.e., outputs algebraically defining, with their derivatives, the state and the control inputs of the system. Many mobile robots, including nonholonomic ground robots or quadrotor UAVs, satisfy this property [START_REF] Murray | Differential flatness of mechanical control systems: A catalog of prototype systems[END_REF]; [START_REF] Mistler | Exact linearization and noninteracting control of a 4 rotors helicopter via dynamic feedback[END_REF], and this approach has proven successful in several previous works, see, e.g., [START_REF] Michael | Planning and control of ensembles of robots with non-holonomic constraints[END_REF] for unicycle-like robots and Robuffo [START_REF] Giordano | Experiments of passivity-based bilateral aerial teleoperation of a group of UAVs with decentralized velocity synchronization[END_REF]; Franchi et al. (2012b) for quadrotor UAVs.

B. Inter-Agent Requirements

In view of the next developments, we provide the following two neighboring definitions:

Definition 1 (Sensing-Neighbors): For an agent i, we define

S i = {j| γ ij = 0}
to be the set of sensing-neighbors, i.e., those agents with whom agent i could physically exchange information according to the sensing model γ ij . Definition 2 (Neighbors): For an agent i, we define

N i = {j| A ij = 0}
to be the (usual) set of neighbors, i.e., those agents logically considered as neighbors as per the entries of the adjacency matrix A.

Obviously, N i ⊆ S i but S i ⊂ N i .
The following three requirements specify the properties of the Generalized Connectivity adopted in the rest of the work: R1) two agents are able to communicate and to measure their relative position iff (i) their relative distance is less than D ∈ R + (the communication/sensing range), and (ii) their line-of-sight is not occluded by an obstacle. This requirement defines the sensing model (function γ ij ) of the agents in the group which will be used for building weights (2). This requirement also defines the set S i of sensing-neighbors of agent i (Definition 1); R2) two agents, when able to exchange information (γ ij > 0), should keep a preferred interdistance 0 < d 0 < D in order to obtain an overall cohesive behavior for the group motion. This plays the role of a soft requirement for formation control and its fulfillment will be embedded into the weights β ij in (2); R3) any agent must avoid collisions by keeping the minimum safe distances 0 < d o min < D and 0 < d min < D from surrounding obstacles and agents, respectively. This plays the role of a hard requirement and its fulfillment will be embedded into the weights α ij in (2).

x i x j v i v j obstacle point S ij s ijk d ijk x i,ok x j,ok o k 2 O ij

C. Weight definition

We will now proceed to shape the individual weights (α ij , β ij , γ ij ) encoding the requirements listed in R1-R3. To this end, consider an environment consisting of a set of obstacle points O = {o k ∈ R 3 } with cardinality N obs , and assume that an agent can measure its relative position w.r.t. the surrounding obstacles located within the sensing range D.

Let O i collect all the obstacle points sensed by agent i and define

O ij = O i ∪ O j . Being S ij the segment (line-of-sight)
joining agents i and j, for any o k ∈ O ij we denote with s ijk ∈ R 3 the closest point on S ij to the obstacle point o k , and with d ijk ∈ R the associated point-line distance 3 . We also let d ij = x ix j represent the distance between agents i and j. Figure 2 summarizes the quantities of interest.

1) Requirement R1: we define

γ ij = γ a ij (d ij ) o k ∈Oij γ b ij (d ijk ). (5)
The weight γ a ij (d ij ) takes into account the maximum range constraint and is chosen to stay constant at a maximum value k a γ > 0 for 0 ≤ d ij ≤ d 1 < D and to smoothly vanish (with vanishing derivative) when d ij → D. To this end, we choose the following function

γ a ij (d ij ) =      k a γ 0 ≤ d ij ≤ d 1 k a γ 2 (1 + cos(µ a d ij + ν a )) d 1 < d ij ≤ D 0 d ij > D (
d ijk = (o k -x j ) × (o k -x i ) x j -x i if s ijk
falls within the boundaries of the segment S ij , and as

d ijk = o k -x i if s ijk = x i (resp. x j ). 0 1 2 3 4 5 6 7 0 0.5 1 1.5 d ij γ a ij (d ij ) (a) 0 1 2 3 4 5 6 7 0 0.5 1 1.5 dijk γ b ij (dijk) (b) Fig. 3: The shape of γ a ij (dij) for d1 = 5, D = 6, k a γ = 1 (a) and γ b ij (d ijk ) for d o min = 1, d o max = 3, k b γ = 1 (b). 0 1 2 3 4 5 6 7 8 0 0.5 1 1.5 d ij β ij (d ij )
Fig Similarly to before, we adopted the following function

γ b ij (d ijk ) =        0 d ijk ≤ d o min k b γ 2 (1 -cos(µ b d ijk + ν b )) d o min < d ijk ≤ d o max k b γ d ijk > d o max (7) with µ b = π d o max -d o min and ν b = -µ b d o min . Figure 3b shows the shape of a possible γ b ij (d ijk ).
It is then clear that, owing to these definitions and to the structure in (5), the composite weight γ ij → 0 (and, consequently, the total weight A ij → 0 in (2)) whenever d ij grows too large or d ijk , for any o k ∈ O ij , becomes too small, thus forcing the disconnection of the link among agents i and j as dictated by the adopted sensing model (conditions in R1). We also note that

γ ij = γ ji since d ij = d ji and d ijk = d jik .
2) Requirement R2: in order to cope with R2, we define the weight β ij (d ij ) as a smooth function having a unique maximum at d ij = d 0 and smoothly vanishing as

|d ij -d 0 | → ∞.
To this end, we take

β ij (d ij ) = k β e -(d ij -d 0 ) 2 σ (8)
with k β > 0 and σ > 0, and show in Fig. 4 a representative shape. Analogously to before, it is

β ij = β ji . 0 1 2 3 4 5 6 7 0 0.5 1 1.5 d ij α * ij (d ij )
Fig. 5: The shape of α * ij (dij) for dmin = 0.5, dmax = 4 and kα = 1.

3) Requirement R3: as last case, we consider the collision avoidance requirements of R3. We first deal with the interagent collision avoidance: let 0 ≤ d min < d max ≤ D represent a minimum safe distance and a maximum range of influence among the agents, and consider a weight function α * ij (d ij ) being constant at a maximum value k α > 0 for d ij ≥ d max and smoothly vanishing (with vanishing derivative) when

d ij → d min . For α * ij (d ij )
we take the expression (equivalent to the weights γ b ij in ( 7)):

α * ij (d ij ) =      0 d ij ≤ d min k α 2 (1 -cos(µ α d ij + ν α )) d min < d ij ≤ d max k α d ij > d max (
* ij = α * ji . The weight α * ij (d ij
) is designed to vanish as the agent pair (i, j) gets closer than the safe distance d min . In order to obtain the result discussed in Sect. II-B, i.e., to force disconnection of the graph G as agent i gets too close to any agent, we define the total weight α ij in (2) as

α ij = k∈Si α * ik •   k∈Sj /{i} α * jk   = α i • α j/i . ( 10
)
This choice is motivated as follows: the first product sequence in ( 10)

α i = k∈Si α * ik ( 11
)
makes it possible for α ij → 0 as any of the sensed agents in S i gets closer than d min to agent i. The second product sequence in (10)

α j/i = k∈Sj /{i} α * jk (12)
is introduced to enforce the 'symmetry condition' α ij = α ji : together with the previous β ij = β ji and γ ij = γ ji , this guarantees A ij = A ji (see ( 2)) so that, eventually, the overall adjacency matrix A stays symmetric as required. Finally, we note that, by construction, the very same term α i will be present in all the weights α ij , ∀j ∈ S i . This allows to obtain the desired effect: as any sensed agent in S i gets too close to agent i, the term α i → 0 thus forcing the whole i-th row of matrix A to vanish, leading to a disconnected graph G.

In order to better explain the design philosophy behind the weights α ij , we give an illustrative example. Consider the situation depicted in Fig. 6 with N = 5 agents, and with the links representing the neighboring conditions as per S i . Take agents 2 and 5: from (10) we have ). We can readily verify that α 24 and α 25 share the common factor α 2 = α * 24 α * 25 : thus, as agent 2 gets closer than d min to one of its sensing-neighbors (either agent 4 or 5), the whole second row of matrix A will vanish (α 24 → 0 and α 25 → 0), forcing disconnection of graph G.

α 25 = (α * 24 α * 25 )(α *
As for obstacle avoidance, one could replicate the same machinery developed for the inter-agent collision avoidance by defining an additional set of suitable weights leading to a disconnected graph as any agent gets too close to an obstacle point (and this could be further extended for including any additional hard requirement besides the agent/obstacle collision avoidance considered here). In our specific case, however, this step is not necessary thanks to the previously introduced weights γ b ij (d ijk ) in (5). In fact, with reference to Fig. 2, as an agent i approaches an obstacle o k , the agent position x i will eventually become the closest point to o k for all the inter-agent segments S ij (i.e., links) departing from x i . Thus, all the product sequences o k ∈Oij γ b ij (d ijk ) in (5), ∀j ∈ S i , will contain an individual term γ b ij (d ijk ) → 0 and, again, the whole i-th row of matrix A will be forced to vanish, leading to a disconnected graph G.

Remark 2: We note that the possibility of exploiting the already existing weights γ b ij of the adopted sensing model for embedding the hard requirement of obstacle avoidance is only a (very convenient) specificity of the case under consideration.

In general, each hard requirement to be executed by the group requires the design of an associated function with properties analogous to the aforementioned weights α ij (i.e., forcing disconnection of the graph G when the requirement is not sufficiently satisfied). We conclude by noting the following properties of weights A ij which will be exploited in the next developments. Using the previous definitions of α ij , β ij , γ ij , and noting that

d ij = d ji , it is A ij = A ij ({d ijk |o k ∈ O ij }, {d ik |k ∈ S i }, {d jk |k ∈ S j }) implying that ∂A ij ∂d ik ≡ 0, ∀k / ∈ S i , ∂A ij ∂d jk ≡ 0, ∀k / ∈ S j . ( 13
)
Furthermore, it is easy to show that, for a generic relative distance

d ij , if j / ∈ S i ∂A hk ∂d ij ≡ 0 ∀(h, k) ∈ E * , (14) while, if j ∈ S i ∂A hk ∂d ij ≡ 0, ∀h = i, k = j, (15)
and

∂A ik ∂d ij ≡ 0, ∀k / ∈ S i , ∂A jk ∂d ij ≡ 0, ∀k / ∈ S j . ( 16
)
These latter conditions can be slightly simplified by replacing the sensing-neighbors S i with the (logical) neighbors N i , yielding

∂A ik ∂d ij ≡ 0, ∀k / ∈ N i , ∂A jk ∂d ij ≡ 0, ∀k / ∈ N j . (17)
In fact, if k ∈ S i but k / ∈ N i , then not only A ik = 0 but also ∂A ik /∂d ij = 0 thanks to the design of weights (α ik , β ik , γ ik ) composing A ik (vanishing weights with vanishing slope).

For the reader's convenience, we finally report in Fig. 7 a graphical representation (3D surface and planar contour plot) of the total weight A ij = α ij β ij γ ij as a function of the two variables d ij and d ijk , i.e., assuming presence of only two agents i and j and of a single obstacle point o k .

IV. CONTROL OF THE GROUP BEHAVIOR

In this Section we address the design of the Generalized Connectivity Force F λ i based on the previous definition of the weights in (2) and discuss its decentralized structure. Subsequently, the passivity properties of the closed-loop system obtained when controlling the motion of agents (4) by means of F λ i are also thoroughly analyzed.

A. Inter-Agent Interconnection

With reference to Fig. 2, let x ij = x ix j ∈ R 3 represent the relative position of agent i w.r.t. agent j. Replicating the lexicographical ordering used for set E * in (1), we collect all the possible |E * | relative positions into the cumulative vector

x R = (x T 12 . . . x T 1N x T 23 . . . x T 2N . . . x T N -1N ) T ∈ R 3N (N -1) 2 .
We also let x i,o k = x io k ∈ R 3 be the relative position of the i-th agent w.r.t. the k-th obstacle point, and

x i,o = (x T i,o1 . . . x T i,o N obs ) T ∈ R 3N obs
be a vector collecting all the relative positions between the i-th agent and the N obs obstacles. Finally, vector

x O = (x T 1,o . . . x T N,o ) T ∈ R 3N
N obs collects all the x i,o for all the N robots.

In port-Hamiltonian terms, the Generalized Connectivity Potential V λ (λ 2 ) can be thought as a 'nonlinear elastic potential' whose internal energy grows unbounded as the graph approaches disconnection (see Fig. 1). Note that, due to the definition of the individual weights (α ij , β ij , γ ij ) given in the previous Section, the elements A ij of the adjacency matrix, and, as a consequence, λ 2 and V λ (λ 2 ) as well, become sufficiently smooth functions of the agent and obstacle relative positions (x R , x O ). As explained in Sect. II-C, the Generalized Connectivity Force (anti-gradient of V λ ) is then

F λ i = - ∂V λ (λ 2 (x R , x O )) ∂x i . ( 18
)
This formal expression of F λ i can be given the following structure: being ∂x ij /∂x i = I 3 and ∂x i,oj /∂x i = I 3 , and applying the chain rule, expression (18) can be expanded as

F λ i = - N j=1, j =i ∂V λ ∂x ij - N obs j=1 ∂V λ ∂x i,oj . (19)
Furthermore, using the results reported in [START_REF] Yang | Decentralized estimation and control of graph connectivity for mobile sensor networks[END_REF], the terms in the two summations can be further expanded as

∂V λ ∂x ij = ∂V λ ∂λ 2 ∂λ 2 ∂x ij = ∂V λ ∂λ 2 (h, k)∈E ∂A hk ∂x ij (ν 2 h -ν 2 k ) 2 , ( 20
)
and

∂V λ ∂x i,oj = ∂V λ ∂λ 2 ∂λ 2 ∂x i,oj = ∂V λ ∂λ 2 (h, k)∈E ∂A hk ∂x i,oj (ν 2 h -ν 2 k ) 2 ,
(21) with ν 2 h being the h-th component of the normalized connectivity eigenvector ν 2 . Being d ij = x ij , we can plug property ( 14) in ( 20) to conclude that ∂V λ /∂x ij = 0 if j / ∈ S i . Therefore, expression ( 19) can be simplified into

F λ i = - j∈Si ∂V λ ∂x ij - N obs j=1 ∂V λ ∂x i,oj . ( 22
)
Remark 3: We note that, formally, F λ i in ( 22) depends on all the N obs obstacles present in the scene -an unrealistic assumption in most practical situations. However, as it will be clear in the following developments, only the sensed obstacle points (i.e., only those within the range D) actually contribute to the evaluation of F λ i . With this understanding, we nevertheless keep the expression (22) for the sake of generality.

Exploiting the structure of ( 22), and defining p

= (p T 1 . . . p T N ) T ∈ R 3N , B = diag(B i ) ∈ R 3N ×3N , and F e = (F eT 1 . . . F eT N ) T ∈ R 3N
, and by noting that ẋij = v iv j and (assuming static obstacles) ẋi,o k = v i , we can finally model the interconnection of the N agents (4) with the Generalized Connectivity Force F λ as the mechanical system in port-Hamiltonian form:

         ṗ ẋR ẋO   =     0 E -I -E T 0 0 I T 0 0   -   B 0 0 0 0 0 0 0 0     ∇H + GF e v = G T ∇H . (23) Here, H(p, x R , x O ) = N i=1 K i (p i ) + V λ (x R , x O ) ≥ 0 (24)
represents the total energy of the system (Hamiltonian) and

∇H = ∂ T H ∂p ∂ T H ∂x R ∂ T H ∂x O T .
Moreover,

I = I N ⊗ 1 T N obs ⊗ I 3 , G = I N ⊗ I 3 0 0 T ,
and E = E ⊗ I 3 , with E being the incidence matrix of the graph G encoding the neighboring condition of Definition 1 (see Sects. II-A and II-B). Finally, v ∈ R 3N is the conjugate power variable associated to F e : the port (F e , v) allows the system to exchange energy with the external world. We refer again the reader to [START_REF] Franchi | A passivity-based decentralized approach for the bilateral teleoperation of a group of UAVs with switching topology[END_REF]; Robuffo Giordano et al. (2011b,a); Franchi et al. (2012b); [START_REF] Secchi | Bilateral teleoperation of a group of UAVs with communication delays and switching topology[END_REF] for more detailed illustrations on similar derivations.

B. Decentralized Implementation of F λ i

In order to study the decentralized structure of F λ i , we analyze separately the two summations in its expression (22). We preliminarily assume availability to each agent k of the current value of λ 2 and of the k-th component ν 2 k of the connectivity eigenvector ν 2 . These assumptions will be later removed.

We start considering the first summation j∈Si ∂V λ ∂xij in ( 22) with the goal of showing that each individual term ∂V λ /∂x ij , j ∈ S i , can be computed in a decentralized way by agent i. By using properties ( 15)-( 17), we can expand (20) as

∂V λ ∂x ij = ∂V λ ∂λ 2 k∈Ni ∂A ik ∂x ij (ν 2i -ν 2 k ) 2 + + k∈Nj ∂A jk ∂x ij (ν 2j -ν 2 k ) 2 - ∂A ij ∂x ij (ν 2i -ν 2j ) 2   , (25)
where the last term is meant to account for weight A ij only once in the two previous summations. Let us define the vector quantity

η ij = k∈Ni ∂A ik ∂x ij (ν 2i -ν 2 k ) 2 ∈ R 3 (26)
and thus rewrite (25) as

∂V λ ∂x ij = ∂V λ ∂λ 2 η ij -η ji - ∂A ij ∂x ij (ν 2i -ν 2j ) 2 . ( 27
)
Proposition 1: Vector ∂V λ ∂x ij in ( 27) can be evaluated by agent i, ∀j ∈ S i , in a decentralized way by only resorting to local and 1-hop information from neighboring agents.

Proof: We first note that, under the stated assumptions, the quantity ∂V λ /∂λ 2 can be directly computed by agent i from the current value of λ 2 . We then proceed showing how vector η ij , whose expression is given in (26), can be evaluated in a decentralized way by agent i by resorting to only local and 1-hop information.

To this end, we recall that ν 2i is assumed locally available, and the components ν 2 k , k ∈ N i , can be communicated as single scalar quantities from neighboring agents k to agent i. Consider now the weights A ik = α ik β ik γ ik with k ∈ N i in (26): as for the term

γ ik = γ ik (d ik , d ikh | o h ∈O ik ), evaluation of the quantities d ik and d ikh , ∀o h ∈ O ik , requires knowledge of x i -x k , x i -o h and x k -o h , ∀o h ∈ O ik , i.e.
, of relative positions w.r.t. neighboring agents and sensed obstacles. Furthermore, ∂γ ik /∂x ij ≡ 0, ∀k = j, while evaluation of ∂γ ij /∂x ij requires again knowledge of the relative position x ix j . Similar considerations hold for the terms β ik (d ik ): evaluation of β ik (d ik ) requires knowledge of x ix k , while ∂β ik /∂x ij = 0, ∀k = j, and ∂β ij /∂x ij can be evaluated from the relative position x ix j .

Coming to weights α ik , recalling their definition in (10) it is α ik = α i α k/i . Here, we note that α i = α i (d ih | h∈Si ), so that evaluation of α i and of its gradient w.r.t. x ij requires knowledge of x ix h , ∀h ∈ S i (again, relative positions w.r.t. neighbors). From (12), the term α k/i can be locally computed by agent k and communicated to agent i as a single scalar quantity regardless of the cardinality of S k . Moreover, since α k/i does not depend on x ij , it is obviously ∂α k/i /∂x ij ≡ 0.

These considerations allow then to conclude that evaluation of η ij can be performed in a decentralized way by agent i as it requires, in addition to the sole relative positions w.r.t. neighboring agents and sensed obstacles, the communication of the scalar quantities α k/i and of the (scalar) components ν 2 k , ∀k ∈ N i .

Following the same arguments, agent j is symmetrically able to compute, in a decentralized way, the second vector quantity η ji present in ( 27). This can then be communicated by agent j to agent i as a single vector quantity regardless of the cardinality of N j . Finally, the last quantity 27) is also available to agent i as it is just one of the |N i | terms needed for evaluating η ij , see ( 26). This then concludes the proof: agent i is able to evaluate all the terms in the first summation j∈Si ∂V λ ∂xij in ( 22) by resorting to only local and 1-hop information.

∂A ij /∂x ij (ν 2i - ν 2j ) 2 in (
Consider now the second summation N obs j=1 ∂V λ /∂x i,oj in ( 22), with the individual terms ∂V λ /∂x i,oj having the expression (21). Exploiting the structure of weights A ij , in particular of functions γ b ij (d ijk ) in ( 5), the following simple properties hold

∂A hl /∂x i,oj ≡ 0, ∀o j , ∀h = i, l = i,

and

∂A ih /∂x i,oj ≡ 0, ∀o j , ∀h / ∈ N i .

Therefore, the expression ( 21) can be simplified into

∂V λ ∂x i,oj = ∂V λ ∂λ 2 k∈Ni ∂A ik ∂x i,oj (ν 2i -ν 2 k ) 2 . ( 28
)
Proposition 2: Vector ∂V λ ∂x i,oj in (28) can be evaluated by agent i, ∀o j , in a decentralized way by only resorting to local and 1-hop information from neighboring agents. Proof: As before, ∂V λ /∂λ 2 , ν 2i and ν 2 k , ∀k ∈ N i , are locally available to agent i. If o j is a sensed obstacle point, i.e., there exists at least one agent k ∈ S i such that o j ∈ O ik , then evaluation of ∂A ik /∂x i,oj can be locally performed by agent i with knowledge of the relative positions x io j and x k -o j . If, on the other hand, o j is not a sensed obstacle point, then ∂A ih /∂x i,oj ≡ 0, ∀h. This then concludes the proof: agent i can evaluate all the terms in the second summation N obs j=1 ∂V λ /∂x i,oj in ( 22) by resorting to only local and 1hop information.

To summarize, the computation of the Generalized Connectivity Force F λ i (22) by agent i requires availability of the following quantities: (i) the relative positions x ix j , ∀j ∈ S i , (ii) x io k and x jo k , ∀j ∈ S i , and for all the sensed obstacle points o k ∈ O ij , (iii) the scalar quantity α j/i , ∀j ∈ S i , (iv) the vector quantity η ji , ∀j ∈ S i , (v) the i-th and j-th components of ν 2 , ∀j ∈ N i , and (vi) the current value of λ 2 . The complexity per neighbor is then O(1), i.e., constant w.r.t. the total number of agents N .

While, as discussed, most of this information is locally or 1-hop available through direct sensing or communication, this is not usually the case for λ 2 and ν 2i , ν 2j , j ∈ N i . Knowledge of these quantities could be obtained by a global observation of the group in order to recover the full Laplacian L so as to compute their values with a centralized procedure. However, in our case, for the sake of decentralization we chose to rely on the decentralized estimation strategy proposed by [START_REF] Yang | Decentralized estimation and control of graph connectivity for mobile sensor networks[END_REF] and then refined by [START_REF] Sabattini | On decentralized connectivity maintenance for mobile robotic systems[END_REF], 2012). Therein, the authors show how each agent i can incrementally build its own local estimation of λ 2 , i.e., λ2 , and of the i-th component of ν 2 , i.e., ν2i , by again exploiting only local and 1-hop information. We refer the reader to these works for all the details. Therefore, by exploiting these results, we conclude that an estimation F λ i of the true F λ i can be implemented by every agent in a fully decentralized way.

Remark 4: It is worth mentioning that the estimation schemes developed in [START_REF] Yang | Decentralized estimation and control of graph connectivity for mobile sensor networks[END_REF]; [START_REF] Sabattini | On decentralized connectivity maintenance for mobile robotic systems[END_REF][START_REF] Sabattini | Decentralized connectivity maintenance for networked lagrangian dynamical systems[END_REF] will not return, in general, a normalized eigenvector ν 2 (needed to evaluate (20)), but a (non-null) scalar multiple ̺ν 2 for some ̺ = 0 depending on the chosen gains and on the number N of robots in the group. This discrepancy, however, does not constitute an issue since evaluation of (20) on a multiple ̺ν 2 of ν 2 will just result in a scaled version of the Connectivity Force ̺ 2 F λ i , ∀i. It is then always possible to re-define the Connectivity Potential V λ so as to embed the effect of any 'scaling factor' ̺ 2 introduced by the estimation scheme.

Before addressing the stability issues of the closed-loop system (23), we summarize the main features of the Generalized Connectivity Potential V λ and of F λ i introduced so far: 1) although V λ is a global potential, reflecting global properties (connectivity) of the group, F λ i (an estimation of its gradient w.r.t. the i-th agent position) can be computed in a fully decentralized way. The only discrepancies among the true F λ i and F λ i are due to the use of the estimates λ2 , ν2i and ν2 k , k ∈ N i , in place of their real values, otherwise F λ i is evaluated upon actual information; 2) V λ will grow unbounded as λ 2 → λ min 2 > 0, thus enforcing Generalized Connectivity of the group. Note that, during the motion, the agents are fully allowed to break or create links (also concurrently) as long as λ 2 > λ min 2 . Furthermore, the group motion will become completely unconstrained whenever λ 2 ≥ λ max 2 , since, in this case, the Generalized Connectivity Force will vanish as the potential V λ becomes flat. These features provide large amounts of flexibility to the group topology and geometry, as the agent motion is not forced to maintain a particular (given) graph topology, but is instead allowed to execute additional tasks in parallel to the Connectivity Maintenance action.

3) because of the various shapes chosen for the weights α ij , β ij and γ ij , minimization of V λ will also enforce all the inter-agent requirements listed in R1-R3. Specifically, inter-agent and obstacle collisions will be prevented, and any interacting pair (i, j) will try to keep a preferred inter-distance d 0 , thus ensuring an overall cohesive behavior for the group motion.

C. Closed-loop Stability

We now analyze the stability properties of system ( 23) by extensive use of passivity arguments4 . First of all, thanks to the port-Hamiltonian structure of ( 23), and owing to the lowerboundedness of the total energy H in (24) and to the positive semi-definiteness of matrix B, we obtain

Ḣ = ∇ T H   ṗ ẋR ẋO   = - ∂ T H ∂p B ∂H ∂p + ∇ T HGF e ≤ v T F e .
(29) This would be in general sufficient to conclude passivity of (23) w.r.t. the pair (F e , v) with storage function H. However, in our case, two additional issues must be taken into account. First of all, the agents are not implementing F λ i , the actual gradient of V λ , but an estimation F λ i of its real value. Second, having allowed for a time-varying graph topology G(t) = (V, E(t)) results in a switching incidence matrix E(t) and, as a consequence, in an overall switching dynamics for the closed-loop system (23).

While, as well-known, passivity (and stability) of a system can be threaten by presence of positive jumps in the employed energy function, for the case under consideration the switching nature of E(t) cannot cause discontinuities in V λ (t) by construction because of the way the weights A ij are designed. This can be easily shown as follows: the weights A ij (x R (t), x O (t)) are smooth functions of the agent/obstacle relative positions, so that one can never face the situation of a discontinuity in the value of A ij (assuming the state is evolving in a continuous way). This, in turn, ensures continuity of λ 2 (t) and, consequently, of V λ (λ 2 (t)) as well despite possible creation/deletion of edges in the graph G(t).

Remark 5: For completeness, we also refer the interested reader to [START_REF] Franchi | A passivity-based decentralized approach for the bilateral teleoperation of a group of UAVs with switching topology[END_REF]; Robuffo [START_REF] Giordano | Experiments of passivity-based bilateral aerial teleoperation of a group of UAVs with decentralized velocity synchronization[END_REF]; Franchi et al. (2012b); [START_REF] Secchi | Bilateral teleoperation of a group of UAVs with communication delays and switching topology[END_REF]: in the context of formation control with time-varying topology, these works share a similar theoretical background with the present one (borrowing tools from port-Hamiltonian modeling and passivity theory) but allow for a more general situation in which discontinuous changes in the arguments of the employed potential function are allowed at the switching times. In these cases, proper passifying actions must indeed be adopted in order to guarantee stability of the resulting closed-loop dynamics.

The rest of the Section is then devoted to deal with the possible non-passive effects arising from the implementation of the estimated F λ i in place of the real F λ i . It is in fact clear that if F λ i represents a too poor estimation of F λ i (the actual gradient of V λ ), the passivity condition (29) will not in general hold and passivity of the closed-loop dynamics (23) could be lost. In order to cope with this issue, we will resort to a flexible passifying strategy for safely implementing F λ i and ensuring passivity of the closed-loop system. To this end, we first introduce the fundamental concept of Energy Tanks: the Energy Tanks are artificial energy storing elements that keep track of the energy naturally dissipated by the agents because of, e.g., their damping factors B i (see ( 4)). The energy stored in these reservoirs can be re-used to accomplish different goals without violating the passivity of the system. A first example of using such a technique (a controlled energy transfer) can be found in [START_REF] Duindam | Port-based asymptotic curve tracking for mechanical systems[END_REF], while extensions are proposed in, e.g., [START_REF] Secchi | Position drift compensation in port-hamiltonian based telemanipulation[END_REF]; [START_REF] Franchi | A passivity-based decentralized approach for the bilateral teleoperation of a group of UAVs with switching topology[END_REF][START_REF] Franken | Bilateral telemanipulation with time delays: A two-layer approach combining passivity and transparency[END_REF]Franchi et al. (2012b).

Consider a tank with state x ti ∈ R and associated energy function T i = 1 2 x 2 ti ≥ 0. From Eq. ( 4), it follows that the power dissipated by agent i because of the damping action is given by

D i = p T i M -T i B i M -1 i p i . (30)
We then propose to adopt the following augmented dynamics for the agents in place of (4):

     ṗi = F e i -w i x ti -B i M -1 i p i ẋti = s i 1 xt i D i + w T i v i y i = v T i x ti T . ( 31
)
This is motivated as follows: the parameter s i ∈ {0, 1} is exploited to enable/disable the storing of the dissipated power D i (30). If s i = 1, all the energy dissipated because of the damping B i is stored back into the tank, and if s i = 0 no dissipated energy is stored back. Storage of the dissipated power D i is disabled when T i ≥ T max , i.e., by choosing

s i = 0, if T i ≥ T max 1, if T i < T max , (32)
with T max > 0 representing a suitable (and applicationdependent) upper limit for the tank energy5 . The input w i ∈ R 3 is meant to implement, by exploiting the tank energy, a desired force on agent i. In fact, note the absence of F λ i in the first row of (31) compared to (4): the idea is to replace the (unknown) F λ i with a passive implementation of its estimation F λ i by means of the new input w i . Use of this input allows for a power-preserving energy transfer between the tank energy T i and the kinetic energy K i of agent i, as can be seen from the following power budget

Ṫi = α i D i + x ti w T i v i Ki = v T i F e i -D i -v T i w i x ti . ( 33
)
Thus, any action implemented through w i will be intrinsically passivity-preserving.

To obtain the sought result, we then set

w i = -ς i F λ i x ti , ς i ∈ {0, 1}, (34)
where ς i is a second design parameter that enables/disables the implementation of F λ i . Let 0 < T min < T max represent a minimum energy level for the tank T i . Similarly to before, we choose

ς i = 0, if T i < T min 1, if T i ≥ T min . ( 35
)
Thus, when ς i = 1, input w i will implement the desired force F λ i in ( 31) and, at the same time, extract/inject the appropriate amount of energy from/to the tank reservoir T i as per (33). When ς i = 0, no force is implemented and no energy is extracted/injected into the tank. The use of this parameter ς i is meant to avoid complete depletion of the tank reservoir T i , an event that would render (34) singular being, in this case, x ti = 0.

Let H be the new total energy (Hamiltonian) of the agent group, also accounting for the new tank energies

T i H(p, x R , x O , x t ) = N i=1 (K i (p i ) + T i (x ti )) + V λ (x R , x O ). (36) Let also Υ = diag(-w i ) ∈ R 3N ×N , P = diag( 1 xt i p T i M -T i ) ∈ R N ×3N , S = diag(s i ) ∈ R N ×N
, and

∇H = ∂ T H ∂p ∂ T H ∂x R ∂ T H ∂x O ∂ T H ∂x t T .
The augmented closed-loop system (still in port-Hamiltonian form) becomes 37) is passive w.r.t. the storage function H in (36).

            ṗ ẋR ẋO ẋt    =         0 E -I Υ -E T 0 0 0 I T 0 0 0 -Υ T 0 0 0     -    B 0 0 0 0 0 0 0 0 0 0 0 -SP B 0 0 0        ∇H+ +GF e v = G T ∇H . (37) Proposition 3: System (
Proof: Using (36), the following energy balance easily follows:

Ḣ = - ∂ T H ∂p B ∂H ∂p + ∂ T H ∂x t SP B ∂H ∂p + v T F e . ( 38
)
Exploiting the definitions of S and P , we have

∂ T H ∂x t SP B ∂H ∂p = ∂ T H ∂x t P (S⊗I 3 )B ∂H ∂p = ∂ T H ∂p (S⊗I 3 )B ∂H ∂p ,
since S is a diagonal matrix made of {0, 1}. Therefore,

Ḣ = - ∂ T H ∂p B ∂H ∂p + ∂ T H ∂p (S ⊗ I 3 )B ∂H ∂p + v T F e ≤ (39) ≤ ∂ T H ∂p ((S ⊗ I 3 ) -I 3N )B ∂H ∂p + v T F e ≤ v T F e .
This result can also be interpreted as follows: the energy stored in the tanks (second term in ( 39)) is at most equal (with opposite sign) to the energy dissipated by the agents (first term in ( 39)), so that passivity is preserved.

D. Concluding Remarks

As a conclusion of this discussion on the closed-loop passivity of the system, we wish to summarize the results and draw a couple of remarks. We note that the proposed passifying strategy, based on the tank machinery, is very powerful and elegant in the sense that it allows complete freedom on the force to be implemented (i.e., F λ i through (34) in our case), as long as the passivity of the system is not compromised in an integral sense. This is, we believe, a crucial point to be highlighted, a point pertaining to all the approaches based on the exploitation of energy tanks for preserving passivity (see, e.g., the 'two-layer approach' discussed in detail in [START_REF] Franken | Bilateral telemanipulation with time delays: A two-layer approach combining passivity and transparency[END_REF]): the augmentation of the system dynamics with the tank state x ti makes it possible to exploit to the full extent any passivity margin already present in the system by taking into account the complete past evolution and not only a point-wise (at the current time) condition6 . In this sense, the tank machinery provides a flexible and integral passivity preserving mechanism. One can argue that, if an action cannot be passively implemented by exploiting the tank reservoirs, then no other mechanism can guarantee passivity of the system by implementing the very same action (and, thus, the action should not be implemented in its form, but should be at least suitably 'modulated' to cope with the passivity constraint).

Coming to our specific case, as thoroughly discussed, the only source of non-passivity lies in the (possibly poor) estimation of λ 2 and ν 2 leading to a (possibly poor) estimation F λ i of the gradient of the elastic potential V λ . As such, the proposed tank passifying strategy will guarantee passivity (and thus stability) of the system but at the possible expense of graph connectivity maintenance: if the estimated F λ i becomes so poor that passivity is violated (in the sense explained above, i.e., leading to depletion of the tanks), the switching mechanism in (35) will always trade stability for implementation of

F λ i .
Although conceptually possible, this situation is very unlikely to occur in our setting. In fact, the improved decentralized estimation proposed in [START_REF] Sabattini | On decentralized connectivity maintenance for mobile robotic systems[END_REF][START_REF] Sabattini | Decentralized connectivity maintenance for networked lagrangian dynamical systems[END_REF], and employed in this work, guarantees boundedness of the estimation errors of λ2 and ν2 with a predefined accuracy. Therefore, F λ i will never diverge too much over time from the real F λ i . Furthermore, it is easy to prove (see Appendix B) that a tank reservoir can be set up so as to never deplete when its energy is exploited to implement the port behavior of a passive element, as it is (F λ i , v i ) with V λ as storage function in our case. Then, assuming small estimation errors ( F λ i ≃ F λ i ), it follows that the tank energy T i will not approach the safety value T min and, consequently, F λ i will be implemented. Indeed, (i) F λ i will be almost representing the actual port behavior of (F λ i , v i ), thus that of a passive system, and (ii) any remaining non-passive effects due to small estimation errors can be dominated by the passivity margin of the agent dissipation. In other words, in the tank dynamics ẋti in (31), the (positive) term s i D i /x ti will typically dominate the (possibly negative) term w T i v i and keep the tank replenished. As an additional proof, the simulation and experimental results reported in the next Sect. VI will extensively confirm the validity of these considerations.

V. APPLICATION TO BILATERAL SHARED CONTROL

In this Section we will present an application of the theoretical framework introduced so far for Generalized Connectivity Maintenance. We note that, apart from maintaining connectivity, the closed-loop group dynamics (37) is purposely designed in order to possess the following features: it behaves, from an external point of view, as a passive system, and has a power port (F e , v) left free to be exploited in order to implement any additional task. If this port is left open, the agent group will evolve in 'free-evolution' and only keep the Generalized Connectivity λ 2 away from λ min 2 without pursuing additional goals (besides those encoded in λ 2 ). This behavior can be easily complemented by making use of the port (F e , v): the input F e can be exploited to let the agents accomplishing additional tasks of interest while still ensuring Generalized Connectivity maintenance during motion. As a typical example, consider all those tasks involving navigation or exploration activities. The input F e can represent the action of a navigation/exploration controller meant to steer the agent motion according to an internal policy decoupled from the requirements embedded in λ 2 . The agents will implement the controller input F e as long as λ 2 ≥ λ max 2 , and will start 'resisting' to its actions as λ 2 → λ min 2 , since the internal connectivity maintenance force F λ will always be dominant w.r.t. any bounded external force F e .

Following these considerations, we then propose the task of Bilateral Shared Control of the agent group as a suitable case study for illustrating with a concrete example the features of our approach. The goal is to implement a bilateral interaction between a human operator and the group of robots in order to (i) let the human operator provide high-level motion commands to be locally executed by the group with their autonomy, and (ii) let the group inform the human operator on how well her/his commands are being executed, for instance because additional local constraints are conflicting with the operator's commands.

Adopting the design philosophy of Robuffo Giordano et al. (2011b,a); Franchi et al. (2012b, Elect. Pub. Ahead, 2012a), we base our application on a force-feedback bilateral teleoperation architecture and, thus, exploit force cues as a source of 'execution feedback' for the human operator. Specifically, we consider M human operators (M ≤ N ) acting on M distinct force-feedback devices (the Master Side), and sending M independent velocity reference commands to M agents in the group, denoted hereafter as leaders. The leaders will track the velocity commands by means of their inputs F e i . At the same time, the whole group (the Slave Side), while navigating in a cluttered environment, will be minimizing V λ (λ 2 ), i.e., it will cope with all the requirements R1-R3 listed in Sect. III-B. Therefore, sensing/communication connectivity will be preserved (R1), obstacle and inter-agent collisions will be avoided (R3), and the whole group will collectively follow the motion of the leaders thanks to the formation control behavior embedded in R2. The force cues displayed to the human operators will be proportional to the mismatches between their commanded velocities and the corresponding actual (executed) ones of the leaders: typically, the agents will 'lag behind' the humans' commands whenever execution of these commands will conflict with the Generalized Connectivity maintenance.

In the next Sections, we then briefly illustrate the key components of the proposed bilateral teleoperation system, and provide, in Sect. VI, simulation and experimental results obtained on a group of quadrotor UAVs and UGVs.

A. The Master Side

As master devices, we consider M generic 3-dof mechanical systems modeled by the following Euler-Lagrange equations:

M i (x Mi )ẍ Mi + C i (x Mi , ẋMi ) ẋMi + D i ẋMi = τ i + f i , (40)
with i = 1 . . . M , and x Mi ∈ R 3 being the configuration vector, M i (x Mi ) ∈ R 3×3 the positive definite inertia matrix, C i (x Mi , ẋMi ) ẋMi ∈ R 3 accounting for Coriolis and centrifugal effects, and D i ∈ R 3×3 being a positive semi-definite damping term. The pair (τ i , f i ) ∈ R 3 × R 3 represents the control and human forces acting on the devices, respectively. We also assume, as usually done, that gravity effects are compensated by a local controller. The subscript i in (40) associates each master device with the i-th leader in the group.

A system described by ( 40) is passive w.r.t. the forcevelocity pair (τ i + f i , ẋMi ) [START_REF] Secchi | Control of Interactive Robotic Interfaces: a port-Hamiltonian Approach[END_REF]. This kind of passivity is well suited in standard passivity-based bilateral teleoperation, where the velocity of the master and the velocity of the slave need to be synchronized. However, in our setting, in order to consider the difference between the (bounded) workspace of the master and that (unbounded) of the robots at the slave side, it is necessary to synchronize the position of the master with the velocity of the leaders. As illustrated in [START_REF] Franchi | A passivity-based decentralized approach for the bilateral teleoperation of a group of UAVs with switching topology[END_REF]; Robuffo Giordano et al. (2011b,a); Franchi et al. (2012b), this can be achieved by rendering the master passive w.r.t. the pair (τ i + f i , r i ) where

r i = ρ ẋMi + Kx Mi , ρ > 0, K > 0.
Indeed, by adjusting the parameters ρ and K, one can make negligible the contribution related to ẋMi (small ρ), and choose a desired proportional gain K for the master position x Mi , so as to obtain r i ≃ Kx Mi .

B. Master-Slave Interconnection

Exploiting the results developed so far, the M masters (40) and the whole slave side (37) are proven to be passive systems: the former w.r.t. the pairs (τ i + f i , r i ), i = 1 . . . M , and the latter w.r.t. the pair (F e , v). Thus, by designing a proper passive interconnection between the local and the remote systems, we can obtain an overall passive bilateral teleoperation system characterized by a stable behavior in case of interaction with passive environments. In order to obtain the sought result, we then couple each master with its own associated leader by means of the following interconnection:

F e i = b(r i -v i ) τ i = -b(r i -v i ) . (41)
This is equivalent to joining the masters and the leaders using a damper which generates a force proportional to the difference of the two velocity-like variables of the masters and leaders. Since r i is "almost" the master position, we have that the force fed back to the masters and the control action sent to the leaders correspond the desired ones. The overall teleoperation system consists of a passive master side, a passive interconnection (the damping action (41)), and a passive slave side, and is therefore a passive system as well as desired. An explicit proof of this fact, omitted here, can be found in Franchi et al. (2012b) 7 . We conclude by noting that having formally proven passivity of the agent group dynamics (37) (the slave side) presents several advantages: one the one hand, it provides strong and robust stability properties of the group dynamics per se (e.g., w.r.t. internal parameter variations and/or interactions with unknown but passive environments). On the other hand, as shown above, it also allows for an 'easy' coupling with any (passive) external system such as a (passive) master side. We believe this flexibility constitutes a relevant feature of our approach that goes beyond the restricted scope of the application presented in this work as a mere case study. 7 Although not explicitly considered here, it is also possible to extend the tank-based approach in order to cope with presence of delays, both among the agents in the group, and in the master-slave communication channel. We refer the reader to [START_REF] Secchi | Bilateral teleoperation of a group of UAVs with communication delays and switching topology[END_REF] for all the details.

VI. SIMULATION AND EXPERIMENTAL RESULTS

In this Section we report the results of human/hardware-inthe-loop (HHL) simulations and experiments aimed at illustrating and validating the theoretical framework introduced so far. For both simulations and experiments, we considered the case of M = 2 master devices on which 2 human operators were steering the group motion. Furthermore, in order to show the generality of our method, we considered in simulation a heterogeneous group of robots made of 5 quadrotor UAVs and 3 differentially-driven ground robots (UGVs), for a total of N = 8 robots in the group. In fact, as explained in Sect. III-A, the proposed machinery can be applied to any passive mechanical system such as flying or ground robots. The experiments, on the other hand, were conducted with a group of 4 quadrotor UAVs. Figure 8 gives an overview of our simulative and experimental testbed, including the two forcefeedback devices composing the master side.

Full details of this setup can be found in Franchi et al. (2012b,a). For the reader's convenience, we summarize here the main features: the master side consists of two forcefeedback devices, the Omega.3 and Omega.68 (Figs. 8(a)-(c)), controlled via USB by a C++ program running on a dedicated GNU-Linux machine at 2.5 KHz. By using the standard APIs from the manufacturer, it is possible to impose a 3-dimensional Cartesian force to the end-effectors of each device and to automatically compensate for gravity terms. We note that the Omega.6 device features a total of 6 DOFs: 3 for translation and 3 for rotation. However, since only the 3 translational ones are actuated, we neglected presence of the 3 rotational DOFs and treated the Omega.6 as a pure translational device.

The simulations are run in a custom-made environment based on the Ogre3D engine for 3D rendering and computational geometry, and the PhysX libraries for simulating the physical behavior of the mobile robots and their interaction with the environment9 (see Figs. 8(d-f)). The update rate of the internal engine is set to 60 Hz. As for the experiments, we used 4 quadrotor UAVs from MikroKopter GmbH10 . These are standard quadrotor platforms equipped with an onboard ATmega microcontroller, an integrated IMU, and an additional Qseven single-board GNU-Linux machine running a C++ program implementing all the higher-level logic and able to communicate over a local WiFi network. Position and orientation of the quadrotors were retrieved from an external visual tracking system (VICON11 ) running at 120 Hz, and all the communication was implemented with the UDP protocol.

Finally, we also encourage the reader to watch the videoclips attached to the paper (Multimedia Extensions 1-2) and also available at http://youtu.be/swfJcS7fJ84 and http://youtu.be/ McxVzy7ZpIQ where the simulations and experiments can be fully appreciated.

A. Simulation Results

For this HHL simulation, the 2 human operators maneuvered the group of robots (5 UAVs and 3 UGVs) in the cluttered environment shown in Figs. 8(d-f). Without loss of generality, we considered robots 1 and 2 (two quadrotor UAVs) as the two leaders interconnected with the two master devices via (41). The following values for the various parameters introduced in Sects. III-IV were employed: (32)-( 35), and b = 5 Kg/s for the interconnection (41). In evaluating F λ i from ( 22), we limited the number of sensed obstacle points to the closest 6 to each agent i.

Figure 9 shows the behavior of the Generalized Connectivity Potential V λ (λ 2 (t)) during the robot motion and evaluated on the actual value of λ 2 (t). This value, serving as 'ground truth', was obtained independently from the estimations λi 2 (t) used by the robots to compute F λ i . As expected, V λ (λ 2 (t)) remains always bounded thus confirming that all the requirements R1-R3 of Sect. III-B were fulfilled (we recall that V λ → ∞ as λ 2 → λ min 2 ). Furthermore, in Fig. 10(a) we report the superimposition of λ 2 (t) (blue solid line) and of λi 2 (t), i = 1 . . . N (red dashed lines), i.e., the individual estimations of λ 2 (t) obtained by every robot thanks to the decentralized scheme [START_REF] Sabattini | On decentralized connectivity maintenance for mobile robotic systems[END_REF]. It is possible to verify that all the N estimations λi 2 (t) are in very good agreement with the actual value of λ 2 (t). As an additional confirmation, Fig. 10(b) depicts the behavior of

e λ (t) = N i=1 |λ 2 (t) -λi 2 (t)| N , (42)
that is, the average absolute estimation error w.r.t. λ 2 (t). This plot shows, again, the good agreement over time among λ 2 (t) and its N estimates λi 2 (t). Figures 11(a-b) report the two velocity commands r 1 (t) (left) and r 2 (t) (right) sent from the masters to the two leaders, and Figs. 12(a-b) show the corresponding forces τ 1 (t) (left) and τ 2 (t) (right) exerted by the master devices on the human operators. As explained, these force cues represent the mismatch between the commanded velocities (r 1 (t), r 2 (t)) and the actual leader velocities (v 1 (t), v 2 (t)). Therefore, the operators can obtain a feeling on how well the leaders (and, as a consequence, the group) is following their commands: for instance, whenever a velocity command starts conflicting with the Generalized Connectivity Maintenance action, a 'drag force' will be generated and displayed to the human operator, with a magnitude proportional to the amount of conflict. On the other hand, if the operator commands can be executed without threatening the Generalized Connectivity, almost no force will be displayed to the operators 12 .

Figure 13(a) shows the time evolution of the N tank energies T i (t) introduced in Sect. IV-C. As expected, the tanks start recharging as the agents move and, once reached the maximum level T max , they almost never discharge. This then confirms that the estimation errors in evaluating F λ i in place of the real F λ i were almost negligible, so that implementation of F λ i was never threatening the passivity of the system. Passivity of the closed-loop dynamics (37) is also 12 A non-null force will in general be present during the agent motion, especially at steady-state, because of the dampening effect of the terms B i in (4). This is a desired feature of our framework since this residual force will inform the operator about the absolute speed of the whole group. We refer the reader to Franchi et al. (2012b) for a more thorough discussion on this point. additionally confirmed by looking at Fig. 13(b), which reports the behavior of E ext (t) = t t0 v T (τ )F e (τ )dτ (dashed red line) and E in (t) = H(t) -H(t 0 ) (blue solid line). Indeed, one can check that E in (t) ≤ E ext (t), ∀t ≥ t 0 , as required by the group passivity condition (39).

Finally, Fig. 14 shows how the number of edges |E(t)| of the interaction graph G(t) is varying during the robot motion. Because of the time-varying nature of G(t), the number of edges is not constrained to stay constant over time, but it ranges from a minimum of 10 to a maximum of 19 (the smallest number of edges preserving connectivity would be 7, while the largest possible cardinality of E is 28).

For the interested reader watching the videoclip of this simulation attached to the paper (Multimedia Extension 1, and also available at http://youtu.be/swfJcS7fJ84), we also wish to highlight the following phases: starting from time 3m:55s, the two human operators intentionally command the two leaders to move in opposite directions for a sustained amount of time. This eventually leads to a conflict with the connectivity preserving action F λ i so that the whole groups stops moving. Accordingly, because of this conflict, the two human operators are provided with two large force cues opposing their commands. From time 4m:32s until the end of the clip, the second human operator intentionally releases his haptic device in order to show the closed-loop stability of the overall teleoperation system during the robot motion. In fact, note how the haptic device keeps moving in free-motion and in a stable way because of its interconnection with the robot group.

B. Experimental Results

The experiments reported in this Section were obtained by using N = 4 quadrotor UAVs in the cluttered environment shown in Fig. 8 Fig. 15: Results of the experiment: behavior of the Generalized Connectivity Potential V λ (λ2(t)) evaluated on the actual 'ground truth' value λ2(t). Boundedness of V λ (λ2(t)) confirms that λ2(t) > λ min 2 > 0 during the robot motion and, equivalently, that the requirements R1-R3 were always satisfied. (35), and b = 5 Kg/s for the interconnection (41). As in the previous simulations, the number of sensed obstacle points for evaluating F λ i was limited to the closest 6 for each agent i. Figure 15 shows the behavior over time of V λ (λ 2 (t)) evaluated, as before, on the 'ground truth' λ 2 (t). Boundedness of V λ (λ 2 (t)) confirms again the fulfillment of all the requirements R1-R3 (in particular, besides physical connectivity, inter-agent and obstacle collision avoidance). Figure 16(a) depicts the superimposition of λ 2 (t) (the ground truth, solid blue line) and of its N estimates λi 2 (t) (dashed red lines). Although the discrepancies between real and estimated values are slightly larger than in the previous simulative case, we can still note a substantial agreement among these quantities. This fact can also be appreciated in Fig. 16(b) where, again, the behavior of e λ (t) evaluated as in (42) is shown. These larger discrepancies w.r.t. the previous case are mostly due to the presence of noise and small communication delays, and in general to all those non-idealities and disturbances affecting real conditions but not fully modeled by our simulation environment. Nevertheless, as reported in Fig. 17(a), the tank energies T i (t) are still never depleting and again, once reached the maximum level T max , they never discharge. Therefore, passivity of the system is still fully preserved despite these more challenging conditions. This is also confirmed by the plot in Fig. 17(b) reporting the behavior of E in (t) (solid blue line) and E ext (t) (dashed red line), with again E in (t) ≤ E ext (t) as expected.

Figures 18(a-b) show the two velocity commands r 1 (t) (left) and r 2 (t) (right) of the two human operators, and Figs. 19(a-b) the two forces τ 1 (t) (left) and τ 2 (t) (right) applied on the master devices. As before, we also report the number of edges |E(t)| during the group motion in Fig. 20: one can again appreciate the time-variyng nature of the graph G(t) with the number of edges changing over time. Note how during several phases, e.g., from t ≃ 61 s to t ≃ 74 s and from t ≃ 93 s to t ≃ 119 s, the graph G(t) becomes a line (3 edges for N = 4 robots), i.e., it reaches the sparsest topology which still ensures connectivity of the group.

Finally, Figs. 21(a-d) report the superimposition of x i (the position in space of the i-th agent as per model (4) -solid lines) and x i,real (the actual position in space of the i-th quadrotor UAV -dashed lines). These plots are meant to illustrate the accuracy for the 4 quadrotor UAVs in tracking the idealized agent motion generated from (4). As clear from the plots, the behaviors of x i (t) and x i,real (t) are almost perfectly coincident without any noticeable discrepancy, also given the scale of the plots. To better characterize the tracking accuracy, we report in Fig. 22 the behavior of i.e., the average tracking error for the 4 quadrotors. We have: avg(e x ) = 0.025 m, std(e x ) = 0.0067 m and max(e x ) = 0.047 m, thus confirming the good performance in tracking the agent motion (4), and implicitly validating the assumption of treating quadrotor UAVs as second-order integrators as done in the previous Sections.

e x (t) = N i=1 x i (t) -x i,real (t) N , (43)
As before, we highlight some phases of interest in the videoclip of this experiment (Multimedia Extension 2 and also available at http://youtu.be/McxVzy7ZpIQ): from time 1m:40s to time 1m:50s the velocity command of the first human operator conflicts with the connectivity force F λ i and the first leader almost does not move. Again, the human operator is provided with a strong force cue opposing his command and informing about this conflict. From time 2m:14s to time 2m:40s the first human operator intentionally releases his haptic device to show the closed-loop stability of the overall system. Note again how the haptic device keeps moving in free-motion and in a stable way because of its interconnection with the rest of the group.

VII. CONCLUSIONS AND FUTURE WORK

In this paper we have introduced the concept of Generalized Connectivity Maintenance, that is, how to embed into a unique connectivity preserving action the typical goal of maintaining 'physical' connectivity of a robot group despite constraints on the inter-robot sensing/communication capabilities while, at the same time, fulfilling additional collective of individual requirements such as formation control or collision avoidance. To this end, we have developed a decentralized gradient-like controller based on a scalar potential function of λ 2 , the second smallest eigenvalue of the graph Laplacian. A suitable design of the inter-agent weights A ij defining the graph adjacency matrix makes it possible to obtain the desired result: the value of λ 2 becomes a smooth monotonic function of (i) the physical degree of connectivity of the graph, and (ii) the accuracy by which the additional group and individual requirements are met. By following the proposed gradient controller, the robots are then forced to preserve connectivity and satisfy the requirements but without being bound to a particular topology for the interaction graph: inter-robot links are free to be established/lost as long as λ 2 keeps above a given threshold. Finally, validity of the theoretical claims and closedloop stability analysis, based on passivity arguments, has been demonstrated by means of simulation and experimental results involving a group of quadrotors UAVs and UGVs steered by two human operators in a cluttered environment.

Several interesting extensions are, we believe, possible for the framework introduced in this paper. On one side, the proposed machinery can be easily generalized by embedding additional soft/hard requirements of interest in the design of the weights A ij . On the other side, the Generalized Connectivity maintenance action can represent a 'minimum set of behaviors' for the group on top of which additional external tasks can be realized by exploiting the force inputs F e i , and while preserving group connectivity in the sense explained above. Possible applications involve all those tasks requiring a decentralized coordination among multiple robots, such as exploration, coverage, surveillance or mapping. Finally, the ideas inspiring the proposed machinery can also be applied for maintaining other global properties of interest of the underlying interaction graph besides the degree of connectivity considered here. For example, in [START_REF] Zelazo | Rigidity maintenance control for multi-robot systems[END_REF] it is shown how to recast our approach for enforcing rigidity maintenance during motion by identifying a suitable rigidity eigenvalue playing the same role of λ 2 for the connectivity case.

Fig. 2 :

 2 Fig. 2: Illustration of several quantities of interest relative to a pair of agents i and j. The agent positions xi and xj, and their velocities vi and vj. The segment Sij (line-of-sight) joining agents i and j. An obstacle point o k and the corresponding closest point s ijk on the segment itself. The segment-obstacle distance d ijk .

  6) with µ a = π D-d1 , and ν a = -µ a d 1 . Figure 3a shows the shape of a possible γ a ij (d ij ). The individual weights γ b ij (d ijk ) composing the product sequence in (5) take into account the constraint of line-ofsight occlusion. Assume a minimum and maximum distance 0 ≤ d o min < d o max ≤ D between the segment S ij and an obstacle point o k ∈ O ij are chosen. The quantity d o min represents the minimum distance to an obstacle in order to 3 This is formally defined as

  Fig. 4: The shape of βij(dij) for d0 = 4, k β = 1 and σ = 5.

  9) with µ α = π dmax-dmin and ν α = -µ α d min , and show in Fig. 5 a possible shape. As before, it is α

Fig. 6 :

 6 Fig. 6: An illustrative example of the use of the weights α * ij in a Graph G with N = 5 agents and with the edges representing the sensing-neighbor condition of Definition 1 (sets Si).

Fig. 7 :

 7 Fig. 7: Visualization as 3D surface of the total weight Aij = αijβijγij as a function of the variables dij and d ijk (top), and corresponding contour plot (bottom). The values of the various parameters are those employed for the previous Figs. 3-5.

Fig. 8 :

 8 Fig. 8: The simulative and experimental setup employed in this work; (a),(c): the Omega.6 and Omega.3 force-feedback devices used by the two human operators; (b): a screenshot of our experimental setup with 4 quadrotor UAVs in a cluttered environment. The two leaders are highlighted with a semi-transparent red and blue circle; (d-f): three screenshots of our simulative setup: 5 quadrotor UAVs and 3 UGVs are maneuvered in a cluttered environment. The two leaders (two quadrotors) are again highlighted with a semi-transparent red and blue circle.

Fig. 9 :

 9 Fig.9: Results of the HHL simulation: behavior of V λ (λ2(t)) over time. The Generalized Connectivity Potential is evaluated on the real (ground truth) value of λ2(t) obtained in a independent (and centralized) way w.r.t. the N estimates λi 2 (t) used by the robots. Boundedness of V λ (λ2(t)) confirms the fulfillment of the requirements R1-R3 embedded in the Generalized Connectivity λ2.

Fig. 10 :

 10 Fig. 10: Results of the HHL simulation. (a): superimposition of λ2(t) (blue solid line) and the N estimates λi 2 (t) (red dashed lines). Note how the plots are in very good agreement. (b): behavior of the average estimation error e λ (t) as per (42).

Fig. 11 :

 11 Fig. 11: Results of the HHL simulation: behavior of the velocity commands r1(t) (a) and r2(t) (b) sent from the master devices to the two leaders.

Fig. 12 :Fig. 13 :

 1213 Fig. 12: Results of the HHL simulation: behavior of the forces τ1(t) (a) and τ2(t) (b) exerted by the two masters on the two human operators.

Fig. 14 :

 14 Fig. 14: Results of the HHL simulation: number of edges |E(t)| of the interaction graph G(t) during the robot motion. One can note how |E(t)| changes over time, ranging from 19 to 10, as a consequence of the time-varying nature of the interaction graph G(t).

  (b). As before, we considered as leaders the UAVs 1 and 2. The parameters used for these experiments are: d 1 = 4 m and D = 6 m for the weight γ a ij in (6), d o min = 0.3 m and d o max = 0.7 m for the weight γ b ij in (7), d 0 = 4 m for the weight β ij in (8), d min = 1 m and d max = 2.2 m for the weight α * ij in (9), λ min 2 = 0.1 and λ max 2= 1 for V λ , T min = 0.1 J and T max = 10 J for the switching policies (32)-

Fig. 16 :

 16 Fig.16: Results of the experiment. (a): behavior of the ground truth value λ2(t) (solid blue line) vs. its N estimates λi 2 (t) (dashed red lines). Similarly to before, the N estimates are in good agreement with the actual value λ2(t). (b): behavior of the estimation error e λ (t) over time.

Fig. 17 :

 17 Fig. 17: Results of the experiment. (a): evolution over time of the N Tank energies Ti(t) which, after reaching the maximum value Tmax, never discharge. This shows again how implementation of F λ i was complying with the group passivity condition. (b): behavior of Ein(t) (blue solid line) and Eext(t) (red dashed line). As expected from (39), it is again Ein(t) ≤ Eext(t).

Fig. 18 :

 18 Fig. 18: Results of the experiment: behavior of the velocity commands r1(t) (a) and r2(t) (b) sent from the master devices to the two leaders in the group.

Fig. 19 :

 19 Fig. 19: Results of the experiment: behavior of the forces τ1(t) (a) and τ2(t) (b) extorted on the human operators by the master devices.

Fig. 20 :

 20 Fig. 20: Results of the experiment: number of edges |E(t)| of the interaction graph G(t) over time. Note again how (i) the graph topology varies over time, and how (ii) the graph reaches in several phases the 'sparsest' possible topology to still ensure connectivity (3 edges for 4 robots).

Fig. 21 :

 21 Fig. 21: Results of the experiment: superimposition of xi(t) (agent position -solid lines) and x i,real (t) (actual quadrotor positiondashed lines) for the 4 quadrotors UAVs used in the experiments. The behaviors of xi(t) and x i,real (t) are basically coincident, thus showing a very good performance for the quadrotors in tracking the agent motion (4).

Fig. 22 :

 22 Fig.22: Results of the experiment: time evolution of the average tracking error ex(t) defined in (43) and meant to quantify the accuracy for the UAVs in tracking their desired trajectories in space.

  x i position of agent i o k position of the k-th obstacle point x ij relative position between agents i and j d ij distance between agents i and j x i,o k relative position between agent i and o k S ij segment joining x i to x j s ijk closest point on S ij to o k d ijk distance between s ijk and o k S i the set of sensing neighbors of agent i N i the set of (logical) neighbors of agent i O i the set of obstacle points {o k } sensed by agent i

	G	undirected interaction graph
	A	adjacency matrix of G
	E	incidence matrix of G
	L	Laplacian matrix of G
	λ 2	the second smallest eigenvalue of the Laplacian L
	ν 2	the normalized eigenvector associated to λ 2
	α ij	weight embedding hard requirements
	β ij	weight embedding soft requirements
	γ ij	weight embedding the sensing/communication model
	D	sensing/communication range of every agent
	d 0 d o min d o max	preferred inter-agent distance safe distance from obstacles range of influence of obstacles
	d min safe distance among agents
	d max range of influence among agents λ min 2 minimum value for λ 2 V λ Generalized Connectivity Potential
	F λ i F e i	Generalized Connectivity Force acting on agent i external force acting on agent i

Preprint -final, definitive version available at http://ijr.sagepub.com/ 2 accepted for IJRR, Nov. 2012

This loose definition will be refined later on.

Preprint -final, definitive version available at http://ijr.sagepub.com/

Preprint -final, definitive version available at http://ijr.sagepub.com/ 4 accepted for IJRR, Nov. 2012

In fact, in Sect. V we will show how to use inputs F e i in order to steer the overall group motion while preserving connectivity of the group.

Preprint -final, definitive version available at http://ijr.sagepub.com/ 5 accepted for IJRR, Nov. 2012

Preprint -final, definitive version available at http://ijr.sagepub.com/ 6 accepted for IJRR, Nov. 2012

accepted for IJRR, Nov. 2012

Preprint -final, definitive version available at http://ijr.sagepub.com/ 8 accepted for IJRR, Nov. 2012

In fact, as well-known, passivity guarantees a sufficient condition for characterizing the stability of a dynamical system[START_REF] Sepulchre | Constructive Nonlinear Control[END_REF].

Presence of this safety mechanism is not motivated by theoretical considerations, but is meant to avoid an excessive energy storage in T i that would allow for implementing practical unstable behaviors in the system, see also[START_REF] Lee | Passive-set-position-modulation framework for interactive robotic systems[END_REF];[START_REF] Franchi | A passivity-based decentralized approach for the bilateral teleoperation of a group of UAVs with switching topology[END_REF]Franchi et al. ( , 2012b) ) for a more thorough discussion.Preprint -final, definitive version available at http://ijr.sagepub.com/

In our case, the passivity margin is due to the agent dissipation induced by the damping terms B i .Preprint -final, definitive version available at http://ijr.sagepub.com/ 12 accepted for IJRR, Nov. 2012

http://www.forcedimension.com Preprint -final, definitive version available at http://ijr.sagepub.com/

http://www.ogre3d.org/, http://www.nvidia.com/object/physx_new.html

http://www.mikrokopter.com

http://www.vicon.com

Preprint -final, definitive version available at http://ijr.sagepub.com/ 20 accepted for IJRR, Nov. 2012

ACKNOWLEDGEMENTS

This research was partly supported by WCU (World Class University) program funded by the Ministry of Education, Science and Technology through the National Research Foundation of Korea (R31-10008).

APPENDIX A: INDEX TO MULTIMEDIA EXTENSIONS

The multimedia extensions to this article are at: http://www. ijrr.org.

Extension Type Description 1

Video HHL simulation 2

Video HHL experiment APPENDIX B: PROOFS Consider a passive plant P and a passive controller C characterized by the state vectors x P ∈ R p and x C ∈ R c . Let the systems P and C be endowed with two power ports (u P , y P ) and (u C , y C ), and let S P (x P ) ≥ 0 and S C (x C ) ≥ 0 represent the associated lower bounded storage functions. Assume the systems P and C are interacting by means of a power-preserving interconnection, e.g., w.l.o.g., the standard feedback interconnection

Take now a lossless Tank T with state x t ∈ R, energy function S T (x t ) = 1 2 x 2 t ≥ 0, and endowed with a power port (u T , y T ) ∈ R×R. The port behavior of the controller C when interconnected to the plant P as in (44) can be mimicked by interconnecting P and T by means of

Proposition 4:

for some ǫ > 0, then S T (x t (t)) ≥ ǫ, ∀t ≥ t 0 , and thus the Tank will never deplete.

Proof: From (44-45) it follows that

Owing to the passivity of C and to the losslessness of T , we also have

and

Plugging ( 46) in (47-48) then yields

Therefore, by initializing S T (x T (t 0 )) = S C (x C (t 0 )) + ǫ, for some ǫ > 0, we obtain the sought result

which then concludes the proof. We finally note that preventing depletion of the tank T also guarantees that y T = 0, so that the interconnection (45) remains well-posed.

APPENDIX C: GLOSSARY

For the reader's convenience, we list here the notation and meaning of several quantities of interest introduced throughout the paper.