Revenue Optimization of a UAV-Fog Collaborative Framework for Remote Data Collection Services

Unmanned aerial vehicles (UAVs) can provide remote data collection services with quality of service guarantees. The typical application fields include geographic information systems, such as topological survey and natural disasters and hazards monitoring. In the bad geographic environment, wireless communication performance of UAVs cannot be guaranteed. Therefore, the efficiency of remote data collection cannot be guaranteed. This paper proposes a collaborative framework of UAVs and fog computing for remote data collection. Our goal is to maximize the revenue of UAVs with the support of fog computing, so we need to find the optimal computation resources allocation and task assignment scheme. This is a mixed integer nonlinear programming problem. The block coordinate descent method is used to solve this problem, which allows the original problem to be divided into the optimal task assignment sub-problem and the optimal computation resource allocation sub-problem. The greedy algorithm, heuristic algorithm and brute force algorithm are proposed to solve the optimal task assignment sub-problem. The convex optimization analysis method is used to solve the optimal resource allocation sub-problem. The genetic algorithm is used as a benchmark to compare with the heuristic-based block coordinate descent algorithm. The numerical simulation and network simulator based-simulation results show that the proposed UAV-Fog collaborative data collection problem can be efficiently solved by the block coordinate descent algorithm based on the heuristic strategy.


I. INTRODUCTION A. BACKGROUND AND PROBLEM STATEMENT
Unmanned aerial vehicles (UAVs) with sensor devices can perform remote data collection tasks in complex geographical environment due to their high mobility, therefore they can be used as a new technology for remote sensing and surveying tasks [1], [2] or as a supplement and alternative to the traditional wireless sensor networks [3]- [5]. For example, in [2], UAVs were introduced and applied to collect geographic data in Sweden. In [6], UAVs were used to inspect power lines in China. In [7], forest data were collected by UAVs in the USA.
The associate editor coordinating the review of this manuscript and approving it for publication was Moayad Aloqaily .
The research results of these practical works show that UAVs can achieve better remote data collection performance, and UAV-enabled remote data collection is a trend in remote sensing technology. Some efforts have been devoted to optimizing the operating parameters of data collection UAVs, including optimizing energy consumption [3], flight time [4] and trajectory [3], [4]. In these papers, UAVs collect data and send them directly to a ground base station (GBS) through wireless networks; therefore, the quality of the data collection service depends on the quality of the wireless communication. However, broadband wireless networks are not available in all places. When the data collection work is carried out in a remote region, the network conditions are poor and the broadband wireless network is not covered. Therefore, VOLUME 8, 2020 This work is licensed under a Creative Commons Attribution 4.0 License. For more information, see https://creativecommons.org/licenses/by/4.0/ the delivery after data collection needs to be carried out through the Delay Tolerant Network (DTN) [1], which will make the efficiency of remote data collection low. A UAV can also fly to the communication range of the ground base station to transmit data, but the energy consumption of the flight will increase, and the data collection cost will increase too. To achieve a better balance between data collection efficiency and cost, this paper proposes a remote data collection service framework that combines UAV and fog computing.

B. RELATED WORK
Fog computing is devoted to providing computation and communication resources for Internet of Things (IoT) users in the proximate area of IoT devices [8], [9]. Fog computing is similar to multi-access edge computing (MEC), which is treated as one of the key technologies towards 5G by European Telecommunications Standards Institute (ETSI) [10]- [12]. Fog computing is expected to play an important role in the industrial IoT and cyber-physical systems [13], such as smart industry [14] and smart agricultural technology [15] Without loss of generality, we use ''fog nodes'' to represent the nodes with communication and computing resources near IoT devices [16]. Because the nodes of edge computing and fog computing are limited by their geographical location, UAV assisted edge computing is proposed to expand the ability of edge computing [17]- [21]. In [18], agents (UAVs) are introduced to the task offloading, and a new task offloading framework based on agents (UAVs) is proposed. UAV and edge cloud execute the offloaded tasks together. In [19], Hu et al. studied the architecture of UAV-assisted edge computing (UMEC). A UAV hovering in an area can be used as a computing server or as a relay to help the user device compute its tasks by further offloading the computing tasks to the access point. In [20], Sahil Garg et al.
proposed a data-driven traffic optimization model, in which the UAV shares information with edge computing devices, and the UAV acts as a relay node between the vehicle and the edge node, thus reducing the data processing delay. In [21], a UAV not only serves as an MEC server, but also powers IoT devices via Wireless Power Transfer (WPT) technology. All of the above works regard UAVs as MEC nodes with strong communication and computation abilities. In contrast, in the remote sensing and surveying data collection work, after the UAVs collect the data, they need to be transferred back to the ground base station for storage and processing. For example, in geographic information collection, the obtained data need to be sent back to the ground base station for 3D modelling via stereophotogrammetry [2]. Therefore, the previous methods of combining UAVs with edge computing or UAV-enabled MEC cannot be directly used for UAV-enabled remote data collection services.
In this paper, we propose a fog computing supported UAVenabled remote data collection service framework, abbreviated as UAV-Fog Collaborative Data Collection (UFDC). The main contributions of this paper are as follows: 1. For the first time, a framework of remote data collection based on the cooperation of UAVs and fog computing is proposed, and a formal model is established to describe the problem of maximizing the revenue of UAV cluster under the constraints of time delay and resources. This is a mixed-integer nonlinear programming (MINLP) problem.
2. The block coordinate descent method is used to solve the optimization problems described above. The original problem can be divided into two sub-problems. The greedy algorithm, heuristic algorithm and brute force algorithm are proposed to solve the task assignment sub-problem of UAVs. Using the KKT condition analysis method of convex optimization, the analytic solution of computation resource allocation sub-problem of fog node is obtained.
3. The model and algorithm are verified by numerical simulation and network simulator based simulation. It is verified that the block coordinate descent method based on the heuristic algorithm can obtain the best cluster revenue when the algorithm execution time is small.
The rest of this paper is organized as follows: in the second section, the UFDC system model is introduced, and the formulated description of the problem of maximizing the UAV cluster revenue is described. In the third section, the optimization methods of this problem are presented. In the fourth section, the numerical results are introduced. In the last section, the conclusions are drawn.
The main notations used in this paper are listed in Table 1.

II. SYSTEM MODEL AND PROBLEM FORMULATION A. DESCRIPTION OF FRAMEWORK
In the scenario proposed in this paper, because the data collection point is located in a remote area, the broadband wireless network does not cover the area, therefore, after the UAV collects the data, it needs to fly back to the ground base station to transmit the data, which brings the flight time delay and costs. The operator of the data collection service can choose to rent the resources of a fog computing node to preprocess, store and forward the collected data. A fog computing node has a certain amount of communication and computing resources. A fog computing node can receive the IoT data collected by UAVs with low latency and preprocess the data. Because a fog node has a storage device, it can also temporarily store data, and then asynchronously send the data to the remote ground base station. Consider a scenario as shown in Fig. 1, where there are three UAVs, two fog nodes and a ground station. Here, UAV1 offloads the collected geographic information data to node fog1 for preprocessing, UAV2 offloads the collected geographic information data to the node fog2 for preprocessing, and UAV3 offloads the collected geographic information data to the ground base station. Because the fog node asynchronously sends the data to the ground base station, UAV1 and UAV2 do not need to wait for the ground base station to receive the data. UAV1 and UAV2 can immediately return to the collection point to continue to collect data. In this way, compared with UAV3, UAV1 and UAV2 can reduce the time of returning data and improve the efficiency of remote data collection. The formal description of the UFDC proposed in this paper is as follows. There are n UAVs in the system, which are expressed as U i , i = 1, 2, 3 . . . , n. Each UAV's speed is constant, with a speed of V and a fixed flight height of H. The size of the task data collected by each UAV and the number of clock cycles required for preprocessing are D i , and C i respectively. The initial coordinates of the UAV are (x i , y i ), i = 1, 2, 3, . . . , n, and they are distributed near the data collection point. There are m fog nodes, which are expressed as F j , j = 1, 2, 3,. . . , m. Each fog node has computing resources. The maximum resource of each fog node is f max j , j = 1, 2, 3, . . .,m, and the position coordinates of each fog node are expressed as (x j , y j ), j = 1, 2, 3, . . .,m.

B. COMPUTATION AND COMMUNICATION MODEL 1) COMPUTATION MODEL
Without loss of generality, suppose that UAVs are randomly distributed near the data collection point at the beginning. When enough data are collected by UAVs, there are two offloading modes as follows:

a: OFFLOADING AT THE GROUND STATION
When UAV U i is assigned to offload its task to the GBS, the revenue of the UAV is as follows: L represents the distance from the UAV to the GBS, which is the same and a constant for each UAV when it offloads data to the GBS; γ represents the energy consumption cost parameter of the UAV's flight time; R represents the reward that U i can obtain for performing the task once; and V represents the flight speed of the UAV. For the convenience of the analysis, we temporarily assume that V is a constant. We will further discuss the case that V is not a constant in the network simulator-based simulation section. β is the cost parameter of the energy consumption of a UAV when hovering. P is the energy consumption of a UAV when hovering. t H is the hovering duration of a UAV. t is the number of times that a UAV performs data collection tasks in time period I . Without loss of generality, these parameters are identical for all UAVs performing the same data collection task. VOLUME 8, 2020

b: OFFLOADING AT THE FOG NODES
When UAV U i is assigned to offload its task to F j , the revenue of the UAV is as follows: This is subject to the following constraints: Constraint (3) indicates that the task of a UAV can only be offloaded to one fog node, constraint (4) indicates that there is a maximum hovering time for a UAV, and constraint (5) indicates that the sum of all computation resources allocated to UAVs from fog node j cannot exceed the maximum computation resources that can be rented from fog node j. T f ij is the time when UAV U i flies into the communication range of fog node F j . Then, we have the following: where d ij is the distance from U i to F j : and t H ij is the hovering time of UAV, t H ij can be expressed as follows: where t r ij represents data transmission time of the task, and t c ij represents data computation time of the task. The expressions are as follows: where r ij is the data rate between UAV U i and Fog node F j . It is calculated using the following formula: where B is the bandwidth, and σ 2 is the power of noise. h ij is the channel gain power, which can be calculated using the following formula: where t ij represents the number of times the UAV performs data collection tasks in time period I .
where S is the constant duration that a UAV spends in data collection.

2) COMMUNICATION MODEL
Because the remote data collection task is carried out in remote areas, a broadband network, such as a 5G cellular network, is not available. Thus, direct ground-to-UAV communications, such as unlicensed spectrum 2.4GHz, are often used for data transmission [23]. The confirmation information of UAV communication with the ground station is very small, so we can ignore the data transmission time on the downlink. The transmission rate of the uplink between a UAV and the ground station or fog node is calculated using (11).

C. ECONOMIC VIABILITY ANALYSIS
Obviously, compared with the traditional model, if the proposed UFDC model is to improve revenues, it should meet the following requirements: Therefore, it is easy to get the following results: Here, q is the unit price of one CPU cycle of fog node. Only when q is a very small value, can we improve revenues. According to the current quotation of cloud computing providers, such as that of the Azure cloud computing service of Microsoft, 1 the corresponding unit price of the virtual machine computing resources is approximately $5.2 × 10 −4 per GHz per minute (with supporting storage and network resources) in the pay-as-you-go class of the tariff. Thus, the proposed model can be expected to improve revenues in most cases applying fog computing.

D. PROBLEM FORMULATION
To maximize the revenue of UAVs, it is necessary to optimize the resource and task allocation of the UFDC model. Suppose that the initial locations of the UAVs are near the data collection point. The resource and task allocation optimization problem of the UFDC model can be formulated as follows: The MP problem is a mixed-integer nonlinear programming problem (MINLP), which is an NP-hard problem [24], [25]. It is very hard to figure out the precise optimal solution of this kind of problem. Therefore, we use the block coordinate descent method (BCD) to obtain the approximate solution. As presented in [23], the BCD is widely used to solve the complicated non-convex multivariable joint optimization problems [3], [16], [21], [23]. Although the BCD algorithm cannot guarantee the global optimal solution of the MINLP problem, it can obtain the suboptimal solution via division and iteration and greatly reduce the difficulty of solving the non-convex multivariable joint optimization problem. The performance of the BCD algorithm has been verified in many research works [3], [16], [21], [23]. In the block coordinate descent method, the vector of variables is partitioned into different blocks. In each iteration, the algorithm fixes the values of some variable blocks, and searches in one-dimension along a coordinate direction at the current point to obtain the local optimal value of a function. According to the feature of the main problem MP, we can fix k ij to get the computation resource allocation sub-problem and fix f ij to get the task assignment sub-problem.

III. SOLUTIONS A. COMPUTATION RESOURCE ALLOCATION SUB-PROBLEM
The computation resource allocation sub-problem can be formulated as follows: Constraints (4) and (5) are linear, and it is easy to verify that the objective function Ut is a concave function. Hence we can use Lagrange dual function and Karush-Kuhn-Tucker (KKT) [26] conditions to solve SP1. The Lagrange dual function and Lagrange multipliers are expressed as follows: where: Since k ij is known, we only need to consider the case of According to the KKT conditions, we can get the following expressions for the optimal solution: where f * , λ * are the optimal decision variables and Lagrange multipliers. ∇ means the partial derivative Using formula (20) -(29), we can discuss the following cases to get the optimal solution.
1. All Lagrange multipliers λ * = 0. In this case, according to (20), the following equation holds: We get the optimal solution as follows: (31) This solution must satisfy constraints (22)- (25). Otherwise, this solution will be rejected. Here f * ij > 0 always holds because c1 < 0 holds. Therefore, the following constraints should be guaranteed when f * ij is the optimal solution.
In this case, f * ib = 0 and t H gj = 0 hold. Nevertheless, we only consider the case of k ij = 1, that is, we only optimize the computation resource allocation for UAV U i when its data are offloaded to fog node F j . Therefore, this case will not happen in the context. 3. λ * a = 0 and λ * c = 0. In this case, according to (26) and (28), the following equations hold: It's hard to guarantee that formula (34) and (35) hold at the same time. Formula (34) and (35) correspond to the upper bound and lower bound of the computation resources that can be allocated to UAVs in a fog node F j . Since k ij = 1, formula (35) is always larger than zero, that is, 4. Only λ * a = 0. For the consistency of the symbolic expression, here we use λ j for λ * a . In this case, the following equation must hold according to the KKT conditions: Because λ j > 0, we thus get the following: As depicted in Fig. 2 (a), if formula (37) holds, the optimal solution should be in the interval of the horizontal coordinate values corresponding to the shadow part in (a), where f ij is the lower bound of solution and is expressed as formula (35).
The following conditions must be satisfied for the optimal solution: Formula (39) is inferred from formula (26) (38) and λ * a = 0. f opt ij represents the optimal solution. As mentioned at the beginning of this section, the objective function Ut is a concave function and f * ij is its maximum point. Therefore, in the interval of [f ij , f * ij ), the function is monotonically increasing. Thus the optimal solution in this case can be found via linear search with the constraint (39).
5. Only λ * c = 0 For the consistency of the symbolic expression, here we use λ i for λ * c . The following formula must hold according to the KKT condition in this case: Because λ i > 0, we thus get the following: As shown in Fig. 2 (b), the solution satisfying (41) is in the interval of the horizontal coordinate values corresponding to the shaded part in the figure. Furthermore, the optimal solution must satisfy the lower bound constraint. Therefore, the following conditions must be satisfied for the optimal solution: f ij is the lower bound of the solution and is expressed as formula (35). Since the objective function Ut is a concave function and f * ij is its maximum point, in the interval of (f * ij , +∞), the function is monotonically decreasing. Thus the optimal solution in this case is f ij .

B. TASK ASSIGNMENT SUB-PROBLEM
The task assignment sub-problem can be expressed as following formula: In the sub-problem SP2, the computation resource f ij that is allocated to UAV U i by fog node F j is fixed. SP2 is a kind of integer programming problem called generalized assignment problem [27], [28], which is NP-hard in the strong sense [27]. We use the brute force algorithm, greedy algorithm and heuristic algorithm [28] to solve this problem.

1) GREEDY ALGORITHM
First, we rank each UAV according to the value density of its task (from high to low), where the value density refers to the revenue that can be achieved per unit of computing resources. The algorithm needs to calculate the value densities of the UAVs on each fog node. Next, starting from the fog node closest to the data collection point, the UAVs are selected for task offloading to the fog node in the order of their unit value density from high to low. When the computation resources of one fog node have been exhausted, the next closest fog node is selected, until all tasks are offloaded. If there are still UAVs left after the computation resources of all fog nodes are allocated, the remaining UAVs are set to fly back to the ground base station for task offloading. The pseudo code of the greedy algorithm is as follows.  (3) and (5), set k ij = 1; 5: End Loop 6: Let the remaining UAVs offload their data to the GBS.

2) HEURISTIC ALGORITHM
The heuristic algorithm proposed by Martello et al. [28] needs to calculate the ''desirability'' of assigning UAV i to fog node j first. Let e ij be the measurement of desirability. The algorithm considers all unassigned UAVs iteratively and finds the UAV U i * with the largest difference between the largest and the second largest e ij . Then, UAV U i * is assigned to fog node j with the largest e i * j . Next, the current solution is improved by locally adjusting the assignment strategy for each UAV. The pseudo code of the heuristic algorithm is in algorithm 2.
In the heuristic algorithm, the desirability measurement is needed. According to the research in [28], good results can be obtained by using the following measurement methods.
1. e ij = Z F j U i . In this case, the improvement phrase can be skipped. 2

3) BRUTE FORCE ALGORITHM AND COMPLEXITY ANALYSIS
Because it is NP complete to judge whether there is a feasible solution to the generalized assignment problem [27], and problem SP2 in this section is a non-linear optimization problem, there is no suitable approximate algorithm that approaches the optimal solution of the problem, and it is not possible to use the algorithm of the linear integer programming problem. To evaluate the performances of the greedy algorithm and heuristic algorithm, we use the brute force algorithm as the benchmark.
The time complexities of the brute force algorithm, greedy algorithm and heuristic algorithm are O(m n ), O(nm log m + nm) and O(nm log m + n 2 ), respectively. Obviously, if the value of n is close to that of m, the time complexities of the greedy algorithm and heuristic algorithm will be approximately the same. If n m, the time complexity of the heuristic algorithm will be higher.

C. BLOCK COORDINATE DESCENT ALGORITHM FOR MAIN PROBLEM
Because the main problem is a MINLP problem, there is no polynomial time global optimization algorithm or VOLUME 8, 2020 approximate optimization algorithm. To solve the main problem MP, we use the block coordinate descent method to find the local optimal solution of the main problem. The pseudo code of block coordinate descent algorithm is as follows:

Algorithm 3 Block Coordinate Descent Algorithm
, n, m Output: k ij , Ut 1: set the initial values of f ij (0) for each i, j; set k ij (0) = 0 for each i, j; 2: Loop while |Ut(τ + 1) − Ut(τ )| > ε and τ ≤ 1000, where τ is the number of iterations; 3: solve SP2 with f ij (τ ) fixed to get k ij (τ + 1); 4: solve SP1 with k ij (τ + 1) fixed to get f ij (τ + 1); 5: calculate Ut(τ + 1) 6: End Loop The initial values of f ij (0) can be calculated according to formula (34) or randomly generated in the inter- is calculated according to formula (34), and f max j is the upper bound of the computation resources that can be allocated to the UAV on a fog node. We choose the second way to generate the initial values of f ij (0). Because it is a NP-complete problem to determine whether MP has a feasible solution, the greedy algorithm and heuristic algorithm usually cannot be guaranteed to find a feasible solution. However, because we can choose to offload the UAV tasks to the ground base station, both algorithms can return a feasible solution in the practice. Thus, in the performance comparison, we only consider the cases in which the feasible solution of the problem exists.

IV. NUMERICAL SIMULATION
The values of the simulation parameters in this paper are taken from the configurations of [21], [22], which are listed in Table 2. Without loss of generality, we let the fog nodes be uniformly distributed in a line from 1km to 5km from the data collection point. The initial location of UAVs is from 50m to 100m from the data collection point. The task data size is randomly distributed from 200GB to 230GB. The task CPU cycles are randomly distributed from 800GHz to 830GHz. The maximum computation resources that can be allocated to UAVs are from 250GHz to 300GHz. There are 5 fog nodes by default.

A. NUMERICAL RESULTS OF THE ALGORITHMS FOR THE TASK ASSIGNMENT SUB-PROBLEM
In this section, we compare the performance of the different algorithms in solving the task assignment sub-problem. In each simulation round with the same parameters, we take the average value of 5 runs for each data point. Fig. 3 shows the revenues of four heuristic algorithms with different desirability measures. It can be observed that under our simulation configurations, the heuristic algorithm adopting the third and the fourth desirability measurements have the best result. Therefore in the next simulation, we use the fourth desirability measurement.   Fig. 4, when the number of UAVs is small, the difference between the three algorithms is very small. When the number of UAVs exceeds 10, the difference becomes more obvious. Since the optimal solution is always obtained by the brute force algorithm, the revenue obtained by the brute force algorithm is larger than that of the other two algorithms. In addition the heuristic algorithm is basically better than the greedy algorithm. As shown in Fig. 5, the running time of the brute force algorithm increases significantly as the number of UAVs increases, while the other two algorithms basically show no change and remain small. Because the time complexity of the brute force algorithm is much greater than those of the other two algorithms, we only compare the performances of the heuristic algorithm and greedy algorithm in the next comparison. Fig. 6 shows the changes in the revenue obtained by the three different algorithms as the number of fog nodes   increases. It can be seen that as the number of fog nodes increases, the revenue curve of the three algorithms tends to be stable, and the difference between the heuristic algorithm and brute force algorithm is not significant. This result shows that in the case of abundant computation resources, increasing the total number of fog nodes will not improve the overall performance of the system.   Compared with the results depicted in Fig. 4 and Fig. 6, Fig.7 and Fig. 8 show that the block coordinate descent algorithm achieves a better result, that is, more revenue is obtained. This result occurs because the block coordinate descent algorithm includes the adjustment of computation resource allocation strategy in each iteration. The adjustment of the computation resources enables the block coordinate descent method to further optimize the solution of the main problem using greedy strategy and heuristic strategy, and it also reduces the gap between the heuristic algorithm and greedy algorithm.

V. NETWORK SIMULATOR BASED SIMULATION
This section presents the simulation based on the opportunistic network simulator ONE [29]. As argued in [30], the network simulator-based simulation can provide an easier way to test applications and protocols than a real network test-bed because the simulator based simulation has some significant advantages, including scalability, flexibility, reproducible scenarios, etc.. According to references [1], [2], [30] and [31], the design of the UAV-fog collaborative remote data collection framework is as follows: 1. The UAVs are equipped with sensors or cameras for data collection tasks and are operated autonomously by onboard computers [2]. 2. The UAVs are piloted on the predefined routes, such as the waypoint mobility model [1], [30].
3. The UAVs utilize the UAV-to-ground communication channel to communicate with fog nodes. The communication standard could be Wi-Fi [31] or the unlicensed spectrum 2.4GHz [23]. 4. Each fog node has a network interface for the receiving UAVs' data. The data of a UAV can only be offloaded to one of the fog nodes. 5. Each UAV has two kinds of flight modes [32]: the circular flight mode for hovering or stay-at mobility [30] and the straight flight mode for waypoint mobility. 6. Each fog node has limited computation and storage resources for processing the UAVs' data. According to the above framework design, some simulation environment parameters of the ONE are set as table 3: As depicted in Fig. 9, b0 is the event generator, which represents the data collection point. fly18 is a mobile node, which represents a UAV. Fog12∼Fog67 are stationary nodes, which represent fog nodes. It should be noted that the flight speed of each UAV varied from 10 to 15 (meters per second) in this section. This configuration is different from the previous assumption in section II that the flight speed is a constant. Zeng et al. [32], [33] figured out the closed-form of propulsion energy consumption models for fixed-wing and rotary-wing UAVs in straight and level flight with a constant flight speed. These authors also calculated the optimal speeds for circular flight and straight flight mode. Therefore, to optimize the energy consumption, the flight speed of UAVs should be set as a constant, and it should be changed only when the flight mode is changed. However, it is difficult to keep a UAV flying at a constant speed. It is acceptable that the speed of a UAV fluctuates in a small range. Therefore, the simulation in this section is closer to the practical situation, that is, the flight speed of a UAV is uniformly distributed in a small range. In the optimization procedure, the mathematical expectation of the flight speed can be used for the calculation.
In this simulation, the performance of the heuristic-based block coordinate descent algorithm (Heu-BCD) is compared with that of the genetic algorithm [34], [35]. As mentioned in the previous section, to the best of our knowledge, there is no previous work that addresses the UFDC problem. The key to solving this problem is to find a compromise between the UAV flight time and data processing time. The UAV itself cannot be used as a computing platform. In the related work, the genetic algorithm is used to solve the service offloading problem of fog computing in a bus network [34] and the energy consumption optimization problem of the UAV swarm [35]. Therefore, this section takes the genetic algorithm as the benchmark. The basic parameters of the genetic algorithm are set as follows: the probability of crossover is 0.9, the mutation probability is 0.05, the size of the population is 1000, and the maximum evolution generation is 1000.
The simulation procedure is as follows: First, the solutions of two algorithms are calculated in MATLAB. Second, the simulation parameters of ONE are configured according to the obtained solutions. Then the simulation results, such as the UAV flight duration and flight times are obtained by running the simulation. Finally, the simulation results are substituted into the revenue formula (2) to calculate the final revenue value.
The simulation results are shown in Fig. 10. The number of fog nodes varied from 1 to 6. It can be seen that Heu-BCD algorithm achieves better revenues than the genetic algorithm at all simulation points. Similar to the results of the numerical simulation, as the number of fog nodes increases, the overall revenue gradually increases, which shows the feasibility of UFDC model in the simulation environment of this paper.

VI. DISCUSSION AND CONCLUSION
According to the results of the numerical simulation and the network simulator based simulation, based on the proposed UAV-fog collaborative remote data collection framework (UFDC) and the corresponding optimization model, the corresponding optimization algorithm can effectively improve the revenue of UAV-enabled remote data collection. In the numerical simulation, the heuristic algorithm performs better than the greedy algorithm. In the simulation based on the ONE simulator, the heuristic-based block coordinate descent algorithm outperforms the genetic algorithm. Different from the previous research work, this paper does not assume that the UAV has enough computing power, but rather it assumes that the UAV needs to send the collected data to the ground base station for processing. One typical applications is the collection of geographic information data. Because the scenario considered in this paper is data collection in remote areas, a large amount of data collected by a UAV cannot be directly sent to the base station, but rather it must be carried by the UAV to the base station and delivered within the receiving range of the base station. Therefore, this paper proposes renting the computation resources of fog nodes to preprocess and forward data. The optimization results mainly depend on the abundance of computation resources relative to the number of UAVs. In the case of reduced computation resources (more UAVs or less fog nodes), the optimization results are poor. When the computation resources are reduced to zero, the model will degenerate into the traditional UAV data collection model in remote areas.
In the future research work, we can combine multiple data transmission models with the UAV-fog computing framework, such as using the UAV ad hoc network or cooperative UAVs to transmit data [17], [31], [35], or we can consider extending the UAV-fog collaborative data collection framework to more application fields, such as electric vehicles and smart grid [36], cooperative fog-based IoT [37], or intelligent transportation [38], [39]. He has published more than 400 international journal and conference papers. His research interests mainly include wireless sensor networks, network performance analysis, and optimization. He is a member of ACM and an IET Fellow.
OSAMA ALFARRAJ received the master's and Ph.D. degrees in information and communication technology from Griffith University, in 2008 and 2013, respectively. He is currently an Associate Professor of computer sciences with King Saudi University, Riyadh, Saudi Arabia. His current research interests include eSystems (eGov, eHealth, and ecommerce), cloud computing, and big data. He has served as a Consultant and a member of the Saudi National Team for Measuring E-Government, Saudi Arabia, for two years.
AMR TOLBA received the M.Sc. and Ph.D. degrees from the Faculty of Science, Menoufia University, Egypt, in 2002 and 2006, respectively. He is currently an Associate Professor with the Faculty of Science, Menoufia University. He is on leave from Menoufia University. He is also with the Computer Science Department, Community College, King Saud University, Saudi Arabia. He has authored/coauthored over 60 scientific articles in international journals and conference proceedings. His main research interests include socially aware networks, the Internet of Things, intelligent systems, big data, recommender systems, and cloud computing. He serves as a Technical Program Committee member in several conferences.