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

Distributed Coverage Hole Prevention for
Visual Environmental Monitoring with Quadcopters
via Nonsmooth Control Barrier Functions

Riku Funada1, María Santos2, Ryuichi Maniwa1, Junya Yamauchi3,
Masayuki Fujita3, Mitsuji Sampei1, and Magnus Egerstedt4
©2023 IEEE. Personal use of this material is permitted. Permission from IEEE must be obtained for all other uses, in any current or future media, including reprinting/republishing this material for advertising or promotional purposes, creating new collective works, for resale or redistribution to servers or lists, or reuse of any copyrighted component of this work in other works.*This work was supported by JSPS KAKENHI Grant Number 22K14275. The work by Magnus Egerstedt was supported by grant CNS-2233783 from the US National Science Foundation.1R. Funada, R. Maniwa and M. Sampei are with the Department of Systems and Control Engineering, Tokyo Institute of Technology, Tokyo 152-8550, Japan {funada,sampei}@sc.e.titech.ac.jp, maniwa@sl.sc.e.titech.ac.jp2M. Santos is with the Department of Mechanical and Aerospace Engineering, Princeton University, Princeton, NJ 08544, USA maria.santos@princeton.edu3J. Yamauchi and M. Fujita are with the Department of Information Physics and Computing, The University of Tokyo, Tokyo 113-8656, Japan {junya_yamauchi,masayuki_fujita}@ipc.i.u-tokyo.ac.jp4M. Egerstedt is with the Department of Electrical Engineering and Computer Science, University of California Irvine, Irvine, CA 92697, USA magnus@uci.edu
Abstract

This paper proposes a distributed coverage control strategy for quadcopters equipped with downward-facing cameras that prevents the appearance of unmonitored areas in between the quadcopters’ fields of view (FOVs). We derive a necessary and sufficient condition for eliminating any unsurveilled area that may arise in between the FOVs among a trio of quadcopters by utilizing a power diagram, i.e. a weighted Voronoi diagram defined by radii of FOVs. Because this condition can be described as logically combined constraints, we leverage nonsmooth control barrier functions (NCBFs) to prevent the appearance of unmonitored areas among a team’s FOV. We then investigate the symmetric properties of the proposed NCBFs to develop a distributed algorithm. The proposed algorithm can support the switching of the NCBFs caused by changes of the quadcopters composing trios. The existence of the control input satisfying NCBF conditions is analyzed by employing the characteristics of the power diagram. The proposed framework is synthesized with a coverage control law that maximizes the monitoring quality while reducing overlaps of FOVs. The proposed method is demonstrated in simulation and experiment.

Index Terms:
Control barrier functions, Multi-robot systems, Optimization and optimal control, Sensor networks

I Introduction

Refer to caption
Figure 1: Proposed scenario. The team of quadcopters monitors a mission space 𝒬\mathcal{Q} specified within the environment \mathcal{E}. Each quadcopter mounts a downward-facing camera with a circular field of view (FOV) that is adjustable via its position pip_{i} and focal length λi\lambda_{i}. The hatched regions in between the FOVs of quadcopters represent unmonitored areas to be prevented.

Visual environmental monitoring has been utilized to collect information in a broad range of applications such as urban traffic [1], home/facility security [2], terrain data [3], and natural phenomena [4, 5]. Among the various types of robots utilized in these scenarios, unmanned aerial vehicles with visual sensors afford capturing vast environments from the sky. In addition, some unmanned aerial vehicles (e.g., quadcopters) are authorized to fly at relatively lower altitudes [6], which makes them suitable for capturing information at a closer distance to a surveilled area, which results in more detailed information. However, flying at a lower altitude typically leads to a smaller field of view (FOV) of the quadcopter, which in turn can make difficult to capture large-scale phenomena in vast environments.

The restrictions associated with the FOV of a single quadcopter can be addressed by employing a team of quadcopters to cooperatively capture extensive environments. For instance, the research in [7] and [8] presents a surveillance system that can produce a single high-resolution panoramic video of a large target area in real-time by stitching together multiple videos from quadcopters. Furthermore, several empirical studies suggest that wider FOVs result in higher performance for human operators in human-robot interaction [9]. Thus, such collaborative monitoring systems could contribute to better situation awareness compared with receiving multiple disjoint videos provided individually by the quadcopters. However, the advantages provided by the joint monitoring efforts of a group of drones can be hindered by the potential appearance of unmonitored areas within the target environment, as illustrated in Fig. 1. Even though a quadcopter flies at a relatively lower altitude than conventional aerial vehicles, the altitude of quadcopters in environmental monitoring could exceed 100m100\,{\rm m} in some applications, e.g., [10]. In such cases, the size of the quadcopters’ FOVs becomes large, resulting in the appearance of a non-negligible unmonitored area between FOVs. Unmonitored areas are undesirable for situational awareness and search missions since they can lead to missing important events or failures when stitching videos together. Besides, such appearances of unmonitored areas among a team could result in overlooking potential hazards in safety-critical applications requiring real-time information, such as the monitoring of construction sites to prevent accidents [11].

This paper presents a coverage strategy for a team of quadcopters that prevents the appearance of unmonitored areas in-between FOVs of the quadcopters. We achieve this goal by modifying the nominal input maximizing the monitoring performance minimally invasive way so that the appearance of unmonitored areas is restricted. Specifically, we develop a distributed algorithm that employs nonsmooth control barrier functions (NCBFs), logically combined control barrier functions (CBFs), to prevent the appearance of a hole. Then, as the nominal input utilized with the algorithm, we propose the coverage control law that maximizes the monitoring performance of the team according to the perspective quality of the quadcopters’ cameras while expanding the surveyed area of a team by avoiding redundant observation of the multiple quadcopters.

I-A Related Work

Cooperative environmental monitoring has been studied extensively in the context of coverage control, which yields an optimal deployment of mobile sensors with respect to a spatial field in a distributed fashion [12, 13, 14]. The coverage control problem has been considered in a variety of scenarios, including networks of Pan-Tilt-Zoom (PTZ) cameras [15, 16, 17, 18] as well as teams of ground [19, 20, 21, 22] and aerial robots [23, 24, 25, 26].

In the context of aerial robots, the work in [23] presents a coverage strategy for a heterogeneous robot team where the cameras present various degrees of freedom depending on the robot type, e.g., PTZ cameras, quadcopters, etc. The proposed control law captures a 2D environment with a maximal resolution, where a better coverage quality is allocated to an area monitored by multiple cameras as opposed to the same area covered by a single camera. The work [24] proposes a solution that reduces FOV overlaps while guaranteeing the altitude of quadcopters within the predefined range. A more challenging scenario is considered in [25], where each quadcopter is mounted with a PTZ camera, making their FOVs become ellipses on the 2D environment. The work [26] presents the unified framework for both exploration and coverage problems in an unknown 3D environment with quadcopters. Both problems are formulated to maximize the portion of observed environments while minimizing the overlap of FOVs. Despite the variety of advances presented in these works, the proposed controllers do not address the appearance of unmonitored areas in between FOVs, which may result in overlooking critical events occurring in the environment.

The work in [27, 28] reduces the unmonitored area in the whole environment, rather than eliminating unobserved regions in-between FOVs, by maximizing the area of the covered region. Both works consider the agents with heterogeneous and fixed sensing regions. The uncovered areas are detected by utilizing a multiplicatively weighted Voronoi diagram having curved boundaries, where the weight of each sensor is equal to its sensing radius. The algorithms guarantee increased area coverage, but the elimination of unmonitored areas is not assured. The rejection of unmonitored regions is also considered in [29], where the total moving distance of mobile sensors is minimized. Still, this work assumes the sensing radius of all agents is fixed and identical. These methods, which assume a fixed or same measurement range, might not be readily extendable to cooperative monitoring with a team of quadcopters, where the size of FOVs dynamically evolves according to the changes of the zoom level or altitude. The work [30] proposes a solution based on a nonsmooth gradient flow for a disk-covering problem, where each agent can control its sensing radius. Because a disk-covering problem corresponds to completely covering the entire environment with disks of minimum radius, the proposed control law eliminates unobserved areas. The resulting final deployment renders the radius of sensing fields of all agents identical. However, it is difficult to cover the entire environment with high-resolution images in case the whole mission space is large compared with FOVs of quadcopters, or the number of quadcopters is limited. For instance, the monitoring area of [31] reaches 2km22\,\textrm{km}^{2}. In such cases, rather than overextending FOVs for covering a whole area, preventing unmonitored areas around targeted regions under a team’s surveillance could yield more detailed information for contributing to the monitoring purposes. Furthermore, if the environment has non-uniform importance, allowing each quadcopter to decide on its sensing radius could lead to better monitoring performance because a team can adjust the resolution of the image according to the importance of the area. To achieve such a visual monitoring strategy, the team should maximize the objective function for visual monitoring quality, as in [23, 24, 25, 26]. However, in case the reduction or elimination of unmonitored areas is already encoded as the objective of the team as in [27, 28, 29, 30], the problem becomes a multi-objective optimization, with the associated challenges of balancing two different requirements.

In order to address the aforementioned issue, this paper prevents the appearance of a hole by means of a constraint-based approach, where the visual monitoring quality is maximized as long as unmonitored areas in-between a team are prevented. More specifically, the behavior of the quadcopters is constrained to prevent unsurveilled areas in-between quadcopters by CBFs. CBFs provide the forward invariance property to the admissible set of the robot state space [32, 33, 34]. CBFs have been employed in various applications ranging from bipedal robots [35, 36] to swarm robots [37, 38, 39, 40] and seeing success also in the context of environmental monitoring [41, 42, 43]. The work [41] proposes a control framework that guarantees the robot’s battery is never depleted during a monitoring task. Several charging models, such as solar lights and charging stations, are interpreted as a time-varying function defined in the mission space. Then, a time-varying CBF is developed to ensure energy constraints of the robots. The work [42] also utilizes the time-varying CBF to consider time-varying coverage control, where a density function specifying the importance of field changes dynamically. The proposed methods do not impose any requirements on the rate of change of the density functions and can be executed in a distributed fashion. In [43], a notion of information reliability is encoded through a time-varying density function as in [44], which decays if a region is not surveilled for a long period. Then, a patrolling motion is achieved by a time-varying CBF together with other safety constraints. In [45, 46], an extended version of CBFs are utilized to a quadcopter having nonlinear dynamics.

I-B Proposed Approach and Contributions

In this paper, we propose a control method that prevents unmonitored areas to arise in-between FOVs of quadcopters equipped with downward facing cameras while monitoring a mission area. First, CBFs preventing the appearance of unmonitored areas in between a team is designed by utilizing a power diagram. The power diagram [47] is a weighted Voronoi diagram defined by the different radii of FOVs, where the boundaries of the diagram are composed of lines known as the radical axis. We leverage this favorable property of the power diagram, compared with the multiplicatively weighted Voronoi partitions in [27, 28] that generate more complicated Voronoi cells composed of Appollonian circles, to analyze its feasibility and develop distributed algorithm. Furthermore, we provide the coverage control law that intends to monitor important regions while preventing too much overlap between the fields of view of quadcopters. The presented coverage controller is synthesized with the aforementioned CBFs to achieve the maximum visual monitoring quality while preventing the unmonitored areas in-between a team.

The contributions of this paper are as follows.

  • (a)

    We develop a distributed algorithm preventing an unmonitored area in between a team of quadcopters based on CBFs. For this goal, the appearance of unsurveilled areas is encoded by the vertices of a power diagram. Because the derived constraints contain a Boolean logic, we leverage a nonsmooth control barrier function (NCBF) [48] to synthesize the controller that prevents an unmonitored area. We then formulate an algorithm that allows the jumps in the value of NCBF caused by the changes in the Delaunay graph induced by the power diagram.

  • (b)

    We verify the feasibility of the proposed CBF-based methods. The existence of a control input that satisfies the constraints is closely related to how the CBF evolves together with the system dynamics. For example, in [49, 40], feasibility was established by showing that the gradient of the CBF does not vanish. In our case, this computation is not feasible and instead, we rely on the special structure of the power diagram to derive a simplified form of the designed CBFs’ derivatives. Then, we show that the set yielding the derivatives of CBF zero vectors can be neglected in practice. This result guarantees that the proposed CBF-based controller can generically generate the control input to prevent an unmonitored area in between a team during monitoring mission.

  • (c)

    The coverage control law in our conference paper [50] is combined with the above CBF-based methods to showcase its utility. This visual coverage control serves two purposes: (i) improving the performance of the monitoring, considering the spatial sensing quality of cameras as in [17], and (ii) reducing the overlap between FOVs of the quadcopters to cover a large-scale area by a team.

  • (d)

    The practical usefulness of the proposed monitoring strategy is demonstrated by simulations and experiments.

In our previous work [51], we proposed the preliminary results of (a), which does not allow a distributed computation without a strong assumption. More specifically, when the algorithm calculates the derivatives of CBFs for Quadcopter ii, it presumes the other quadcopters are fixed in the environment. In this paper, the algorithm is improved to achieve a distributed computation without the assumption by utilizing the symmetric properties of the proposed CBFs. We newly analyze the validity of the proposed NCBFs in (b), which was not discussed in our previous conference papers [51, 50]. The coverage control law discussed in (c) is proposed in our previous work [50], but we only show the utility of the control law with the preliminary algorithm that overly restricts a teams’s movement for preventing the appearance of unmonitored area in between quadcopters. Finally, this paper provides comprehensive simulation and experimental results demonstrating the effectiveness of the proposed methods.

II Preliminaries

In this section, we introduce several variations of CBFs, which can synthesize logically combined constraints in a system exhibiting graph changes. The methods will be needed to formulate the control algorithms preventing coverage holes in-between agents in Section IV.

Let us consider a control-affine system

x˙(t)=f(x(t))+g(x(t))u(x(t),t),x(t0),t0,\displaystyle\dot{x}(t)=f(x(t))+g(x(t))u(x(t),t),~{}x(t_{0}),~{}t_{0}\in{\mathbb{R}}, (1)

where f:nnf:{\mathbb{R}}^{n}\to{\mathbb{R}}^{n} and g:nmg:{\mathbb{R}}^{n}\to{\mathbb{R}}^{m} are locally Lipschitz continuous while u:n×mu:{\mathbb{R}}^{n}\times{\mathbb{R}}\to{\mathbb{R}}^{m} is measurable and locally bounded in both arguments. In this formulation, uu is not necessarily continuous. Therefore, the solution might not exist for the differential equation (1). To yield a system to which solutions exist, a system (1) can be turned into a differential inclusion via Filippov’s operator K[f+gu]:n×2nK[f+gu]:{\mathbb{R}}^{n}\times{\mathbb{R}}\to 2^{{\mathbb{R}}^{n}}

x˙(t)K[f+gu](x(t),t),x(t0)=x0,t0,\displaystyle\dot{x}(t)\in K[f+gu](x(t),t),x(t_{0})=x_{0},t_{0}\in{\mathbb{R}}, (2)

with

K[f+gu](x,t)\displaystyle K[f+gu](x^{\prime},t^{\prime})
=co{limif(xi)+g(xi)u(xi,t):xix,xiSf,S},\displaystyle=\!\mathrm{co}\!\left\{\lim_{i\to\infty}f(x_{i})\!+\!g(x_{i})u(x_{i},t^{\prime}):x_{i}\!\to\!x^{\prime},x_{i}\!\notin\!S_{f},S\right\}, (3)

where SfS_{f} is a particular zero-Lebesgue-measure set and SS is an arbitrary zero-Lebesgue-measure set. As detailed in [52, 53], a Carathéodory solution, an absolutely continuous function x:[t0,t1]nx:[t_{0},t_{1}]\to{\mathbb{R}}^{n} such that x˙(t)K[f+gu](x(t),t)\dot{x}(t)\in K[f+gu](x(t),t) almost everywhere on t[t0,t1]t\in[t_{0},t_{1}], always exists in the above system.

Hereafter, we introduce the CBF-based methods that confine the state of the system (2) in the admissible set. While the original papers [48, 53] assume a more general model than (2), we proceed with (2) as it is sufficient for our objective. In addition, we sometimes modify the notations in [48, 53] to suit our paper. Note that, in practice, the method introduced in this section does not require the computation of Filippov’s operator; instead, more convenient algorithm is formulated.

CBFs have been employed for guaranteeing the forward invariance property of the set 𝒞\mathcal{C}, which represents constraints to be satisfied during the execution of the task. We assume that a set 𝒞\mathcal{C} can be defined as the superlevel set of a barrier function h(x,t):𝒟n×t0h(x,t):\mathcal{D}\subset{\mathbb{R}}^{n}\times{\mathbb{R}}_{\geq t_{0}}\to{\mathbb{R}}, namely 𝒞={(x,t)n×t0h(x,t)0}\mathcal{C}=\{(x^{\prime},t^{\prime})\in{\mathbb{R}}^{n}\times{\mathbb{R}}_{\geq t_{0}}\mid h(x^{\prime},t^{\prime})\geq 0\}. Then, the forward invariance of the set 𝒞\mathcal{C} can be accomplished by ensuring

h˙(x(t),t)α(h(x(t),t)),a.e.t[t0,t1],\displaystyle\dot{h}(x(t),t)\geq-\alpha(h(x(t),t)),~{}a.e.~{}t\in[t_{0},t_{1}], (4)

for every Carathéodry solution, for some locally Lipschitz extended class-𝒦\mathcal{K} function α:\alpha:{\mathbb{R}}\to{\mathbb{R}} [53].

Let us formulate the time-varying nature of (4) to better suit the problem we consider, where the constraints are added or subtracted according to the changes in the network graph of a team. First, the following two definitions are necessitated.

Definition 1.

[53, Definition 1] A sequence {τk}k=1\{\tau^{\rm k}\}_{\rm k=1}^{\infty} is a switching sequence for (2) if and only if it is strictly increasing, unbounded, and τ1=t0\tau^{1}=t_{0}. With respect to {τk}k=1\{\tau^{\rm k}\}_{\mathrm{k}=1}^{\infty}, let

Kt1=inf{K|[t0,t1]k=1K[τk,τk+1)}.\displaystyle{\rm K}_{t_{1}}=\inf\left\{{\rm K}\in{\mathbb{N}}\;\middle|\;[t_{0},t_{1}]\subset\bigcup_{\mathrm{k}=1}^{\mathrm{K}}[\tau^{\mathrm{k}},\tau^{\mathrm{k}+1})\right\}. (5)
Definition 2.

[53, Definition 2] A set 𝒞n×\mathcal{C}\subset{\mathbb{R}}^{n}\times{\mathbb{R}} is hybrid forward invariant with respect to (2) and a switching sequence {τk}k=1\{\tau^{\mathrm{k}}\}_{\mathrm{k}=1}^{\infty} for (2) if and only if for every Carathéodry solution starting from x0x_{0} at t0t_{0},

(x(τk),τk)𝒞,kKt1(x(t),t)C,t[t0,t1].\displaystyle(x(\tau^{\mathrm{k}}),\tau^{\mathrm{k}})\in\mathcal{C},\forall{\mathrm{k}}\leq\mathrm{K}_{t_{1}}\Rightarrow(x(t),t)\in C,\forall t\in[t_{0},t_{1}].

Definition 2 signifies the desirable behavior of the system. Namely, if the state is inside of the admissible set 𝒞\mathcal{C} at the initial time and the state does not leave the set at any jump, then the state remains in the set. In the scenario introduced later on, the admissible set for Quadcopter ii switches every time its neighboring agents change. Therefore, by achieving the hybrid forward invariance of the set prohibiting the unsurveilled area in-between a team, the unmonitored area does not appear if the changes in the graph make no holes instantaneously. Furthermore, even if a change in the graph results in the appearance of a hole, such a hole can be eliminated by the general property of CBFs that yields the safe set attractive [53, 34]. This will be demonstrated in simulation in Section VI-C.

To capture the above requirements, we presume hh is not time-varying during each switching interval t[τk,τk+1)t^{\prime}\in[\tau^{\mathrm{k}},\tau^{\mathrm{k}+1}), which can be modeled with hk:𝒟knh^{\mathrm{k}}:\mathcal{D}^{\mathrm{k}}\subset{\mathbb{R}}^{n}\to{\mathbb{R}} as

h(x,t)=hk(x),k,t[τk,τk+1),xn,\displaystyle h(x^{\prime},t^{\prime})=h^{\mathrm{k}}(x^{\prime}),~{}\forall{\mathrm{k}}\in{\mathbb{N}},\forall t^{\prime}\in[\tau^{\mathrm{k}},\tau^{\mathrm{k}+1}),\forall x^{\prime}\in{\mathbb{R}}^{n}, (6)

where the superlevel set of hkh^{\mathrm{k}} is denoted as 𝒞k={xnhk(x)0}\mathcal{C}^{\mathrm{k}}=\{x^{\prime}\in{\mathbb{R}}^{n}\mid h^{\mathrm{k}}(x^{\prime})\geq 0\}.

In case 𝒞\mathcal{C} is a zero-superlevel set of hh in (6), the properties of hkh^{\mathrm{k}}, especially its time derivative h˙k\dot{h}^{\mathrm{k}} as appeared in (4) during t[τk,τk+1)t^{\prime}\in[\tau^{\mathrm{k}},\tau^{\mathrm{k}+1}), need to be investigated to guarantee the hybrid forward invariance of the set 𝒞\mathcal{C}. Furthermore, if there exists nonsmoothness in the barrier function hkh^{\mathrm{k}}, e.g., as a result of logically combined constraints as in this paper, calculating h˙k\dot{h}^{\mathrm{k}} can no longer be possible via the usual chain rule.

The barrier function embracing logically combined requirements is proposed in [48] as nonsmooth control barrier functions (NCBFs). The result of [48] revealed that the Boolean operations \land, \lor, and ¬\lnot are formulated as

hk(x)=min{h1k(x),h2k(x)}:=h1kh2khk(x)=max{h1k(x),h2k(x)}:=h1kh2khk(x)=h1k(x):=¬h1k.\begin{split}&h^{\mathrm{k}}(x^{\prime})=\min\{h_{1}^{\mathrm{k}}(x^{\prime}),h_{2}^{\mathrm{k}}(x^{\prime})\}:=h_{1}^{\mathrm{k}}\land h_{2}^{\mathrm{k}}\\ &h^{\mathrm{k}}(x^{\prime})=\max\{h_{1}^{\mathrm{k}}(x^{\prime}),h_{2}^{\mathrm{k}}(x^{\prime})\}:=h_{1}^{\mathrm{k}}\lor h_{2}^{\mathrm{k}}\\ &h^{\mathrm{k}}(x^{\prime})=-h_{1}^{\mathrm{k}}(x^{\prime}):=\lnot h_{1}^{\mathrm{k}}.\end{split} (7)

at each x𝒟x^{\prime}\in\mathcal{D}. Let us assume that the NCBF hkh^{\mathrm{k}} described in (7) has the following favorable properties. Note that the definition from [48] has been modified to suit the terminology of this paper.

Definition 3.

[48, Definition 2] A locally Lipschitz function hk:𝒟knh^{\mathrm{k}}:\mathcal{D}^{\mathrm{k}}\subset{\mathbb{R}}^{n}\to{\mathbb{R}}, where 𝒟k\mathcal{D}^{\mathrm{k}} is an open and connected set, is a candidate NCBF if the set 𝒞k\mathcal{C}^{\mathrm{k}} is nonempty.

Definition 4.

[48, Definition 6] A candidate NCBF hk:𝒟knh^{\mathrm{k}}:\mathcal{D}^{\mathrm{k}}\subset{\mathbb{R}}^{n}\to{\mathbb{R}} composed by the Boolean operator as in (7) is smoothly composed if each component candidate NCBF hik:𝒟knh_{i}^{\mathrm{k}}:\mathcal{D}^{\mathrm{k}}\subset{\mathbb{R}}^{n}\to{\mathbb{R}} is continuously differentiable.

For ensuring the forward invariance of the set 𝒞k\mathcal{C}^{\mathrm{k}} described by a smoothly composed candidate NCBFs, the work [48] introduces the almost-active set and the almost-active gradient.

Definition 5.

[48, Definition 7] Given ϵ>0\epsilon>0 and two candidate NCBFs h1k,h2k:𝒟knh_{1}^{\mathrm{k}},h_{2}^{\mathrm{k}}:\mathcal{D}^{\mathrm{k}}\subset{\mathbb{R}}^{n}\to{\mathbb{R}}, the almost-active set of functions for a candidate NCBF given by hk=h1kh2kh^{\mathrm{k}}=h_{1}^{\mathrm{k}}\land h_{2}^{\mathrm{k}} or hk=h1kh2kh^{\mathrm{k}}=h_{1}^{\mathrm{k}}\lor h_{2}^{\mathrm{k}} is defined at each x𝒟kx^{\prime}\in\mathcal{D}^{\mathrm{k}} as

Iϵk(x)={ihik(x)hk(x)ϵ}.\displaystyle I_{\epsilon}^{\mathrm{k}}(x^{\prime})=\left\{i\mid\|h_{i}^{\mathrm{k}}(x^{\prime})-h^{\mathrm{k}}(x^{\prime})\|\leq\epsilon\right\}. (8)

The almost-active gradient of an NCBF, denoted by ϵhk:𝒟kn2n\partial_{\epsilon}h^{\mathrm{k}}:\mathcal{D}^{\mathrm{k}}\subset{\mathbb{R}}^{n}\to 2^{{\mathbb{R}}^{n}}, at a point x𝒟kx^{\prime}\in\mathcal{D}^{\mathrm{k}} is

ϵhk(x)=coiIϵk(x)hik(x).\displaystyle\partial_{\epsilon}h^{\mathrm{k}}(x^{\prime})=\mathrm{co}\bigcup_{i\in I_{\epsilon}^{\mathrm{k}}(x^{\prime})}\partial h_{i}^{\mathrm{k}}(x^{\prime}). (9)

The requirement (4) expressed with the almost-active gradient is integrated as a constraint in a quadratic programming (QP) problem to generate the control input guaranteeing the forward invariance of the set 𝒞k\mathcal{C}^{\mathrm{k}}. If the formulated QP can always generate the control input, the designed NCBF is denoted as a valid NCBF as formally defined in the following theorem, where ,\langle\cdot,\cdot\rangle denotes a set-valued inner product.

Theorem 1.

[48, Theorem 3] Let hk:𝒟knh^{\mathrm{k}}:\mathcal{D}^{\mathrm{k}}\subset{\mathbb{R}}^{n}\to{\mathbb{R}} be a smoothly composed candidate NCBF, as in Definition 5. If there exists ϵ>0\epsilon>0 and a locally Lipschitz extended class-𝒦\mathcal{K} function α:\alpha:{\mathbb{R}}\to{\mathbb{R}} such that the QP

uk\displaystyle u^{\mathrm{k}} argminumuA(x)u+b(x)u\displaystyle\in\mathop{\rm arg~{}min}\limits_{u\in{\mathbb{R}}^{m}}u^{\top}A(x^{\prime})u+b(x^{\prime})^{\top}u (10a)
s.t.ϵhk(x),f(x)+g(x)uα(hk(x)),\displaystyle~{}\mathrm{s.t.}~{}\left\langle\partial_{\epsilon}h^{\mathrm{k}}(x^{\prime}),f(x^{\prime})+g(x^{\prime})u\right\rangle\geq-\alpha(h^{\mathrm{k}}(x^{\prime})), (10b)

with A:𝒟knm×mA:\mathcal{D}^{\mathrm{k}}\subset{\mathbb{R}}^{n}\to{\mathbb{R}}^{m\times m}, b:𝒟knmb:\mathcal{D}^{\mathrm{k}}\subset{\mathbb{R}}^{n}\to{\mathbb{R}}^{m} continuous, has a solution for every x𝒟kx^{\prime}\in\mathcal{D}^{\mathrm{k}} and uku^{\mathrm{k}} is measurable and locally bounded, then hkh^{\mathrm{k}} is a valid NCBF for (2).

Remark 1.

In practice, both the almost-active gradient and a set-valued inner product do not need to be evaluated in the QP. Instead, we can formulate constraints by including the gradients of all functions that constitute the index set Iϵk(x)I_{\epsilon}^{\mathrm{k}}(x^{\prime}) defined in (8), eliminating the convex-hull operation as discussed in [53]. To see how this works, let us consider the system described as a single integrator, namely f=𝟎n×1f={\bf 0}_{n\times 1} and g=𝟏m×1g={\bf 1}_{m\times 1}, the same model we assume for quadcopters as will be introduced in (13). Then, instead of the QP in Theorem 1, we can employ

uk\displaystyle u^{\mathrm{k}} =argminumuA(x)u+b(x)u\displaystyle=\mathop{\rm arg~{}min}\limits_{u\in{\mathbb{R}}^{m}}u^{\top}A(x^{\prime})u+b(x^{\prime})^{\top}u (11a)
s.t.hikx|x=xuα(hk(x)),iIϵk(x).\displaystyle~{}{\rm s.t.}~{}\left.\frac{\partial h_{i}^{\mathrm{k}}}{\partial x}\right|_{x=x^{\prime}}^{\top}u\geq-\alpha(h^{\mathrm{k}}(x^{\prime})),~{}\forall i\in I_{\epsilon}^{\mathrm{k}}(x^{\prime}). (11b)

Similar to [48], let us assume that the resultant controller is measurable and locally bounded. Then, to guarantee the QP has a solution for every x𝒟kx^{\prime}\in\mathcal{D}^{\mathrm{k}} in the considered problem setting, namely the validness of the NCBF, we can investigate the following sufficient conditions: 1) 𝒞k\mathcal{C}^{\mathrm{k}} is not an empty set, 2) hik/x|x=x𝟎m×1\partial h_{i}^{\mathrm{k}}/\partial x|_{x=x^{\prime}}\neq{\bf 0}_{m\times 1}, iIϵk(x)\forall i\in I_{\epsilon}^{\mathrm{k}}(x^{\prime}), x𝒟k\forall x^{\prime}\in\mathcal{D}^{\mathrm{k}}. To consider the second condition, we analyze the gradients of the component CBFs of the designed NCBF in Section IV-C.

Having defined the validity of the NCBF hkh^{\mathrm{k}} necessitated to assure the forward invariance of 𝒞k\mathcal{C}^{\mathrm{k}}, we are now ready to introduce the requirement for hh in (6). The following theorem formulates a valid hybrid NCBF (HNCBF), which is required to keep the safe set 𝒞\mathcal{C} to be hybrid forward invariant.

Theorem 2.

[53, Theorem 2] Let hk:nh^{\mathrm{k}}:{\mathbb{R}}^{n}\to{\mathbb{R}}, k\mathrm{k}\in{\mathbb{N}}, be a collection of valid NCBFs for (1) under the control laws and extended class-𝒦\mathcal{K} functions, uk:nu^{\mathrm{k}}:{\mathbb{R}}^{n}\to{\mathbb{R}}, αk:,k\alpha^{\mathrm{k}}:{\mathbb{R}}\to{\mathbb{R}},\mathrm{k}\in{\mathbb{N}}; and let {τk}k=1\{\tau^{\mathrm{k}}\}_{\mathrm{k}=1}^{\infty} be a switching sequence for (1). Then, the function h:n×t0h:{\mathbb{R}}^{n}\times{\mathbb{R}}_{\geq t_{0}}\to{\mathbb{R}} defined in (6) is a candidate HNBF. Moreover, hh is a valid HNCBF for (1) with the input u:n×t0mu:{\mathbb{R}}^{n}\times{\mathbb{R}}_{\geq t_{0}}\to{\mathbb{R}}^{m} defined as

u(x,t)=uk(x),k,t[τk,τk+1),xn.\displaystyle u(x^{\prime},t^{\prime})=u^{\mathrm{k}}(x^{\prime}),\forall k\in{\mathbb{N}},\forall t^{\prime}\in[\tau^{\mathrm{k}},\tau^{\mathrm{k}+1}),\forall x^{\prime}\in{\mathbb{R}}^{n}. (12)

Theorem 2 implies that we can render the set 𝒞\mathcal{C} hybrid forward invariance by solving (11) at each switching sequence k\mathrm{k} with valid NCBFs hk,kh^{\mathrm{k}},\mathrm{k}\in{\mathbb{N}} composing hh. In Section IV-C, following the above discussion, we analyze the validity of the proposed NCBF, namely the feasibility of the developed distributed algorithm. Please note that although the proposed algorithm utilizes NCBFs, a similar category of CBFs to [48, 53], the designed NCBF and its objectives are completely different from [48, 53]. Hence, analyzing the validity of the designed NCBFs necessitates new theoretical results, where we employ the properties of a weighted Voronoi partition. Furthermore, neither [48] nor [53] does not consider a distributed algorithm.

III Problem Statement

III-A Quadcopters and Environment

In this paper, we consider the scenario illustrated in Fig. 1, where nn quadcopters 𝒩={1,n}\mathcal{N}=\{1,\cdots n\} equipped with a downward facing camera are distributed in the 3-D space to monitor a 2-D region 𝒬\mathcal{Q}. We denote the region 𝒬\mathcal{Q} to be surveilled as the mission space hereafter, and assumed to be a closed and bounded convex subspace of the environment 3\mathcal{E}\subset{\mathbb{R}}^{3}. The relative importance of points on \mathcal{E} is specified by a density function ϕ:0\phi:\mathcal{E}\to{\mathbb{R}}_{\geq 0}, where the higher the importance of a point qq\in\mathcal{E} is, the higher the value of ϕ(q)\phi(q), with ϕ(q)=0,q\𝒬\phi(q)=0,~{}q\in\mathcal{E}\backslash\mathcal{Q}. The goal of this paper is to monitor the important region while preventing the appearance of unmonitored areas in-between a team of quadcopters, shown as hatched areas in Fig. 1.

The world coordinate frame Σw\Sigma_{w} is placed so that its xwywx_{w}y_{w}-plane is coplanar with the environment \mathcal{E}, where {𝐞x,𝐞y,𝐞z}\{{\bf e}_{x},{\bf e}_{y},{\bf e}_{z}\} describes the standard basis of Σw\Sigma_{w}. Then, the set of coordinates of all points in the environment is defined as :={q3𝐞zq=0}\mathcal{E}:=\{q\in{\mathbb{R}}^{3}\mid{\bf e}_{z}^{\top}q=0\}. We suppose that all quadcopters stay in the common half space {q3𝐞zq>0}\{q\in{\mathbb{R}}^{3}\mid{\bf e}_{z}^{\top}q>0\} during the operation.

Let Σi\Sigma_{i} be the coordinate frame of Quadcopter i𝒩i\in\mathcal{N}, where its position vector with respect to Σw\Sigma_{w} is pi=[xiyizi]p_{i}=[x_{i}~{}y_{i}~{}z_{i}]^{\top} with zi>0z_{i}\in{\mathbb{R}}_{>0}, and its attitude is fixed to be consistent with that of Σw\Sigma_{w} regardless of the attitude of Quadcopter ii. We assume each quadcopter equips with a gimbal that can keep an optical axis of the camera corresponds with the axis of the ziz_{i}-axis of Σi\Sigma_{i}. Namely, Quadcopter ii points its camera to the downward direction. In addition, each quadcopter is assumed to be equipped with localization devices, such as the GNSS, gyro sensors, and IMU, to estimate its own pose accurately, as in [54]. Let us express the image projection of the camera with a perspective projection model [55]. Then, the coordinate frame Σi\Sigma_{i} is located above the image plane with a distance the same as the focal length λi>0\lambda_{i}\in{\mathbb{R}}_{>0}. We assume that all quadcopters have a circular image plane with radius r>0r\in{\mathbb{R}}_{>0}. Then, Quadcopter ii can monitor all points inside of its field of view (FOV) i\mathcal{F}_{i} described as

i={q|q[xiyi0]rziλi},\mathcal{F}_{i}=\left\{q\in\mathcal{E}\;\middle|\;\left\|q-[x_{i}~{}y_{i}~{}0]^{\top}\right\|\leq r\frac{z_{i}}{\lambda_{i}}\right\},

where its side view is illustrated in Fig. 2(a) with I=[xiyi0]I=[x_{i}~{}y_{i}~{}0]^{\top} denoting Quadcopter ii’s horizontal position projected on the environment \mathcal{E}.

The state of Quadcopter ii is denoted as 𝐩i=[piλi]{\bf p}_{i}=[p_{i}^{\top}~{}\lambda_{i}]^{\top}, where the focal length λi\lambda_{i} specifies the zoom level of the camera. We assume that the dynamics of each quadcopter can be modeled as

𝐩˙i(t)=ui(t),𝐩i(t0)=𝐩i0,t0,t>t0,\dot{\mathbf{p}}_{i}(t)=u_{i}(t),~{}\mathbf{p}_{i}(t_{0})=\mathbf{p}_{i0},~{}t_{0}\in{\mathbb{R}},~{}t\in{\mathbb{R}}_{>t_{0}}, (13)

which can be converted to reflect the dynamics of a quadcopter [56]. Note that higher-order dynamics could represent more aggressive motions, as in [45]. However, good quality images are typically paramount in environmental monitoring, which means quadcopters rarely fly with large accelerations, e.g., to prevent image blurs. Hence, we opt for first-order dynamics. Furthermore, this paper does not consider the disturbance, such as wind, assuming a controller implemented in each quadcopter can successfully cancel the effect as in [57].

Refer to caption

(a)

Refer to caption

(b)
Figure 2: An illustration of (a) Quadcopter ii’s FOV i\mathcal{F}_{i} and (b) communication graph 𝒢\mathcal{G}. In (b), a radical center vijkv_{ijk} is depicted as a green dot.

III-B Communication Graph and Power Diagram

Every quadcopter is capable of sending its state to the neighboring quadcopters, where the inter-robot communication graph 𝒢(t)\mathcal{G}(t) is modeled by the two undirected graphs 𝒢(t)\mathcal{G}_{\mathcal{F}}(t) and 𝒢𝒫(t)\mathcal{G}_{\mathcal{P}}(t). First, 𝒢(t)\mathcal{G}_{\mathcal{F}}(t) is described as the graph which has an edge between the agents ii and jj if their FOVs are overlapped, namely ij\mathcal{F}_{i}\cap\mathcal{F}_{j}\neq\emptyset. Second, 𝒢𝒫(t)\mathcal{G}_{\mathcal{P}}(t) is the graph generated by the power diagram, which is a form of the weighted Voronoi diagram, specified by the weighted distance

d𝒫(𝐩i,q)=[qxqy][xiyi]2(rziλi)2,\displaystyle d_{\mathcal{P}}(\mathbf{p}_{i},q)=\left\|[q_{x}~{}q_{y}]^{\top}-[x_{i}~{}y_{i}]^{\top}\right\|^{2}-\left(r\frac{z_{i}}{\lambda_{i}}\right)^{2}, (14)

where rzi/λirz_{i}/\lambda_{i} in the second term signifies the radius of i\mathcal{F}_{i} as shown in Fig. 2LABEL:sub@fig:test1. Hereafter, we call the distance (14) the power distance following [47]. Then, the communication graph is expressed as 𝒢(t)=𝒢(t)𝒢𝒫(t)\mathcal{G}(t)=\mathcal{G}_{\mathcal{F}}(t)\cap\mathcal{G}_{\mathcal{P}}(t), which preserves the edges of power diagram only between those neighbors whose FOVs overlap, depicted by blue lines in Fig. 2LABEL:sub@fig:test2. The neighbors of Quadcopter ii in graph 𝒢(t)\mathcal{G}(t) is denoted as 𝒩i(t)\mathcal{N}_{i}(t).

An example of a power diagram is shown in Fig. 3 with the graph 𝒢(t)\mathcal{G}(t). The bisector of two agents ii and jj is composed of a straight line known as the radical axis, along which both circles bd(i)\mathrm{bd}(\mathcal{F}_{i}) and bd(j)\mathrm{bd}(\mathcal{F}_{j}), with the symbol bd()\mathrm{bd}(\cdot) to mean boundary of a set, have the same power distance. Namely, if we denote the radical axis between agent ii and jj as LijL_{ij}, d𝒫(𝐩i,q)=d𝒫(𝐩j,q),qLijd_{\mathcal{P}}(\mathbf{p}_{i},q)=d_{\mathcal{P}}(\mathbf{p}_{j},q),~{}q\in L_{ij} holds. In addition, if bd(i)bd(j)\mathrm{bd}(\mathcal{F}_{i})\cap\mathrm{bd}(\mathcal{F}_{j})\neq\emptyset with 𝐩i𝐩j\mathbf{p}_{i}\neq\mathbf{p}_{j}, then bd(i)bd(j)Lij\mathrm{bd}(\mathcal{F}_{i})\cap\mathrm{bd}(\mathcal{F}_{j})\in L_{ij} is satisfied. It is known that the radical axes defined by three circles whose centers are not collinear intersect in a common point termed the radical center, depicted with red dots in Fig. 3. The radical center is generated by three agents and forms a vertex of the weighted Voronoi cell with the weighted distance (14). Let us denote the radical center generated by bd(i)\mathrm{bd}(\mathcal{F}_{i}), bd(j)\mathrm{bd}(\mathcal{F}_{j}), and bd(k)\mathrm{bd}(\mathcal{F}_{k}) as vijk=[vijkxvijky0]3v_{ijk}=[v_{ijk}^{x}~{}v_{ijk}^{y}~{}0]^{\top}\in{\mathbb{R}}^{3}. Then, from the property of the radical axis, the following condition is satisfied.

d𝒫(𝐩i,vijk)=d𝒫(𝐩j,vijk)=d𝒫(𝐩k,vijk)\displaystyle d_{\mathcal{P}}(\mathbf{p}_{i},v_{ijk})=d_{\mathcal{P}}(\mathbf{p}_{j},v_{ijk})=d_{\mathcal{P}}(\mathbf{p}_{k},v_{ijk}) (15)
Refer to caption
Figure 3: Power diagram generated by nine quadcopters, illustrated by black lines. The vertices of the power diagram shown in red dots, called radical centers, are generated by groups of three quadcopters depicted in black dots. The FOVs of quadcopters and the graph 𝒢(t)\mathcal{G}(t) are depicted with the green circles and the blue lines, respectively. On the right, the boundary of i=1ni\cup_{i=1}^{n}\mathcal{F}_{i} has a dent with a radical center, but this is not regarded as a hole, which is formally defined in Definition 6.

Since the graph 𝒢𝒫(t)\mathcal{G}_{\mathcal{P}}(t) is generated in a similar fashion to how the ordinary Voronoi diagram yields the Delaunay triangulation, the graph 𝒢(t)\mathcal{G}(t) considered throughout this paper also provides triangular subgraphs as observed in Fig. 3. Let us denote the set of triangular subgraphs containing Quadcopter ii as its vertex as 𝒯i(t)={Δ1,,Δmi}\mathcal{T}_{i}(t)=\{\Delta_{1},\cdots,\Delta_{m_{i}}\}, where Δι,ιi(t)={1,,mi(t)}\Delta_{\iota},\iota\in\mathcal{I}_{i}(t)=\{1,\cdots,m_{i}(t)\} stands for mi(t)m_{i}(t) triangular subgraphs111Although we should define a triangular subgraph of Quadcopter ii with Δi,ι\Delta_{i,\iota}, we use Δι\Delta_{\iota} for notational simplicity.. Note that 𝒯i(t)\mathcal{T}_{i}(t) can be regarded as a subset of the Delaunay triangulation generated by the power diagram. Without loss of generality, we introduce the following assumption for a trio constituting a triangular subgraph Δι𝒯i(t)\Delta_{\iota}\in\mathcal{T}_{i}(t).

Assumption 1.

No pair in {bd(i),bd(j),bd(k)}\{\mathrm{bd}(\mathcal{F}_{i}),\mathrm{bd}(\mathcal{F}_{j}),\mathrm{bd}(\mathcal{F}_{k})\}, Δι={i,j,k}𝒯i(t)\Delta_{\iota}=\{i,j,k\}\in\mathcal{T}_{i}(t) contains sensing regions that are concentric. In addition, no two axes among {Lij,Ljk,Lki}\{L_{ij},L_{jk},L_{ki}\} are parallel.

Under Assumption 1, the existence of the radical axes {Lij,Ljk,Lki}\{L_{ij},L_{jk},L_{ki}\} is assured, and all three axes intersect at a single point. Moreover, IJK\triangle{IJK} does not become a degenerate triangle, where IJK\triangle{IJK} denotes the triangle with vertices II, JJ, and KK. Note that IJK\triangle{IJK} becomes a degenerate triangle only when the pathological situation, and even if it happens, the proposed method can easily manage such an ill condition with a heuristic method, as shown in the simulation studies in Section VI-A.

Notice that the graph 𝒢(t)\mathcal{G}(t) dynamically changes according to the quadcopters’ motion. We suppose that the set of triangular subgraphs 𝒯i(t)\mathcal{T}_{i}(t) does not change over intervals specified by a switching sequence {τik}k=1\{\tau_{i}^{\mathrm{k}}\}_{\mathrm{k}=1}^{\infty} as introduced in Definition 1.

The proposed scenario requires each quadcopter to exchange its state with the neighboring quadcopters. While one could consider employing a state estimation technique to obtain the neighbors’ state [58], the zoom level of the mounted camera, included in the state vector, is deemed challenging to estimate externally. Therefore, this paper presumes that each quadcopter is equipped with a communication device to send and receive its state. The communication devices and the challenges involved with outdoor communication, such as guaranteeing reliability by dedicating redundant networks and fail-safety, are detailed in [59].

III-C Unmonitored Areas to Be Prevented

Noticing that the power diagram generates convex cells, this paper prevents the formation of unmonitored areas in-between FOVs by including the Voronoi vertices vijkv_{ijk}, which exist in-between FOVs of teams, in each FOV, as shown in Fig. 3. Because each Voronoi vertex is generated by three agents except for degenerate Voronoi diagrams [60], we can separate the problem into triangular subgraphs Δι𝒯i(t)\Delta_{\iota}\in\mathcal{T}_{i}(t). Note that this degeneracy does not cause serious problems because degenerate Voronoi diagrams can be divided into triangular subgraphs.

For the above reasons, we restrict our attention to the unmonitored regions that may appear among a trio determined by triangular subgraphs 𝒯i(t),i𝒩\mathcal{T}_{i}(t),\forall i\in\mathcal{N}, illustrated in Fig. 4(a). This unsurveilled area is denoted as a hole hereafter and formally defined as follows.

Definition 6.

Consider a triangular subgraph {i,j,k}=Δι𝒯i(t)\{i,j,k\}=\Delta_{\iota}\in\mathcal{T}_{i}(t), ιi(t),tt0,i𝒩\iota\in\mathcal{I}_{i}(t),t\geq t_{0},i\in\mathcal{N}. A closed set E𝒬E\subset\mathcal{Q} is said to be a hole, if and only if it satisfies the conditions

(bd(E)bd(𝒬)=)(Int(E)i=,i𝒩)(EIJK),\displaystyle\begin{split}(\mathrm{bd}(E)\cap\mathrm{bd}(\mathcal{Q})=\emptyset)&~{}\land~{}({\rm Int}(E)\cap\mathcal{F}_{i}=\emptyset,~{}\forall i\in\mathcal{N})\\ ~{}\land~{}(E&\subset\triangle{IJK}),\end{split} (16)

where Int(E){\rm Int}(E) denotes the interior of EE.

Since a hole in Definition 6 depends on a triangular subgraph Δι𝒯i(t)\Delta_{\iota}\in\mathcal{T}_{i}(t) that dynamically changes according to the switching sequence {τik}k=1\{\tau_{i}^{\mathrm{k}}\}_{\mathrm{k}=1}^{\infty}, the condition for preventing a hole also switches. Let us suppose that the zero superlevel set of a function hi,Διk(𝐩lΔι)h_{i,\Delta_{\iota}}^{\mathrm{k}}(\mathbf{p}_{l\in\Delta_{\iota}}) with 𝐩lΔι:=[𝐩i𝐩j𝐩k]\mathbf{p}_{l\in\Delta_{\iota}}:=[\mathbf{p}_{i}^{\top}\mathbf{p}_{j}^{\top}\mathbf{p}_{k}^{\top}]^{\top}, Δι={i,j,k}\Delta_{\iota}=\{i,j,k\}, which we will derive in Section IV, describes the condition for Quadcopter ii to eliminate a hole in Δι𝒯i(τik)\Delta_{\iota}\in\mathcal{T}_{i}(\tau_{i}^{\mathrm{k}}). By incorporating hi,Διk(𝐩lΔι),Δι𝒯i(τik)h_{i,\Delta_{\iota}}^{\mathrm{k}}(\mathbf{p}_{l\in\Delta_{\iota}}),\forall\Delta_{\iota}\in\mathcal{T}_{i}(\tau_{i}^{\mathrm{k}}) together, we obtain

hik(𝐩i,𝐩l𝒩i)=ι=1mi(τik)hi,Διk,\displaystyle h_{i}^{\mathrm{k}}(\mathbf{p}_{i},\mathbf{p}_{l\in{\mathcal{N}}_{i}})=\bigwedge_{\iota=1}^{m_{i}(\tau_{i}^{\mathrm{k}})}h_{i,\Delta_{\iota}}^{\mathrm{k}}, (17)

the zero-superlevel set of which signifies the constraint Quadcopter ii must satisfy to prevent the formation in-between all triangular subgraphs 𝒯i(τik)\mathcal{T}_{i}(\tau_{i}^{\mathrm{k}}). Then, the set

𝒞i={(𝐩i,t)4×t0hi(𝐩i,𝐩l𝒩i,t)0},\displaystyle\mathcal{C}_{i}=\{(\mathbf{p}_{i},\!t)\in{\mathbb{R}}^{4}\times{\mathbb{R}}_{\geq t_{0}}\mid h_{i}(\mathbf{p}_{i},\mathbf{p}_{l\in{\mathcal{N}}_{i}},t)\geq 0\}, (18)

with HNCBF

hi(𝐩i,𝐩l𝒩i,t)=hik(𝐩i,𝐩l𝒩i),k,t[τik,τik+1),𝐩i4,\displaystyle\begin{split}&h_{i}(\mathbf{p}_{i},\mathbf{p}_{l\in{\mathcal{N}}_{i}},t)=h_{i}^{\mathrm{k}}(\mathbf{p}_{i},\mathbf{p}_{l\in{\mathcal{N}}_{i}}),\\ &\hskip 28.45274pt\forall{\mathrm{k}}\in{\mathbb{N}},\forall t\in[\tau_{i}^{\mathrm{k}},\tau_{i}^{\mathrm{k}+1}),\forall\mathbf{p}_{i}\in{\mathbb{R}}^{4},\end{split} (19)

signifies the prevention of a hole is satisfied for Quadcopter ii during the entire mission.

The goal of this paper is to present a visual coverage framework that prevents the appearance of a hole by guaranteeing the hybrid forward invariance of the set 𝒞i,i𝒩\mathcal{C}_{i},\forall i\in\mathcal{N}. More specifically, during a monitoring task, we ensure no hole appears among FOVs of quadcopters if the changes of the graph do not make holes instantaneously in-between 𝒯i(t),i𝒩\mathcal{T}_{i}(t),\forall i\in\mathcal{N}. Note that, in the proposed scenario, there is a possibility that changes of a graph 𝒢(t)\mathcal{G}(t) yield a sudden appearance of a hole. For instance, as illustrated in the right part of Fig. 3, bd(i=1ni)\mathrm{bd}(\bigcup_{i=1}^{n}\mathcal{F}_{i}) can have a dent. If the right-upper and right-lower quadcopters’ FOVs make overlap, a new subtrianglar graph is created. Although this graph change could alter the dent into a hole, the robustness of the forward invariance of the set 𝒞i\mathcal{C}_{i} can eliminate this suddenly appeared hole in most cases as will be shown in the simulation.

IV Prevention of Coverage Holes

In this section, we first derive the NCBF hi,Διk(𝐩lΔι)h_{i,\Delta_{\iota}}^{\mathrm{k}}(\mathbf{p}_{l\in\Delta_{\iota}}) whose zero superlevel set encodes the prevention of a hole in Δι𝒯i(τik)\Delta_{\iota}\in\mathcal{T}_{i}(\tau_{i}^{\mathrm{k}}) during a time interval [τik,τik+1)[\tau_{i}^{\mathrm{k}},\tau_{i}^{\mathrm{k}+1}). Then, to prevent a formation of a hole, we develop a distributed algorithm that provides the hybrid forward invariance property of the set 𝒞i\mathcal{C}_{i} expressed as a superlevel set of HNCBF hih_{i}. Finally, we show that hi,Διkh_{i,\Delta_{\iota}}^{\mathrm{k}} composing hih_{i} is a valid NCBF except for pathological points, hence the proposed algorithm can generically find the control input preventing a hole. In each procedure, we utilize the favorable properties of the power diagram incorporated in the designed CBFs.

IV-A Control Barrier Functions Preventing a Hole

In this subsection, we formalize the condition to be satisfied for preventing a hole during a time interval [τik,τik+1)[\tau_{i}^{\mathrm{k}},\tau_{i}^{\mathrm{k}+1}). As discussed in Section III-C, an appearance of a hole in-between Δι={i,j,k}𝒯i(τik)\Delta_{\iota}=\{i,j,k\}\in\mathcal{T}_{i}(\tau_{i}^{\mathrm{k}}) can be prevented by satisfying vijkiv_{ijk}\in\mathcal{F}_{i}. However, as shown in Fig. 4(c), this condition is too conservative because certain movements of quadcopters are restricted, even if such movements do not form a hole. To alleviate this condition, let us consider the differences between Figs. 4(a) and (c), where a hole only appears in Fig. 4(a) although vijkv_{ijk} is outside of i\mathcal{F}_{i} in either case. Then, we realize that, in Fig. 4(c), vijkv_{ijk} is outside of IJK\triangle{IJK} while the deployment in Fig. 4(a) is not. This observation leads us to introduce the following condition to prevent a formation of a hole

¬(vijkIJK)(vijki),\displaystyle\lnot\left(v_{ijk}\in\triangle{IJK}\right)\lor\left(v_{ijk}\in\mathcal{F}_{i}\right), (20)

which requires Quadcopter ii to satisfy vijkiv_{ijk}\in\mathcal{F}_{i} only when vijkIJKv_{ijk}\in\triangle{IJK} holds. The following theorem in our previous work [51] formalizes the relationship between (20) and the existence of a hole.

Theorem 3.

Let us consider Quadcopters i,ji,j, and kk, where each quadcopter’s FOV intersects with that of the other two quadcopters. Then, there is no hole in-between the three quadcopters if and only if the condition (20) is satisfied.

Proof.

See Theorem 1 in our conference work [51]. ∎

Refer to caption

(a)

Refer to caption

(b)

Refer to caption

(c)
Figure 4: Three cases of FOV configurations with IJK\triangle{IJK} depicted as a purple triangle. (a) illustrates a hole in the sense of Definition 6, where vijkv_{ijk} are not contained by any of a trio. Neither (b) nor (c) has a hole, but vijkv_{ijk} lies outside of FOVs in (c). This signifies that if we utilize a constraint vijkiv_{ijk}\in\mathcal{F}_{i} only, the configuration (c) is also restricted as well as (a), even if (c) does not have any holes.

The condition vijkIJKv_{ijk}\in\triangle{IJK} appeared in (20) can be described as

(hi,Δι,IJKk>0)(hi,Δι,JKIk>0)(hi,Δι,KIJk>0),\displaystyle(h_{i,\Delta_{\iota},IJK}^{\mathrm{k}}\!>\!0)\!\land\!(h_{i,\Delta_{\iota},JKI}^{\mathrm{k}}\!>\!0)\!\land\!(h_{i,\Delta_{\iota},KIJ}^{\mathrm{k}}\!>\!0), (21)

where

hi,Δι,IJKk\displaystyle h_{i,\Delta_{\iota},IJK}^{\mathrm{k}} =𝐞z(IJ×Ivijk)𝐞z(IJ×IK)\displaystyle=\frac{{\bf e}_{z}^{\top}\left(\overrightarrow{IJ}\times\overrightarrow{Iv_{ijk}}\right)}{{\bf e}_{z}^{\top}\left(\overrightarrow{IJ}\times\overrightarrow{IK}\right)} (22)

is a candidate CBF satisfying hi,Δι,IJKk>0h_{i,\Delta_{\iota},IJK}^{\mathrm{k}}>0 if and only if vijkv_{ijk} and KK exist in the same half-plane separated by the line IJIJ. Note that the denominator of (22) does not become 0 under Assumption 1. By definition in (22),

hi,Δι,IJKk=hj,Δι,IJKk=hk,Δι,IJKk\displaystyle h_{i,\Delta_{\iota},IJK}^{\mathrm{k}}\!=\!h_{j,\Delta_{\iota},IJK}^{\mathrm{k}}\!=\!h_{k,\Delta_{\iota},IJK}^{\mathrm{k}} (23)

holds for Δι={i,j,k}𝒯i(τik)\Delta_{\iota}=\{i,j,k\}\in\mathcal{T}_{i}(\tau_{i}^{\mathrm{k}}), where the same relationship is satisfied for hi,Δι,JKIkh_{i,\Delta_{\iota},JKI}^{\mathrm{k}} and hi,Δι,KIJkh_{i,\Delta_{\iota},KIJ}^{\mathrm{k}}. The other condition vijkiv_{ijk}\in\mathcal{F}_{i} in (20) is expressed with another CBF candidate as

hi,Δι,k=(rziλi)2[vijkxvijky][xiyi]2.\displaystyle h_{i,\Delta_{\iota},\mathcal{F}}^{\mathrm{k}}=\left(r\frac{z_{i}}{\lambda_{i}}\right)^{2}-\left\|[v_{ijk}^{x}~{}v_{ijk}^{y}]^{\top}-[x_{i}~{}y_{i}]^{\top}\right\|^{2}. (24)

The condition (20) preventing a hole in a triangular subgraph Δι={i,j,k}𝒯i(τik)\Delta_{\iota}=\{i,j,k\}\in\mathcal{T}_{i}(\tau_{i}^{\mathrm{k}}) can be written as

¬((hi,Δι,IJKk>0)(hi,Δι,JKIk>0)(hi,Δι,KIJk>0))\displaystyle\lnot\!\left((h_{i,\Delta_{\iota},IJK}^{\mathrm{k}}\!>\!0)\land(h_{i,\Delta_{\iota},JKI}^{\mathrm{k}}\!>\!0)\land(h_{i,\Delta_{\iota},KIJ}^{\mathrm{k}}\!>\!0)\right)
(hi,Διk>0).\displaystyle\hskip 14.22636pt\lor(h_{i,\Delta_{\iota}\mathcal{F}}^{\mathrm{k}}\!>\!0). (25)

From (7) and (25), the NCBFs of Quadcopter ii to be considered for preventing the formation of holes in-between all triangular subgraphs Δι𝒯i(t)\Delta_{\iota}\in\mathcal{T}_{i}(t) on the k\mathrm{k}-th interval are described as

hi,Διk(𝐩lΔι)=max{1,,4}{hi,Δι,k},Δι𝒯i(τik).\displaystyle h_{i,\Delta_{\iota}}^{\mathrm{k}}(\mathbf{p}_{l\in\Delta_{\iota}})\!=\!\max_{\ell\in\{1,\cdots,4\}}\{h_{i,\Delta_{\iota},\ell}^{\mathrm{k}}\},\forall\Delta_{\iota}\in\mathcal{T}_{i}(\tau_{i}^{\mathrm{k}}). (26)

Here, we define hi,Δι,kh_{i,\Delta_{\iota},\ell}^{\mathrm{k}}, {1,,4}\ell\in\{1,\cdots,4\} for each triangular subgraph Δι={i,j,k}𝒯i(τik)\Delta_{\iota}=\{i,j,k\}\in\mathcal{T}_{i}(\tau_{i}^{\mathrm{k}}), where they correspond with hi,Δι,IJKk-h_{i,\Delta_{\iota},IJK}^{\mathrm{k}}, hi,Δι,JKIk-h_{i,\Delta_{\iota},JKI}^{\mathrm{k}}, hi,Δι,KIJk-h_{i,\Delta_{\iota},KIJ}^{\mathrm{k}}, and hi,Δι,kh_{i,\Delta_{\iota},\mathcal{F}}^{\mathrm{k}} in order for notational simplicity.

IV-B Algorithm for Preventing a Hole

This subsection presents the distributed algorithm that prevents the appearance of a hole in-between a team even under the graph 𝒢(t)\mathcal{G}(t) switches. Namely, the set 𝒞i\mathcal{C}_{i} in (18) defined with the HNCBF (19) and the NCBF (26) is rendered hybrid forward invariance by the algorithm. To calculate the control input in a distributed manner, we will utilize the symmetric property of the designed CBFs.

The hybrid forward invariance of the set 𝒞i\mathcal{C}_{i} can be guaranteed by satisfying the following constraint during each switching interval t[τik,τik+1)t^{\prime}\in[\tau_{i}^{\mathrm{k}},\tau_{i}^{\mathrm{k}+1})

h˙i,Διk(𝐩lΔι)α(hi,Διk(𝐩lΔι)),Δι𝒯i(τik)\displaystyle\dot{h}_{i,\Delta_{\iota}}^{\mathrm{k}}(\mathbf{p}_{l\in\Delta_{\iota}})\!\geq\!-\alpha(h_{i,\Delta_{\iota}}^{\mathrm{k}}(\mathbf{p}_{l\in\Delta_{\iota}})),\forall\Delta_{\iota}\!\in\!\mathcal{T}_{i}(\tau_{i}^{\mathrm{k}}) (27)

for every Carathéodry solution, for some locally Lipschtz extended class-𝒦\mathcal{K} function α:\alpha:{\mathbb{R}}\to{\mathbb{R}} [53]. However, the nonsmoothness exists in (26) hinders us from obtaining the time derivative h˙i,Διk\dot{h}_{i,\Delta_{\iota}}^{\mathrm{k}} via the usual chain rule.

As a remedy for this problem, we reformulate the constraint (27) by incorporating the gradients of all the functions comprising the almost-active set of functions as discussed in Remark 1. Then, the appearance of holes can be prevented by satisfying the following constraint on each interval

hi,Δι,k𝐩iui+hi,Δι,k𝐩juj+hi,Δι,k𝐩kukα(hi,Διk),\displaystyle\frac{\partial h_{i,\Delta_{\iota},\ell}^{\mathrm{k}}}{\partial\mathbf{p}_{i}}^{\top}\!u_{i}\!+\!\frac{\partial h_{i,\Delta_{\iota},\ell}^{\mathrm{k}}}{\partial\mathbf{p}_{j}}^{\top}\!u_{j}\!+\!\frac{\partial h_{i,\Delta_{\iota},\ell}^{\mathrm{k}}}{\partial\mathbf{p}_{k}}^{\top}\!u_{k}\!\geq\!-\alpha(h_{i,\Delta_{\iota}}^{\mathrm{k}}),
Ii,Δι,ϵk(𝐩lΔι),Δι𝒯i(τik).\displaystyle\hskip 8.5359pt\forall\ell\in I_{i,\Delta_{\iota},\epsilon}^{\mathrm{k}}(\mathbf{p}_{l\in\Delta_{\iota}}),~{}\forall\Delta_{\iota}\in\mathcal{T}_{i}(\tau_{i}^{\mathrm{k}}). (28)

with the almost-active set of functions

Ii,Δι,ϵk(𝐩lΔι)={|hi,Δι,k(𝐩lΔι)hi,Διk(𝐩lΔι)<ϵ}.\displaystyle\begin{split}&I_{i,\Delta_{\iota},\epsilon}^{\mathrm{k}}(\mathbf{p}_{l\in\Delta_{\iota}})=\\ &\hskip 14.22636pt\left\{\ell\;\middle|\;\left\|h_{i,\Delta_{\iota},\ell}^{\mathrm{k}}(\mathbf{p}_{l\in\Delta_{\iota}})-h_{i,\Delta_{\iota}}^{\mathrm{k}}(\mathbf{p}_{l\in\Delta_{\iota}})\right\|<\epsilon\right\}.\end{split} (29)

However, the input uiu_{i} satisfying (28) cannot be calculated in a distributed manner because it requires input information of other agents lΔι\{i}l\in\Delta_{\iota}\backslash\{i\}. Furthermore, in order to evaluate the second term of the left side of (28), it requires the information of both hi,Δι,kh_{i,\Delta_{\iota},\ell}^{\mathrm{k}} and uju_{j}; namely, neither Quadcopter ii nor jj can calculate it alone. The same issue occurs in the third term. The following theorem proves that condition (28) can be divided into three conditions, where each of them can be evaluated in a distributed manner by Quadcopters ii, jj, and kk, respectively.

Theorem 4.

Suppose that holes in the sense of Definition 6 do not appear in-between agents at the initial time τik\tau_{i}^{\mathrm{k}} of an interval [τik,τik+1)[\tau_{i}^{\mathrm{k}},\tau_{i}^{\mathrm{k}+1}), k{1,}\mathrm{k}\in\{1,\cdots\infty\}. Then, any measurable and locally bounded controllers uiu_{i}, i𝒩i\in\mathcal{N} satisfying

hi,Δι,k(𝐩lΔι)𝐩iui13α(hi,Διk(𝐩lΔι)),Ii,Δι,ϵk(𝐩lΔι),Δι𝒯i(τik)\displaystyle\begin{split}&\frac{\partial h_{i,\Delta_{\iota},\ell}^{\mathrm{k}}(\mathbf{p}_{l\in\Delta_{\iota}})}{\partial\mathbf{p}_{i}}^{\top}u_{i}\geq-\frac{1}{3}\alpha\left(h_{i,\Delta_{\iota}}^{\mathrm{k}}(\mathbf{p}_{l\in\Delta_{\iota}})\right),\\ &\hskip 8.5359pt\forall\ell\in I_{i,\Delta_{\iota},\epsilon}^{\mathrm{k}}(\mathbf{p}_{l\in\Delta_{\iota}}),~{}\forall\Delta_{\iota}\in\mathcal{T}_{i}(\tau_{i}^{\mathrm{k}})\end{split} (30)

will render the safe set 𝒞i\mathcal{C}_{i} hybrid forward invariant.

Proof.

Let us consider the three agents {i,j,k}=Δι\{i,j,k\}=\Delta_{\iota}. We show the condition (28) can be distributed in the form of the equation (30) from the symmetric property of the designed NCBF hi,Διkh_{i,\Delta_{\iota}}^{\mathrm{k}}. First, from the equation (14) and (24), hi,Δι,kh_{i,\Delta_{\iota},\mathcal{F}}^{\mathrm{k}} can be expressed by the power distance as

hi,Δι,k=d𝒫(𝐩i,vijk).\displaystyle h_{i,\Delta_{\iota},\mathcal{F}}^{\mathrm{k}}=-d_{\mathcal{P}}(\mathbf{p}_{i},v_{ijk}). (31)

From the property of the power distance (15),

hi,Δι,k=hj,Δι,k=hk,Δι,k\displaystyle h_{i,\Delta_{\iota},\mathcal{F}}^{\mathrm{k}}=h_{j,\Delta_{\iota},\mathcal{F}}^{\mathrm{k}}=h_{k,\Delta_{\iota},\mathcal{F}}^{\mathrm{k}} (32)

holds. Second, from (23), the NCBFs evaluating the condition vijkIJKv_{ijk}\notin\triangle{IJK} takes the same value among {i,j,k}\{i,j,k\}. Hence, the synthesized NCBF (26) has the following symmetric property

hi,Διk=hj,Διk=hk,Διk\displaystyle h_{i,\Delta_{\iota}}^{\mathrm{k}}=h_{j,\Delta_{\iota}}^{\mathrm{k}}=h_{k,\Delta_{\iota}}^{\mathrm{k}} (33)

Considering the fact that the derivatives of hi,Διkh_{i,\Delta_{\iota}}^{\mathrm{k}}, hj,Διkh_{j,\Delta_{\iota}}^{\mathrm{k}}, and hk,Διkh_{k,\Delta_{\iota}}^{\mathrm{k}} take the same value among {i,j,k}𝒯i\{i,j,k\}\in\mathcal{T}_{i} from (33), the condition (28) can be decomposed into

hi,Δι,k(𝐩lΔι)𝐩iui13α(hi,Διk(𝐩lΔι)),\displaystyle\frac{\partial h_{i,\Delta_{\iota},\ell}^{\mathrm{k}}(\mathbf{p}_{l\in\Delta_{\iota}})}{\partial\mathbf{p}_{i}}^{\top}u_{i}\geq-\frac{1}{3}\alpha\left(h_{i,\Delta_{\iota}}^{\mathrm{k}}(\mathbf{p}_{l\in\Delta_{\iota}})\right), (34a)
hj,Δι,k(𝐩lΔι)𝐩juj13α(hj,Διk(𝐩lΔι)),\displaystyle\frac{\partial h_{j,\Delta_{\iota},\ell}^{\mathrm{k}}(\mathbf{p}_{l\in\Delta_{\iota}})}{\partial\mathbf{p}_{j}}^{\top}u_{j}\geq-\frac{1}{3}\alpha\left(h_{j,\Delta_{\iota}}^{\mathrm{k}}(\mathbf{p}_{l\in\Delta_{\iota}})\right), (34b)
hk,Δι,k(𝐩lΔι)𝐩kuk13α(hk,Διk(𝐩lΔι)).\displaystyle\frac{\partial h_{k,\Delta_{\iota},\ell}^{\mathrm{k}}(\mathbf{p}_{l\in\Delta_{\iota}})}{\partial\mathbf{p}_{k}}^{\top}u_{k}\geq-\frac{1}{3}\alpha\left(h_{k,\Delta_{\iota}}^{\mathrm{k}}(\mathbf{p}_{l\in\Delta_{\iota}})\right). (34c)

This means that if each quadcopter iΔιi\in\Delta_{\iota} satisfies the condition (30) Δι𝒯i(τik)\forall\Delta_{\iota}\in\mathcal{T}_{i}(\tau_{i}^{\mathrm{k}}), then the condition (28) is also satisfied. Notice that the inequalities (34b) and (34c) no longer contain either hi,Διkh_{i,\Delta_{\iota}}^{\mathrm{k}} or the gradients of its components, hence Quadcopters jj and kk can evaluate (34b) and (34c) alone, respectively. This completes the proof. ∎

Algorithm 1 Distributed Coverage Hole Prevention
  INPUT: Nominal controller: ui,nomu_{i,{\rm nom}}
        The state of the neighboring agents of ii: 𝐩l𝒩i\mathcal{\mathbf{p}}_{l\in{\mathcal{N}}_{i}}
        The set of triangular subgraphs containing ii: 𝒯i(τik)\mathcal{T}_{i}(\tau_{i}^{\mathrm{k}})
  OUTPUT: Controller preventing holes: uiu_{i}^{*}
  for ι=1:|𝒯i(τik)|\iota=1:|\mathcal{T}_{i}(\tau_{i}^{\mathrm{k}})| do
     hi,Διk(𝐩lΔι)max{hi,Δι,k}h_{i,\Delta_{\iota}}^{\mathrm{k}}(\mathbf{p}_{l\in\Delta_{\iota}})\leftarrow\max_{\ell}\{h_{i,\Delta_{\iota},\ell}^{\mathrm{k}}\}, {1,,4}\ell\in\{1,\cdots,4\}
     Ii,Δι,ϵkI_{i,\Delta_{\iota},\epsilon}^{\mathrm{k}}\leftarrow\emptyset
     for =1:4\ell=1:4 do
        if hi,Δι,khi,Διkϵ\|h_{i,\Delta_{\iota},\ell}^{\mathrm{k}}-h_{i,\Delta_{\iota}}^{\mathrm{k}}\|\leq\epsilon then
           Ii,Δι,ϵk(𝐩lΔι){}I_{i,\Delta_{\iota},\epsilon}^{\mathrm{k}}(\mathbf{p}_{l\in\Delta_{\iota}})\cup\{\ell\}
  uiargminui(uiui,nom)W(uiui,nom)u_{i}^{*}\leftarrow\mathop{\rm arg~{}min}\limits_{u_{i}}(u_{i}-u_{i,{\rm nom}})^{\top}W(u_{i}-u_{i,{\rm nom}})
  s.t.hi,Δι,k(𝐩lΔι)𝐩iui13α(hi,Διk(𝐩lΔι)){\rm s.t.}~{}\frac{\partial h_{i,\Delta_{\iota},\ell}^{\mathrm{k}}(\mathbf{p}_{l\in\Delta_{\iota}})}{\partial\mathbf{p}_{i}}^{\top}u_{i}\geq-\frac{1}{3}\alpha(h_{i,\Delta_{\iota}}^{\mathrm{k}}(\mathbf{p}_{l\in\Delta_{\iota}}))
           Ii,Δι,ϵk(𝐩lΔι),Δι𝒯i(τik)\forall\ell\in I_{i,\Delta_{\iota},\epsilon}^{\mathrm{k}}(\mathbf{p}_{l\in\Delta_{\iota}}),~{}\forall\Delta_{\iota}\in\mathcal{T}_{i}(\tau_{i}^{\mathrm{k}})

Theorem 4 signifies that each quadcopter can calculate the NCBF condition (30) in a distributed manner to render the admissible set 𝒞i\mathcal{C}_{i} hybrid forward invariant. More specifically, if the state trajectory does not leave the admissible set 𝒞i\mathcal{C}_{i} at the initial time τik\tau_{i}^{\mathrm{k}} of the switching interval t[τik,τik+1)t^{\prime}\in[\tau_{i}^{\mathrm{k}},\tau_{i}^{\mathrm{k}+1}), the formation of holes during each switching interval t[τik,τik+1)t^{\prime}\in[\tau_{i}^{\mathrm{k}},\tau_{i}^{\mathrm{k}+1}) can be prevented by a control input satisfying the condition (30). Therefore, given a nominal control input ui,nomu_{i,{\rm nom}} for maximizing the monitoring performance, which will be presented in Section V, the QP modifying ui,nomu_{i,{\rm nom}} minimally invasive way to prevent the appearance of holes during each switching interval t[τik,τik+1)t^{\prime}\in[\tau_{i}^{\mathrm{k}},\tau_{i}^{\mathrm{k}+1}) can be expressed as

ui=argminui4(uiui,nom)W(uiui,nom)s.t.hi,Δι,k(𝐩lΔι)𝐩iui13α(hi,Διk(𝐩lΔι)),Ii,Δι,ϵk(𝐩lΔι),Δι𝒯i(τik),\begin{split}&u_{i}^{*}=\mathop{\rm arg~{}min}\limits_{u_{i}\in{\mathbb{R}}^{4}}(u_{i}-u_{i,{\rm nom}})^{\top}W(u_{i}-u_{i,{\rm nom}})\\ &{\rm s.t.}~{}\frac{\partial h_{i,\Delta_{\iota},\ell}^{\mathrm{k}}(\mathbf{p}_{l\in\Delta_{\iota}})}{\partial\mathbf{p}_{i}}^{\top}u_{i}\geq-\frac{1}{3}\alpha(h_{i,\Delta_{\iota}}^{\mathrm{k}}(\mathbf{p}_{l\in\Delta_{\iota}})),\\ &\hskip 8.5359pt\forall\ell\in I_{i,\Delta_{\iota},\epsilon}^{\mathrm{k}}(\mathbf{p}_{l\in\Delta_{\iota}}),~{}\forall\Delta_{\iota}\in\mathcal{T}_{i}(\tau_{i}^{\mathrm{k}}),\end{split} (35)

where W=diag(1,1,1,wλ)W={\rm diag}(1,1,1,w_{\lambda}) is the weighting matrix that adjusts the unit differences between pip_{i} and λi\lambda_{i}. The whole procedure is presented in Algorithm 1.

Remark 2.

The proposed algorithm assumes that each quadcopter can accurately estimate its position and attitude. Although the accuracy of the attitude estimation of the quadcopters generally has sufficient performance, e.g., around a few degrees in [61], the position estimation could contain an error depending on the estimation method, such as GNSS [62, 63]. If an upper bound of the estimation error is known a priori, one possible remedy to prevent holes even with estimation uncertainties could be to formulate a guaranteed FOV, the area guaranteed to be monitored by a quadcopter even with localization uncertainties, as presented in [25]. Because the guaranteed FOV constitutes the circular FOV, we can apply the proposed NCBFs to the power diagram based on the guaranteed FOV.

Remark 3.

If imperfect communication causes an error between the communicated and the actual state, one could employ the same approach as Remark 2 to deal with the error. If a communication edge is completely disconnected, a trio containing the disconnected edge faces difficulty calculating the NCBF. In such cases, a quadcopter could estimate the other quadcopters’ state while fixing the state that is difficult to estimate externally, e.g., a zoom level, to a predefined value.

Remark 4.

The proposed method considers the scenario where all quadcopters have a circular image plane. Considering other shapes of image planes would be worthwhile. However, other image shapes can pose challenges in formulating Voronoi partitions amenable to the NCBFs formulation. For instance, if we consider an elliptic image plane, a Voronoi partition generally becomes a complicated shape [64]. Still, as conducted in [20], by synchronizing the yaw-angle of the quadcopters, the Voronoi cell can be formulated as a convex polygon to which our proposed method can be extended.

IV-C Validity of the Proposed CBFs

As discussed in Section II, to show the validness of the HNCBF, we need to exhibit the validity of the proposed NCBFs. Since the individual gradients of the component functions in (25) at each point in time is smooth under Assumption 1, the designed NCBF is a smoothly composed candidate NCBF consisted by a Boolean operator in (7). Therefore, as a sufficient condition to guarantee the validity of the proposed NCBF, we investigate whether hi,Δι,k(𝐩lΔι)/𝐩i𝟎4×1\partial h_{i,\Delta_{\iota},\ell}^{\mathrm{k}}(\mathbf{p}_{l\in\Delta_{\iota}})/\partial\mathbf{p}_{i}\neq{\bf 0}_{4\times 1} holds for each CBF (21), (22), and (24) composing NCBF as discussed in Remark 1.

In our previous works [50, 51], complexities appeared in the derivative of the radical center vijkv_{ijk} with respect to 𝐩i\mathbf{p}_{i} hinder us from analyzing the condition hi,Δι,k(𝐩lΔι)/𝐩i𝟎4×1\partial h_{i,\Delta_{\iota},\ell}^{\mathrm{k}}(\mathbf{p}_{l\in\Delta_{\iota}})/\partial\mathbf{p}_{i}\neq{\bf 0}_{4\times 1} and elucidating the properties of each CBF’s derivative. To overcome this difficulty, we introduce a new coordinate frame Σd\Sigma_{d} on the environment \mathcal{E}, without loss of generality, that intends to simplify vijk/𝐩i\partial v_{ijk}/\partial\mathbf{p}_{i}. Since we intend to derive hi,Δι,k(𝐩lΔι)/𝐩i\partial h_{i,\Delta_{\iota},\ell}^{\mathrm{k}}(\mathbf{p}_{l\in\Delta_{\iota}})/\partial\mathbf{p}_{i}, the circles bd(j)\mathrm{bd}(\mathcal{F}_{j}) and bd(k)\mathrm{bd}(\mathcal{F}_{k}), namely 𝐩j\mathbf{p}_{j} and 𝐩k\mathbf{p}_{k}, are considered to have some constant values in this subsection. This corresponds with the fact that 𝐩j\mathbf{p}_{j} and 𝐩k\mathbf{p}_{k} are held constant when we calculate the partial derivative hi,Δι,k(𝐩lΔι)/𝐩i\partial h_{i,\Delta_{\iota},\ell}^{\mathrm{k}}(\mathbf{p}_{l\in\Delta_{\iota}})/\partial\mathbf{p}_{i}.

The coordinate frame Σd\Sigma_{d} on the environment \mathcal{E} is illustrated in Fig. 5. The introduced coordinate frame is arranged so that its xdx_{d}-axis and ydy_{d}-axis correspond with the line JKJK and the radical axis LjkL_{jk}, respectively. In addition, we define the position vector of a point qq with respect to Σd\Sigma_{d} as qdq^{d}, e.g., vijk=[vijkxvijky0]v_{ijk}=[v_{ijk}^{x}~{}v_{ijk}^{y}~{}0]^{\top} are denoted as vijkd=[vijkx,dvijky,d0]v_{ijk}^{d}=[v_{ijk}^{x,d}~{}v_{ijk}^{y,d}~{}0]^{\top} after it is transformed from Σw\Sigma_{w} to the coordinate frame Σd\Sigma_{d}. Note that the value of partial derivatives calculated in Σd\Sigma_{d} differs from those derived in Σw\Sigma_{w}. However, as both Σw\Sigma_{w} and Σd\Sigma_{d} are fixed in the environment, the analysis in Σd\Sigma_{d} is enough to inspect whether hi,Δι,k/𝐩i𝟎4×1\partial h_{i,\Delta_{\iota},\ell}^{\mathrm{k}}/\partial\mathbf{p}_{i}\neq{\bf 0}_{4\times 1} holds and derives the condition hi,Δι,k/𝐩i=𝟎4×1\partial h_{i,\Delta_{\iota},\ell}^{\mathrm{k}}/\partial\mathbf{p}_{i}={\bf 0}_{4\times 1} otherwise.

Considering the fact that the radical center vijkv_{ijk} is always on the radical axis LjkL_{jk}, the following condition is satisfied on the frame Σd\Sigma_{d}.

vijkx,d=0,\displaystyle v_{ijk}^{x,d}=0, (36)
vijkx,d𝐩i=𝟎4×1.\displaystyle\frac{\partial v_{ijk}^{x,d}}{\partial\mathbf{p}_{i}}={\bf 0}_{4\times 1}. (37)

Futhermore, vijky,dv_{ijk}^{y,d} coincides with the yy-intercept of the radical axis LijL_{ij}, and derived as

vijky,d=(xid2+yid2Rid2)(xjd2Rjd2)2yid,\displaystyle v_{ijk}^{y,d}=\frac{\left({x_{i}^{d}}^{2}+{y_{i}^{d}}^{2}-{R_{i}^{d}}^{2}\right)-\left({x_{j}^{d}}^{2}-{R_{j}^{d}}^{2}\right)}{2y_{i}^{d}}, (38)

with Ri:=rzi/λiR_{i}:=rz_{i}/\lambda_{i} denoting the radius of bd(i)\mathrm{bd}(\mathcal{F}_{i}). Note that yid0y_{i}^{d}\neq 0 from Assumption 1.

Refer to caption
Figure 5: The coordinate frame Σd\Sigma_{d} introduced for calculation of partial derivatives of designed CBFs.

Refer to caption

(a)

Refer to caption

(b)
Figure 6: The condition that makes (a) hi,Δι,k/𝐩i=𝟎4×1\partial h_{i,\Delta_{\iota},\mathcal{F}}^{\mathrm{k}}/\partial\mathbf{p}_{i}={\bf 0}_{4\times 1} and (b) hi,Δι,IJKk/𝐩i=𝟎4×1\partial h_{i,\Delta_{\iota},IJK}^{\mathrm{k}}/\partial\mathbf{p}_{i}={\bf 0}_{4\times 1}, respectively. (a) hi,Δι,k/𝐩i=𝟎4×1\partial h_{i,\Delta_{\iota},\mathcal{F}}^{\mathrm{k}}/\partial\mathbf{p}_{i}={\bf 0}_{4\times 1} holds if and only if vijkv_{ijk} lies on the line JKJK. (b) hi,Δι,IJKk/𝐩i=𝟎4×1\partial h_{i,\Delta_{\iota},IJK}^{\mathrm{k}}/\partial\mathbf{p}_{i}={\bf 0}_{4\times 1} holds if and only if the radical axis LijL_{ij} is identical to the line JKJK.

We are now ready to analyze the validness of each CBF. The following lemma investigates hi,Δι,k/𝐩i\partial h_{i,\Delta_{\iota},\mathcal{F}}^{\mathrm{k}}/\partial\mathbf{p}_{i}.

Lemma 1.

Suppose that Assumption 1, zi>0z_{i}>0, and λi>0\lambda_{i}>0 hold. Then, except for 𝐩i\mathbf{p}_{i} which makes vijkv_{ijk} lie on the line JKJK, the function hi,Δι,kh_{i,\Delta_{\iota},\mathcal{F}}^{\mathrm{k}} in (24) is a valid CBF when ui4u_{i}\in{\mathbb{R}}^{4}.

Proof.

See Appendix A. ∎

From (15) and (31), the condition derived in Lemma 1 must make the derivatives of d𝒫(𝐩j,vijk)d_{\mathcal{P}}(\mathbf{p}_{j},v_{ijk}) and d𝒫(𝐩k,vijk)d_{\mathcal{P}}(\mathbf{p}_{k},v_{ijk}) zero vectors too. Lemma 1 proves such a situation, in which the transitions of vijkv_{ijk} on LjkL_{jk} do not influence the value of d𝒫(𝐩j,vijk)d_{\mathcal{P}}(\mathbf{p}_{j},v_{ijk}) and d𝒫(𝐩k,vijk)d_{\mathcal{P}}(\mathbf{p}_{k},v_{ijk}), only happens when both the line JvijkJv_{ijk} and KvijkKv_{ijk} are orthogonal to the radical axis LjkL_{jk} as shown in Fig. 6LABEL:sub@fig:diff_h_F. Nevertheless, the condition vijkd,y=0v_{ijk}^{d,y}=0 is generally non-stationary points, hence the state of Quadcopter ii does not keep satisfying such an ill condition. Hence, in practice, the condition induced from hi,Δι,kh_{i,\Delta_{\iota},\mathcal{F}}^{\mathrm{k}} can generically yield a valid controller during a monitoring mission.

We next derive the following lemma that indicates hi,Δι,JKIkh_{i,\Delta_{\iota},JKI}^{\mathrm{k}} is a valid CBF.

Lemma 2.

Suppose that Assumption 1, zi>0z_{i}>0, and λi>0\lambda_{i}>0 hold. Then, hi,Δι,JKIkh_{i,\Delta_{\iota},JKI}^{\mathrm{k}} is a valid CBF when ui4u_{i}\in{\mathbb{R}}^{4}.

Proof.

See Appendix B.

Finally, we investigate hi,Δι,IJKkh_{i,\Delta_{\iota},IJK}^{\mathrm{k}} and hi,Δι,KIJkh_{i,\Delta_{\iota},KIJ}^{\mathrm{k}}.

Lemma 3.

Suppose that Assumption 1 and zi>0z_{i}>0 hold. Then, except for 𝐩i\mathbf{p}_{i} which makes the radical axis LijL_{ij} lie on the line JKJK, the function hi,Δι,IJKkh_{i,\Delta_{\iota},IJK}^{\mathrm{k}} is a valid CBF when ui4u_{i}\in{\mathbb{R}}^{4}.

Proof.

See Appendix C.

Since hi,Δι,IJKkh_{i,\Delta_{\iota},IJK}^{\mathrm{k}} and hi,Δι,KIJkh_{i,\Delta_{\iota},KIJ}^{\mathrm{k}} are symmetric with respect to ydy_{d}-axis, the following lemma immediately holds from Lemma 3.

Lemma 4.

Suppose that Assumption 1 and zi>0z_{i}>0 hold. Then, except for 𝐩i\mathbf{p}_{i} which makes the radical axis LkiL_{ki} lie on the line JKJK, the function hi,Δι,KIJkh_{i,\Delta_{\iota},KIJ}^{\mathrm{k}} is a valid CBF when ui4u_{i}\in{\mathbb{R}}^{4}.

Fig. 6LABEL:sub@fig:diff_h_IJK illustrates the condition, where hi,Δι,IJKk/𝐩i=𝟎4×1\partial h_{i,\Delta_{\iota},IJK}^{\mathrm{k}}/\mathbf{p}_{i}={\bf 0}_{4\times 1} holds. Lemma 3 and 4 revealed that the derivatives of the proposed CBFs do not become zero vectors except for limited conditions. Similar to the discussion about hi,Δι,kh_{i,\Delta_{\iota},\mathcal{F}}^{\mathrm{k}}, Quadcopter ii does not keep satisfying this condition. Therefore, the controller can render an input that satisfies the constraint incurred by hi,Δι,IJKkh_{i,\Delta_{\iota},IJK}^{\mathrm{k}} and hi,Δι,KIJkh_{i,\Delta_{\iota},KIJ}^{\mathrm{k}} in practice.

From the discussion in this subsection, it is ensured that, except for a few pathological conditions, Algorithm 1 employing the QP (35) can find the control input preventing a hole in-between neighboring agents determined by triangular subgraphs 𝒯i(t)\mathcal{T}_{i}(t). This results in the following theorem about the validity of the proposed NCBF.

Theorem 5.

Suppose that the Assumption 1, zi>0z_{i}>0, λi>0\lambda_{i}>0, and 𝒞ik\mathcal{C}_{i}^{\mathrm{k}}\neq\emptyset hold. Then, with ui4u_{i}\in{\mathbb{R}}^{4}, hi,Διkh_{i,\Delta_{\iota}}^{\mathrm{k}} in (26) is a valid NCBF except for 𝐩lΔι\mathbf{p}_{l\in\Delta_{\iota}} satisfying either of the following conditions.

  • (vijkJK)(Ii,Δι,ϵks.t.hi,Δι,k=hi,Δι,k)(v_{ijk}\in JK)~{}\land~{}(\exists\ell\in I_{i,\Delta_{\iota},\epsilon}^{\mathrm{k}}~{}{\rm s.t.}~{}h_{i,\Delta_{\iota},\ell}^{\mathrm{k}}=h_{i,\Delta_{\iota},\mathcal{F}}^{\mathrm{k}})

  • (Lij=JK)(Ii,Δι,ϵks.t.hi,Δι,k=hi,Δι,IJKk)(L_{ij}=JK)~{}\land~{}(\exists\ell\in I_{i,\Delta_{\iota},\epsilon}^{\mathrm{k}}~{}{\rm s.t.}~{}h_{i,\Delta_{\iota},\ell}^{\mathrm{k}}=h_{i,\Delta_{\iota},IJK}^{\mathrm{k}})

  • (Lki=JK)(Ii,Δι,ϵks.t.hi,Δι,k=hi,Δι,KIJk)(L_{ki}=JK)~{}\land~{}(\exists\ell\in I_{i,\Delta_{\iota},\epsilon}^{\mathrm{k}}~{}{\rm s.t.}~{}h_{i,\Delta_{\iota},\ell}^{\mathrm{k}}=h_{i,\Delta_{\iota},KIJ}^{\mathrm{k}})

Proof.

From Lemma 1-4, hi,Δι,k(𝐩lΔι)/𝐩i𝟎4×1\partial h_{i,\Delta_{\iota},\ell}^{\mathrm{k}}(\mathbf{p}_{l\in\Delta_{\iota}})/\partial\mathbf{p}_{i}\neq{\bf 0}_{4\times 1} holds for all agents composing Δι\Delta_{\iota}, in the domain 𝒟ik\mathcal{D}_{i}^{\mathrm{k}} except for 𝐩lΔι\mathbf{p}_{l\in\Delta_{\iota}} satisfying either of the above three conditions. Namely, if neither of the three conditions holds, there exists an input ui4u_{i}\in{\mathbb{R}}^{4} satisfying constraints in both forms (28) and (30). ∎

Theorem 5 guarantees that the QP (35) in each switching interval k{\mathrm{k}}\in{\mathbb{N}} yields a control input preventing the appearance of a hole in most parts of its domain. Hence, from Theorem 2, the proposed distributed algorithm can render the set 𝒞i\mathcal{C}_{i} hybrid forward invariant except for the pathological conditions stated in Theorem 5. Note that Theorem 5 presumes 𝒞ik\mathcal{C}_{i}^{\mathrm{k}}\neq\emptyset holds. This corresponds with the fact that Quadcopter ii always has a trivial solution to eliminate a hole, where Quadcopter ii expands its FOV to cover other Quadcopters FOVs l,l𝒩i\mathcal{F}_{l},~{}\forall l\in\mathcal{N}_{i} entirely. In summary, the proposed QP (35) has a feasible solution for preventing holes, except for a few limited conditions that do not cause severe issues in practice.

V Coverage Control

Having designed the control method that prevents the appearance of a hole in-between a team, we present the nominal control input ui,nomu_{i,{\rm nom}} in (35) that maximizes the monitoring quality. The proposed control input improves a coverage cost that simultaneously serves two objectives: (a) quantifying the performance of all the cameras, including the appropriate zoom level and distance from the ground and (b) reducing the overlaps of FOVs among a team.

The monitoring performance of a point q𝒬q\in\mathcal{Q} can be quantified with the model proposed in [17],

f(𝐩i,q)=fpers(𝐩i,q)fres(𝐩i,q),f(\mathbf{p}_{i},q)=f_{\mathrm{pers}}(\mathbf{p}_{i},q)f_{\mathrm{res}}(\mathbf{p}_{i},q), (39)

with fpers(𝐩i,q)f_{\mathrm{pers}}(\mathbf{p}_{i},q) characterizing the perspective quality

fpers(𝐩i,q):=λi2+r2λi2+r2λi(ziqpiλiλi2+r2),f_{\mathrm{pers}}(\mathbf{p}_{i},q):=\frac{\sqrt{\lambda_{i}^{2}+r^{2}}}{\sqrt{\lambda_{i}^{2}+r^{2}}-\lambda_{i}}\left(\frac{z_{i}}{\|q-p_{i}\|}-\frac{\lambda_{i}}{\sqrt{\lambda_{i}^{2}+r^{2}}}\right),

and fres(𝐩i,q)f_{\mathrm{res}}(\mathbf{p}_{i},q) the loss of resolution

fres(𝐩i,q):=(λiλi2+r2)κexp((qpiM)22σ2).f_{\mathrm{res}}(\mathbf{p}_{i},q):=\left(\frac{\lambda_{i}}{\sqrt{\lambda_{i}^{2}+r^{2}}}\right)^{\kappa}\text{exp}\left(-\frac{(\|q-p_{i}\|-M)^{2}}{2\sigma^{2}}\right).

Note that the parameters κ,σ>0\kappa,\sigma>0 signify the spatial resolution property of a camera, and M>0M>0 models the desired distance to capture an environment. Note that fresf_{\textrm{res}} renders a higher value as the focal length λi\lambda_{i}, namely the zoom level, increases, though the size of FOV becomes smaller. If a point q𝒬q\in\mathcal{Q} is not in i\mathcal{F}_{i}, then we set

f(𝐩i,q)=0,qi.f(\mathbf{p}_{i},q)=0,\quad q\notin\mathcal{F}_{i}.

The quality of coverage achieved by the team of quadcopters is characterized as

(𝐩)=𝒬maxi𝒩f(𝐩i,q)ϕ(q)dq,\mathcal{H}_{\mathcal{M}}(\mathbf{p})=\int_{\mathcal{Q}}\max_{i\in\mathcal{N}}f(\mathbf{p}_{i},q)\phi(q)\mathrm{d}q, (40)

with 𝐩=[𝐩1,,𝐩n]\mathbf{p}=[\mathbf{p}_{1}^{\top},\cdots,\mathbf{p}_{n}^{\top}]^{\top} and a density function ϕ(q)\phi(q), which achieves a higher value when the mission space 𝒬\mathcal{Q} is well monitored. By introducing the region allocated to Quadcopter ii according to the conic Voronoi diagram [17]

𝒱i(𝐩)={q𝒬if(𝐩i,q)f(𝐩j,q),j𝒩\{i}},\mathcal{V}_{i}(\mathbf{p})\!=\!\{q\in\mathcal{Q}\cap\mathcal{F}_{i}\mid f(\mathbf{p}_{i},q)\!\geq\!f(\mathbf{p}_{j},q),j\in\mathcal{N}\backslash\{i\}\}, (41)

the cost in (40) can be rewritten as

(𝐩)=i𝒩𝒱i(𝐩)f(𝐩i,q)ϕ(q)dq.\mathcal{H}_{\mathcal{M}}(\mathbf{p})=\sum_{i\in\mathcal{N}}\int_{\mathcal{V}_{i}(\mathbf{p})}f(\mathbf{p}_{i},q)\phi(q)\mathrm{d}q. (42)

However, the coverage cost (42) does not penalize the overlaps of FOVs, which might lead several quadcopters to monitor a same region. These overlaps of FOVs can deteriorate the monitoring performance since a team could potentially monitor a wider area by prompting those quadcopters to cover different areas. Let us define the region monitored by Quadcopter ii where another quadcopter in a team has a better sensing quality as

𝒱¯i(𝐩)={q𝒬if(𝐩i,q)<f(𝐩j,q),j𝒩\{i}}.\bar{\mathcal{V}}_{i}(\mathbf{p})=\{q\in\mathcal{Q}\cap\mathcal{F}_{i}\mid f(\mathbf{p}_{i},q)<f(\mathbf{p}_{j},q),j\in\mathcal{N}\backslash\{i\}\}.

Then, the performance loss induced by the overlaps of FOVs is evaluated as

𝒪(𝐩)=i𝒩𝒱¯i(𝐩)f(𝐩i,q)ϕ(q)dq.\mathcal{H}_{\mathcal{O}}(\mathbf{p})=\sum_{i\in\mathcal{N}}\int_{\bar{\mathcal{V}}_{i}(\mathbf{p})}f(\mathbf{p}_{i},q)\phi(q)\mathrm{d}q. (43)

As we are interested in minimizing the overlap of FOVs evaluated in (43) while maximizing the coverage quality in (42), the overall objective can be encoded as

(𝐩)=(𝐩)w𝒪(𝐩),\mathcal{H}(\mathbf{p})=\mathcal{H}_{\mathcal{M}}(\mathbf{p})-w\mathcal{H}_{\mathcal{O}}(\mathbf{p}), (44)

with the weight w>0w>0.

The nominal control input ui,nomu_{i,\rm nom} to maximize the objective function (44) can be obtained in a distributed manner by following a gradient-ascent method as

ui,nom=(𝐩)𝐩i,i𝒩,\displaystyle u_{i,{\rm nom}}=\frac{\partial\mathcal{H}(\mathbf{p})}{\partial\mathbf{p}_{i}},\quad i\in\mathcal{N}, (45)

In our conference work [50], the gradient of \mathcal{H} is derived as

(𝐩)𝐩i=𝒱if(𝐩i,q)𝐩iϕ(q)𝑑qw𝒱¯if(𝐩i,q)𝐩iϕ(q)dq.\frac{\partial\mathcal{H}(\mathbf{p})}{\partial\mathbf{p}_{i}}=\int_{\mathcal{V}_{i}}\frac{\partial f(\mathbf{p}_{i},q)}{\partial\mathbf{p}_{i}}^{\top}\phi(q)dq-w\int_{\bar{\mathcal{V}}_{i}}\frac{\partial f(\mathbf{p}_{i},q)}{\partial\mathbf{p}_{i}}^{\top}\phi(q)\mathrm{d}q. (46)

The following theorem in our conference paper [50] guarantees the convergence of the proposed coverage input ui,nomu_{i,\rm nom}.

Theorem 6.

Let Quadcopter ii, with state 𝐩i=[piλi]\mathbf{p}_{i}=[p_{i}^{\top}~{}\lambda_{i}]^{\top}, evolve according to the control law 𝐩˙i=u\dot{\mathbf{p}}_{i}=u, with

u=𝒱if(𝐩i,q)𝐩iϕ(q)dq𝒱¯if(𝐩i,q)𝐩iϕ(q)dq,u=\int_{\mathcal{V}_{i}}\frac{\partial f(\mathbf{p}_{i},q)}{\partial\mathbf{p}_{i}}^{\top}\phi(q)\mathrm{d}q-\int_{\bar{\mathcal{V}}_{i}}\frac{\partial f(\mathbf{p}_{i},q)}{\partial\mathbf{p}_{i}}^{\top}\phi(q)\mathrm{d}q, (47)

then, as tt\to\infty, the team of quadcopters will converge to a critical point of the locational cost in (44).

Proof.

See Theorem 1 in our conference work [50]. ∎

Remark 5.

The computational complexity of the proposed control strategy can be calculated by evaluating the three processes involved: the computation of the power diagram, the QP optimization problem (35), and the coverage control input (47). First, the computational complexity of finding the Voronoi cell of Quadcopter ii in a distributed manner is known as 𝒪(Milog(Mi))\mathcal{O}(M_{i}\log(M_{i})), where MiM_{i} stands for the number of neighbors Quadcopter ii has to consider. In the worst-case scenario, where Quadcopter ii’s FOV is overlapped with all others’ FOVs, the computational complexity is 𝒪((n1)log(n1))\mathcal{O}((n-1)\log(n-1)). Second, the QP (35) can be solved by the interior point method, the computational complexity of which is 𝒪(N3.5)\mathcal{O}(N^{3.5}), where NN stands for the dimension of the optimization variable. Since the optimization variable of the QP (35) is 𝐩i4\mathbf{p}_{i}~{}\in~{}{\mathbb{R}}^{4}, (N=4N=4), its computational burden is low. Finally, the coverage control input is calculated by discretizing the integral in (47), similar to [23]. Its computational complexity depends on how many grids we utilize for a discretized approximation. In the current implementation, the computation time of (47) is around several milliseconds. More details on the computational complexity of calculating the Voronoi cell, the QP with CBF, and the coverage control law can be found in [65], [37], and [23], respectively.

VI Simulations and Experiments

VI-A Comparison between NCBF hi,Διkh_{i,\Delta_{\iota}}^{\mathrm{k}} and CBF hi,Δι,kh_{i,\Delta_{\iota},\mathcal{F}}^{\mathrm{k}}

We first exemplify how the proposed NCBF hi,Διkh_{i,\Delta_{\iota}}^{\mathrm{k}} prevents a hole while reducing too conservative behavior that appears in the case if we utilize hi,Δι,kh_{i,\Delta_{\iota},\mathcal{F}}^{\mathrm{k}} alone, as discussed in Section IV-A. Minimizing how much the nominal controller, such as the coverage controller (45), is modified is crucial for optimizing the coverage performance because too conservative constraints hinder the controller from maximizing the coverage cost, resulting in a significant deterioration of the monitoring performance. Let us consider a team of three quadcopters composing Δι={i,j,k}\Delta_{\iota}=\{i,j,k\}, where the green Quadcopter ii moves upwards while the other two quadcopters stay in the initial positions, as shown in Fig. 7. The power diagram is depicted in blue, with IJK\triangle{IJK} in red. Note that the intersection of three boundaries corresponds with the radical center vijkv_{ijk}.

Fig. 7LABEL:sub@fig:sim_trio_Initial depicts the initial configuration of the three quadcopters. Figs. 7LABEL:sub@fig:sim_trio_NCBF1 and LABEL:sub@fig:sim_trio_NCBF2 show the simulation results with the proposed NCBF hi,Διkh_{i,\Delta_{\iota}}^{\mathrm{k}}. Because hi,Διkh_{i,\Delta_{\iota}}^{\mathrm{k}} allows the radical center vijkv_{ijk} to leave i\mathcal{F}_{i} when vijkIJKv_{ijk}\notin\triangle{IJK} as shown in Fig. 7LABEL:sub@fig:sim_trio_NCBF1, Quadcopter ii successfully passes through in-between two agents without being disturbed by hi,Διkh_{i,\Delta_{\iota}}^{\mathrm{k}}. In contrast, since hi,Δι,kh_{i,\Delta_{\iota},\mathcal{F}}^{\mathrm{k}} does not allow vijkv_{ijk} to leave i\mathcal{F}_{i}, hi,Δι,kh_{i,\Delta_{\iota},\mathcal{F}}^{\mathrm{k}} overly modifies the nominal input for Quadcopter ii even if the nominal input does not produce a hole. This overly modified input makes i\mathcal{F}_{i} smaller so that Quadcopter ii can keep moving upwards while vijkv_{ijk} is inside of i\mathcal{F}_{i}, though such modification is unnecessary to prevent a hole, as shown in Figs. 7LABEL:sub@fig:sim_trio_CBF1-LABEL:sub@fig:sim_trio_CBF3.

The evolution of hi,Διkh_{i,\Delta_{\iota}}^{\mathrm{k}} and hi,Δι,kh_{i,\Delta_{\iota},\mathcal{F}}^{\mathrm{k}} in each simulation is shown in Fig. 8. hi,Διkh_{i,\Delta_{\iota}}^{\mathrm{k}} in the proposed method switches its value from hi,Δι,kh_{i,\Delta_{\iota},\mathcal{F}}^{\mathrm{k}} to hi,Δι,JKIk-h_{i,\Delta_{\iota},JKI}^{\mathrm{k}} around 0.1s and back at 3.1s, accompanied by the nonsmooth transitions in Fig. 8. In contrast, if we utilize only hi,Δι,kh_{i,\Delta_{\iota},\mathcal{F}}^{\mathrm{k}}, its value continues to keep a small value until 5.25.2 s, resulting in too conservative modification of the nominal input.

Note that hi,Διkh_{i,\Delta_{\iota}}^{\mathrm{k}} in the proposed algorithm takes a significantly large value from 11 s to 2.22.2 s. This peak is associated with the configuration of a team that makes IJK\triangle{IJK} a degenerate triangle, namely, the unsatisfaction of Assumption 1, which leads the denominator of (22) to a small value. Nevertheless, since the area of IJK\triangle{IJK} is close to zero and the radical center vijkv_{ijk} exists at infinity under such a degeneracy, the condition vijkIJKv_{ijk}\notin\triangle{IJK} is satisfied. Therefore, we can regard that the team is still in the safe set defined as the zero-superlevel set of (26). Still, a too large value in the NCBF could cause a numerical error when we solve the QP. To circumvent this problem in the implementation, if one of {hi,Δι,IJK,hi,Δι,JKI,hi,Δι,KIJ}\{-h_{i,\Delta_{\iota},IJK},-h_{i,\Delta_{\iota},JKI},-h_{i,\Delta_{\iota},KIJ}\} is listed in Ii,Δι,ϵI_{i,\Delta_{\iota},\epsilon} and takes a significantly large value, we allow the QP not to evaluate the corresponding constraint because the team is deemed not to break the constraint in the next few steps.

Refer to caption

(a) Initial configuration

Refer to caption

(b) t=1t=1 s, hi,Διkh_{i,\Delta_{\iota}}^{\mathrm{k}}

Refer to caption

(c) t=5t=5 s, hi,Διkh_{i,\Delta_{\iota}}^{\mathrm{k}}

Refer to caption

(d) t=2t=2 s, hi,Δι,kh_{i,\Delta_{\iota},\mathcal{F}}^{\mathrm{k}}

Refer to caption

(e) t=4t=4 s, hi,Δι,kh_{i,\Delta_{\iota},\mathcal{F}}^{\mathrm{k}}

Refer to caption

(f) t=7t=7 s, hi,Δι,kh_{i,\Delta_{\iota},\mathcal{F}}^{\mathrm{k}}
Figure 7: Snapshots of the simulations to compare the proposed algorithm (upper row) and the method utilizing only hi,Δι,k,i𝒩h_{i,\Delta_{\iota},\mathcal{F}}^{\mathrm{k}},\forall i\in\mathcal{N} (lower row). The proposed algorithm successfully prevents the appearance of a hole while eliminating the conservative behavior shown in the lower row.
Refer to caption
Figure 8: Evolution of hi,Διkh_{i,\Delta_{\iota}}^{\mathrm{k}} and hi,Δι,kh_{i,\Delta_{\iota},\mathcal{F}}^{\mathrm{k}}. There exist nonsmooth points in the transition of hi,Διkh_{i,\Delta_{\iota}}^{\mathrm{k}} in the proposed method at t=0.1t=0.1 s and t=3.1t=3.1 s, respectively. These points exhibit the switching from hi,Δι,kh_{i,\Delta_{\iota},\mathcal{F}}^{\mathrm{k}} to hi,Δι,JKIk-h_{i,\Delta_{\iota},JKI}^{\mathrm{k}} and back induced from the max operator in the proposed NCBF hi,Διkh_{i,\Delta_{\iota}}^{\mathrm{k}}.

VI-B Comparison to the previous work [51]

Let us next compare the proposed method with the authors’ previous work [51] to demonstrate Algorithm 1 can prevent the appearance of holes even in scenarios where the one in [51] cannot. Fig. 9LABEL:sub@fig:initial_comp shows the initial configuration of the five quadcopters composing two trios. The green Quadcopter ii has the nominal input decreasing its altitude with 3 m/s, while the other four quadcopters stay in the initial positions. The power diagram is depicted in blue, with each trio shown in red. The parameters are set as ωλ=3.0×106\omega_{\lambda}=3.0\times 10^{6} and ϵ=0.02\epsilon=0.02, with the extended class-𝒦\mathcal{K} function α(h)=h3\alpha(h)=h^{3}.

The final configuration of the team with the proposed algorithm and the method in [51] are shown in Fig. 9LABEL:sub@fig:fin_comp_prop and Fig. 9LABEL:sub@fig:fin_comp_ICRA20, respectively. First, the proposed method successfully prevents the appearance of the holes by modifying the nominal input. The prevention of the holes can also be confirmed in Fig. 10, where each trio’s NCBF, shown in red and blue lines, keeps positive values. On the other hand, the method in [51] suffers from the oscillation of each NCBF, and both of the trios’ NCBF cannot remain positive, as depicted in violet and orange lines. After 3.1 s, the left trio is disconnected, as shown in Fig. 9LABEL:sub@fig:fin_comp_ICRA20, and only the right trio’s NCBF is evaluated. The simulation study demonstrates the proposed algorithm successfully prevents the appearance of holes even in scenarios where the method in [51] cannot.

Refer to caption

(a) Initial configuration

Refer to caption

(b) t=4t=4 s with the proposed method

Refer to caption

(c) t=4t=4 s with the method in [51].
Figure 9: Snapshots of the simulations to compare the proposed algorithm and the method in [51].
Refer to caption
Figure 10: Evolutions of the NCBFs.

The main reason the method in [51] violates the constraint is that Quadcopter ii with the method in [51] only evaluates the minimum NCBF among all the trio it belongs to and the NCBFs in the range of ϵ\epsilon from the minimum NCBF. Therefore, if the pre-determined ϵ\epsilon is smaller than the quadcopters’ speed, the NCBF could be violated by showing chattering, as shown in Fig. 10. Algorithm 1 solves this issue by means of Theorem 4. Theorem 4 utilizes the symmetric property of the proposed NCBF to develop a constraint that each quadcopter can evaluate locally and shows that each quadcopter has to evaluate all the NCBFs of the trio that each quadcopter belongs, as shown in (35). Because of this theoretical guarantee and improvements in Algorithm 1, the proposed method successfully prevents holes.

VI-C Simulation with Nine Quadcopters

In the following simulation, the proposed algorithm is implemented with the coverage control law to the team of nine quadcopters. We then compare the algorithm with the nominal input in (45). The size of the mission space is 60×60m260\times 60\,{\rm m}^{2}, where the density function is depicted as the contour maps in Fig. 11. The parameters are set as κ=4,σ=3,M=11\kappa=4,\sigma=3,M=11, w=0.4w=0.4, wλ=3.0×106w_{\lambda}=3.0\times 10^{6}, ϵ=0.2\epsilon=0.2 with the extended class-𝒦\mathcal{K} function α(h)=h3\alpha(h)=h^{3}.

We then run the proposed algorithm from the initial configuration in Fig. 11LABEL:sub@fig:sim9_k1, where the red and blue lines show the triangular subgraphs 𝒯i,i𝒩\mathcal{T}_{i},\forall i\in\mathcal{N} in the graph 𝒢\mathcal{G} and the power diagram, respectively. The snapshots of the simulation are depicted in Fig. 11. In the transition from Fig. 11LABEL:sub@fig:sim9_k1 to Fig. 11LABEL:sub@fig:sim9_k2100, we can confirm several triangular subgraphs in the team show switching, allowing them to move smoothly to the important region. At 4500 step, a team completely covers the peak of the density function in the lower part and continuously moves to cover two other peaks on the top part, as shown in Fig. 11LABEL:sub@fig:sim9_k4500. At the final configuration in Fig. 11LABEL:sub@fig:sim9_k10000, a team successfully covers three peaks with no hole.

The evolution of HNCBFs is shown in Fig. 13, where all of them take the positive value except for the 5642 step. As discussed at the end of Section III-C, this sudden appearance of a hole is caused when a team closes a dent in the upper left part of Fig. 11LABEL:sub@fig:sim9_k4500. In other words, this instantaneous hole is caused by the inherent nature of the hybrid forward invariance [53] that does not address whether a system remains within the admissible set at the time switching occurs. Nevertheless, because of the robustness of the proposed algorithm, which stems from a general characteristic of CBFs yielding the admissible set attractive [53, 34], the proposed algorithm successfully eliminates this suddenly generated hole. Note that this formation of a hole does not violate the hybrid forward invariance of the set in Definition 2, as the concept presumes the state does not leave the safe set at each switching time τk,k\tau_{k},~{}\forall k\in{\mathbb{N}}.

Fig. 12 shows the snapshots of the simulation results with the nominal input (45), where we set the same initial configuration to Fig. 11LABEL:sub@fig:sim9_k1. As shown in Fig. 12LABEL:sub@fig:sim9_cov_k500, from an early stage of the simulation, a team exhibits the unsurveilled area in-between quadcopters, which is developed from a hole created in-between a trio. In contrast, since a team does not need to consider an HNCBF constraint, a team moves a bit faster than the proposed method. As a result, quadcopters reach the configuration shown in Fig. 12LABEL:sub@fig:sim9_cov_k1800 at 18001800 step, a similar configuration achieved by the proposed method at 21002100 step. In return for this slightly fast transition, the unsurveilled area keeps appearing in a team, which might overlook the region even if the density function at the area takes a large value, roughly 80% of the highest peak of the density function, as shown in Fig. 12LABEL:sub@fig:sim9_cov_k6500. This hole keeps remaining until the end of the simulation shown in Fig. 12LABEL:sub@fig:sim9_cov_k10000. Fig. 14 shows the evolution of the coverage cost in (45), where the attained coverage cost of the proposed method is lower than that of the coverage controller because the proposed method modifies the nominal input to prevent the appearance of holes. However, as shown in Fig. 11LABEL:sub@fig:sim9_k10000, the proposed method successfully covers all three peaks of the density function without overlooking the important area in-between the team. This monitoring strategy prevents the overlooking of significant or safety-critical information in the monitoring mission.

Refer to caption

(a) Initial configuration

Refer to caption

(b) 21002100 step

Refer to caption

(c) 45004500 step

Refer to caption

(d) 1000010000 step
Figure 11: Snapshots of the simulation with the proposed algorithm, where the triangular subgraphs 𝒯i,i𝒩\mathcal{T}_{i},i\in\mathcal{N} in the graph 𝒢\mathcal{G} and the power diagram are depicted in red and blue lines, respectively.

Refer to caption

(a) 500500 step

Refer to caption

(b) 18001800 step

Refer to caption

(c) 65006500 step

Refer to caption

(d) 1000010000 step
Figure 12: Snapshots of the simulation with the coverage control ui,nom,i𝒩u_{i,\rm{nom}},i\in\mathcal{N}.
Refer to caption
Figure 13: Evolution of the HNCBFs. Note that, to make it easier to understand visually, we only plot the minimum NCBF among triangular subgraphs to which each quadcopter belongs, namely minΔι𝒯ihi,Δι,i𝒩\min_{\Delta_{\iota}\in\mathcal{T}_{i}}h_{i,\Delta_{\iota}},\forall i\in\mathcal{N}.
Refer to caption
Figure 14: Evolution of the coverage cost in (44). As the price to pay for preventing a hole, the proposed algorithm takes a slightly smaller value than the coverage control ui,nomu_{i,{\rm nom}}.

VI-D Experimental Results with Five Quadcopters

This section demonstrates the proposed algorithm through experiments while comparing it with the results of the coverage control ui,nom,i𝒩u_{i,{\rm nom}},~{}\forall i\in\mathcal{N} in (45). The size of the experimental field 𝒬\mathcal{Q} is 3×4m23\times 4\,{\rm m}^{2}. We implement the control law to a team of quadcopters composed of five Bitcraze Crazyflie 2.1 (n=5n=5), where their FOVs are virtually set. Each parameter is set as κ=4\kappa=4, σ=1\sigma=1, M=0.7M=0.7, w=0.2w=0.2, wλ=1.0×106w_{\lambda}=1.0\times 10^{6}, ϵ=0.2\epsilon=0.2 with the extended class-𝒦\mathcal{K} function α(h)=20h3\alpha(h)=20h^{3}.

The schematic of the testbed is illustrated in Fig. 15, which consists of two desktop computers, a motion capture system (OptiTrack), and quadcopters. The motion capture system is composed of eleven PrimeX13 and the Windows PC installed with the tracking system Motive. This motion capture system captures the position of drones every 1010 ms and sends it to the Linux PC (Ubuntu 20.04). In the Linux PC, the Crazyswarm platform [66] allows us to receive the position information from the motion capture system. This information is sent to MATLAB to calculate the control input. Although the control architecture is implementable in a distributed manner, the current experimental system implements the proposed method in a Linux computer because of hardware limitations. Then, the calculated velocity input is sent to the drones through the Crazyswarm which manages a communication between the Linux PC and drones via the Crazyradio. The computation time of velocity input for five drones in MATLAB is roughly 2020 ms. Note that the control of attitude is conducted by the off-the-shelf controller implemented in the Crazyflies 2.1 so that it follows a reference velocity with ensuring a sufficient update rate of the attitude control.

We run the proposed algorithm from the initial configuration in Fig. 16LABEL:sub@fig:exp_HNCBF1, where Figs. 16LABEL:sub@fig:exp_HNCBF2-LABEL:sub@fig:exp_HNCBF5 show the snapshots of subsequent results. At t=3t=3 s, two quadcopters near the peak of the density function move fast to the important area, as shown in Fig. 16LABEL:sub@fig:exp_HNCBF2. Although this transition makes the relative distance between each quadcopter larger, the appearance of a hole is prevented by expanding their FOVs. Then, at t=20t=20 s in Fig. 16LABEL:sub@fig:exp_HNCBF3, a team reaches the important area followed by the configuration at t=60t=60 s in Fig. 16LABEL:sub@fig:exp_HNCBF4, which allows a drone to capture the peak of the density at the center of FOV. Toward the final configuration shown in Fig. 16LABEL:sub@fig:exp_HNCBF5, two quadcopters on the bottom are going to combine their FOVs, resulting in a new edge in the graph.

Refer to caption
Figure 15: The schematic description of the experimental system.

Refer to caption

(a) Initial configuration

Refer to caption

(b) t=3t=3 s with the proposed algorithm

Refer to caption

(c) t=20t=20 s with the proposed algorithm

Refer to caption

(d) t=60t=60 s with the proposed algorithm

Refer to caption

(e) t=85t=85 s with the proposed algorithm
Figure 16: Snapshots of the experiments with the proposed algorithm.

Refer to caption

(a) t=3t=3 s with the coverage control ui,nom,i𝒩u_{i,{\rm nom}},~{}i\in\mathcal{N} only

Refer to caption

(b) t=6t=6 s with the coverage control ui,nom,i𝒩u_{i,{\rm nom}},~{}i\in\mathcal{N} only

Refer to caption

(c) t=12t=12 s with the coverage control ui,nom,i𝒩u_{i,{\rm nom}},~{}i\in\mathcal{N} only

Refer to caption

(d) t=85t=85 s with the coverage control ui,nom,i𝒩u_{i,{\rm nom}},~{}i\in\mathcal{N} only
Figure 17: Snapshots of the experiment with the coverage control ui,nomu_{i,{\rm nom}}, i𝒩i\in\mathcal{N}.
Refer to caption
Figure 18: Evolution of the cost function (44). The proposed algorithm achieves a slightly larger coverage quality than that of the coverage control ui,nomu_{i,{\rm nom}}.
Refer to caption
Figure 19: Evolution of the HNCBFs. Note that, to make it easier to understand visually, we only plot the minimum NCBF among triangular subgraphs to which each quadcopter belongs, namely minΔι𝒯ihi,Δι,i𝒩\min_{\Delta_{\iota}\in\mathcal{T}_{i}}h_{i,\Delta_{\iota}},\forall i\in\mathcal{N}. Since all minΔι𝒯ihi,Δι,i𝒩\min_{\Delta_{\iota}\in\mathcal{T}_{i}}h_{i,\Delta_{\iota}},\forall i\in\mathcal{N} take a positive value, we can confirm that Algorithm 1 can make NCBFs evaluated in (35) positive.

Fig. 17 shows the results with the nominal input ui,nom,i𝒩u_{i,{\rm nom}},~{}\forall i\in\mathcal{N} only, where the initial configuration is the same as Fig. 16LABEL:sub@fig:exp_HNCBF1. We can confirm from Fig. 17LABEL:sub@fig:exp_nominal1 that a hole appears in the middle of the team at t=3t=3 s. Fig. 17LABEL:sub@fig:exp_nominal2 shows the quadcopters located on the right do not preserve the triangular subgraph as opposed to the results with the proposed algorithm. The convergence speed is a bit shorter than that of the proposed method, and the quadcopters reach a peak of the density function at t=12t=12 s as shown in Fig. 17LABEL:sub@fig:exp_nominal3. The team keeps the almost same configuration for the rest of the experiment while making small holes. The final configuration is shown in Fig. 17LABEL:sub@fig:exp_nominal4.

The evolution of the coverage cost (44) is shown in Fig. 18. The nominal input allows the team to achieve the maximum at t=12t=12 s, while the proposed algorithm reaches the same value at t=20t=20 s. Remarkably, even though the proposed algorithm modifies the nominal controller maximizing the coverage cost to prevent holes, the team attains the same coverage cost as the nominal coverage controller solely aimed at maximizing coverage cost. This result implies that the proposed algorithm does not overly restrict the behavior of the team. Furthermore, differently from the coverage control only, the proposed method keeps increasing the objective function gradually. The proposed method attains a larger maximum because its property to connect each FOV leads to the configuration where one of the drones captures the peak of the density function at the center of its FOV, as illustrated in Fig. 16LABEL:sub@fig:exp_HNCBF5. In contrast, a drone with the coverage control in (45) repels other agents’ FOVs to minimize their overlaps while trying to reach the most important area. This property might make a team get stuck into a deadlock before one of them captures the peak of the density function, as shown in Fig. 17LABEL:sub@fig:exp_nominal4. Fig. 19 shows the evolution of HNCBFs in the proposed method, where we observe that they keep positive values throughout the experiment. At t=80t=80 s, there is a jump in the value of HNCBF, which is caused by the addition of the edge in the graph from the configuration in Fig. 16LABEL:sub@fig:exp_HNCBF4 to Fig. 16LABEL:sub@fig:exp_HNCBF5.

VII Conclusion

In this paper, we proposed a distributed coverage algorithm that prevents the formation of unsurveyed regions in-between FOVs of quadcopters. The necessary and sufficient condition for eliminating holes among trios of a team was introduced from the property of the power diagram. This condition, encoded with a Boolean composition, was then incorporated as NCBFs to design the algorithm guaranteeing the hybrid forward invariance of the set, preventing the appearance of holes. From the symmetric property of the designed NCBFs, the proposed algorithm can be implementable in a distributed fashion. We guaranteed that the proposed algorithm can find a control input preventing a hole, except for a few pathological conditions, by analyzing the derivatives of each CBF composing NCBFs. The proposed algorithm was synthesized with the coverage control law that improves monitoring quality while reducing the overlaps of FOVs. The effectiveness of the proposed method was demonstrated via simulations and experiments.

There are several challenges to explore in the future. First, the robustness of the proposed method in the presence of uncertainty should be investigated further to be able to deploy the algorithm in more challenging scenarios, including outdoor environments. Foreseeable challenges include uncertainty in the position estimation and in inter-robot communications, with possible remedies entailing considering a conservative monitoring strategy or preparing a redundant system to mitigate possible failures, as discussed in Remarks 2 and 3. Finally, the extension to the other shapes of FOVs needs to be further investigated.

Appendix A Proof of Lemma 1

Proof.

If Lghi,Δι,k𝟎4×1L_{g}h_{i,\Delta_{\iota},\mathcal{F}}^{\mathrm{k}}\neq{\bf 0}_{4\times 1} holds, then there exists ui4u_{i}\in{\mathbb{R}}^{4}, which satisfies that Lfhi,Δι,k+Lghi,Δι,kui+α(hi,Δι,k)0L_{f}h_{i,\Delta_{\iota},\mathcal{F}}^{\mathrm{k}}+L_{g}h_{i,\Delta_{\iota},\mathcal{F}}^{\mathrm{k}}u_{i}+\alpha(h_{i,\Delta_{\iota},\mathcal{F}}^{\mathrm{k}})\geq 0. Although the discussion in this appendix presumes the coordinate frame Σd\Sigma_{d}, we will drop the superscript d\circ^{d}.

The derivative of hi,Δι,kh_{i,\Delta_{\iota},\mathcal{F}}^{\mathrm{k}} with respect to 𝐩i\mathbf{p}_{i} is given by

hi,Δι,kxi\displaystyle\frac{\partial h_{i,\Delta_{\iota},\mathcal{F}}^{\mathrm{k}}}{\partial x_{i}}\! =2(Vijkx(vijkxxi1)+Vijkyvijkyxi),\displaystyle=\!-2\left(V_{ijk}^{x}\left(\frac{\partial v_{ijk}^{x}}{\partial x_{i}}\!-\!1\right)\!+\!V_{ijk}^{y}\frac{\partial v_{ijk}^{y}}{\partial x_{i}}\right), (48a)
hi,Δι,kyi\displaystyle\frac{\partial h_{i,\Delta_{\iota},\mathcal{F}}^{\mathrm{k}}}{\partial y_{i}}\! =2(Vijkxvijkxyi+Vijky(vijkyyi1)),\displaystyle=\!-2\left(V_{ijk}^{x}\frac{\partial v_{ijk}^{x}}{\partial y_{i}}\!+\!V_{ijk}^{y}\left(\frac{\partial v_{ijk}^{y}}{\partial y_{i}}\!-\!1\right)\right), (48b)
hi,Δι,kzi\displaystyle\frac{\partial h_{i,\Delta_{\iota},\mathcal{F}}^{\mathrm{k}}}{\partial z_{i}}\! =2(r2ziλi2(Vijkxvijkxzi+Vijkyvijkyzi)),\displaystyle=\!2\left(\frac{r^{2}z_{i}}{\lambda_{i}^{2}}\!-\!\left(V_{ijk}^{x}\frac{\partial v_{ijk}^{x}}{\partial z_{i}}\!+\!V_{ijk}^{y}\frac{\partial v_{ijk}^{y}}{\partial z_{i}}\right)\right), (48c)
hi,Δι,kλi\displaystyle\frac{\partial h_{i,\Delta_{\iota},\mathcal{F}}^{\mathrm{k}}}{\partial\lambda_{i}} =2((rzi)2λi3+(Vijkxvijkxλi+Vijkyvijkyλi)),\displaystyle\!=\!-2\left(\frac{\left(rz_{i}\right)^{2}}{\lambda_{i}^{3}}\!+\!\left(V_{ijk}^{x}\frac{\partial v_{ijk}^{x}}{\partial\lambda_{i}}\!+\!V_{ijk}^{y}\frac{\partial v_{ijk}^{y}}{\partial\lambda_{i}}\right)\!\right), (48d)

with Vijkx=vijkxxiV_{ijk}^{x}=v_{ijk}^{x}-x_{i} and Vijky=vijkyyiV_{ijk}^{y}=v_{ijk}^{y}-y_{i}. Since the equations (36) and (37) hold in the introduced coordinate frame Σd\Sigma_{d}, we can simplify (48) by substituting these conditions as

hi,Δι,kxi\displaystyle\frac{\partial h_{i,\Delta_{\iota},\mathcal{F}}^{\mathrm{k}}}{\partial x_{i}} =2xi2(vijkyyi)vijkyxi,\displaystyle=-2x_{i}-2\left(v_{ijk}^{y}-y_{i}\right)\frac{\partial v_{ijk}^{y}}{\partial x_{i}}, (49a)
hi,Δι,kyi\displaystyle\frac{\partial h_{i,\Delta_{\iota},\mathcal{F}}^{\mathrm{k}}}{\partial y_{i}} =2(vijkyyi)(vijkyyi1),\displaystyle=-2\left(v_{ijk}^{y}-y_{i}\right)\left(\frac{\partial v_{ijk}^{y}}{\partial y_{i}}-1\right), (49b)
hi,Δι,kzi\displaystyle\frac{\partial h_{i,\Delta_{\iota},\mathcal{F}}^{\mathrm{k}}}{\partial z_{i}} =2r2ziλi22(vijkyyi)vijkyzi,\displaystyle=2r^{2}\frac{z_{i}}{\lambda_{i}^{2}}-2\left(v_{ijk}^{y}-y_{i}\right)\frac{\partial v_{ijk}^{y}}{\partial z_{i}}, (49c)
hi,Δι,kλi\displaystyle\frac{\partial h_{i,\Delta_{\iota},\mathcal{F}}^{\mathrm{k}}}{\partial\lambda_{i}} =2r2zi2λi32(vijkyyi)vijkyλi.\displaystyle=-2r^{2}\frac{z_{i}^{2}}{\lambda_{i}^{3}}-2\left(v_{ijk}^{y}-y_{i}\right)\frac{\partial v_{ijk}^{y}}{\partial\lambda_{i}}. (49d)

The partial derivatives of vijkyv_{ijk}^{y} contained in (49) can be derived from (38)\eqref{eq:radical_cent_y} as

vijkyxi\displaystyle\frac{\partial v_{ijk}^{y}}{\partial x_{i}} =xiyi,\displaystyle=\frac{x_{i}}{y_{i}}, (50a)
vijkyyi\displaystyle\frac{\partial v_{ijk}^{y}}{\partial y_{i}} =12(xi2Ri2)(xj2Rj2)2yi2,\displaystyle=\frac{1}{2}-\frac{(x_{i}^{2}-R_{i}^{2})-(x_{j}^{2}-R_{j}^{2})}{2y_{i}^{2}}, (50b)
vijkyzi\displaystyle\frac{\partial v_{ijk}^{y}}{\partial z_{i}} =r2ziyiλi2,\displaystyle=-\frac{r^{2}z_{i}}{y_{i}\lambda_{i}^{2}}, (50c)
vijkyλi\displaystyle\frac{\partial v_{ijk}^{y}}{\partial\lambda_{i}} =r2zi2yiλi3,\displaystyle=\frac{r^{2}z_{i}^{2}}{y_{i}\lambda_{i}^{3}}, (50d)

where yi0y_{i}\neq 0 from Assumption 1. By combining (49) and (50) together, we obtain

hi,Δι,kxi\displaystyle\frac{\partial h_{i,\Delta_{\iota},\mathcal{F}}^{\mathrm{k}}}{\partial x_{i}} =2xivijkyyi,\displaystyle=-2x_{i}\frac{v_{ijk}^{y}}{y_{i}}, (51a)
hi,Δι,kyi\displaystyle\frac{\partial h_{i,\Delta_{\iota},\mathcal{F}}^{\mathrm{k}}}{\partial y_{i}} =(xi2yi2Ri2)(xj2Rj2)yi2vijky,\displaystyle=\frac{(x_{i}^{2}-y_{i}^{2}-R_{i}^{2})-(x_{j}^{2}-R_{j}^{2})}{y_{i}^{2}}v_{ijk}^{y}, (51b)
hi,Δι,kzi\displaystyle\frac{\partial h_{i,\Delta_{\iota},\mathcal{F}}^{\mathrm{k}}}{\partial z_{i}} =2r2ziλi2vijkyyi,\displaystyle=2r^{2}\frac{z_{i}}{\lambda_{i}^{2}}\frac{v_{ijk}^{y}}{y_{i}}, (51c)
hi,Δι,kλi\displaystyle\frac{\partial h_{i,\Delta_{\iota},\mathcal{F}}^{\mathrm{k}}}{\partial\lambda_{i}} =2r2zi2λi3vijkyyi.\displaystyle=-2r^{2}\frac{z_{i}^{2}}{\lambda_{i}^{3}}\frac{v_{ijk}^{y}}{y_{i}}. (51d)

The equations (51) reveal that hi,Δι,k/𝐩i=𝟎4×1\partial h_{i,\Delta_{\iota},\mathcal{F}}^{\mathrm{k}}/\partial\mathbf{p}_{i}={\bf 0}_{4\times 1} never happens except for vijky=0v_{ijk}^{y}=0 in Σd\Sigma_{d}, which means the radical center vijkv_{ijk} lies on the line JKJK. This completes the proof. ∎

Appendix B Proof of Lemma 2

Proof.

We will drop the superscript d\circ^{d} in this appendix though the discussion is provided in Σd\Sigma_{d}. Similar with hi,Δι,IJKkh_{i,\Delta_{\iota},IJK}^{\mathrm{k}} in (22), hi,Δι,JKIkh_{i,\Delta_{\iota},JKI}^{\mathrm{k}} takes positive value if and only if yiy_{i} and vijkv_{ijk} exist in the same half-plane divided by the line JKJK, which is regarded as xx-axis in Σd\Sigma_{d}. Noticing that JKvijk\triangle{JKv_{ijk}} and IJK\triangle{IJK} share the side JKJK as in Fig. 20LABEL:sub@fig:JKv, the following equations hold with denoting the area of IJK\triangle{IJK} as AIJKA_{IJK}.

hi,Δι,JKIk\displaystyle h_{i,\Delta_{\iota},JKI}^{\mathrm{k}} =𝐞z(IJ×Ivijk)𝐞z(IJ×IK),\displaystyle=\frac{{\bf e}_{z}^{\top}\left(\overrightarrow{IJ}\times\overrightarrow{Iv_{ijk}}\right)}{{\bf e}_{z}^{\top}\left(\overrightarrow{IJ}\times\overrightarrow{IK}\right)},
=sgn(yivijky)AJKvijkAIJK,\displaystyle=\mathrm{sgn}(y_{i}v_{ijk}^{y})\frac{A_{JKv_{ijk}}}{A_{IJK}},
=vijkyyi,\displaystyle=\frac{v_{ijk}^{y}}{y_{i}},
=(xi2+yi2Ri2)(xj2Rj2)2yi2,\displaystyle=\frac{(x_{i}^{2}+y_{i}^{2}-R_{i}^{2})-(x_{j}^{2}-R_{j}^{2})}{2y_{i}^{2}}, (52)

where we substitute (38) to derive (52). Note that yi0y_{i}\neq 0 under Assumption 1. Then, we obtain

hi,Δι,JKIkxi\displaystyle\frac{\partial h_{i,\Delta_{\iota},JKI}^{\mathrm{k}}}{\partial x_{i}} =xiyi2,\displaystyle=\frac{x_{i}}{y_{i}^{2}}, (53a)
hi,Δι,JKIkyi\displaystyle\frac{\partial h_{i,\Delta_{\iota},JKI}^{\mathrm{k}}}{\partial y_{i}} =(xi2Ri2)(xj2Rj2)yi2,\displaystyle=-\frac{(x_{i}^{2}-R_{i}^{2})-(x_{j}^{2}-R_{j}^{2})}{y_{i}^{2}}, (53b)
hi,Δι,JKIkzi\displaystyle\frac{\partial h_{i,\Delta_{\iota},JKI}^{\mathrm{k}}}{\partial z_{i}} =r2ziyi2λi2,\displaystyle=-\frac{r^{2}z_{i}}{y_{i}^{2}\lambda_{i}^{2}}, (53c)
hi,Δι,JKIkλi\displaystyle\frac{\partial h_{i,\Delta_{\iota},JKI}^{\mathrm{k}}}{\partial\lambda_{i}} =r2zi2yi2λi2.\displaystyle=\frac{r^{2}z_{i}^{2}}{y_{i}^{2}\lambda_{i}^{2}}. (53d)

From (53), hi,Δι,JKIk/𝐩i=𝟎4×1\partial h_{i,\Delta_{\iota},JKI}^{\mathrm{k}}/\partial\mathbf{p}_{i}={\bf 0}_{4\times 1} never occurs if zi>0z_{i}>0. This completes the proof. ∎

Refer to caption

(a)

Refer to caption

(b)
Figure 20: The description of area ratio incorporated in (a) hi,Δι,JKIkh_{i,\Delta_{\iota},JKI}^{\mathrm{k}} and (b) hi,Δι,IJKkh_{i,\Delta_{\iota},IJK}^{\mathrm{k}}, respectively. (a) illustrates the area ratio between IJK\triangle{IJK} and JKvijk\triangle{JKv_{ijk}}, while (b) depicts the area ratio between IJK\triangle{IJK} and IJvijk\triangle{IJv_{ijk}}.

Appendix C Proof of Lemma 3

Proof.

We will drop the superscript d\circ^{d} in this appendix. With the introduced coordinated system Σd\Sigma_{d}, let us denote the xx-intercept of the line IvijkIv_{ijk} as XX, as illustrated in Fig. 20LABEL:sub@fig:IJv. Then, from the fact hi,Δι,IJKk=AIJvijk/AIJK\|h_{i,\Delta_{\iota},IJK}^{\mathrm{k}}\|=A_{IJv_{ijk}}/A_{IJK},

hi,Δι,IJKk=yivijkyyiXxjxkxj,\displaystyle h_{i,\Delta_{\iota},IJK}^{\mathrm{k}}=\frac{y_{i}-v_{ijk}^{y}}{y_{i}}\frac{X-x_{j}}{x_{k}-x_{j}}, (54)

with

X=vijkyyivijkyxi.\displaystyle X=\frac{-v_{ijk}^{y}}{y_{i}-v_{ijk}^{y}}x_{i}. (55)

By substituting (55) into (54), we obtain

hi,Δι,IJKk=xi+xj2(xkxj)+(xixj)((xi2Ri2)(xj2Rj2))2(xkxj)yi2.\displaystyle h_{i,\Delta_{\iota},IJK}^{\mathrm{k}}\!=\!\frac{x_{i}+x_{j}}{2(x_{k}\!-\!x_{j})}\!+\!\frac{(x_{i}\!-\!x_{j})\left((x_{i}^{2}\!-\!R_{i}^{2})\!-\!(x_{j}^{2}\!-\!R_{j}^{2})\right)}{2(x_{k}-x_{j})y_{i}^{2}}. (56)

From (56),

hi,Δι,IJKkxi\displaystyle\frac{\partial h_{i,\Delta_{\iota},IJK}^{\mathrm{k}}}{\partial x_{i}} =3xi22xjxi+(yi2Ri2)(xj2Rj2)2(xkxj)yi2,\displaystyle=\frac{3x_{i}^{2}\!-\!2x_{j}x_{i}\!+\!(y_{i}^{2}\!-\!R_{i}^{2})\!-\!(x_{j}^{2}\!-\!R_{j}^{2})}{2(x_{k}\!-\!x_{j})y_{i}^{2}}, (57a)
hi,Δι,IJKkyi\displaystyle\frac{\partial h_{i,\Delta_{\iota},IJK}^{\mathrm{k}}}{\partial y_{i}} =(xixj)((xi2Ri2)(xj2Rj2))(xkxj)yi3,\displaystyle=-\frac{(x_{i}\!-\!x_{j})\left((x_{i}^{2}\!-\!R_{i}^{2})\!-\!(x_{j}^{2}\!-\!R_{j}^{2})\right)}{(x_{k}\!-\!x_{j})y_{i}^{3}}, (57b)
hi,Δι,IJKkzi\displaystyle\frac{\partial h_{i,\Delta_{\iota},IJK}^{\mathrm{k}}}{\partial z_{i}} =(xixj)r2zi(xkxj)yi2λi2,\displaystyle=-\frac{(x_{i}\!-\!x_{j})r^{2}z_{i}}{(x_{k}\!-\!x_{j})y_{i}^{2}\lambda_{i}^{2}}, (57c)
hi,Δι,IJKkλi\displaystyle\frac{\partial h_{i,\Delta_{\iota},IJK}^{\mathrm{k}}}{\partial\lambda_{i}} =(xixj)r2zi2(xkxj)yi2λi3,\displaystyle=\frac{(x_{i}\!-\!x_{j})r^{2}z_{i}^{2}}{(x_{k}\!-\!x_{j})y_{i}^{2}\lambda_{i}^{3}}, (57d)

hold. The equations (57) reveal that hi,Δι,IJKk/𝐩i=𝟎4×1\partial h_{i,\Delta_{\iota},IJK}^{\mathrm{k}}/\partial\mathbf{p}_{i}={\bf 0}_{4\times 1} never happens except for the following condition is satisfied.

(xi2+yi2Ri2=xj2Rj2)(xi=xj).\displaystyle\left(x_{i}^{2}+y_{i}^{2}-R_{i}^{2}=x_{j}^{2}-R_{j}^{2}\right)\quad\land\quad\left(x_{i}=x_{j}\right). (58)

From (38), the left condition of (58) corresponds with vijky=0v_{ijk}^{y}=0. This signifies the radical axes LijL_{ij} and LkiL_{ki} both pass through the origin. Since the right condition of (58) makes the line JKJK and the radical axis LijL_{ij} parallel, (58) is satisfied if and only if LijL_{ij} lies on the line JKJK. This completes the proof. ∎

References

  • [1] H. Zhou, H. Kong, L. Wei, D. Creighton, and S. Nahavandi, “Efficient road detection and tracking for unmanned aerial vehicle,” IEEE Trans. Intell. Transportation Syst., vol. 16, no. 1, pp. 297–309, 2015.
  • [2] S. Fleck and W. Strasser, “Smart camera based monitoring system and its application to assisted living,” Proc. IEEE, vol. 96, no. 10, pp. 1698–1714, 2008.
  • [3] D. T. Cole, A. H. Goktogan, P. Thompson, and S. Sukkarieh, “Mapping and tracking,” IEEE Robot. Automat. Mag., vol. 16, no. 2, pp. 22–34, 2009.
  • [4] G. Zhou, C. Li, and P. Cheng, “Unmanned aerial vehicle (UAV) real-time video registration for forest fire monitoring,” in Proc. IEEE Int. Geoscience and Remote Sensing Symp., vol. 3, 2005, pp. 1803–1806.
  • [5] M. Erdelj, E. Natalizio, K. R. Chowdhury, and I. F. Akyildiz, “Help from the sky: Leveraging UAVs for disaster management,” IEEE Pervasive Computing, vol. 16, no. 1, pp. 24–32, 2017.
  • [6] H. Shakhatreh, A. H. Sawalmeh, A. Al-Fuqaha, Z. Dou, E. Almaita, I. Khalil, N. S. Othman, A. Khreishah, and M. Guizani, “Unmanned aerial vehicles (UAVs): A survey on civil applications and key research challenges,” IEEE Access, vol. 7, pp. 48 572–48 634, 2019.
  • [7] X. Meng, W. Wang, and B. Leong, “Skystitch: A cooperative multi-UAV-based real-time video surveillance system with stitching,” in Proc. 23rd ACM Int. Conf. Multimedia, 2015, pp. 261–270.
  • [8] J. J. Ruiz, F. Caballero, and L. Merino, “MGRAPH: A multigraph homography method to generate incremental mosaics in real-time from UAV swarms,” IEEE Robot. Automat. Lett., vol. 3, no. 4, pp. 2838–2845, 2018.
  • [9] M. S. Prewett, R. C. Johnson, K. N. Saboe, L. R. Elliott, and M. D. Coovert, “Managing workload in human–robot interaction: A review of empirical studies,” Computers in Human Behavior, vol. 26, no. 5, pp. 840–856, 2010.
  • [10] M. A. Boon, A. P. Drijfhout, and S. Tesfamichael, “Comparison of a fixed-wing and multi-rotor UAV for environmental mapping applications: A case study,” Int. Arch. Photogrammetry, Remote Sensing and Spatial Information Sciences, vol. XLII-2/W6, pp. 47–54, 2017.
  • [11] Y. Ham, K. K. Han, J. J. Lin, and M. Golparvar-Fard, “Visual monitoring of civil infrastructure systems via camera-equipped unmanned aerial vehicles (UAVs): A review of related works,” Visual. Eng., vol. 4, no. 1, 2016.
  • [12] J. Cortes, S. Martinez, T. Karatas, and F. Bullo, “Coverage control for mobile sensing networks,” IEEE Trans. Robot. Automat., vol. 20, no. 2, pp. 243–255, 2004.
  • [13] C. G. Cassandras and W. Li, “Sensor networks and cooperative control,” Eur. J. Control, vol. 11, no. 4, pp. 436–463, 2005.
  • [14] S. Martinez, J. Cortes, and F. Bullo, “Motion coordination with distributed information,” IEEE Control Syst. Mag., vol. 27, no. 4, pp. 75–88, 2007.
  • [15] C. Ding, B. Song, A. Morye, J. A. Farrell, and A. K. Roy-Chowdhury, “Collaborative sensing in a distributed PTZ camera network,” IEEE Trans. Image Processing, vol. 21, no. 7, pp. 3282–3295, 2012.
  • [16] M. Forstenhaeusler, R. Funada, T. Hatanaka, and M. Fujita, “Experimental study of gradient-based visual coverage control on SO(3) toward moving object/human monitoring,” in Proc. Amer. Control Conf., 2015, pp. 2125–2130.
  • [17] O. Arslan, H. Min, and D. E. Koditschek, “Voronoi-based coverage control of Pan/Tilt/Zoom camera networks,” in Proc. IEEE Int. Conf. Robot. Automat., 2018, pp. 1–8.
  • [18] T. Hatanaka, R. Funada, and M. Fujita, “Visual surveillance of human activities via gradient-based coverage control on matrix manifolds,” IEEE Trans. Control Syst. Technol., vol. 28, no. 6, pp. 2220–2234, 2020.
  • [19] K. Laventall and J. Cortes, “Coverage control by robotic networks with limited-range anisotropic sensory,” in Proc. Amer. Control Conf., 2008, pp. 2666–2671.
  • [20] A. Gusrialdi, T. Hatanaka, and M. Fujita, “Coverage control for mobile networks with limited-range anisotropic sensors,” in Proc. 47th IEEE Conf. Decis. Control, 2008, pp. 4263–4268.
  • [21] D. Panagou, D. M. Stipanović, and P. G. Voulgaris, “Dynamic coverage control in unicycle multi-robot networks under anisotropic sensing,” Front. Robot. AI, vol. 2, no. 3, 2015.
  • [22] J. Chen and P. Dames, “Distributed multi-target tracking for heterogeneous mobile sensing networks with limited field of views,” in Proc. IEEE Int. Conf. Robot. Automat., 2021, pp. 9058–9064.
  • [23] M. Schwager, B. J. Julian, M. Angermann, and D. Rus, “Eyes in the sky: Decentralized control for the deployment of robotic camera networks,” Proc. IEEE, vol. 99, no. 9, pp. 1541–1561, 2011.
  • [24] S. Papatheodorou, A. Tzes, and Y. Stergiopoulos, “Collaborative visual area coverage,” Robot. Autonomous Syst., vol. 92, pp. 126–138, 2017.
  • [25] N. Bousias, S. Papatheodorou, M. Tzes, and A. Tzes, “Collaborative visual area coverage using aerial agents equipped with PTZ-cameras under localization uncertainty,” in Proc. Eur. Control Conf., 2019, pp. 1079–1084.
  • [26] A. Renzaglia, J. Dibangoye, V. L. Doze, and O. Simonin, “A common optimization framework for multi-robot exploration and coverage in 3D environments,” J. Intell. Robotic Syst., vol. 100, pp. 1453–1468, 2020.
  • [27] H. Mahboubi, K. Moezzi, A. G. Aghdam, and K. Sayrafian-Pour, “Distributed deployment algorithms for efficient coverage in a network of mobile sensors with nonidentical sensing capabilities,” IEEE Trans. Vehicular Technol., vol. 63, no. 8, pp. 3998–4016, 2014.
  • [28] H. Mahboubi and A. G. Aghdam, “Distributed deployment algorithms for coverage improvement in a network of wireless mobile sensors: Relocation by virtual force,” IEEE Trans. Control of Network Syst., vol. 4, no. 4, pp. 736–748, 2017.
  • [29] C. So-In, T. Nguyen, and N. Nguyen, “An efficient coverage hole-healing algorithm for area-coverage improvements in mobile sensor networks,” Peer-To-Peer Networking and Appl., vol. 12, no. 3, pp. 541–552, 2019.
  • [30] J. Cortes and F. Bullo, “Coordination and geometric optimization via distributed dynamical systems,” SIAM J. Control Optim., vol. 44, no. 5, pp. 1543–1574, 2005.
  • [31] K. Shah, G. Ballard, A. Schmidt, and M. Schwager, “Multidrone aerial surveys of penguin colonies in Antarctica,” Science Robotics, vol. 5, no. 47, p. eabc3000, 2020.
  • [32] M. Egerstedt, Robot Ecology: Constraint-Based Design for Long-Duration Autonomy.   Princeton University Press, 2021.
  • [33] A. D. Ames, X. Xu, J. W. Grizzle, and P. Tabuada, “Control barrier function based quadratic programs for safety critical systems,” IEEE Trans. Autom. Control, vol. 62, no. 8, pp. 3861–3876, 2017.
  • [34] A. D. Ames, S. Coogan, M. Egerstedt, G. Notomista, K. Sreenath, and P. Tabuada, “Control barrier functions: Theory and applications,” in Proc. Eur. Control Conf., 2019, pp. 3420–3431.
  • [35] Q. Nguyen, A. Hereid, J. W. Grizzle, A. D. Ames, and K. Sreenath, “3D dynamic walking on stepping stones with control barrier functions,” in Proc. IEEE 55th Conf. Decis. Control, 2016, pp. 827–834.
  • [36] M. Ahmadi, X. Xiong, and A. D. Ames, “Risk-averse control via CVaR barrier functions: Application to bipedal robot locomotion,” IEEE Control Syst. Lett., vol. 6, pp. 878–883, 2022.
  • [37] L. Wang, A. D. Ames, and M. Egerstedt, “Safety barrier certificates for collisions-free multirobot systems,” IEEE Trans. Robot., vol. 33, no. 3, pp. 661–674, 2017.
  • [38] R. Funada, X. Cai, G. Notomista, M. W. S. Atman, J. Yamauchi, M. Fujita, and M. Egerstedt, “Coordination of robot teams over long distances: From Georgia Tech to Tokyo Tech and back-An 11,000-km multirobot experiment,” IEEE Control Syst. Mag., vol. 40, no. 4, pp. 53–79, 2020.
  • [39] M. Srinivasan, M. Abate, G. Nilsson, and S. Coogan, “Extent-compatible control barrier functions,” Syst. Control Lett., vol. 150, p. 104895, 2021.
  • [40] K. Nishimoto, R. Funada, T. Ibuki, and M. Sampei, “Collision avoidance for elliptical agents with control barrier function utilizing supporting lines,” in Proc. Amer. Control Conf., 2022, pp. 5147–5153.
  • [41] G. Notomista and M. Egerstedt, “Persistification of robotic tasks,” IEEE Trans. Control Syst. Technol., vol. 29, no. 2, pp. 756–767, 2021.
  • [42] M. Santos, S. Mayya, G. Notomista, and M. Egerstedt, “Decentralized minimum-energy coverage control for time-varying density functions,” in Proc. Int. Symp. Multi-Robot Multi-Agent Syst., 2019, pp. 155–161.
  • [43] H. Dan, T. Hatanaka, J. Yamauchi, T. Shimizu, and M. Fujita, “Persistent object search and surveillance control with safety certificates for drone networks based on control barrier functions,” Front. Robot. AI, vol. 8, p. 740460, 2021.
  • [44] N. Hübel, S. Hirche, A. Gusrialdi, T. Hatanaka, M. Fujita, and O. Sawodny, “Coverage control with information decay in dynamic environments,” IFAC Proc. Volumes, vol. 41, no. 2, pp. 4180–4185, 2008.
  • [45] G. Wu and K. Sreenath, “Safety-critical control of a planar quadrotor,” in Proc. Amer. Control Conf., 2016, pp. 2252–2258.
  • [46] L. Wang, A. D. Ames, and M. Egerstedt, “Safe certificate-based maneuvers for teams of quadrotors using differential flatness,” in Proc. IEEE Int. Conf. Robot. Automat., 2017, pp. 3293–3298.
  • [47] F. Aurenhammer, “Power diagrams: Properties, algorithms and applications,” SIAM J. Computing, vol. 16, no. 1, pp. 78–96, 1987.
  • [48] P. Glotfelter, J. Cortés, and M. Egerstedt, “Boolean composability of constraints and control synthesis for multi-robot systems via nonsmooth control barrier functions,” in Proc. IEEE Conf. Control Technol. Appl., 2018, pp. 897–902.
  • [49] G. Notomista, S. F. Ruf, and M. Egerstedt, “Persistification of robotic tasks using control barrier functions,” IEEE Robot. Automat. Lett., vol. 3, no. 2, pp. 758–763, 2018.
  • [50] R. Funada, M. Santos, J. Yamauchi, T. Hatanaka, M. Fujita, and M. Egerstedt, “Visual coverage control for teams of quadcopters via control barrier functions,” in Proc. IEEE Int. Conf. Robot. Automat., 2019, pp. 3010–3016.
  • [51] R. Funada, M. Santos, T. Gencho, J. Yamauchi, M. Fujita, and M. Egerstedt, “Visual coverage maintenance for quadcopters using nonsmooth barrier functions,” in Proc. IEEE Int. Conf. Robot. Automat., 2020, pp. 3255–3261.
  • [52] J. Cortes, “Discontinuous dynamical systems,” IEEE Control Syst. Mag., vol. 28, no. 3, pp. 36–73, 2008.
  • [53] P. Glotfelter, I. Buckley, and M. Egerstedt, “Hybrid nonsmooth barrier functions with applications to provably safe and composable collision avoidance for robotic systems,” IEEE Robot. Automat. Lett., vol. 4, no. 2, pp. 1303–1310, 2019.
  • [54] P. Marantos, Y. Koveos, and K. J. Kyriakopoulos, “UAV state estimation using adaptive complementary filters,” IEEE Trans. Control Syst. Technology, vol. 24, no. 4, pp. 1214–1226, 2016.
  • [55] Y. Ma, S. Soatto, J. Kosecka, and S. Sastry, An Invitation to 3-D Vision: From Images to Geometric Models.   Springer-Verlag, 2003.
  • [56] D. Mellinger and V. Kumar, “Minimum snap trajectory generation and control for quadrotors,” in Proc. IEEE Int. Conf. Robot. Automat., 2011, pp. 2520–2525.
  • [57] B. Xiao and S. Yin, “A new disturbance attenuation control scheme for quadrotor unmanned aerial vehicles,” IEEE Trans. Industrial Informatics, vol. 13, no. 6, pp. 2922–2932, 2017.
  • [58] A. R. Vetrella, G. Fasano, and D. Accardo, “Attitude estimation for cooperating UAVs based on tight integration of GNSS and vision measurements,” Aerospace Science and Technology, vol. 84, pp. 966–979, 2019.
  • [59] S. Hayat, E. Yanmaz, and R. Muzaffar, “Survey on unmanned aerial vehicle networks for civil applications: A communications viewpoint,” IEEE Comm. Surveys and Tutorials, vol. 18, no. 4, pp. 2624–2661, 2016.
  • [60] A. Okabe, B. Boots, K. Sugihara, and S. N. Chiu, Spatial Tessellations: Concepts and Applications of Voronoi Diagrams, Second Edition.   Wiley-Blackwell, May 2000.
  • [61] F. Hoffmann, N. Goddemeier, and T. Bertram, “Attitude estimation and control of a quadrocopter,” in Proc. IEEE/RSJ Int. Conf. Intell. Robots and Syst., 2010, pp. 1072–1077.
  • [62] G. Balamurugan, J. Valarmathi, and V. P. S. Naidu, “Survey on UAV navigation in GPS denied environments,” in Proc. Int. Conf. Signal Processing, Comm., Power and Embedded Syst., 2016, pp. 198–204.
  • [63] B. B. Ready and C. N. Taylor, “Improving accuracy of MAV pose estimation using visual odometry,” in Proc. Amer. Control Conf., 2007, pp. 3721–3726.
  • [64] I. Z. Emiris and G. M. Tzoumas, “A real-time and exact implementation of the predicates for the Voronoi diagram of parametric ellipses,” in Proc. ACM Symp. Solid and Physical Modeling, 2007, pp. 133–142.
  • [65] C. He, Z. Feng, and Z. Ren, “Distributed algorithm for Voronoi partition of wireless sensor networks with a limited sensing range,” Sensors, vol. 18, no. 2, p. 446, 2018.
  • [66] J. A. Preiss, W. Hönig, G. S. Sukhatme, and N. Ayanian, “Crazyswarm: A large nano-quadcopter swarm,” in Proc. IEEE Int. Conf. Robot. Automat., 2017, pp. 3299–3304.