Previous Article in Journal
Neural Adaptive Nonlinear MIMO Control for Bipedal Walking Robot Locomotion in Hazardous and Complex Task Applications
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Distributed Monitoring of Moving Thermal Targets Using Unmanned Aerial Vehicles and Gaussian Mixture Models

by
Yuanji Huang
1,
Pavithra Sripathanallur Murali
2 and
Gustavo Vejarano
3,*
1
Sony Interactive Entertainment, San Mateo, CA 94404, USA
2
Department of Systems Engineering and Operations Research, George Mason University, Fairfax, VA 22030, USA
3
Department of Electrical and Computer Engineering, Loyola Marymount University, Los Angeles, CA 90045, USA
*
Author to whom correspondence should be addressed.
Robotics 2025, 14(7), 85; https://doi.org/10.3390/robotics14070085 (registering DOI)
Submission received: 10 May 2025 / Revised: 18 June 2025 / Accepted: 19 June 2025 / Published: 22 June 2025
(This article belongs to the Special Issue Multi-Robot Systems for Environmental Monitoring and Intervention)

Abstract

This paper contributes a two-step approach to monitor clusters of thermal targets on the ground using unmanned aerial vehicles (UAVs) and Gaussian mixture models (GMMs) in a distributed manner. The approach is tailored to networks of UAVs that establish a flying ad hoc network (FANET) and operate without central command. The first step is a monitoring algorithm that determines if the GMM corresponds to the current spatial distribution of clusters of thermal targets on the ground. UAVs make this determination using local data and a sequence of data exchanges with UAVs that are one-hop neighbors in the FANET. The second step is the calculation of a new GMM when the current GMM is found to be unfit, i.e., the GMM no longer corresponds to the new distribution of clusters on the ground due to the movement of thermal targets. A distributed expectation-maximization algorithm is developed for this purpose, and it operates on local data and data exchanged with one-hop neighbors only. Simulation results evaluate the performance of both algorithms in terms of the number of communication exchanges. This evaluation is completed for an increasing number of clusters of thermal targets and an increasing number of UAVs. The performance is compared with well-known solutions to the monitoring and GMM calculation problems, demonstrating convergence with a lower number of communication exchanges.

1. Introduction

Unmanned aerial vehicles (UAVs) are powerful tools for monitoring ground activity that is costly to reach, such as wildfires and high-risk urban areas, among others. This paper considers a flying ad hoc network (FANET) of UAVs that capture images over an area of interest. Multiple UAVs are considered for three reasons: (1) the area can be scanned faster, (2) the airspace is restricted above a certain altitude according to local regulations, and (3) the altitude of UAVs is also limited by the resolution of the camera and its sensitivity. For example, in our open source UAV platform developed in [1], thermal cameras have a resolution of 256 × 192 pixels with vertical and horizontal fields of view of 56.0° and 42.2°, respectively, so when the altitude is maximum at 120 m based on local airspace restrictions, each pixel covers an area of 50 cm × 48 cm .
We consider ground activity extracted from images in the form of geographical coordinates. For example, in our case of thermal imaging, we extract the location of hot spots of a wildfire and monitor their distribution on the ground as time progresses. We refer to the locations of these objects of interest as targets or observations. We model the geographical distribution of the targets using a Gaussian mixture model (GMM), where each Gaussian component corresponds to a cluster of targets. The objective of this paper is two-fold: (1) to detect when the GMM needs to be updated due to changes on the geographical distribution of moving targets (i.e., the GMM is unfit) and (2) to update the GMM according to new observations (i.e., the GMM fits the new observations).
This paper is inspired by the work on anomaly detection in industrial processes [2]. Observations are extracted from a network of sensors distributed among different industrial process systems such as reactors, condensers, compressors, separators, and strippers [3], so the observations do not correspond to geographical locations in this case. The state of the industrial process is characterized by a GMM. For example, observations of temperature and pressure are expected to be within certain ranges for safe operations, and these ranges are quantified with GMMs. Their goal is to determine when a set of observations deviates from the GMM, indicating an anomaly that triggers an alarm. On the other hand, our goal is to determine when the set of observations of moving thermal targets deviate from the GMM, and when this deviation is detected, we then update the GMM to the new target locations. Therefore, the geographical distribution of the clusters of targets is characterized by a GMM that is updated when targets move.
This paper aims at distributed solutions to both the monitoring problem (i.e., determining when the GMM no longer fits the current distribution of targets) and the problem of updating the GMM (i.e., determining the new values of the parameters of the GMM to fit it to the current distribution of targets). Having distributed solutions makes the FANET resilient against a single point of failure by avoiding a central processing unit and commands, such as a ground station or mothership, commanding all UAVs and processing all data. In our solutions, UAVs exchange selected observations and local statistics with neighboring UAVs several times. We evaluate the performance of our solutions with the number of iterations of communications among UAVs. The reason is that the time required to determine the unfitness of the GMM and to calculate new GMM parameter values determines the maximum speed of targets on the ground that can be monitored (i.e., the Nyquist rate of observations).
The paper is organized as follows. The related work and contributions are discussed in Section 2. The system model and the problem statement are presented in Section 3. Section 4 and Section 5 cover distributed algorithms for monitoring and updating the values of the GMM parameters, respectively. The algorithms are evaluated in Section 6. Practical considerations on our open-source UAV network are discussed in Section 7. Conclusions and future work are discussed in Section 8.

2. Related Work

The use of GMMs for monitoring industrial and chemical processes includes centralized [4,5,6,7,8,9] and distributed [3,10] solutions.
In the seminal work in [4], the use of GMMs was introduced as an extension of the classic approach of principal component analysis. GMMs enable the monitoring of sensor data or observations that do not follow a normal distribution and of processes with multiple operating states. In [5], a Bayesian inference strategy is used to compute the posterior probability of observations belonging to each Gaussian component, and a probability index is used to detect process faults around different operating regions. The problem of dynamic processes (i.e., updates of GMM parameter values) is addressed in [6,7,8]. In [6], particle-filtered Bayesian inference statistics are used to detect anomalies. In [7], the problem is addressed by identifying the Gaussian component that needs to be updated and by updating its parameters with a moving window that selects the recent history of observations. In [8], a Chernoff bound is used to determine the number of unfit observations needed to determine when the GMM is considered unfit. The problem of monitoring online batch processes is addressed in [9]. In online monitoring, only observations up to the current time step are available, and they may not conform to the nominal distribution even if there are no anomalies.
The previous solutions require that all observations be processed in a single computing system, so these solutions are not distributed. This means that all observations need to be delivered to a single node if coming from sensors distributed over the industrial setting. Recent progress in monitoring with GMMs has transitioned to distributed solutions. In [10], the centralized solution presented in [5] is further developed to several local GMMs extracted from a global GMM and applied for distributed monitoring. This is achieved by grouping variables of the global GMM depending on the industrial unit they belong to (e.g., reactor, condenser, or workshop with coupled units) and deriving a GMM for each group. It is assumed that the process is in a faulty state if the observations in any local GMM are unfit. This distributed strategy is further developed in [3] by grouping variables using canonical correlation analysis. Principal component analysis is also performed on a global basis to determine the contribution of each group to the industrial process, enabling online monitoring.
Other related distributed algorithms are presented in [11,12], but these consist of a single Gaussian component, not a mixture as in GMMs, or extensions of other classic techniques, including principal component analysis, canonical correlation analysis, and partial least-squares.
There is another body of work outside the context of industrial/chemical processes that addresses the problem of monitoring in distributed computer systems [13,14,15,16,17,18,19]. Consider a function that depends on variables captured by sensors distributed in an area. The objective is to evaluate the function within a given accuracy level while minimizing data communication with a coordinator to reduce bandwidth and power consumption. The function in [13] is a binary indicator of when the frequency of a single type of event exceeds a threshold value. A heuristic algorithm is proposed that sets local thresholds at each sensor and initiates communication with the coordinator only when the local frequency exceeds the local threshold. The function in [14] is i m i p , where m i is the frequency of the ith type of event and p = 0, 1, or 2. Their contributions are upper and lower bounds on the communication complexity to evaluate the function within a given accuracy level. The function in [15] is a global property of the network graph (e.g., network diameter) that is decomposed into local conditions that nodes can evaluate with data collected from their local neighborhood. The function in [16] is arbitrary. Its evaluation is achieved with automatic differentiation and numerical optimization to derive local constraints, which are monitored with the geometric monitoring protocol, a proactive monitoring approach. The bandwidth consumption of geometric monitoring is addressed in [17], and an application of the previous monitoring technique is [18], where a coordinator is used to implement linear discriminant analysis on the data collected from the sensor network. On the other hand, a reactive monitoring protocol is proposed in [19], in which a node issues a query that is flooded to all other nodes to evaluate local constraints. The coordinator is then elected to assess the responses.
GMMs have not been considered under the previous monitoring framework (i.e., in [13,14,15,16,17,18,19]) to the best of our knowledge, and in the context of autonomous UAVs, the distributed approach considered in [10] does not apply because it is not guaranteed that each UAV is assigned to a subset of Gaussian components due to their limited coverage. In other words, individual Gaussian components (i.e., individual target clusters) can be spread over a geographical area larger than the area covered by individual UAVs. The distributed approach considered in [3] also does not apply because it assumes a large number of variables that correspond to individual sensors in the industrial plant. These variables are grouped according to the direction of transfer of energy throughout the industrial process, and methods are used to reduce dimensionality, given that the variables can be highly correlated. On the other hand, in the case of UAVs, only two variables are tracked: the x and y coordinates of the targets, and these variables do not correspond to the transfer of energy from x to y or vice versa.
It is also noted that, with the exception of [19], all previous distributed algorithms [3,10,11,12,13,14,15,16,17,18] rely on a star topology where all nodes connect to a coordinator directly, and in [19], a coordinator is elected dynamically to receive data from nodes via convergecast. Table 1 classifies all monitoring algorithms.
The first contribution of this paper is an algorithm to monitor a function of global data (i.e., the negative log-likelihood defined in Section 4). It compares the function with a threshold value to determine when the GMM is unfit. Our solution is inspired by the distributed algorithm presented in [20] that uses GMMs for monitoring in peer-to-peer computer networks, so there is no coordinator as in [3,10,11,12,13,14,15,16,17,18,19]. The concepts of knowledge, agreement, and withheld knowledge are borrowed from [20] to allow UAVs to communicate with neighboring UAVs iteratively until they can determine that the GMM is unfit. The intuition behind iterative data exchanges is to propagate knowledge that is local to each UAV across the FANET.
The second contribution of this paper is a distributed expectation maximization (EM) algorithm that updates the values of the GMM parameters when the GMM is found to be unfit by the first algorithm. The reason for adopting an EM algorithm different from the one implemented in [20] is that their algorithm depends on a tree-network topology that centralizes computations at the root of the tree (i.e., convergecast). On the other hand, our goal is to build a network that avoids single points of failure, so our distributed EM implementation is instead based on a token-ring protocol [21] in our FANET. It is an adaptation of the solution presented in [22], where nodes communicate sequentially over a token-ring network to complete the maximization step of the EM problem in a distributed way. In our algorithm, UAVs pass a token over the FANET, and when a UAV receives the token, it communicates with all of its one-hop neighbors, not just the next UAV in the ring, as in [22]. In this way, we implement distributed average consensus using Metropolis–Hastings (MH) weights to complete the maximization step of the EM problem faster. MH weights were adopted in [23] from the centralized MH sampling technique of Markov chain Monte Carlo methods [24,25,26]. The reason for our adoption of MH weights is that they guarantee the convergence of distributed average consensus in time-varying communication graphs [23,27,28]. This means that our UAV network can solve the EM problem when the sets of one-hop neighbors of UAVs change over time.
MH weights were also used in [29] for a diffusion-based algorithm originally proposed in [30], but convergence is faster on our token ring network, as demonstrated in our simulation results in Section 6. Other symmetric weights determined in [31] induce convergence faster than MH weights but are calculated by convex optimization, so they are not suitable for time-varying communication graphs, as the optimization problem needs to be solved when the sets of one-hop neighbors of UAVs change. Other distributed EM algorithms for estimating GMMs include [32,33,34,35,36,37,38], but they do not consider time-varying communication graphs. They consider networks of static nodes to the best of our knowledge.
Therefore, this paper contributes two distributed algorithms for the problems of (1) monitoring ground targets using GMMs with the goal of detecting the unfitness of the GMM when target locations change and (2) updating the GMM to the new target locations. The aim is to complete these two tasks while reducing the number of message exchanges among UAVs to increase the Nyquist rate of observations that can be monitored. To the best of our knowledge, this monitoring problem has not been addressed when UAVs have only partial coverage of target clusters under a communication graph that can change over time. The algorithms are evaluated through simulation for linear flight formations of 3 to 16 UAVs and grid formations of 9 to 121 UAVs as the number of target clusters increases from 2 to 16 and from 2 to 9 in linear and grid formations, respectively. The simulation results demonstrate performance superior to related algorithms to the best of our knowledge.

3. System Model

Let U = { u 1 , u 2 , , u n } be a set of UAVs that communicate over a connected graph. The set of one-hop neighbors of u i is denoted as S i . Each UAV communicates only with its one-hop neighbors. There is a set of observations O = { x 1 , x 2 , , x m } that, without loss of generality, are two-dimensional as they correspond to geolocations of moving targets on the ground, i.e., x a R 2 for a = 1 , 2 , , m . The target locations at any point in time follow the distribution of a GMM of k Gaussian components. Therefore, the probability density function (pdf) of x a is provided in (1), where p ( x a | s ) and ϕ s are the pdf and weight of the sth Gaussian component; p ( x a | s ) is provided in (2), where μ s and Σ s are the mean and covariance matrix of the sth component. Each UAV captures images, as shown in Figure 1b. Figure 1a shows observations from a GMM of 7 components.
p ( x a ) = s = 1 k ϕ s p ( x a | s ) ,
p ( x a | s ) = 1 2 π det Σ s exp ( x a μ s ) T Σ s 1 ( x a μ s ) 2 .
The area covered by UAVs is divided into a grid, as shown in Figure 1a. Each rectangle corresponds to the area that a UAV covers while hovering in the center of the rectangle, as shown in Figure 1b. We call this UAV location the waypoint of the corresponding rectangle. Figure 1b also shows that the adjacent images overlap. The UAV is capturing the nth image in Figure 1b. The images n 1 and n + 1 are to the left and right of the nth image, and this sequence of images can continue depending on the flight path of the UAV. This path is indicated with the dotted lines on images n 1 and n + 1 . The overlap is purposely added to the flight paths due to errors in the location and orientation of the UAVs. Therefore, the images need to be realigned to form the grid in Figure 1a. The problem of aligning images and locating targets in overlapping areas is beyond the scope of this paper. We address this problem in our previous work in [39]. Each UAV is assigned a flight path that corresponds to a subset of waypoints on the grid and the order in which they are visited. UAVs fly through their sequence of waypoints periodically. We refer to a period as a tour. Tours from different UAVs are assumed to be disjoint, which means that each waypoint is assigned to one and only one UAV. The set of observations detected by u i during a tour is O i = { x i , 1 , x i , 2 , , x i , m i } .
It is assumed that UAVs cover all targets after the completion of all tours, i.e., O = i = 1 n O i . The observation sets of UAVs are disjointed, i.e., O i O j = for all i j , because the tours are disjointed. It is also assumed that each UAV can communicate with one or more UAVs at one or more waypoints of the tour. The UAVs with which u i can communicate during a tour are u i ’s one-hop neighbors, i.e., S i .
UAVs are initialized with a priori values of ϕ s , μ s , and Σ s . Therefore, it is assumed that the UAVs have already scanned the area in advance, as in [40,41], and the number of Gaussian components of the GMM has already been determined, as in [42,43]. Scanning unexplored areas is beyond the scope of this paper. The purpose of the periodic tours of this paper is to monitor the moving targets. It is also assumed that targets take more than one tour to move enough that the GMM parameters, ϕ s , μ s , and Σ s , no longer correspond to the new target locations. The objective of this paper is two-fold. First, UAVs complete one or more tours to detect when the GMM parameters no longer correspond to the new target locations. We say that the GMM is unfit at this point. Second, UAVs calculate new parameter values to update the GMM.
It is also assumed that our algorithms are based on data-link protocols for wireless networks that detect packet losses and retransmit packets in response to the losses. Our monitoring algorithm then relies on data link acknowledgments to ensure that packets of each UAV are delivered to its one-hop neighbors. For example, our open-source UAV network [1] implements UAV-to-UAV communication over a Zigbee network, which is based on the IEEE 802.15.4 protocol architecture. Our algorithm for updating the values of the GMM parameters is based on the wireless token ring protocol [21], which we also implement over the Zigbee network.

4. Distributed Monitoring Algorithm

The objective of the monitoring algorithm is to determine whether ϕ s , μ s , and Σ s produce a GMM that does not fit the observations O of the last tour of the UAVs. Unfitness of the GMM is defined as follows.
Definition 1. 
Let Θ be the set of GMM parameters, i.e., Θ = ϕ s , μ s , Σ s : s = 1 , 2 , , k . Consider the negative log-likelihood of Θ given O i in (3), where m i is the number of observations in O i , i.e., m i = O i . The average negative log-likelihood is defined as L ¯ Θ | O = i = 1 n L Θ | O i m .
L Θ | O i = log a = 1 m i p x i , a | Θ = a = 1 m i log s = 1 k ϕ s p x i , a | s .
Definition 2. 
The GMM is classified as unfit when L ¯ Θ | O > ϵ , where L ¯ Θ | O is provided in Definition 1, and ϵ is a threshold value defined by the user.
Let u j be one of u i ’s one-hop neighbors, i.e., u j S i . When they communicate, the message sent by u i to u j is X i , j , and it is a subset of the target locations from O i . Definitions 3 to 5 and Theorem 1 are used to determine the unfitness of the GMM in a distributed manner.
Definition 3. 
The knowledge of u i is K i = u j S i X j , i O i .
Definition 4. 
The agreement of u i with u j is A i , j = X i , j X j , i .
Definition 5. 
The withheld knowledge of u i from u j is W i , j = K i A i , j .
The union operations in Definitions 3 and 4 do not differentiate observations of the same value, i.e., if x i O i , x j X j , i , and x i = x j , then { x i } { x j } = { x i } . Therefore, several observations of the same value are considered as one single observation. The reason is that two or more objects on the ground cannot occupy the same space, so target locations of the same value correspond to a single object on the ground.
The monitoring algorithm performs several message exchanges among UAVs. Therefore, the knowledge of a UAV propagates to other UAVs as the number of message exchanges increases. For example, consider three UAVs: u 1 , u 2 , and u 3 . Let their initial knowledge be K 1 = O 1 = { x 1 , x 2 , , x 6 } , K 2 = O 2 = { x 5 , x 6 , , x 10 } , and K 3 = O 3 = { x 9 , x 10 , , x 14 } . Let u 1 and u 2 be within communication range of each other. Let u 2 and u 3 be within range of each other, too; u 1 and u 3 are not within range of each other. Their initial withheld knowledge is their full knowledge as they have not exchanged any messages yet, i.e., W 1 , 2 = K 1 , W 2 , 1 = W 2 , 3 = K 2 , and W 3 , 2 = K 3 . Now, let u 1 send a subset of observations from W 1 , 2 to u 2 . Let this subset be X 1 , 2 = { x 4 , x 5 } . Similarly, let the message from u 2 to u 1 be X 2 , 1 = { x 6 , x 7 } . Therefore, the agreement is A 1 , 2 = { x 4 , x 5 , x 6 , x 7 } . The knowledge and withheld knowledge of u 1 are updated after the messages are exchanged: K 1 = { x 1 , x 2 , , x 6 } { x 6 , x 7 } = { x 1 , x 2 , , x 7 } and W 1 , 2 = { x 1 , x 2 , , x 6 } { x 4 , x 5 , x 6 , x 7 } = { x 1 , x 2 , x 3 } . The knowledge and withheld knowledge of u 2 are also updated: K 2 = { x 5 , x 6 , , x 10 } { x 4 , x 5 } = { x 4 , x 5 , , x 10 } and W 2 , 1 = { x 5 , x 6 , , x 10 } { x 4 , x 5 , x 6 , x 7 } = { x 8 , x 9 , x 10 } . Now, let u 2 and u 3 exchange the following messages: X 2 , 3 = { x 4 , x 9 } and X 3 , 2 = { x 10 , x 11 } . Their knowledge and withheld knowledge are updated to the following values: K 2 = { x 4 , x 5 , , x 11 } , W 2 , 3 = { x 5 , x 6 , x 7 , x 8 , x 10 } , K 3 = { x 4 , x 9 , x 10 , , x 14 } , and W 3 , 2 = { x 12 , x 13 , x 14 } . Therefore, a subset of the knowledge of u 1 reaches u 3 ; u 3 now knows of x 4 .
The next theorem is used to determine the required number of message exchanges that allow individual UAVs to calculate the unfitness of the GMM.
Theorem 1. 
L ¯ Θ | O ϵ if for i = 1 , 2 , , n , (1) L ¯ Θ | K i ϵ , (2) L ¯ Θ | A i , j ϵ , and either L ¯ Θ | W i , j ϵ or W i , j = for all u j S i .
Proof. 
Without loss of generalization, consider UAVs selected in some sequence u 1 , u 2 , …, and u n such that u i and u i + 1 are one-hop neighbors. Let all UAVs meet both conditions (1) and (2). When u i is selected, it sends W i , i + 1 to u i + 1 . Therefore, when u 1 is selected first, the new knowledge of u 2 becomes K 2 = K 2 W 1 , 2 . Given that observations of the same value are considered as one single observation, the average negative log-likelihood of the new knowledge is L ¯ Θ | K 2 = η L ¯ Θ | K 2 + 1 η L ¯ Θ | W 1 , 2 , where η [ 0 , 1 ] . Therefore, L ¯ Θ | K 2 ϵ given that L ¯ Θ | K 2 ϵ and L ¯ Θ | W 1 , 2 ϵ . Continuing this process, the new knowledge of u n is K n = K n i = 1 n 1 W i , i + 1 = O , and L ¯ Θ | K n = L ¯ Θ | O ϵ . □
Monitoring is implemented with two algorithms, one for transmission (Algorithm 1) and one for reception (Algorithm 2). UAVs self-select to transmit to their one-hop neighbors when they are within range during their tours. Self-selection can be implemented via periodic transmission of hello packets that allow UAVs to detect each other. Algorithm 1 takes place in each self-selection of u i . The outputs of the algorithm (line 2) are the messages X i , j sent to each neighbor in S i that is within range and a binary flag that signal the unfitness of the GMM parameters, i.e., Θ . The inputs of the algorithm (line 1) are Θ , the set of one-hop neighbors S i , u i ’s knowledge K i , its agreement with every neighbor A i , j , its knowledge withheld from every neighbor W i , j , and the number of transmissions T needed before testing unfitness of Θ . The first step is to apply an indicator function I ϵ ( · ) that determines whether its argument is greater than ϵ . For example, I ϵ L ¯ Θ | K i indicates whether the average negative log-likelihood of knowledge K i is greater than ϵ (line 6). The message X i , j needs to be calculated and transmitted when A i , j is empty (line 9). The message also needs to be calculated and transmitted when I ϵ L ¯ Θ | K i does not match either I ϵ L ¯ Θ | A i , j or I ϵ L ¯ Θ | W i , j according to Theorem 1. These quantities are denoted by I K , I A , and I W (lines 6 to 8). The reason X i , j is calculated and transmitted when I A I K or I W I K is that these conditions indicate that u i and u j are not in agreement on the fitness of Θ . Under either of these two conditions, the UAVs need to exchange withheld knowledge to reach an agreement. X i , j is assigned a subset of observations from W i , j (line 10). This subset is determined by selecting observations from W i , j until both I ϵ L ¯ Θ | A i , j and I ϵ L ¯ Θ | W i , j match I ϵ L ¯ Θ | K i . After X i , j is determined, the agreement A i , j and withheld knowledge W i , j are updated with X i , j (lines 11 and 12) because the observations in X i , j will now be known by u j after the transmission of X i , j (line 13).
Algorithm 1 keeps count of the number of self-selections since initialization with variable t (line 16). If this number exceeds the threshold value T, the algorithm determines if Θ is unfit (line 18). The value of T needs to be high enough to allow all UAV knowledge to reach other UAVs that are a number of hops away. In this way, when t > T , UAVs can reliably determine the fitness of Θ . This is carried out by evaluating conditions (1) and (2) of Theorem 1 (lines 20 and 24). The flag defaults to false (line 17), and if any of the conditions are not met, the flag becomes true (lines 21 and 25), indicating that Θ is unfit. It should be noted that the event that any of conditions (1) and (2) is not met does not necessarily imply that L ¯ Θ | O > ϵ . There can be false alarms declaring Θ unfit. The false alarm rate can be decreased by increasing T; however, increasing T increases the time to determine unfitness of Θ . Section 6.1 evaluates the number of self-selections (i.e., T) that are needed to reliably determine the flag value. This value is highly dependent on the diameter of the FANET, as demonstrated by the simulation results in Section 6.1.
Algorithm 2 processes X j , i when u i receives the message X j , i from u j . The inputs are the message X j , i , the knowledge K i , and the agreement A i , j (line 1). There are no outputs. The sole purpose of the algorithm is to update u i ’s knowledge of K i and its agreement A i , j with u j (lines 5 and 6). The initialization is the same as the initialization of Algorithm 1.
 Figure 2 shows an example of the transmission in line 13 of Algorithm 1. In Figure 2a, u 30 is self-selected and transmits X 30 , 23 , X 30 , 29 , X 30 , 31 , and X 30 , 33 to its neighbors: u 23 , u 29 , u 31 , and u 33 . These transmissions take place one at a time. Each transmission corresponds to one loop of the for loops in lines 5 to 15 of Algorithm 1. Each neighbor executes Algorithm 2 when it receives its corresponding message X 30 , j . In Figure 2b, each UAV monitors four waypoints. In this case, u 9 has self-selected, and its transmission range is larger to reach its neighbors: u 2 , u 4 , u 6 , and u 8 .
Algorithm 1 Monitoring Algorithm (Transmission)
 1:
 Inputs: Θ , S i , K i , A i , j , W i , j , T
 2:
 Outputs: X i , j , f
 3:
 Initialization: K i O i , A i , j , W i , j O i , t 0
 4:
 
 5:
for all  { u j : u j S i , u j within range }  do
 6:
        I K I ϵ L ¯ Θ | K i
 7:
        I A I ϵ L ¯ Θ | A i , j
 8:
        I W I ϵ L ¯ Θ | W i , j
 9:
       if  A i , j =  or  I A I K  or  I W I K  do
10:
              X i , j S E L E T O B S E R V A T I O N S ( W i , j )
11:
              A i , j A i , j X i , j
12:
              W i , j K i A i , j
13:
              T R A N S M I T ( X i , j )
14:
       end if
15:
end for
16:
t t + 1
17:
f false
18:
if  t > T  do
19:
        t 0
20:
       if  L ¯ Θ | K i > ϵ  do
21:
              f true
22:
       end if
23:
       for all  { u j : u j S i , u j within range }  do
24:
             if  L ¯ Θ | A i , j > ϵ  or  L ¯ Θ | W i , j > ϵ  do
25:
                    f true
26:
          end if
27:
       end for
28:
end if
Algorithm 2 Monitoring Algorithm (Reception).
 1:
 Inputs: X j , i , K i , A i , j
 2:
 Outputs: none
 3:
 Initialization: same as Algorithm 1
 4:
 
 5:
K i K i X j , i
 6:
A i , j A i , j X j , i
A UAV sends a message to each of its neighbors when it self-selects and executes Algorithm 1 (lines 5 to 15). It also evaluates its flag value after it has self-selected T times (lines 17 to 28). However, evaluating the flag value does not require any communication with neighbors. Therefore, the communication complexity of the algorithm is determined by the number of neighbors (lines 5 to 15), and this number depends on the network topology. For example, UAVs have a maximum of four neighbors in the topology of Figure 2. There are more topologies, with each having its own average and maximum number of neighbors. For example, when the topology is a random geometric graph (RGG), the average number of neighbors increases at a rate of Θ ( log U ) , where U is the number of UAVs, to ensure that the network is connected with high probability [44]. Therefore, the communication complexity of Algorithm 1 is Θ ( log U ) in RGGs. The critical neighbor number of other topologies, including dense, sparse, and mobile networks, is the subject of [45].

5. Distributed GMM Estimation

When one or more UAVs determine that Θ is unfit, the flag is true in Algorithm 1, and the UAVs begin to calculate new values for Θ . This can be accomplished by flooding the flag on the UAV network [46].
The calculation of the new values of Θ is via expectation maximization [47]. The EM algorithm consists of the execution of two iterative steps. It determines a value of Θ that decreases the average negative log-likelihood L ¯ Θ | O until a termination criterion is met. The criterion in this paper is L ¯ Θ | O ϵ because Θ is considered unfit when the criterion is not met according to Definition 2. The steps are the following:
  • Expectation Step: Estimate the contribution of each observation:
    q s , a = ϕ s p x a | s r = 1 k ϕ r p x a | r .
  • Maximization Step: Update the parameters
    ϕ s = a = 1 m q s , a m ,
    μ s = a = 1 m q s , a x a a = 1 m q s , a ,
    Σ s = a = 1 m q s , a x a μ s x a μ s T a = 1 m q s , a .
The maximization step in (5)–(7) depends on the set of all observations in O = x 1 , x 2 , , x m . However, observations are distributed among O 1 , O 2 , …, and O n . Therefore, the EM algorithm can also be formulated as follows, where x i , a is u i ’s ath observation.
  • Expectation Step:
    q i , s , a = ϕ s p x i , a | s r = 1 k ϕ r p x i , a | r .
  • Maximization Step:
    ϕ s = i = 1 n a = 1 m i q i , s , a i = 1 n m i ,
    μ s = i = 1 n a = 1 m i q i , s , a x i , a i = 1 n a = 1 m i q i , s , a ,
    Σ s = i = 1 n a = 1 m i q i , s , a x i , a μ s x i , a μ s T i = 1 n a = 1 m i q i , s , a .
The expectation step in (8) is local to u i . It only depends on its observations, i.e., O i = x i , 1 , x i , 2 , , x i , m i . However, the maximization step depends on observations of all drones, i.e., O 1 , O 2 , …, and O n . To allow a distributed implementation of this step, we first note that (9)–(11) correspond to averages across all UAVs of the following quantities: q i , s , a for (9), q i , s , a x i , a for (10), and q i , s , a x i , a μ s x i , a μ s T for (11). Therefore, we complete the maximization step via distributed average consensus (DAC) [31].

5.1. Distributed Average Consensus

Let y i ( 0 ) be R and assigned to u i at time t = 0 . The DAC problem is to compute the average y i ( 0 ) ¯ = 1 n i = 1 n y i ( 0 ) in every UAV using message exchanges with only one-hop neighbors. A well-known equation for this operation is in (12), where w i , j , is the weight associated with the one-hop link between u i and u j . Note that w i , j = 0 if u i and u j are not one-hop neighbors.
y i ( t + 1 ) = y i ( t ) + u j S i w i , j ( y j ( t ) y i ( t ) ) .
Since one-hop links are undirected, w i , j = w j , i , and w i , i = 1 u j S i w i , j . The weight matrix W = [ w i , j ] needs to satisfy the following properties where 1 is the all-ones vector:
W = W T and W 1 = 1 .
The calculation in (12) needs to converge to the average 1 n i = 1 n y i ( 0 ) of the DAC problem for all UAVs (i.e., for i = 1 , 2 , , n ) as follows:
lim t y i ( t ) = 1 n i = 1 n y i ( 0 ) .
Weights that satisfy the constraints in (13) and the asymptotic average consensus in (14) always exist. In this paper, we use the Metropolis–Hastings (MH) weights [23]:
w i , j = 1 max ( | S i | , | S j | ) + 1 i j 1 u j S i 1 max ( | S i | , | S j | ) + 1 i = j .

5.2. Distributed Maximization Step

The averages in (9)–(11) are computed using DAC. Let y i m ( 0 ) = m i and apply (12) to calculate the average number of local targets per UAV, i.e., m i ¯ . Therefore,
lim t y i m ( t ) = m i ¯ = 1 n i = 1 n m i .
DAC is applied to calculate (9) by letting y i , s ϕ ( 0 ) = q i , s = a = 1 m i q i , s , a . Therefore,
ϕ s = 1 m i ¯ lim t y i , s ϕ ( t ) = 1 m i ¯ 1 n i = 1 n q i , s = 1 m i = 1 n a = 1 m i q i , s , a = i = 1 n a = 1 m i q i , s , a i = 1 n m i .
DAC is applied to calculate (10) by letting y i , s μ ( 0 ) = a = 1 m i q i , s , a x i , a . Therefore,
μ s = 1 ϕ s m i ¯ lim t y i , s μ ( t ) = 1 ϕ s m i ¯ 1 n i = 1 n a = 1 m i q i , s , a x i , a = 1 m ϕ s i = 1 n a = 1 m i q i , s , a x i , a = i = 1 n a = 1 m i q i , s , a x i , a i = 1 n a = 1 m i q i , s , a .
Similarly, let Y i , s Σ ( 0 ) = a = 1 m i q i , s , a ( x i , a μ s ) ( x i , a μ s ) T , then
Σ s = 1 ϕ s m i ¯ lim t Y i , s Σ ( t ) = 1 ϕ s m i ¯ 1 n i = 1 n a = 1 m i q i , s , a ( x i , a μ s ) ( x i , a μ s ) T = i = 1 n a = 1 m i q i , s , a x i , a μ s x i , a μ s T i = 1 n a = 1 m i q i , s , a .

5.3. Distributed EM Algorithm

Algorithm 3 performs a number of iterations (line 5) to evaluate the expectation step in (8) and the distributed maximization step in (16)–(18) until the termination criterion is met, i.e., L ¯ ( Θ out | O ) ϵ according to Definition 2. The inputs of the algorithm (line 1) are the current and unfit GMM parameters Θ in , the set of local observations O i , and the MH weights between u i and its one-hop neighbors, i.e., { w i , j : u j S i } . The output (line 2) is the new GMM parameters Θ out that satisfy the termination criterion.
Algorithm 3 Distributed EM.
 1:
 Inputs: Θ in , O i , { w i , j : u j S i }
 2:
 Output: Θ out
 3:
 Initialization: q i , s , a for s = 1 , 2 , , k and a = 1 , 2 , , m i according to (8), y i m ( 0 ) , y i , s ϕ ( 0 ) , y i , s μ ( 0 ) , Y i , s Σ ( 0 )
 4:
 
 5:
while termination is false do
 6:
       for all  u i U  do
 7:
            evaluate y i m ( t + 1 ) according to (12)
 8:
       end for
 9:
       for all  u i U  do
10:
            evaluate y i , s ϕ ( t + 1 ) according to (12)
11:
       end for
12:
       for all  u i U  do
13:
            evaluate y i , s μ ( t + 1 ) according to (12)
14:
       end for
15:
       termination ← false
16:
       for all  u i U  do
17:
            evaluate Y i , s Σ ( t + 1 ) according to (12)
18:
             ϕ s = y i , s ϕ ( t + 1 ) y i m ( t + 1 ) according to (16)
19:
             μ s = y i , s μ ( t + 1 ) y i , s ϕ ( t + 1 ) according to (17)
20:
             Σ s = Y i , s Σ ( t + 1 ) y i , s ϕ ( t + 1 ) according to (18)
21:
             Θ out { ϕ s , μ s , Σ s : s = 1 , 2 , , n }
22:
            evaluate q i , s , a according to (8) for all s, a
23:
            if termination is false do
24:
                  termination T E R M I N A T I O N ( Θ out , O i , m i )
25:
            end if
26:
       end for
27:
end while
Algorithm 3 calculates Θ out using DAC, as demonstrated in (16)–(18). Initialization (line 3) consists of calculating the initial average values y i m ( 0 ) , y i , s ϕ ( 0 ) , y i , s μ ( 0 ) , and Y i , s Σ ( 0 ) . Given that these values depend on q i , s , a for s = 1 , 2 , , k and a = 1 , 2 , , m i , the evaluation of this quantity using (8) is the first step of the initialization.
Algorithm 3 operates on a token-ring protocol. The implementation of this protocol on wireless networks such as FANETs is well known [21]. For example, the ring in Figure 2a is the UAV sequence u 1 , u 2 , …, and u 36 . The ring closes when u 36 transmits to u 1 . The ring in Figure 2b is u 1 , u 2 , …, and u 9 , and it closes when u 2 or u 8 relays the token from u 9 to u 1 because u 1 is not within u 9 ’s range.
In the first round of Algorithm 3 (line 6), each UAV updates the running average y i m ( t + 1 ) that eventually converges to m i ¯ according to (15). Similarly, in the following three rounds (lines 9, 12, and 16), each UAV updates the other running averages: y i , s ϕ ( t + 1 ) , y i , s μ ( t + 1 ) , and Y i , s Σ ( t + 1 ) . The averages are updated by communicating with one-hope neighbors according to (12).
After all running averages are updated, the new values of the GMM parameters, i.e., ϕ s , μ s , and Σ s , are calculated (lines 18, 19, and 20). The convergence of y i , s ϕ ( t + 1 ) y i m ( t + 1 ) to ϕ s (line 18) is demonstrated as follows:
lim t y i , s ϕ ( t + 1 ) y i m ( t + 1 ) = lim t y i , s ϕ ( t ) lim t y i m ( t ) = 1 n i = 1 n q i , s 1 n i = 1 n m i = i = 1 n a = 1 m i q i , s , a i = 1 n m i = ϕ s .
The convergence of y i , s μ ( t + 1 ) y i , s ϕ ( t + 1 ) to μ s (line 19) and the convergence of Y i , s Σ ( t + 1 ) y i , s ϕ ( t + 1 ) to Σ s can be demonstrated in a similar way.
The last calculation in Algorithm 3 before evaluating the termination criteria is the expectation step in (8), i.e., the evaluation of q i , s , a for s = 1 , 2 , , k and a = 1 , 2 , , m i using the updated values of the GMM parameters ϕ s , μ s , and Σ s . This calculation depends on data local to u i , so it does not require communication with u i ’s one-hop neighbors.
Evaluation of the termination criterion (line 24) requires the calculation of L ¯ ( Θ out | O ) , which is equivalent to i = 1 n L ( Θ out | O i ) i = 1 n m i according to Definition 1. Therefore, the criterion is evaluated by having the UAVs pass the values of L ( Θ out | O i ) and m i along the token ring network. The value of the criterion is defaulted to false (line 15) to iterate through the expectation and distributed maximization steps (lines 6 to 26) until all UAVs evaluate the criterion as true.
For each while loop of Algorithm 3 (lines 5 to 27), there are four rounds of communication over the token-ring network, which correspond to the for loops that begin on lines 6, 9, 12, and 16. Each UAV communicates with its neighbors according to (12). Given that the length of the ring is U , the communication complexity of Algorithm 3 is then Θ ( U log U ) when the network topology is RGG.

6. Performance Evaluation

The monitoring algorithms (i.e., Algorithms 1 and 2) and the distributed EM algorithm (i.e., Algorithm 3) were implemented in MATLAB (v. R2024b), and their performance was evaluated by simulation for two flight formations, linear and grid.
The linear flight formation is shown in Figure 3. Without loss of generality, it is assumed that each rectangular area corresponds to a UAV hovering at the center of the rectangle, as shown in Figure 2a. Therefore, there are five UAVs in Figure 3a,b. This assumption is to consider the worst-case scenario with the highest number of UAVs to cover all rectangular areas. In this scenario, the global set of targets is distributed across the largest set of UAVs because no single UAV covers more than one rectangular area. The rectangular areas correspond to images captured with a camera with horizontal and vertical fields of view of 62° and 49°, respectively.
It is also assumed that only adjacent UAVs are within communication range of each other, as shown in Figure 2. Therefore, the left and right UAVs in Figure 3 each have one neighbor, and all other UAVs have two neighbors each. This is the worst-case scenario in terms of network connectivity, i.e., the number of one-hop neighbors of each UAV is the minimum that keeps the network graph connected. The number of communication exchanges among UAVs to propagate their withheld knowledge increases as the connectivity decreases.
Two different cluster configurations are considered, centered and uncentered. The cluster centroids are in the center of the rectangular areas in the centered configuration (Figure 3a), and they are at the border between adjacent areas in the uncentered configuration (Figure 3b). All clusters have 100 targets and covariance matrix 5 1 1 5 unless otherwise specified.
The grid flight formation is shown in Figure 4. It is also assumed that each rectangular area corresponds to a hovering UAV in the center of the rectangle and that only adjacent UAVs are within communication range of each other, including both vertical and horizontal directions. Therefore, each of the UAVs at the corners of the grid has two neighbors; each of the other UAVs at the boundary of the grid has three neighbors, and each of the UAVs in the interior of the grid has four neighbors. There are eight different cluster configurations with an increasing number of clusters, starting with two clusters, as shown in Figure 4a. Figure 4b–h show the cluster configurations with three to nine clusters, respectively. The grids in Figure 4 all have nine UAVs each, which is a grid of 3 × 3 . Larger grids are also included in our simulation results, from 4 × 4 to 11 × 11 . In these cases, rectangular areas decrease in size, and cluster configurations remain the same. For example, Figure 1a shows the 11 × 11 grid with seven clusters, which are the same seven clusters shown in the 3 × 3 grid in Figure 4f. Increasing the dimensions of the grid implies that the rectangular areas decrease in size to cover the same overall area. This is equivalent to covering the same overall area with a higher number of UAVs hovering at lower altitudes.

6.1. Performance Evaluation: Monitoring Algorithm

The performance of the monitoring algorithm is evaluated with the number of monitoring instances that UAVs need to perform until they all have the same flag value. We define a monitoring instance as the self-selection of a UAV to execute the transmission monitoring algorithm (Algorithm 1) and the corresponding execution of the monitoring algorithm for reception (Algorithm 2) at all UAVs that are within range. The number of monitoring instances corresponds to T in Algorithm 1. Therefore, if Θ is unfit, we count the number of monitoring instances (MI) until all UAVs have a flag value of true, and if Θ is a good fit, we count the number of MIs until all UAVs have a flag value of false. The number of MIs for all UAVs to acquire full knowledge is also evaluated. We say that a UAV acquires full knowledge when its knowledge (i.e., K i ) is equal to the global set of observations (i.e., O ). The reason is that the centralized solution to the monitoring problem (i.e., determining if Θ is unfit) requires knowledge of O , but this information is not initially available in any single UAV but distributed across all UAVs (i.e., O 1 , O 2 , …, O n ).
The monitoring algorithm uses ϵ . The value of ϵ determines the average value of the joint pdf of the observations (i.e., a = 1 m i p x i , a | Θ for x i , a O i ) according to Definition 1. This means that the GMM is considered unfit when the average value of the joint pdf is less than 10 ϵ . We set its value at 3. Typical values for two-dimensional data range from 2 to 5. However, this value is application-dependent. It depends on the desired quality of the fit, variability of the data, and number of Gaussian components. The analysis of ϵ is beyond the scope of this paper but is covered in depth in the GMM literature, including [48].

6.1.1. Linear Formation

Figure 5 shows the number of MIs needed for all UAVs to acquire full knowledge and for all UAVs to determine that the GMM does not fit the observations (i.e., all UAVs’ flags become true). The number of MIs is plotted as a function of the number of UAVs in both cases, centered (Figure 3a) and uncentered (Figure 3b).
The number of MIs increases with the number of UAVs in all cases. However, the rate of increase is lower for the case that all flags become true. At 3 UAVs, the number of MIs for all flags to become true is 4 in both cases, centered and uncentered, and for full knowledge, it is 10 for both cases. On the other hand, at 15 UAVs, the number of MIs for all flags to become true is 30 for both cases, and the number of MIs for full knowledge is 245 and 264 for the centered and uncentered cases, respectively.
The higher rate of increase for full knowledge demonstrates the effectiveness of the monitoring algorithm. It requires a lower number of MIs to detect the unfitness of the GMM as the number of UAVs increases. However, the location of clusters, centered versus uncentered, does not have a significant impact on the number of MIs. This result is a confirmation that the number of MIs is highly dependent on the FANET graph diameter (i.e., the number of hops of the shortest path between the two UAVs that are farthest apart). The reason is that a larger diameter is a larger distance that needs to be covered to propagate knowledge throughout the FANET.

6.1.2. Grid Formation with an Increasing Covariance Factor

Figure 6 shows the number of MIs of the grid formation and when the clusters are more spread out. This is achieved by multiplying the diagonal of the covariance matrix by a scalar that we refer to as the covariance factor. It takes integer values that increase from 1 to 10. Different sizes of grid formation are included, from 3 × 3 (Figure 4) to 11 × 11 (Figure 1a). In addition, in this case, only two target clusters are considered. Their centroids are shown in Figure 4a. Their covariance matrices are 5 1 1 5 and 2 1 1 2 with 100 and 50 targets, respectively.
Figure 6a shows that the number of MIs for full knowledge increases slightly with the covariance factor, and the rate of increase is greater for larger grid sizes. When the grid size is 11 × 11 , the number of MIs increases from 1192 to 1425 as the covariance factor increases from 1 to 10. On the other hand, when the grid size is 3 × 3 , the number of MIs increases from 37 to 42. Figure 6b shows the same data points as Figure 6a but as a function of the grid size, not the covariance factor. The rate of increase is significant regardless of the covariance factor. The number of MIs increases from 37 to 1192 when the covariance factor is 1 and increases from 42 to 1425 when the covariance factor is 10.
Figure 6c shows that the number of MIs for all flags to become true decreases with the covariance factor and decreases faster when the size of the grid increases. At 11 × 11 , the number of MIs decreases from 583 to 445 as the covariance factor increases from 1 to 10. At 3 × 3 , the number of MIs decreases from 12 to 10. We attribute the decreasing trend to the larger area occupied by each cluster at larger factors. UAVs cover targets of multiple clusters at larger factors, facilitating the determination that the GMM parameters do not fit the target observations (i.e., all UAV flags becoming true). In other words, UAVs need to propagate knowledge further when clusters are covered by a small number of UAVs.
Figure 6d shows the same data points as Figure 6c but as a function of the grid size, not the covariance factor. The rate of increase is again significant regardless of the covariance factor. The number of MIs increases from 12 to 583 when the factor is 1 and from 10 to 445 when the factor is 10.
The results of the grid formation in Figure 6a–d are consistent with the results from the linear formation in Figure 5. In both cases, the number of MIs is highly dependent on the diameter of the FANET. In other words, the number of MIs increases with the number of hops that need to be covered to relay knowledge from every UAV to other UAVs.
Figure 6e,f corresponds to the case that the GMM fits the ground observations, so the UAV flag values are expected to all be false. Figure 6e shows that the number of MIs for all flags to become false increases with the covariance factor, and the rate of increase is greater for larger grid sizes. At 3 × 3 , the number of MIs increases from 0 to 3 when the covariance increases from 1 to 10. In fact, the number of MIs is 0 for all covariance factors less than 10, meaning that all UAVs start with the correct assumption that the GMM fits the observations (i.e., line 17 in Algorithm 1), and they do not override the initial assumption (lines 21 and 25). On the other hand, at 11 × 11 , the number of MIs increases from 118 to 536. Therefore, in this case, UAVs incorrectly override the initial assumption that the flag is false (line 17), changing its value to true (lines 21 and 25). However, after a number of MIs, all UAVs correctly determine that the flag is false.
Figure 6f shows the same data points as Figure 6e but as a function of the grid size, not the covariance factor. The number of MIs increases in all cases of covariance factor values, and the rate of increase is greater for larger covariance factors. The number of MIs increases from 0 to 118 when the factor is 1 and increases from 3 to 536 when the factor is 10. This result is consistent with previous results. The number of MIs increases with the diameter of the FANET.

6.1.3. Grid Formation with an Increasing Number of Target Clusters

Figure 7 shows the number of MIs of the grid formation and when the number of clusters increases from two to nine, as shown in Figure 4. Different sizes of grid formations are also included, from 3 × 3 (Figure 4) to 11 × 11 (Figure 1a).
Figure 7a,b shows the number of MIs for full knowledge. The differences between the subfigures in Figure 6a,b are negligible. This is confirmation that the acquisition of full knowledge by all UAVs is dependent on the diameter of the FANET, not on the number of clusters or the covariance factor.
Figure 7c,d shows the number of MIs for all flags to become true. The results show the same trends as Figure 6c,d with one difference. The number of MIs decreases faster with the number of clusters (Figure 7c) than with the covariance factor (Figure 6c). This means that the tests on lines 20 and 24 of Algorithm 1 are more sensitive to the number of clusters than the covariance factor. These tests compare L ¯ Θ | K i , L ¯ Θ | A i , j , and L ¯ Θ | W i , j with ϵ , so the negative average log-likelihood given the UAV’s knowledge, agreement, or withheld knowledge is more sensitive to the number of clusters than the covariance factor.
It should also be noted that the faster decrease in the number of MIs in Figure 7c than in Figure 6c means that Algorithm 1 detects the unfitness of the GMM faster for larger numbers of clusters than for higher covariance factors. This observation is also valid for the number of MIs needed for all flags to become false. Figure 7e,f shows the same trends as Figure 6e,f with one difference. The number of MIs increases more slowly with the number of clusters (Figure 7e) than with the covariance factor (Figure 6e).

6.2. Performance Evaluation: Distributed EM Algorithm

The performance of the distributed EM algorithm is evaluated with the number of iterations of the while loop (i.e., line 5 of Algorithm 3) until the termination criterion is met. Given that one iteration consists of four for loops (i.e., lines 6, 9, 12, and 16), there are four rounds of communication on the wireless token-ring network per iteration.
In this case, we change our termination criterion to the same as the default criterion used in the centralized EM algorithm of the MATLAB Toolbox for Statistics and Machine Learning (i.e., fitgmdist in [49]). This criterion allows us to use fitgmdist to benchmark our distributed EM algorithm. The reason is that one EM step is completed per iteration of the while loop of our distributed EM algorithm (i.e., line 5 of Algorithm 3). Therefore, both algorithms perform one EM step per iteration, making the comparison of the number of iterations fair.
The termination criterion is as follows. Let L ¯ ( Θ out | O ) [ i ] be the average negative log-likelihood at the i th iteration. The termination occurs when two conditions are met: (1) | L ¯ ( Θ out | O ) [ i ] L ¯ ( Θ out | O ) [ i 1 ] | < L ¯ ( Θ out | O ) [ i ] 10 6 and (2) L ¯ ( Θ out | O ) [ i ] L ¯ ( Θ out | O ) [ i 1 ] 0 . This means that the new value of Θ out no longer decreases significantly, L ¯ ( Θ out | O ) .
The distributed EM algorithm (i.e., Algorithm 3) and the MATLAB algorithm (i.e., fitgmdist [49]) are also given the same initial GMM parameter values (i.e., Θ in in Algorithm 3) for a fair comparison. The values are calculated as follows. The weights ϕ s of Θ in are uniform, i.e., ϕ s = 1 k for s = 1 , 2 , , k . The centroids μ s of Θ are calculated using the MATLAB implementation of k-means. The covariance matrices Σ s of Θ in are set to diagonal matrices with two diagonal elements. The values of the upper and lower elements are the variance of the x and y coordinates of the targets of the s th cluster determined from k-means.
Figure 8 shows the number of iterations of the linear formation when the number of UAVs increases from 2 to 15. Both cluster locations, centered and uncentered, and both algorithms, distributed (Algorithm 3) and centralized (fitgmdist [49]), are evaluated in Figure 8. Each data point in Figure 8 is the average number of iterations of 20 simulations, with each simulation having a unique set of randomly generated targets. The number of iterations increases faster for the distributed EM algorithm than for the centralized EM algorithm as the number of UAVs increases. This result is expected because the centralized algorithm does not require DAC; all target observations are available to a single computing system, so the rounds of communication in Algorithm 3 are not needed in the centralized EM algorithm.
Figure 8 also shows that the location of clusters in the center of the image or in the boundaries of the image (i.e., centered vs. uncentered clusters shown in Figure 3) does not have a significant effect on the number of iterations. The number of iterations increases at similar rates in both cases, centered and uncentered, and for both algorithms, centralized and distributed.
Figure 9 shows the number of iterations of the grid formation. Each data point is the average number of iterations of 20 simulations, with each simulation having a unique set of randomly generated targets.
Figure 9a shows the number of iterations when the number of clusters increases from two to nine at grid sizes that increase from 3 × 3 to 11 × 11 , including both distributed and centralized algorithms. The results are consistent with the linear configuration. The centralized EM algorithm converges with the lowest number of iterations in all cases. However, the trend of the centralized EM algorithm is to increase. On the other hand, the distributed EM algorithm tends to remain constant. There are exceptions, such as the 3 × 3 and 9 × 9 formations, which have decreasing and increasing trends, respectively, but the average trend when all grid sizes are considered is to remain constant.
Figure 9b shows the same data points as Figure 9a but rearranged. In this case, the number of iterations is shown as the grid size increases from 3 × 3 to 11 × 11 at numbers of clusters that increase from 2 to 9. The general trend is for the number of iterations to increase with the grid size. This is expected because completing DAC requires more iterations when the data being averaged is distributed across a higher number of UAVs. Figure 9b also shows exceptions to the general trend when the grid size increases from even to odd sizes (e.g., from 4 × 4 to 5 × 5). In other words, the number of iterations increases in both cases, even and odd, but grids of odd size converge faster. For example, the number of iterations is higher for a 10 × 10 grid than an 8 × 8 grid, and it is higher for an 11 × 11 grid than a 9 × 9 grid, but the 9 × 9 and 11 × 11 grids require fewer iterations than the 8 × 8 and 10 × 10 grids. We attribute this behavior to the effect that different network topologies have on DAC convergence [50].

6.3. Comparison of the Monitoring and Distributed EM Algorithms with Related Work

To the best of our knowledge, distributed monitoring algorithms are based on a coordinator that collects data from nodes of the network as in [3,10,11,12,13,14,15,16,17,18,19] covered in Section 2, and our monitoring algorithm is based on [20] to avoid the need for a coordinator. Therefore, the performance of our monitoring algorithm is not comparable to [3,10,11,12,13,14,15,16,17,18,19]. The performance evaluation in [20] did not cover the number of MIs needed for the nodes to propagate their local knowledge to determine the unfitness of the GMM. The framework closest to our monitoring algorithm is the gossip/consensus algorithm [51,52]. These algorithms also require a number of MIs to propagate local information across the network. Table 2 compares the performance of Algorithm 1 [51,52].
Convergence in [51] requires at least 1000 MIs in a network of 100 temperature sensor nodes of higher connectivity (i.e., lower diameter) than our 10 × 10 grid. Convergence in [52] requires 12 MIs in a network of 7 UAVs in linear formation that determine the location of a target UAV detected by all monitoring UAVs under Gaussian noise. In our monitoring algorithm, 10 × 10 = 100 UAVs require no more than 600 MIs, according to Figure 6c and Figure 7c, and 7 UAVs in linear formation require 16 MIs, according to Figure 5.
Our distributed EM algorithm is compared to the algorithms in [22,29] because, as explained in Section 2, it is an adaptation of the algorithm in [22] that uses MH weights as in [29]. Table 3 compares the performance of Algorithm 3 [22,29].
The algorithm in [22] was simulated for one scenario only: 100 nodes and 3 target clusters. The termination occurred when | L ¯ ( Θ out | O ) [ i ] L ¯ ( Θ out | O ) [ i 1 ] | < L ¯ ( Θ out | O ) [ i ] 10 5 , which is 10 times less tight than the termination criterion used in our simulations in Section 6.2. The number of iterations until termination was 185. On the other hand, our distributed EM algorithm took 118 iterations for the same number of nodes and clusters (i.e., 10 × 10 = 100 UAVs and 3 target clusters in Figure 9). The algorithm in [29] was also simulated for one scenario only: 50 nodes and 2 target clusters. The termination was at 100 iterations. Our algorithm ended with 30 iterations for 7 × 7 = 49 UAVs and 2 target clusters, according to Figure 9.

7. Practical Considerations on a UAV Network

Our open-source network of autonomous UAVs is shown in Figure 10a and documented in [1]. Two adjacent thermal images captured with our UAVs are shown in Figure 10b.
UAV-to-UAV communication takes place over the Zigbee network, which is used for low-power and low-bandwidth industry applications. Each UAV is a WiFi router that connects to its controller, a Raspberry Pi, and a laptop computer. The controller is to override the autonomous operation of the UAV in the case of unsafe flight maneuvers due to unexpected events such as bugs in our code development or loss of GPS. The Raspberry Pi is used to interface the thermal camera with the operating system of the UAV. The laptop computer is used to program the UAVs for autonomous operation.
The thermal images in Figure 10b capture the same hotspot on the ground. The hotspot is partially covered on the left image and fully covered on the right image. In practice, adjacent images overlap due to geolocation errors and external factors such as wind. Hotspots are characterized by keypoints that are matched to each other to align the overlapping images. This operation is known as point-set registration [39]. All keypoints belong to the set of observations O = { x 1 , x 2 , , x m } defined in Section 3, and their coordinates in meters with respect to a user-defined origin can be calculated from the UAVs’ telemetry (i.e., latitude, longitude, altitude, pitch, yaw, and roll) and the thermal camera’s fields of view and resolution.
Our preliminary work in [53] measured the maximum packet rate on a Zigbee wireless link at 65 packets per second.
Algorithm 1 transmits X i , j from u i to each of its neighbors, one at a time (line 13 of Algorithm 1), and the maximum number of neighbors in our simulations is four. Therefore, Algorithm 1 spends 4 65 = 62 ms to complete all transmissions. The u i and its neighbors are a total of 5 UAVs, and only one of them can transmit at a time not to interfere with each other. Therefore, five transmissions are 5 × 62 = 310 ms long. Consider the 7 × 7 grid flight formation. This is 49 UAVs. The number of MIs for all flags to become true is 140 on average, according to Figure 6d. This means that Algorithm 1 takes 140 × 0.31 = 43 s at least to determine that all flag values are true when the flight formation is a 7 × 7 grid of 49 UAVs.
Algorithm 3 requires passing the token along the ring network four times per iteration. These four rounds of communication correspond to the f o r loops on lines 6, 9, 12, and 16 of the algorithm, and each UAV communicates with its neighbors in every round. Therefore, one iteration of Algorithm 3 in the 7 × 7 grid is 7 × 7 × 4 × 62 = 12,152 ms or 12 s long. Algorithm 3 converges after 30 iterations when there are 2 clusters of targets on the ground, according to Table 3. This is 360 s or 6 min. The same calculation can be completed for a higher number of UAVs. For example, for the case of 100 UAVs (i.e., 10 × 10 grid), Algorithm 3 converges after 120 iterations when there are 3 clusters of targets on the ground, according to Figure 9a. Completing this number of iterations on a ring of 100 UAVs takes 10 × 10 × 4 × 0.062 × 120 = 2976 s or 50 min, which is not practical. The Zigbee network would have to be replaced with a wireless network with higher data rates, such as WiFi, at the cost of higher power consumption.
The previous numerical analysis assumes ideal wireless links. It does not account for delays from lower layers of the protocol architecture: data-link and medium-access control layers. These delays can be significant when the number of neighbors increases (i.e., medium access control) and when packets are not received (i.e., data link). For example, one iteration of Algorithm 3 is 12 s long in the 7 × 7 grid, so the convergence time increases by 12 s every time the token is lost due to a failed packet reception.
The analysis also neglects data processing time. Data processing is performed in Algorithm 1 to evaluate the average negative log-likelihood defined in (3) (lines 6, 7, 8, and 13). Data processing takes place on Algorithm 3 using the formulas in (3), (8), (12), (16)–(18). All formulas operate on observations in K i , and thermal images such as those in Figure 10b have a number of observations that do not exceed 350 in our data set. Each observation consists of two floating point numbers that correspond to the coordinates x and y. The evaluation of these formulas on this number of observations takes a fraction of a millisecond on our UAV platform. Therefore, data processing time is negligible with respect to UAV-to-UAV communication.
The power consumed for data processing and Zigbee radios [53] is also negligible with respect to other aspects of UAV operation (e.g., propellers, flight controller, image processing, and WiFi).

8. Conclusions

Distributed algorithms for a network of UAVs that monitor moving targets on the ground were proposed. The locations of the targets are assumed to follow a mixture of Gaussian distributions. The objective is to monitor the geographical distribution of the targets using a Gaussian mixture model (GMM). It is assumed that UAVs have a partial view of each target cluster due to limits on flight altitude and camera resolution. The UAVs monitor the clusters of targets with two algorithms that require data that are local to each UAV and data from UAVs that are one hop away in the communication graph. Therefore, monitoring is a distributed operation that does not rely on a single coordinator as in the related work. In the first algorithm, UAVs determine when the current GMM no longer represents the geographical distribution of the targets within a threshold accuracy. In the second algorithm, UAVs update the GMM to the new targets’ distribution. The performance of the algorithms was evaluated with the number of iterations the algorithms needed to converge. The reason is that a low number of iterations allows the algorithms to monitor target locations of a higher Nyquist rate (i.e., faster-moving targets). The simulation results confirmed superior performance to the best of our knowledge.
Future work will focus on the implementation and performance evaluation of the algorithms in our open-source UAV network [1] and the use of multimodal sensing using thermal and RGB images. We assumed that all UAVs have the same model and characteristics, so the algorithms do not take into account differences between UAVs. Future work will also consider a heterogeneous UAV network in which multimodal sensing is achieved with UAVs that have different instruments. Another important aspect that we plan to address is adding robustness against UAV failures. In the context of our algorithms, robustness can be achieved by recovering knowledge of a failed UAV from its neighbors, so a new UAV can replace the failed UAV.

Author Contributions

Conceptualization, methodology, software: Y.H. and G.V.; formal analysis, validation, visualization: Y.H., P.S.M. and G.V.; writing—original draft preparation: Y.H. and P.S.M.; writing—review and editing, supervision, funding acquisition: G.V. All authors have read and agreed to the published version of the manuscript.

Funding

This research was funded by the United States National Science Foundation under grant number 2301707.

Conflicts of Interest

Yuanji Huang is an employee of Sony Interactive Entertainment. Pavithra Sripathanallur Murali and Gustavo Vejarano declare no conflicts of interest. The sponsors had no role in the design of the study; in the collection, analysis or interpretation of the data; in the writing of the manuscript; or in the decision to publish the results.

Abbreviations

The following abbreviations are used in this manuscript:
DACDistributed Average Consensus
EMExpectation Maximization
FANETFlying Ad Hoc Network
GMMGaussian Mixture Model
MHMetropolis–Hastings
MIMonitoring Instance
pdfprobability density function
RGGRandom Geometric Graph
UAVUnmanned Aerial Vehicle

References

  1. Hynes, J.; Marcovich, A.; Vejarano, G. Open-Source Quadcopter for Autonomous UAV Networks for Surveillance using Zigbee Radios and Thermal Imaging. In Proceedings of the MILCOM 2024—2024 IEEE Military Communications Conference (MILCOM), Washington, DC, USA, 28 October–1 November 2024; pp. 572–577. [Google Scholar] [CrossRef]
  2. Wang, J.; Hu, W.; Chen, T. Overview of Industrial Alarm Systems. In Intelligent Industrial Alarm Systems: Advanced Analysis and Design Methods; Springer: Singapore, 2024; pp. 1–47. [Google Scholar] [CrossRef]
  3. He, Y.L.; Zhao, Y.; Zhu, Q.X.; Xu, Y. Online Distributed Process Monitoring and Alarm Analysis Using Novel Canonical Variate Analysis with Multicorrelation Blocks and Enhanced Contribution Plot. Ind. Eng. Chem. Res. 2020, 59, 20045–20057. [Google Scholar] [CrossRef]
  4. Choi, S.W.; Park, J.H.; Lee, I.B. Process monitoring using a Gaussian mixture model via principal component analysis and discriminant analysis. Comput. Chem. Eng. 2004, 28, 1377–1387. [Google Scholar] [CrossRef]
  5. Yu, J.; Qin, S.J. Multimode process monitoring with Bayesian inference-based finite Gaussian mixture models. AIChE J. 2008, 54, 1811–1829. [Google Scholar] [CrossRef]
  6. Yu, J. A particle filter driven dynamic Gaussian mixture model approach for complex process monitoring and fault diagnosis. J. Process Control 2012, 22, 778–788. [Google Scholar] [CrossRef]
  7. Xie, X.; Shi, H. Dynamic Multimode Process Modeling and Monitoring Using Adaptive Gaussian Mixture Models. Ind. Eng. Chem. Res. 2012, 51, 5497–5505. [Google Scholar] [CrossRef]
  8. Diaz-Rozo, J.; Bielza, C.; Larrañaga, P. Clustering of Data Streams With Dynamic Gaussian Mixture Models: An IoT Application in Industrial Processes. IEEE Internet Things J. 2018, 5, 3533–3547. [Google Scholar] [CrossRef]
  9. Chen, T.; Zhang, J. On-line multivariate statistical monitoring of batch processes using Gaussian mixture model. Comput. Chem. Eng. 2010, 34, 500–507. [Google Scholar] [CrossRef]
  10. Zhu, J.; Ge, Z.; Song, Z. Distributed Gaussian mixture model for monitoring multimode plant-wide process. In Proceedings of the 2016 Chinese Control and Decision Conference (CCDC), Yinchuan, China, 28–30 May 2016; pp. 5826–5831. [Google Scholar] [CrossRef]
  11. Jiang, Q.; Huang, B. Distributed monitoring for large-scale processes based on multivariate statistical analysis and Bayesian method. J. Process Control 2016, 46, 75–83. [Google Scholar] [CrossRef]
  12. Jiang, Q.; Yan, X.; Huang, B. Review and Perspectives of Data-Driven Distributed Monitoring for Industrial Plant-Wide Processes. Ind. Eng. Chem. Res. 2019, 58, 12899–12912. [Google Scholar] [CrossRef]
  13. Keralapura, R.; Cormode, G.; Ramamirtham, J. Communication-efficient distributed monitoring of thresholded counts. In Proceedings of the 2006 ACM SIGMOD International Conference on Management of Data, New York, NY, USA, 27–29 June 2006; pp. 289–300. [Google Scholar] [CrossRef]
  14. Cormode, G.; Muthukrishnan, S.; Yi, K. Algorithms for distributed functional monitoring. ACM Trans. Algorithms 2011, 7, 21. [Google Scholar] [CrossRef]
  15. Yehuda, G.; Keren, D.; Akaria, I. Monitoring Properties of Large, Distributed, Dynamic Graphs. In Proceedings of the 2017 IEEE International Parallel and Distributed Processing Symposium (IPDPS), Orlando, FL, USA, 29 May–2 June 2017; pp. 2–11. [Google Scholar] [CrossRef]
  16. Sivan, H.; Gabel, M.; Schuster, A. AutoMon: Automatic Distributed Monitoring for Arbitrary Multivariate Functions. In Proceedings of the 2022 International Conference on Management of Data, New York, NY, USA, 12–17 June 2022; pp. 310–324. [Google Scholar] [CrossRef]
  17. Alfassi, Y.; Gabel, M.; Yehuda, G.; Keren, D. A Distance-Based Scheme for Reducing Bandwidth in Distributed Geometric Monitoring. In Proceedings of the 2021 IEEE 37th International Conference on Data Engineering (ICDE), Chania, Greece, 19–22 April 2021; pp. 1164–1175. [Google Scholar] [CrossRef]
  18. Bernstein, R.; Osadchy, M.; Keren, D.; Schuster, A. LDA classifier monitoring in distributed streaming systems. J. Parallel Distrib. Comput. 2019, 123, 156–167. [Google Scholar] [CrossRef]
  19. Alvarez Aldana, J.A.; Maag, S.; Zaidi, F. A formal consensus-based distributed monitoring approach for mobile IoT networks. Internet Things 2021, 13, 100352. [Google Scholar] [CrossRef]
  20. Bhaduri, K.; Srivastava, A.N. A Local Scalable Distributed Expectation Maximization Algorithm for Large Peer-to-Peer Networks. In Proceedings of the 2009 Ninth IEEE International Conference on Data Mining, Miami, FL, USA, 6–9 December 2009; pp. 31–40. [Google Scholar] [CrossRef]
  21. Ergen, M.; Lee, D.; Sengupta, R.; Varaiya, P. WTRP—Wireless token ring protocol. IEEE Trans. Veh. Technol. 2004, 53, 1863–1881. [Google Scholar] [CrossRef]
  22. Nowak, R. Distributed EM algorithms for density estimation and clustering in sensor networks. IEEE Trans. Signal Process. 2003, 51, 2245–2253. [Google Scholar] [CrossRef]
  23. Xiao, L.; Boyd, S.; Lall, S. Distributed average consensus with time-varying metropolis weights. Automatica 2006, 1, 1–4. [Google Scholar]
  24. Luengo, D.; Martino, L. Fully adaptive Gaussian mixture Metropolis-Hastings algorithm. In Proceedings of the 2013 IEEE International Conference on Acoustics, Speech and Signal Processing, Vancouver, BC, Canada, 26–31 May 2013; pp. 6148–6152. [Google Scholar] [CrossRef]
  25. Vemuri, R.T.; Azam, M.; Bouguila, N.; Patterson, Z. A Bayesian sampling framework for asymmetric generalized Gaussian mixture models learning. Neural Comput. Appl. 2022, 34, 14123–14134. [Google Scholar] [CrossRef]
  26. Gryvill, H.; Grana, D.; Tjelmeland, H. Bayesian Ensemble Kalman Filter for Gaussian Mixture Models. Math. Geosci. 2024, 57, 153–192. [Google Scholar] [CrossRef]
  27. Schwarz, V.; Hannak, G.; Matz, G. On the convergence of average consensus with generalized metropolis-hasting weights. In Proceedings of the 2014 IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP), Florence, Italy, 4–9 May 2014; pp. 5442–5446. [Google Scholar] [CrossRef]
  28. Kenyeres, M.; Kenyeres, J. Distributed Mechanism for Detecting Average Consensus with Maximum-Degree Weights in Bipartite Regular Graphs. Mathematics 2021, 9, 20. [Google Scholar] [CrossRef]
  29. Silva Pereira, S.; Pagès-Zamora, A.; López-Valcarce, R. A diffusion-based distributed em algorithm for density estimation in wireless sensor networks. In Proceedings of the 2013 IEEE International Conference on Acoustics, Speech and Signal Processing, Vancouver, BC, Canada, 26–31 May 2013; pp. 4449–4453. [Google Scholar] [CrossRef]
  30. Gu, D. Distributed EM Algorithm for Gaussian Mixtures in Sensor Networks. IEEE Trans. Neural Netw. 2008, 19, 1154–1166. [Google Scholar] [CrossRef]
  31. Xiao, L.; Boyd, S.; Kim, S.J. Distributed average consensus with least-mean-square deviation. J. Parallel Distrib. Comput. 2007, 67, 33–46. [Google Scholar] [CrossRef]
  32. Safarinejadian, B.; Menhaj, M.B.; Karrari, M. Distributed Unsupervised Gaussian Mixture Learning for Density Estimation in Sensor Networks. IEEE Trans. Instrum. Meas. 2010, 59, 2250–2260. [Google Scholar] [CrossRef]
  33. Plant, C.; Böhm, C. Parallel EM-Clustering: Fast Convergence by Asynchronous Model Updates. In Proceedings of the 2010 IEEE International Conference on Data Mining Workshops, Sydney, Australia, 13 December 2010; pp. 178–185. [Google Scholar] [CrossRef]
  34. Yin, F.; Fritsche, C.; Jin, D.; Gustafsson, F.; Zoubir, A.M. Cooperative Localization in WSNs Using Gaussian Mixture Modeling: Distributed ECM Algorithms. IEEE Trans. Signal Process. 2015, 63, 1448–1463. [Google Scholar] [CrossRef]
  35. Zhang, Y.; Zhang, L.; Han, J.; Ban, Z. Distributed Gaussian mixture model-based particle filter method for chemical pollution source localization with sensor network. Clust. Comput. 2017, 20, 2905–2917. [Google Scholar] [CrossRef]
  36. Wang, R.; Han, S.; Zhou, J.; Chen, Y.; Wang, L.; Du, T.; Ji, K.; Zhao, Y.O.; Zhang, K. Transfer-Learning-Based Gaussian Mixture Model for Distributed Clustering. IEEE Trans. Cybern. 2023, 53, 7058–7070. [Google Scholar] [CrossRef]
  37. Wang, R.; Zhou, J.; Jiang, H.; Han, S.; Wang, L.; Wang, D.; Chen, Y. A general transfer learning-based Gaussian mixture model for clustering. Int. J. Fuzzy Syst. 2021, 23, 776–793. [Google Scholar] [CrossRef]
  38. Schroth, C.A.; Vlaski, S.; Zoubir, A.M. Robust M-Estimation Based Distributed Expectation Maximization Algorithm with Robust Aggregation. In Proceedings of the ICASSP 2023—2023 IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP), Rhodes Island, Greece, 4–10 June 2023; pp. 1–5. [Google Scholar] [CrossRef]
  39. Darji, D.; Vejarano, G. Point Set Registration for Target Localization Using Unmanned Aerial Vehicles. ACM Trans. Spat. Algorithms Syst. 2023, 9, 1–29. [Google Scholar] [CrossRef]
  40. Jang, D.; Yoo, J.; Son, C.Y.; Kim, D.; Kim, H.J. Multi-Robot Active Sensing and Environmental Model Learning With Distributed Gaussian Process. IEEE Robot. Autom. Lett. 2020, 5, 5905–5912. [Google Scholar] [CrossRef]
  41. Choi, S.; Jadaliha, M.; Choi, J.; Oh, S. Distributed Gaussian Process Regression Under Localization Uncertainty. J. Dyn. Syst. Meas. Control 2014, 137, 031007. [Google Scholar] [CrossRef]
  42. Vlassis, N.; Likas, A. A kurtosis-based dynamic approach to Gaussian mixture modeling. IEEE Trans. Syst. Man Cybern. Part A Syst. Humans 1999, 29, 393–399. [Google Scholar] [CrossRef]
  43. Chen, T.; Morris, J.; Martin, E. Probability Density Estimation via an Infinite Gaussian Mixture Model: Application to Statistical Process Monitoring. J. R. Stat. Soc. Ser. C Appl. Stat. 2006, 55, 699–715. [Google Scholar] [CrossRef]
  44. Xue, F.; Kumar, P.R. The Number of Neighbors Needed for Connectivity of Wireless Networks. Wirel. Netw. 2004, 10, 169–181. [Google Scholar] [CrossRef]
  45. Santi, P. Topology Control in Wireless Ad Hoc and Sensor Networks; Wiley: Chichester, UK; Hoboken, NJ, USA, 2005. [Google Scholar]
  46. Lim, H.; Kim, C. Flooding in wireless ad hoc networks. Comput. Commun. 2001, 24, 353–363. [Google Scholar] [CrossRef]
  47. Moon, T. The expectation-maximization algorithm. IEEE Signal Process. Mag. 1996, 13, 47–60. [Google Scholar] [CrossRef]
  48. Zhuang, X.; Huang, Y.; Palaniappan, K.; Zhao, Y. Gaussian mixture density modeling, decomposition, and applications. IEEE Trans. Image Process. 1996, 5, 1293–1302. [Google Scholar] [CrossRef]
  49. Matlab. fitgmdist: Fit Gaussian Mixture Model to Data. Available online: https://www.mathworks.com/help/stats/fitgmdist.html (accessed on 18 June 2025).
  50. Sirocchi, C.; Bogliolo, A. Topological network features determine convergence rate of distributed average algorithms. Sci. Rep. 2022, 12, 21831. [Google Scholar] [CrossRef]
  51. Chiuso, A.; Fagnani, F.; Schenato, L.; Zampieri, S. Gossip Algorithms for Simultaneous Distributed Estimation and Classification in Sensor Networks. IEEE J. Sel. Top. Signal Process. 2011, 5, 691–706. [Google Scholar] [CrossRef]
  52. Cao, R.; Jeon, B.J.; He, S. Communication-Aware Distributed Estimation Over a Network of Aerial Vehicles. IEEE Trans. Instrum. Meas. 2024, 73, 1–14. [Google Scholar] [CrossRef]
  53. Newell, G.; Vejarano, G. Motion-Based Routing and Transmission Power Control in Wireless Body Area Networks. IEEE Open J. Commun. Soc. 2020, 1, 444–461. [Google Scholar] [CrossRef]
Figure 1. Target clusters and UAV coverage.
Figure 1. Target clusters and UAV coverage.
Robotics 14 00085 g001
Figure 2. UAV transmitting to its one-hop neighbors.
Figure 2. UAV transmitting to its one-hop neighbors.
Robotics 14 00085 g002
Figure 3. Linear flight formation.
Figure 3. Linear flight formation.
Robotics 14 00085 g003
Figure 4. Location of clusters for the simulation of Algorithm 1 when the number of clusters increases.
Figure 4. Location of clusters for the simulation of Algorithm 1 when the number of clusters increases.
Robotics 14 00085 g004
Figure 5. Number of MIs when the number of UAVs and clusters increases under the linear configuration.
Figure 5. Number of MIs when the number of UAVs and clusters increases under the linear configuration.
Robotics 14 00085 g005
Figure 6. Number of MIs when the covariance factor increases under the grid formation.
Figure 6. Number of MIs when the covariance factor increases under the grid formation.
Robotics 14 00085 g006
Figure 7. Number of MIs when the number of clusters increases under the grid formation.
Figure 7. Number of MIs when the number of clusters increases under the grid formation.
Robotics 14 00085 g007
Figure 8. Number of iterations of Algorithm 3 under the linear formations.
Figure 8. Number of iterations of Algorithm 3 under the linear formations.
Robotics 14 00085 g008
Figure 9. Number of iterations of Algorithm 3 under the grid formations.
Figure 9. Number of iterations of Algorithm 3 under the grid formations.
Robotics 14 00085 g009
Figure 10. Testbed for the implementation of Algorithms 1–3.
Figure 10. Testbed for the implementation of Algorithms 1–3.
Robotics 14 00085 g010
Table 1. Classification of monitoring algorithms.
Table 1. Classification of monitoring algorithms.
CentralizedDistributed Under Star/Tree Topology
GMMGMMsingle Gaussian componentfrequency of an eventarbitrary function
[4,5,6,7,8,9] [3,10,20] [11,12] [13,14] [15,16,17,18,19]
Table 2. Number of monitoring instances.
Table 2. Number of monitoring instances.
Nodes/UAVsAlgorithm 1[51][52]
100<600>1000N/A
716N/A12
Table 3. Number of iterations for the EM termination criterion.
Table 3. Number of iterations for the EM termination criterion.
Nodes/UAVs, ClustersAlgorithm 3[22][29]
100, 3118185N/A
50, 2N/AN/A100
49, 230N/AN/A
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content.

Share and Cite

MDPI and ACS Style

Huang, Y.; Sripathanallur Murali, P.; Vejarano, G. Distributed Monitoring of Moving Thermal Targets Using Unmanned Aerial Vehicles and Gaussian Mixture Models. Robotics 2025, 14, 85. https://doi.org/10.3390/robotics14070085

AMA Style

Huang Y, Sripathanallur Murali P, Vejarano G. Distributed Monitoring of Moving Thermal Targets Using Unmanned Aerial Vehicles and Gaussian Mixture Models. Robotics. 2025; 14(7):85. https://doi.org/10.3390/robotics14070085

Chicago/Turabian Style

Huang, Yuanji, Pavithra Sripathanallur Murali, and Gustavo Vejarano. 2025. "Distributed Monitoring of Moving Thermal Targets Using Unmanned Aerial Vehicles and Gaussian Mixture Models" Robotics 14, no. 7: 85. https://doi.org/10.3390/robotics14070085

APA Style

Huang, Y., Sripathanallur Murali, P., & Vejarano, G. (2025). Distributed Monitoring of Moving Thermal Targets Using Unmanned Aerial Vehicles and Gaussian Mixture Models. Robotics, 14(7), 85. https://doi.org/10.3390/robotics14070085

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop