Directed Graph Topology Preservation in Multi-Robot Systems With Limited Field of View Using Control Barrier Functions

This paper addresses the crucial challenge of maintaining the directed graph topology in multi-robot systems, particularly when operating under limited field-of-view constraints and with a lack of communication among robots. Traditional methods for multi-robot coordination rely heavily on inter-robot communication, which may not always be feasible, particularly in constrained or hostile environments. Our work presents a novel distributed control algorithm that leverages Control Barrier Functions (CBFs) to maintain the graph topology of a multi-robot system based solely on local, onboard sensor data. This approach is particularly beneficial in situations where external communication channels are disrupted or unavailable. The key contributions of this research are threefold: First, we design a novel control algorithm that efficiently maintains the graph topology in multi-robot systems using CBFs, which operate on neighbor detection data. Second, we perform an experimental evaluation of the algorithm, demonstrating its efficacy in controlling the flight of a team of drones using only local robot data. Third, we apply our methodology to a distributed coverage control scenario, showing that our approach can effectively manage a multi-robot system using only local information.


I. INTRODUCTION
The research interest in multi-robot systems has surged in recent years due to the multiple advantages that teams of robots can provide in several missions.The usage of multiple agents can guarantee resilience to single points of failure and can potentially increase the speed at which tasks are executed compared to single robot equivalents, through cooperation and coordination.During the last two decades there has been significant progress in the study and development of control strategies to enable different means of coordination and cooperation among teams of robots [1].Examples of tasks where swarms of robots are successfully applied and provide several advantages compared to the single robot The associate editor coordinating the review of this manuscript and approving it for publication was Jianxiang Xi .case are: coverage [2], whose aim is to maximize the area surveilled by the system; monitoring and exploration of the environment [3], [4], [5]; target tracking [6], [7] and collaborative transportation [8], [9].The large majority of the distributed algorithms employed to coordinate swarms of robots rely on the ability of each agent in the swarm to obtain information about its surroundings.The transfer of information through communication channels can be modeled using a graph whose nodes represent the robots and the edges are the direct communication links.The correct performance of many distributed algorithms relies on the properties of the graph describing the communication network.Preservation of topological properties similar to the one depicted in Fig. 1, such as connectivity, has been studied in the literature, typically considering undirected (i.e., bi-directional) communication, and explicit communication among the robots [10], [11], [12], [13], [14].However, in a scenario where the robots cannot communicate with each other, the conventional network graph modeling and its properties do not appropriately describe the system, nor provide performance guarantees.Each robot then has to rely on its onboard sensors to decide its future action.However, in scenarios where robots are incapacitated from inter-communication, the conventional network graph model becomes inadequate, failing to guarantee system performance.In such contexts, robots must depend solely on onboard sensors for decision-making.The effectiveness of distributed algorithms, even under these constraints, has been demonstrated, particularly when only relative positional information of neighbors is available.For instance, in coverage control, a robot may only need data from its immediate neighbors to compute its target.

A. RELATED WORKS & CONTRIBUTIONS
Our work addresses the challenge of topology preservation in a fleet of drones governed by a distributed algorithm, specifically in scenarios where communication is suddenly interrupted.The drones must then independently maintain the requisite level of information for proper operation.While a variety of sensors, from IR to lidars and cameras, are available for environment scanning and neighbor detection, these often have anisotropic capabilities.The information level of a single drone can thus be represented by a directed graph.Maintaining this graph's topology (i.e., preserving all outgoing edges from a node) equates to sustaining the information level of each drone.Similar solutions for this problem have been presented in the literature, however, there are some key differences to be considered.In [15], the authors face the problem of maintaining the continuous tracking of a target using a fleet of drones.They propose a multi-objective distributed optimization problem that ensures connectivity maintenance of the fleet, obstacle avoidance, and occlusion avoidance.To achieve these safety constraints, the authors employ a controller based on Control Barrier Functions (CBFs), that modifies the motion of the drones.However, since in their example drones can communicate and exchange information, the authors did not include the maintenance of the target inside the field of view in the optimization problem, allowing partial loss of visibility.Without the ability to communicate, drones not facing each other would crash into each other since they do not have accurate information on their surroundings.In [16], the authors propose a Barrier Function-based Image Servoing control that maintains detected features in the field of view.The controller enables the system to position itself with respect to a detected object while maintaining said object in the field of view to ensure proper feedback information is provided.This problem is very similar to the problem addressed in this paper but with a substantial difference: the target for the system, by definition, satisfies the constraints.In this paper, we treat the problem of achieving a general task that may have a setpoint that does not satisfy the constraints.The contribution of this paper can then be summarized as follows • The design of a novel distributed control algorithm that ensures the graph topology maintenance for a multirobot system, leveraging CBFs on neighbor detection to allow the continuation of the task at hand if possible.
• The experimental evaluation of the algorithm to control the flight of a team of drones, using only local robot data (i.e., no communication).
• The application of the proposed approach to coverage control using only local information.

II. PRELIMINARIES
We denote by N, R, R ≥0 , and R >0 the set of natural, real, real non-negative, and real positive numbers, respectively.Given x ∈ R n , let ∥x∥ be the Euclidean norm.Let G = (U, E) be a graph characterized by a set U of vertices and a set E ⊆ U ×U of directed edges.Given an edge (i, j) ∈ E, then the vertex j is a neighbor of the vertex i.
Let F(R 2 ) be the collection of finite point sets in R 2 .We denote an element of F(R 2 ) as P = {p 1 , . . ., p n } ⊂ R 2 , where {p 1 , . . ., p n } are points in R 2 .Let Q ⊂ R 2 be a generic polygon representing the operational space in the environment.An arbitrary point in Q is denoted by q ∈ Q.Let us define the proximity graph as a graph G P in which the edge set E G P depends on the location of the vertices.In this paper, we consider graphs defined for points {p 1 , . . ., p n } in R 2 .Hence, we can define a proximity graph function G : F(R 2 ) → (U, E) that associates to P ∈ F(R 2 ) an undirected graph with the set P of vertices and the set E G (P) of edges, where ) has the property that E G (P) ⊆ P × P\ diag(P × P).
We denote, for p ∈ R 2 and r ∈ R >0 , the closed and open ball in R 2 centered at p with radius r with B(p, r) = q ∈ Q|∥q − p∥ ≤ r and B(p, r) = q ∈ Q| ∥q − p∥ < r , respectively.The set of edges of the proximity graph is defined as E G P = {(p i , p j ) ∈ P × P| p j ∈ B(p i , r)}.We consider robots moving in a closed environment free of obstacles.The inertial reference frame associated with the environment is denoted with w .The local reference frame attached to the body of each robot i in the environment is denoted with i .Figure 2 provides a visualization of the considered reference frames.The notation w i denotes the relative transformation from the global reference frame w to the local frame i expressed in the global frame.Similarly, the notation i x indicates a generic vector x expressed relatively to i .If not specified, a vector is expressed with respect to w .The notation w R i ∈ SO2 is used to denote the rotation matrix from w to i , such that w x = w R i i x.Following CBF theory [17], let C = {p ∈ R m : h(p) ≥ 0} be the set of configurations that satisfy the safety requirements for the system, also known as the safe set C which is defined as the super level set of a smooth function h : R m → R with ∂h ∂p (p) ̸ = 0 ∀p ∈ ∂C.According to Nagumo's theorem [18], with the extension provided in [19] and [20], CBFs are defined by the following relation: where α is an extended class K function.With this condition it is possible to synthesize optimization-based controllers that modify the desired control input u * in a minimally invasive fashion, solving the following optimization problem: This controller aims therefore at providing the control input u closest to the desired input u * that satisfies the constraints.

III. PROBLEM DESCRIPTION
Consider a team of n aerial robots flying in an obstaclefree bounded environment.The aerial robots fly using only information from onboard sensors.Each drone knows its global position at takeoff and estimates the pose of its local reference frame w i through odometry information.In the following, we assume that all the drones fly at the same altitude and move with a bounded planar velocity.Furthermore, each drone can detect the neighbors that are in the field of view of its camera.The set of detected neighbors for each robot i is denoted as N i ∈ N. The relative 2D position of the neighbour j with respect to i is expressed as i p j = [ i x j , i y j ] ⊤ .Let G be the directed graph describing the connection between the aerial robots.Specifically, each aerial robot is represented in G as a vertex, while an edge (i, j) is in the graph if and only if j is detected by i, formally expressed as (i, j) ∈ E G ⇐⇒ j ∈ N i .A visualized example of the graph is provided in Fig. 4. The state of each aerial robot i is denoted with w χ i = w x i w y i w θ i ⊤ , where w x i , w y i ∈ R represent the coordinates of the 2D position of i in w , while w θ i is the yaw angle.The altitude is excluded since we assume every robot flies at the same constant altitude.The aerial robot is controlled to obtain the following kinematic model where i v x , i v y , ω ∈ R represent the linear and angular velocities of the drone in i .Furthermore, each aerial robot has a limited angular sector in which it can detect neighboring drones.This angular sector is centered at the local X axis with amplitude β, as visualized in Fig. 3.The drones in this configuration are instructed to perform a decentralized task.Assume, without loss of generality, that the task requires each drone to know the relative position of its neighbors as well as its own position in the environment.In ideal conditions, this information is usually obtained through wireless communication channels, onboard sensors, or a combination of both.However, in the analyzed scenario, the communications are externally interrupted, therefore the drones are required to operate only with data from onboard sensors.As a conservative measure in this situation, the robots should behave to maintain the current level of operation, therefore we propose to solve the following problem: Problem 1: Maintain the topology of the directed graph G describing the system, to provide each robotic agent with the necessary information to allow the safe execution of the global task assigned to the team, despite the absence of communication between the agents.While avoiding collisions with other agents.
The problem presented can be divided into three core aspects: • Maintaining the topology of the directed graph G: each drone should have the necessary information to execute the assigned (external) task.
• Enforce safe execution: each drone should avoid crashing with other drones.
• Execute the global task: the controller should minimally modify the behavior of the drones such that the constraints are enforced while the objective of the task is being pursued.

A. PROPOSED SOLUTION
Given the considered limitations on the communication between the agents, the problem of maintaining the topology is equivalent to maintaining the current connections between the robots.A connection between the robots depends only on the relative pose of the robots with respect to each other, therefore to maintain a connection each robot should move in order to maintain the currently detected neighbors inside its field of view.We, therefore, propose a CBF-based controller that minimally modifies a desired input velocity to maintain the currently detected robots in the field of view.The CBF is defined starting from the relative position of the detected robots with two separated components, one from the left side of the field of view and one from the right side.Furthermore, to increase the safety of the motion, a third component is added to guarantee the maintenance of a safe distance from the neighbors.The three components are treated as different constraints inserted into an optimization solver.Figure 5 displays the area where a robot should keep its neighbors in order to avoid losing the connection and avoid crashing.
From the premises, the problem of maintaining the topology of the graph is distributed since each drone is responsible for maintaining its outward edges.If a single drone does not adhere to the behavior, even by simply rotating in place 180 • , it can change the topology of the graph removing some edges.Therefore each drone is equally responsible for maintaining the topology of the system, implying that the proposed solution solves Problem 1 in a distributed fashion, moreover the CBF-constrained controller is formulated as a Quadratic Programming problem with linear constraints, whose solution can be obtained in milliseconds.

IV. FIELD OF VIEW MAINTENANCE
In this section, we detail the formulation of the motion constraint for each drone, in order to maintain its detected neighbors in the camera field of view.In order to maintain the drone j in the field of view of drone i, we propose the addition of a CBF to optimize the velocity input to ensure the feasibility of the constraint.For the problem at hand, we propose the use of a CBF to guarantee the constraint is always satisfied during the motion of the drones.For this purpose, we introduce, for each drone i, the following h(•) function, defined for each neighbour j The first two components h 1 (•) and h 2 (•) express the left and right border of the field of view as a linear function.
The third component expresses the difference between the distance of drone j from drone i with the safe distance D ∈ R ≥0 .Imposing the condition h(•) ≥ 0 is equivalent to constraining drone j to be: 1) on the left of the right border, 2) on the right of the left border, 3) at a safe distance from i.This component is equivalent to the CBF proposed in [21], we refer interested readers to the original paper for further details.The associated optimization problem is formulated as follows.Let i u i = i v x , i v y , i ω ⊤ ∈ R 3 be the vector of input velocities for the i-th drone expressed in its body frame.Let i u * i be the desired velocity for the drone obtained from a top-level distributed algorithm, i.e. the task controller.The following optimization-based controller is employed to ensure the safety condition while modifying the desired velocity in a minimally invasive fashion as The cost function of the optimization is expressed as a quadratic function of the error between the input i u i and the desired control action i u * i .The positive definite matrix H ∈ R 3×3 is inserted in order to assign different weights to specific components of the velocity error.We define the class K function α(•) as the function where γ F , γ S ∈ R ≥0 are positive constants.The use of such α(•) function is motivated by the necessity of slowing the relative motion when the robot approaches the border of the field of view from the inside.The cubic function possesses the same requirements as the linear function but its values are smaller when h(•) is close to zero, with respect to the linear function used for example in h 3 .This difference in shape imposes that ḣ has to be ''less decreasing'' when approaching the border with respect to the linear counterpart.This effect dampens the behavior of h allowing for smoother behavior.
The time derivative ḣ(•) is obtained as follows.The function h( i p j ) introduced in eq. ( 3) can be rewritten as The time derivative of this formulation is then expressed as The velocity of j with respect to i is then expressed through kinematic computations Since we assume not to have information on the 2D velocity of the neighbor drones, as a conservative approach we assume each neighbor is moving towards the closest border at the maximum allowed velocity.It is then possible to write (7) as where The optimization problem in (4) therefore becomes In this formulation of the optimization problem, the constraint is separated into terms that depend on the decision variable i u i and terms that depend only on the current configuration.Such formulation facilitates the implementation of the Quadratic Programming problem into a solver to easily and quickly obtain the optimal solution.Enforcing a neighbor drone j to remain in the field of view of i ensures that the existing outgoing edges of the associated graph G are preserved.

V. CASE STUDY: COVERAGE CONTROL
The topology maintenance approach proposed in this paper can be employed along many distributed multi-robot control algorithms.Among many possible options, such as [22], [23], [24], and [25], as a case study, we explore the effect of anisotropic neighbor detection on coverage control and how the proposed approach can guarantee the safe execution of the coverage task.
Briefly, coverage control [2] exploits Lloyd's algorithm to reach the configuration of the system which maximizes the information that the swarm can obtain, indicated by a probability density function φ(•).The environment is divided into cells following the Voronoi partitioning algorithm.Every cell V i is calculated from every robot's position p i ∈ P and contains areas of the environment closer to the i-th robot than the others and are inside the sensing radius of the i-th robot.Each robot has a limited sensing range, therefore the Voronoi cells can be expressed according to the definition in [26] Subsequently, the centroid of each Voronoi cell C V i is calculated taking into account the probability density distribution φ(q) The probability function φ(q) can be defined to highlight the higher importance of specific areas of the environment with respect to others.Finally, the desired input for the i-th robot is calculated to move toward the centroid of its cell according to the law where k prop ∈ R ≥0 is a proportional gain.Such proportional gain dictates how fast the system converges to the configuration that optimizes the displacement of the drones in the space.Therefore it should be chosen considering both performances and dynamic limitations of the drones.
It is worth noting that defining a non-uniform probability density φ(•) leads the agents to a desired area of the environment.It is also important to highlight that, according to ( 12) and ( 13), both the limited Voronoi partitioning and the centroid can be computed in a distributed manner, therefore no global knowledge is needed to calculate the control action.
In fact, each robot can compute its own control input simply from information about its own location, the neighbors' location, and the probability density of the information in the environment, as was extensively tested in [27].The integration of the coverage action into the optimization problem is performed using the velocity vector u * i calculated in (14) as the desired control input for the cost function in (4).
Coverage control is proven asymptotically stable for multirobot systems where the graph is connected.A graph disconnecting introduces instability in the information flow and the algorithm is not guaranteed to be stable.

VI. EXPERIMENTAL EVALUATION A. EXPERIMENTAL SETUP
We performed experiments with 3 quadrotors deployed in an indoor flying space of 10 × 6 × 4 m 3 at the Agile Robotics and Perception Lab (ARPL) lab at New York University.The used aerial platforms, depicted in Fig. 1 are custom small-scale aerial robots equipped with a Qualcomm ® Snapdragon TM Flight TM Pro board and onboard VIO, planning, and control based on [28].The framework has been developed in ROS.Communication among drones is implemented using a synchronized multimaster network module [29].The optimization problem realizing the CBF is implemented using OSQP [30] and given as input to the low-level control on each robot.The value of the field of view β is set to 100 • .The minimum distance D among drones is set to 0.5m.The maximum velocity magnitude used to compute i ṗj is set to 0.1m/s.
The cost matrix H is a diagonal matrix set to H = diag(1.0,1.0, 0.05) in order to inform the optimization solver that the components i v x , i v y of i u i are more important then ω.The solution to the CBF optimization problem considers only a maximum of 5 neighbor drones.Since the constraint is active only if a neighbor drone reaches the edge of the field of view, potentially occluding other drones, this limitation of the number of considered drones on the 5 with the lowest h(•) allows the solution on board of the problem with a computation time of 0.4 ms on average.In all the following tests, the parameters γ F and γ S are set to 1.0 and 2.0, respectively.The value for γ F has been empirically tuned to allow the usage of most of the available field of view.The value for γ S has been selected according to what is presented in [21] to maintain the drones distant enough to not generate any downdraft.The safe distance D is set to 0.5m.The detection of the neighbors for each agent is computed off-board using measurements from a motion-capture system that are filtered given the orientation of the considered drone.

B. CBF VALIDATION
To validate the proposed formulation we propose the following test.A single aerial platform is tasked to move in between two other drones.Without any restrictions, the drone would simply pass through, ignoring the positions of the other two drones.The introduction of the proposed CBF stops the drone motion maintaining the other two drones in the field of view.Figure 6 displays the 2D poses of the 3 drones involved, the drone on the left is tasked to pass in the middle of the drones on the right.The motion is stopped before the neighbors exit the field of view.Figure 7 displays the behavior of the components of h of drone 0 with respect to both neighbor drones.It is clearly shown that the neighbors are kept in a safe set and any violation is negligible.This confirms the effect of the CBF on maintaining the current connection between the drones.

C. CASE STUDY: COVERAGE CONTROL
The following test performs coverage control in a closed environment using only limited information coming from the field of view of the robot.The algorithm starts from a configuration where each robot can see the other two, generating a complete graph connecting the robots.shows the behavior of the drones without any constraint.It is shown that two aerial robots clash with each other since one robot has no information on the presence of the other, therefore the coverage algorithm instructs the robot to move towards what it considers ''free space'', causing the accident.Figure 10 displays the behavior of the controlled system with the effect of the proposed CBF.
The robots initially spread over the environment until the constraint becomes active.The modified control action generates a motion where the drones start circling in the counter-clockwise direction till they are set in the final displayed position, where every drone has the other two in the field of view.Figure 8 displays the behavior of h for the robots throughout the test.The data shows again that the field of view boundaries are enforced by constraining the requested motion.By maintaining the initial information flows on the robot's controller, the safety of the algorithm is improved since the robot knows all the necessary information to avoid crashing with the other robots.It can be noted that the cumulative application of the CBF to the motion of all three aerial robots generates significant oscillations in the values of h when the robot is inside the safe set.These oscillations are greatly reduced when the detected robot approaches a border of the field of view, due to the effect of the CBF.To further visualize the presented results we refer readers to the accompanying video displaying the experiments and the associated position plots.

VII. CONCLUSION
In this paper, we proposed a novel control formulation to maintain the topology of the directed graph describing the connection between agents in a multi-robot system.Specifically, we explore the case where the agents have a limited field of view due to local sensing and propose a CBF-based optimization controller that modifies a generic desired input in a minimally invasive fashion.The CBF is formulated in order to enforce the maintenance of the current neighbors inside the field of view.The validity of the CBF is tested using aerial platforms by performing a scenario where the desired input purposely directs platforms toward an undesirable configuration.The data shows how the control is capable of stopping the undesired motion.The control layer is then inserted in the coverage control scenario where the robots monitor an area.The provided data shows the effectiveness of the proposed solution on the maintenance of the current connections and therefore improving the safe and proper execution of the coverage task.
In this work, we assume to not have information on the neighbors' velocity therefore we considered the robots moving toward the closest border as part of the CBF formulation.This assumption, alongside the assumption on the bounded speed and planar motion of the aerial platform, limits the performance at which the team of robots can accomplish the required task.Future work will focus on relaxing these assumptions by incorporating the whole system dynamics in order to increase the range of applications of the proposed controller.Furthermore, since the current validation is based on data from a motion capture system, we will focus on extending the proposed solution using only onboard robot sensor data.

Figure 1 .
Figure 1.Graph topology preservation according to the depicted arrows during a coverage control problem task with CBF enforcing visual constraint using aerial robots.

Figure 2 .
Figure 2. Visualization of the system and relative coordinates.

Figure 3 .
Figure 3. Visualization of the field of view of drone 0. In particular, only drone 3 and 2 are detected since 1 is on the right of the visible space.

Figure 4 .
Figure 4. Visualization of the graph describing the system.Each drone has all the others inside the field of view, therefore each drone has information on the whole system.

Figure 5 .
Figure 5. Depiction of the safe space where robot i aims to keep the detected drones.

Figure 6 .
Figure 6.2D plot of the position of the aerial robots while one is tasked to move in between the other two.

Figure 7 .
Figure 7. Visualization of the values of h during the test.The value is generally maintained greater than 0.

Figure 8 .
Figure 8. Visualization of the values of h for the three robots (drones 0, 1, and 2 are displayed from left to right).Each robot detects two other drones.The left component h 1 (•) is visualized in blue and yellow, while the right component h 2 (•) is visualized in red and purple.

Figure 9 .
Figure 9. Coverage control with a limited field of view.The aerial platforms end up crashing with each other because of the lack of information.

Figure 10 .
Figure 10.Coverage control.The drones start by facing each other and move in the environment according to the motion generated by the control barrier function.The trajectory of drones 0, 1, and 2 are depicted in blue, red, and yellow respectively.