Energy Optimization in Multi-UAV-Assisted Edge Data Collection System

: In the IoT (Internet of Things) system, the introduction of UAV (Unmanned Aerial Vehicle) as a new data collection platform can solve the problem that IoT devices are unable to transmit data over long distances due to the limitation of their battery energy. However, the unreasonable distribution of UAVs will still lead to the problem of the high total energy consumption of the system. In this work, to deal with the problem, a deployment model of a mobile edge computing (MEC) system based on multi-UAV is proposed. The goal of the model is to minimize the energy consumption of the system in the process of data transmission by optimizing the deployment of UAVs. The DEVIPSK (differential evolution algorithm with variable population size based on a mutation strategy pool initialized by K-Means) is proposed to solve the model. In DEVIPSK, the population is initialized by K-Means to obtain better initial positions of UAVs. Besides, considering the limitation of the fixed mutation strategy in the traditional evolutionary algorithm, a mutation strategy pool is used to update the positions of UAVs. The experimental results show the superiority of the DEVIPSK and provide guidance for the deployment of UAVs in the field of edge data collection in the IoT system.


Introduction
The Mobile Edge Computing (MEC) Model [1] was proposed to solve such problems as delay, high pressure on network bandwidth, high energy consumption, and insufficient caching capacity [2] caused by centralized data processing in cloud computing mode. In recent years, some studies on UAV (Unmanned Aerial Vehicle) in mobile edge computing environment have been carried out in academia. Kim et al. [3] proposed an optimal task-UAV-edge server matching algorithm that minimizes energy consumption and processing time. Du et al. [4] regarded a UAV as an edge cloud. They proposed an effective iterative algorithm to minimize the energy consumption of the UAV on the premise of meeting the quality of service (QoS) requirements of the IoT devices and the computing resources available to the UAV. A UAV communication system based on mobile edge computing was studied [5]. Under the condition of resource constraints, the path and task allocation of the UAV, and the computing speed of the CPU are jointly optimized to minimize the energy consumption of the whole system. Yang et al. [6] designed a multi-UAV deployment scheme for MEC enhanced IoT architecture, which provides computing offloading services for ground IoT devices with limited local processing capacity. Then they proposed a multi-UAV deployment mechanism based on a differential evolution algorithm to balance the load of UAVs. Mozaffari et al. [7] considered a UAV-enabled MEC system and established a game model to achieve lower energy consumption. Alzenad et al. [8] researched the optimal deployment of UAVs to cover the maximum number of ground users with minimum transmission power, and then studied deployment operation optimization under different QoS requirements [9]. Liu et al. [10] proposed a cooperative MEC network architecture that supports UAVs, in which UAV can help other UAVs to perform computing tasks. On this basis, a collaborative computing offloading scheme considering the interference suppression of UAVs to equipment was proposed. It should be noted that the positions and number of UAVs are not optimized or only the positions of UAVs are optimized in these papers. A variable population differential evolution algorithm was proposed [11], in which the positions and the number of UAVs are considered. In the whole optimization process, since the number of UAVs is a dynamic variable, a new coding mechanism [11] was introduced in the paper. So that each individual of the population is on behalf of a UAV, and the whole population represents the whole UAV group. That is, the size of the population represents the number of UAVs. Our paper makes some improvements to its model and algorithm on the basis of [11].
In the scenario of IoT, terminal IoT devices are usually unable to transmit over long distances because of their own energy limitations. Therefore, as a new data collection platform, the UAV was introduced into the IoT scene. To use UAVs in a highly efficient way, we need to optimize the deployment of UAVs to provide reliable and energy-saving data acquisition solutions for IoT devices. In this paper, a differential evolution algorithm with variable population size based on a mutation strategy pool initialized by K-Means [12] is proposed (DEVIPSK). Meanwhile, the number and the positions of UAVs are optimized.
The main contributions of this paper are as follows: (1) A differential evolution algorithm with variable population size based on a mutation strategy pool initialized by K-Means is proposed to optimize the deployment of UAVs. It adopts the K-Means clustering algorithm to initialize the population. In addition, a control mechanism is also designed to dynamically change the parameter scaling factor F and crossover probability CR, to balance local search and global search. It also adopts a mutation strategy pool to help find the optimal mutation strategy. (2) The results show that, compared with other algorithms on 8 different instances, DEVIPSK performs better. The experimental results indicate that DEVIPSK reduces effectively the energy consumption of the entire system while solving problems for its green characteristics.
The rest of this paper is arranged as follows. The second chapter details the system model. The third chapter introduces the algorithm and its innovation. The fourth chapter carries on the simulation contrast experiment and data analysis. The last chapter summarizes the full paper.

System Model
An IoT system, as shown in Fig. 1, contains a set of IoT devices deployed in a certain area, represented as N = {1, 2, . . ., n}, and some fixed-location base stations. Because there may be a long transmission distance or the base station used as an auxiliary calculation is too far away in the process of data transmission, a group of rotary-wing UAVs is used to collect data from these ground-based IoT devices to MEC servers. Here, we hypothesis that the set of the number of UAVs can be expressed as K = {1, 2, . . ., k}. The distance between the IoT device i and the UAV j is expressed as Eq. (1): where (x i , y i , 0) is the position of the IoT device i, (X j , Y j , and H) is the position of the UAV j. In this model, the height of the UAV is set to a fixed value H. The connection between the IoT device i and the UAV j is expressed as a binary variable a i,j . Specifically, if there is a data exchange between the UAV and the IoT device, then a i,j equals 1; otherwise a i,j equals 0. To decrease energy, each IoT device always transmits data to the UAV closest to itself. Therefore, a i,j is set as Eq. (2): Moreover, the constraint of a i,j is Eq.
Each IoT device can only send data to one UAV. Moreover, taking into account the system bandwidth limitations, each UAV can receive data from up to M IoT devices at the same time. It can be expressed as Eq. (4): To ensure that all the IoT devices can be served, Eq. (5) should be satisfied: Each IoT device has a probability of establishing a line-of-sight relationship for a specific UAV. This probability depends on the environment of the IoT and the UAV, and the degree of elevation between the two. The probability of line-of-sight relationship [13] is Eq. (6): Among them, ψ and β are the constants depending on environment types and carrier fre- where d i,j is the distance between the IoT device i and the UAV j. H is the UAV's height.
From Eq. (6), it can be seen that the probability of establishing a line-of-sight relationship will be increased by increasing the degree of elevation or the height of the UAV. Reference [14] indicates that only when P LoS is greater than a threshold, the two can be connected, so P LoS (θ) ≥ ε (ε is close to 1). Eq. (7) is derived from θ ≥ P −1 LoS (ε): From Eq. (7), it can be concluded that the maximum distance between a UAV and an IoT device is .
In this model, the channel gain between the IoT device i and the UAV j [15] is expressed as Eq. (8): According to Eq. (8), the shorter the distance between the IoT device i and the UAV j, the greater its channel gain. This coincides with Eq. (2) in which each IoT device always chooses the nearest UAV to send data.
The rate at which the IoT device sends data to the UAV is Eq. (9): Among them, p i is the transmission energy; h 0 indicates the channel power gain at reference distance d 0 = 1m; σ 2 is the noise power of white Gaussian noise and B is the system bandwidth. While the IoT device sends data volume D i to the UAV, the time of transmitting is given by Eq. (10): Energy consumption is calculated using Eq. (11): Thus, energy consumption for all IoT devices is Eq. (12): The hover time of the UAV j is Eq. (13): Further, the hover energy consumption of the UAV j is Eq. (14): where p h represents the hover power of the UAV.
The distance between two UAVs should meet certain conditions so that there will be no collision [16]. The distance between the UAV j1 and the UAV j2 should be greater than d min , as shown in Eq. (15): In the model in this paper, the UAV serves as the data transfer station, and the data of the IoT device is finally sent to the edge server for processing. The volume of data received by the UAV j is shown in Eq. (16): The time T j of the UAV j sending data to the edge server is expressed as Eq. (17): According to Eq. (9), r j represents the rate at which the UAV j transmits data to the edge server.
The transmission energy of the UAV j is Eq. (18): where p u represents the UAV's transmission power.
The total energy consumption of the UAVs is Eq. (19): The energy consumption of the whole system consists of the energy consumption of the UAVs and the energy consumption of the IoT devices. Thus, the problem can be expressed as Eq. (20): where ϕ ≥ 0 is the weight of energy consumption of the IoT devices; d i,j represents the distance between the IoT device i and the UAV j; d j1,j2 represents the distance between the two UAVs, and d min is the shortest distance. X max and X min are the maximum and minimum values of X j ; Y max and Y min are the maximum and minimum values of Y j ; k max and k min are the maximum and minimum values of k; k min and k max are n M and n respectively; n represents the size of IoT devices; M represents the maximum size of IoT devices that a UAV can serve.

Method
DEVIPSK is proposed to optimize the deployment of UAVs, in which K-Means is used for population initialization, and a mutation strategy pool is proposed to help find the optimal mutation strategy. A control mechanism is also designed to dynamically change the parameter scaling factor F and crossover probability CR, to balance local search and global search.
The overall frame of the deployment optimization algorithm for UAVs is shown in Tab. 1. The population P is initialized according to Tab. 2. In the whole process of evolution, the UAV deployment optimization algorithm is based on the mutation strategy pool. The mutation and crossover operations of dynamic parameters generate the progeny population Q. Then the adaptive population size strategy in [11] is used to update the population P. In this adaptive mechanism, a population update includes inserting, replacing, and deleting at most one individual, so as to ensure that the change of population size will not be too large. By comparing the fitness value of the population after inserting, replacing or deleting an individual, the population with the highest fitness value replaces the current population P. If the fitness value of the three has not improved, and the fitness value of the population after deleting the individual is equal to the fitness value of the current population P, then the current population will be replaced with the population after deleting the individual. For the mutation and crossover operation of the differential evolution algorithm, the method based on the mutation strategy pool and binomial crossover is adopted.

Population Initialization
Generally speaking, a UAV can serve multiple IoT devices. When the number of UAVs is initialized, it does not have to be directly set to the maximum value. The initial value k of UAVs is set to a value between n M , n to make the algorithm converge faster.   In the process of initialization, the original data can be divided into k non-intersecting clusters by using the clustering algorithm. That is, the position of the UAV is the center of each cluster, making the UAV the closest to each IoT device in the cluster. Then check whether the population P satisfies all the constraints of the model. If so, a feasible initial population P is successfully generated. If not, repeat the operation.

Update Population Based on Variation Pool Strategy and Dynamically Changing Parameters
In this paper, a method of mutation strategy candidate pool is proposed, which includes several effective mutation strategies with different characteristics. In the process of evolution, for each individual in the current population, a probability will be selected according to previous experience to select a strategy from the candidate pool to perform the mutation operation. We have studied several effective mutation strategies commonly used in DE literature, and selected the following three strategies as a candidate pool for mutation strategies.
(1) The "DE/rand/1" strategy converges slowly, but has a strong search ability. So it is suitable to solve multimodal problems, rather than relying on the optimal solution currently found. (2) The "DE/rand/2" strategy based on two difference vectors may produce better disturbance than the strategy based on one difference vector. Under the background of particle swarm optimization, Storn [17] proved that all statistical distributions based on two difference vectors are better perturbation modes. (3) "DE/current-to-rand/1" is a rotation invariant strategy, and it is mainly applied to solving multi-objective optimization problems.
It is found that a control mechanism can be used to dynamically change the parameter scaling factor F and crossover probability CR, to make the evolution algorithm perform better. The whole process is described in detail below.
According to the study by Brest et al. [18], the calculation method of scaling factor F is defined as Eq. (21), and the calculation method of crossover probability CR is defined as Eq. (22): where rand j , j ∈ {1, 2, 3, 4} is the random number between [0, 1]. τ 1 and τ 2 are the probability to dynamically adjust F and CR. F l and F u are the range of F, F G+1 i and CR G+1 i are determined before the mutation operation. τ 1 , τ 2 , F l , F u are all preset values that are fixed throughout the operation. For different function problems, the appropriate control parameters are different. In our method, the change of Fand CR is controlled by τ 1 and τ 2 , so better control parameters will be used in the next iteration.
The algorithm flowchart of the whole system is shown in Fig. 3.  To test the statistical significance of the proposed algorithm and other algorithms, the Wilcoxon test is performed when the significant level is 0.05. In this paper, "+" and "−" are used to indicate how good or bad the DEVIPK algorithm is compared with other algorithms respectively.

The First Group of Experiments
For the sake of verifying the significance of the initial population by K-Means in DEVIPSK, DEVIPSK and DEVIPSK-K are compared under the same conditions in the first group of experiments. DEVIPSK-K does not use K-Means when initializing the population P. That is to say, DEVIPSK adds K-Means to initialize the population P on the basis of DEVIPSK-K.
As shown in Fig. 4, we can clearly see that in each different example, DEVIPSK generally keeps better results in the whole evolution process compared with DEVIPSK-K. Since the position of the UAV is the center of each cluster, it can make the UAV have the closest distance to each IoT device in this cluster compared with randomly generating the position of the UAV. According to Eq. (8), the smaller the distance between the two devices, the greater the channel gain. When the channel gain increases, the performance will also improve.

The Second Group of Experiments
In the second group of experiments, DEVIPSK was tested as a new variant of the differential evolution algorithm. We compared DEVIPSK with DEVIPSK-DE and DEVIPSK-jDE.
(1) DEVIPSK-DE [19] is the traditional differential evolution algorithm adopting the mutation and crossover operation of "DE/rand/1". (2) DEVIPSK-jDE [18] is a differential evolution algorithm with dynamically changing parameters, which can dynamically change mutation factor F and crossover factor CR, to make the algorithm perform better. (3) DEVIPSK adds a mutation strategy pool on the basis of DEVIPSK-jDE.
Tab. 4 shows the statistical test results. It represents the average and standard deviation of the energy of the whole system for 20 runs, and the percentage of performance improvement is shown in square brackets. Specifically, when n = 200, the most improvement was made with an increase of 4.78%. Compared with the differential evolution algorithm with dynamically changing parameters, in 6 out of 8 different examples, DEVIPSK obtained better performance. When n = 50, the most improvement was made, with an increase of 2.41%. But the differential evolution algorithm with dynamically changing parameters had better performance in the cases of n = 200 and n = 400.

The Third Group of Experiments
DEVIPS [11], DEEM [20] and DEVPISM are compared with DEVIPSK in the third group experiments. The purpose is to reflect the superiority of DEVIPSK in energy consumption for the UAV model. The following is an introduction to three comparing algorithms.
(1) The coding mechanism adopted by DEVIPS is similar to that in this paper, but the number of k max of UAVs is randomly generated when the population P is initialized. The mutation strategy pool and dynamic parameter mechanism are not used in DEVIPS. (2) The coding mechanism adopted by DEEM is similar to that of this paper, but the number of UAVs needs to be preset and does not change in the whole running process of the algorithm. The mutation strategy pool and dynamic parameter mechanism are not used in DEEM. (3) DEVPISM adopts the same coding mechanism as DEVIPSK and adopts the K-Means to initialize the population. The mutation strategy pool and dynamic parameter mechanism are used in the DEVPISM. But when updating the population, it performs replacement and removal to generate offspring population. Fig. 5 shows that in each different example, the convergence rate of DEVIPSK and DEVPISM is better than that of DEVIPS and DEEM in the early stage, and keeps better results in the whole process of evolution. The position of the UAV is the center of each cluster. So compared with randomly generating the position of the UAV, the initialization of the K-Means can make the UAV have the closest distance to each IoT device in this cluster. According to Eq. (8), the smaller the distance between the two devices, the greater the channel gain, so the performance will be better. Since DEVIPSK adopts an adaptive mechanism to update the population, the energy consumption of DEVPISM and DEVIPSK in the process of evolution is very similar. In this adaptive mechanism, a population update includes inserting, replacing and deleting at most one individual. This can ensure that the change of population size will not be too large, so it will not have a great impact on the overall performance.
The statistical test results of different algorithms are shown in Tab. 5. It represents the average value and standard deviation of the energy consumption of the entire system for 20 runs, and the percentage of performance improvement in square brackets.
It can be seen that the DEVIPSK has good performance on each different instance. Compared to DEEM, DEVIPSK has the biggest performance improvement. When n = 600, DEEM consumed 9.4260e + 06 J energy, whereas DEVIPSK consumed 5.9650e + 06 J energy, which is 36.72% less. DEEM only randomly generates the positions of UAVs during initialization, and the number of UAVs remains the same throughout the process. Compared to DEVIPS, when n = 600, the improvement of DEVIPSK is the most, increasing 21.13%. Since DEVIPS only randomly generates the position of the UAV during initialization, it is effective to introduce the K-Means clustering algorithm when initializing the population. Compared to DEVIPSM, DEVIPSK also improves the performance of the whole system to a certain extent, but the improvement is the least. When n = 600, the performance improved the most, with a promotion of 4.40%.

Conclusion
Considering that the terminal IoT devices are usually unable to transmit over long distance due to the limitation of its battery energy, we try to solve this problem by combining multi-UAV deployment with mobile edge computing. Besides, a differential evolution algorithm with variable population size based on a mutation strategy pool initialized by K-Means is proposed to optimize the positions and number of UAVs. In a series of different examples, each instance has a different number of IoT devices. Through the comparison between DEVIPSK and other algorithms, the experimental results show the effectiveness of the algorithm. In the future, we will study the problem of task scheduling in a mobile edge computing system.

Conflicts of Interest:
The authors declare that they have no conflicts of interest to report regarding the present study.