Robust Edge Computing in UAV Systems via Scalable Computing and Cooperative Computing

—Unmanned aerial vehicle (UAV) systems are of increasing interest to academia and industry due to their mobility, ﬂexibility and maneuverability, and are an effective alternative to various uses such as surveillance and mobile edge computing (MEC). However, due to their limited computational and communications resources, it is difﬁcult to serve all computation tasks simultaneously. This article tackles this problem by ﬁrst proposing a scalable aerial computing solution, which is applicable for computation tasks of multiple quality levels, corresponding to different computation workloads and computation results of distinct performances. It opens up the possibility to maximally improve the overall computing performance with limited computational and communications resources. To meet the demands for timely video analysis that exceed the computing power of a UAV, we propose an aerial video streaming enabled cooperative computing solution, namely, UAVideo , which streams videos from a UAV to ground servers. As a complement to scalable aerial computing, UAVideo minimizes the video streaming time under the constraints on UAV trajectory, video features, and communications resources. Simulation results reveal the substantial advantages of the proposed solutions. Besides, we highlight relevant directions for future research.


I. INTRODUCTION
With the flying, onboard sensing, computational and communication capability, unmanned aerial vehicle (UAV, or drone) systems have emerged as an effective alternative to a variety of uses such as surveillance, data transmission, and mobile edge computing (MEC) [1,2]. UAV systems are mobile, flexible, and maneuverable. Therefore, they play an important role, especially in areas lacking territorial infrastructure such as disaster area and battlefield. Recently, they have received increasing attention from academia and industry and have been widely used. At the same time, the flying ability and limited battery life and onboard computational capability distinguish a UAV system from a territorial communication and computation system and complicate the corresponding system design.
As low-cost megapixel on-device cameras and high precision built-in sensors become available in the market, latencysensitive and computation-intensive applications are emerging. MEC is one promising technology to serve these applications Zhi   at the wireless edge and has become a core component of IT infrastructure. However, when access points or base stations are overloaded or unavailable, traditional territorial MEC cannot function properly, making it impossible to provide computational capability in a timely manner. At this time, UAVs can be rapidly deployed to designated areas to meet ad hoc and/or emergent needs owing to their flying, onboard computational and communication capability. In addition, airto-ground communications typically have a high signal-tonoise ratio (SNR), benefited from the line-of-sight (LoS) characteristics of air-to-ground links. Thus, UAV-enabled MEC (i.e., aerial computing) can provide ad hoc computational capability and achieve low computation delay and transmission energy consumption, in comparison to traditional territorial MEC systems. Efficient aerial computing requires joint optimization of computational and communications resources as well as UAV flying trajectory [3][4][5].
Latency-sensitive and computation-intensive tasks may exceed the limitation of a UAV's computational and communication capability. Furthermore, when unexpected events, such as earthquake and landslide, occur, such challenging tasks may explode. Therefore, how to accomplish these computation tasks in a timely manner in resource-limited UAV systems, i.e., how to provide robust edge computing in UAV systems has become a critical problem.
Some applications have tasks of multiple quality levels, corresponding to different computation workloads and computation results of distinct performances [6,7]. For example, in object detection, considering more detection regions (i.e., region proposals) involves higher computational complexity while achieving higher detection accuracy. In service level agreement (SLA), particular aspects of a service, e.g., quality, availability, and responsibility, are agreed between the service provider and a service user, and the service provider often allocates its resources, e.g., computation power, memory/storage space and network bandwidth, in order to meet the client's SLA [6]. Clearly, there is a tradeoff between user experience and consumptions of computational and communications resources. However, to the best of our knowledge, this tradeoff has not yet been fully considered to maximally improve the overall computing performance of a UAV system with limited computational and communications resources in existing studies.
Video is a viable medium for information sharing and infotainment owing to its high capacity, consistency, and influence on human beings. Video analysis [8], such as target detection and scene recognition, is one of the most important UAV applications. As video analysis is usually computationally intensive, it may not be supported solely by a resource-limited UAV. In this case, a video can be streamed to one or multiple ground servers for timely processing. Considering video receiver heterogeneity (e.g., channel conditions and quality requirements) in video streaming, a video is encoded into multiple representations with different qualities and data rates. Depending on the channel conditions and quality requirements, the video at a particular quality will be selected for transmission, and the quality and quality variation of the received video influence video analysis performance [9]. To the best of our knowledge, these unique aspects in video streaming have not been fully considered in designing transmission schemes for UAV systems.
To achieve robust edge computing in UAV systems, this article proposes two solutions, namely, scalable aerial computing and aerial video streaming enabled cooperative computing, i.e., UAVideo. By optimizing quality level selection for multiquality tasks, transmission resource allocation and offloading scheduling, scalable aerial computing maximally improves the overall computing performance of a UAV system with limited computational and communications resources. Aerial video streaming enabled cooperative computing further complements the limited computing capability of a UAV, via offloading the task to ground servers for cooperative computing. By optimizing the UAV trajectory, video rate, and transmission resource allocation, UAVideo minimizes the video streaming time under the constraints on UAV trajectory, video features and communications resources. The two proposed solutions allow a resource-limited UAV system to serve more tasks simultaneously and are expected to play an important role in disaster activity, emergency relief and battlefield. Simulation results reveal the superiority of the proposed solutions and provide important design insights for robust edge computing in UAV systems. Finally, we highlight relevant directions for future research.
The rest of this paper is organized as follows. Section II explains scalable aerial computing, and Section III introduces aerial video streaming enabled cooperative computing. Simulation results are provided at the end of each section. Future work and conclusion are discussed in Section IV and Section V, respectively.

II. SCALABLE AERIAL COMPUTING A. Aerial computing overview
When emergency or disaster events occur, network infrastructures may fail due to power outages or other reasons, and territorial computation and communication systems cannot function as usual. In this case, it is critical to meet the needs of the latency-sensitive and computation-intensive computation tasks. UAV-enabled aerial computing provides an information service environment and cloud computing capability at a UAV and can serve as an alternative to meet the computation demands.
We consider an outdoor scenario with multiple ground nodes that are almost stationary. These nodes have very limited computational power but need to execute latency-sensitive and computation-intensive tasks such as video analysis for surveillance and monitoring. These tasks can be computed locally or offloaded to a UAV.  Task 1 has one quality level, while task 2 and task 3 have three quality levels. The task at a selected quality level can be computed locally or offloaded to the UAV over wireless communication channels. In the latter case, the computation results will be returned after the computation.
Efficient aerial computing design requires joint optimization of UAV trajectory and computational and communications resources under system constraints. The state-of-the-art aerial computing schemes optimize the offloading scheduling, transmission power allocation, transmission time duration (in TD-MA systems) and subcarrier (in OFDMA systems) allocation, and UAV trajectory using optimization or machine learning techniques [1,4]. Although these schemes have achieved superior performance, it is still difficult for a UAV to serve all computation tasks simultaneously due to its limited computational and communications resources. Furthermore, when unexpected events, such as earthquake and landslide, occur, challenging tasks may explode.

B. Scalable aerial computing
It is worth noting that the state-of-the-art aerial computing schemes assume that each computation task has only one quality level. However, multiple quality levels may exist for a computation task, associated with different computation workloads and computation results of possibly distinct sizes. A higher quality level results in a better performance with more computational and communications resource consumptions. This opens up the possibility to serve more tasks simultaneously when the computing resource is insufficient, which usually happens in UAV systems.
Scalable aerial computing considers applications with tasks of multiple quality levels, as shown in Fig. 2. Each task is characterized by four parameters: the size of the task before computation (in bits), workload (in the number of CPU cycles), size of the computation result (in bits), and utility [7]. The utility is a measure of pleasure or satisfaction and can reflect user experience. Mostly, these four parameters increase with the quality level of the task. Therefore, a particular task at a specific quality level can be offloaded to the UAV at an appropriate time for computation, considering the available computational and communications resources. The computation results are returned after the computation. As compared with traditional non-scalable aerial computing, scalable aerial computing provides more freedom and is more suitable for resource-limited UAV systems. The inherent research issues include optimal task level selection, resource allocation, offloading scheduling, and UAV trajectory planning, to maximally improve the overall computing utility. This optimization problem introduces more variables (i.e., quality level selection variables) compared to traditional aerial computing and thus is more complicated. Its efficient solution remains an open research issue.
We consider TDD-OFDMA and optimize the quality level selection, subcarrier allocation, transmission rate, transmission time duration allocation and offloading decision for a stationary UAV. This is a challenging mixed discrete-continuous optimization problem, which includes two types of variables, i.e., discrete variables (e.g., quality level selection, subcarrier allocation, and offloading decision) and continuous variables (e.g., transmission power and time). By problem transformation and convex optimization techniques, we obtain an optimal solution (under a mild condition) and a low-complexity suboptimal solution. Due to the page limit, we omit the details of the solution and refer to [7] for an example in a simpler TDMA system.

C. Performance evaluation
Here we numerically show how scalable edge computing improves the system utility by properly conducting the tradeoff between user experience and consumption of both computational and communications resources with a stationary UAV. In the simulation, we assume each task has 6 service levels and the utility function is defined as the sum of the quality level per task.
Four baseline schemes are used to verify the performance of the proposed scalable aerial computing. Baseline 1, Baseline 2, and Baseline 3 consider full offloading. Specifically, in Baseline 1, each subcarrier is assigned to the user with the largest channel power, and power allocation and service level selection are obtained using Difference of Convex (DC) programming; in Baseline 2, the problem is relaxed to a convex problem, a binary approximation of its optimal solution is adopted; in Baseline 3, equal power allocation is adopted, subcarrier allocation for uploading (downloading) is conducted in a greedy way to minimize the maximum uploading (downloading) time, and service level selection is conducted in a greedy way to minimize the total time duration. Baseline 4 does not consider offloading.
We independently and randomly generate a hundred realizations of channel power and task parameters, and have obtained the average performance over these realizations. The numerical results are shown in Fig. 3. We can observe that the average utility per ground user (i.e., total utility divided by the number of served ground users) of each scheme with offloading increases with the CPU frequency and with the number of subcarriers, which reflects the tradeoff between user experience and consumption of both computational resource and communications resources. The average utility of Baseline 4 does not change with the CPU frequency or the number of subcarriers, as only local computing is considered. Furthermore, we can find that the proposed solutions based on scalable aerial computing outperform all benchmark schemes, showing the superiority of the proposed scalable aerial computing in making better use of computational and communications resources. Besides, the average utilities of the optimal solution and suboptimal solution are close to each other. III. AERIAL VIDEO STREAMING ENABLED COOPERATIVE COMPUTING To meet the demands for timely video analysis that exceed the computing power of a UAV, we propose an aerial video streaming enabled cooperative computing solution UAVideo, that streams videos from a UAV to ground servers to enable cooperative computing. In this section, we illustrate the challenges of aerial video streaming and introduce the proposed solution UAVideo. Note that in addition to video analysis, UAVideo can also meet the video needs of territorial users for perception or other purposes. For instance, users in a shelter can use UAVideo to remotely monitor the situation of their houses.

A. Overview and challenges of aerial video streaming
Aerial video streaming focuses on fulfilling the video receivers using a UAV, which has the requested videos (captured by itself or sent from other UAVs, etc.) and acts as a mobile base station. The technical research issues of aerial video streaming include how to encode or compress video before transmission, how to transmit video (i.e., perform resource allocation and video quality level selection), and how to design UAV's trajectory.
In video streaming systems, a video is encoded into multiple representations corresponding to multiple quality levels. One quality level is then selected and transmitted to a receiver based on its channel conditions or quality requirements. The video streaming and video analysis performance highly depends on the received video quality, quality variation and rebuffering. Compared to traditional video streaming systems, aerial video streaming faces the following new challenges.
• Coupling between video streaming and UAV trajectory: UAV mobility results in variations of the channel conditions between the UAV and a ground receiver. This means that a high received video quality is easy to obtain when the UAV flies close to a ground receiver, as a shorter distance results in a better channel quality, and vice versa. On the other hand, when a receiver starts receiving high-quality video, the video quality variation requirement essentially restricts the UAV from straying too far from the receiver; otherwise, the newly received video quality at a longer UAV-receiver distance may not meet the variation requirement. However, the restricted UAV trajectory makes the receivers far away from the UAV to keep receiving low-quality video. To avoid restricting the UAV trajectory, we can lower the level of received video quality, even when the channel is good. In this case, the requirement of video quality variation is satisfied at the expense of video quality reduction. Therefore, there is a tradeoff between the received video quality and its variation. Furthermore, in order to provide smooth video playback, more video data needs to be downloaded and cached in buffers when channel conditions are favorable. These buffered video frames will prevent video freezing when channel conditions are degraded. On the other hand, the UAV should fly near the receivers with few video frames cached in the buffer. Therefore, a joint design of video streaming and UAV trajectory is required. In fact, the resource allocation of the aerial video streaming is difficult under quality variation and playback interruption avoidance constraints. • Aerial video streaming optimization without instantaneous channel conditions: It is challenging for a UAV to obtain instantaneous channel conditions due to high implementation cost for channel sounding. However, statistical channel distribution can be obtained prior to the UAV flight, as the quality of the air-ground link is related to the ground elevation angle of the UAV and the surrounding environment, causing different reflections and scattering. Therefore, the joint design of aerial video streaming and UAV trajectory can rely on the statistical channel information.

B. Framework of UAVideo
Video analysis is usually computationally intensive and delay sensitive, and may not be satisfied solely by a resourcelimited UAV. In this case, a video can be streamed to one or multiple ground servers for timely processing. When the size of the video analysis results is small, the main challenge for aerial video streaming enabled cooperative computing lies in how to efficiently stream each video from a UAV to the corresponding server. We focus on this technical issue and consider a UAV and multiple ground servers, as shown in Fig. 4. Each ground server receives a video from the UAV, performs data analysis, and then transmits the data analysis results back to the UAV or a control center. In this case, these ground servers are video receivers. The manager inside the UAV is the core, managing the flying trajectory of the UAV and how the videos are delivered to the ground receivers. We next introduce the major components of UAVideo.
• Ground video receivers: Each ground video receiver receives a video from the UAV at a desired video rate.
This desired video rate usually depends on the video analysis requirements (in terms of accuracy, covering range, etc.) or the physical capability of the terminals (e.g., screen size and resolution). • Video source at the UAV: Considering receiver heterogeneity, each source video is encoded into multiple representations corresponding to multiple quality levels using state-of-the-art video codecs such as HEVC and VVC, as in Dynamic Adaptive Streaming over HTTP (DASH). Thus the video at a proper rate can be selected and streamed accordingly. This can also be achieved by using scalable video encoding (SVC), which manages to provide multiple correlated layers. Different combinations of the layers lead to different video quality levels. • Quality evaluation metrics: Videos have unique features, such as resolution and quantization levels, that affect video analysis performance [9]. Different combinations of these factors have been considered in the literature, depending on the scenarios and design objectives. In UAVideo, we consider the demanded video rate, video quality variation (defined as the squared difference between the current playback rate and the averaged rate) and rebuffering (i.e., play interruption) as performance metrics [10]. Besides, the transmission time (i.e., the operation time of the UAV) for serving the video receivers is another primary metric, as fulfilling video requests in a shorter time brings more benefits. • Air-ground link: To comply with aerial regulations, a UAV must fly at a specific range of altitudes and a limited speed. Besides, it is assumed that a UAV has to return to its initial position before the battery runs out. In UAV systems, instantaneous channel state information is difficult to obtain, and only the statistical channel distribution is known before the flight. We consider an adaptive rate transmission scheme for the UAV as in [11], which finally allows us to calculate the maximum achievable rate at which the ground video receivers can reliably receive the transmitted video. In general, the maximal achievable rate is equivalently expressed as a function with respect to the three-dimensional UAV trajectory and transmission power [12]. To ensure a successful transmission, the maximal achievable rate of the air-ground link should be no less than the selected encoding rate of a video.
We consider TDMA and minimize the video streaming time under the constraints on the UAV trajectory (i.e., a UAV must fly at a specific range of altitudes and a limited speed, and finally return to its initial position), video features (i.e., video quality, video quality variation, and play interruption requirements) and communications resources (i.e., transmission power and time limits, and successful transmission constraint). The optimization variables include the UAV trajectory, the video rate, and the communication time and transmission power of each time slot. This optimization problem has nonconvex constraints and is therefore difficult to solve. We can decompose this optimization problem into subproblems, each of which optimizes one or a set of variables. These subproblems can be solved iteratively until the objective value converges, i.e., a feasible suboptimal solution is obtained. More details of such an optimization problem can be found in [12].

C. Performance evaluation
In the simulations, we consider 5 video receivers, randomly and uniformly distributed within a square area of 1600 × 1600 m 2 . As shown in Fig. 5 (a) and (b), the initial and final points of the UAV are set to (-600, 0, 50), represented by a triangle. The minimum and maximum allowable altitude are set as 50 m and 300 m, respectively. The maximum horizontal and vertical flying speed are set to 40 m/s and 20 m/s, respectively. It is assumed that all receivers have the same utility (defined as a function of received video rate over desired video rate) requirements, denoted asŪ . The communication bandwidth is 1 MHz, and the carrier frequency is 5 GHz [12].
Four benchmark schemes are considered. They are 2D (two-dimensional) path optimization, UAV height optimization, static streaming, and even allocation. These four schemes optimize different variables of aerial video streaming. For example, 2D path optimization allows joint optimization of both the horizontal trajectory and resource allocation of the UAV, leaving the altitude of the UAV with a minimum altitude (i.e., 50 m). UAV height optimization optimizes both resource allocation and altitude without changing the horizontal position of the UAV. static streaming optimizes only the resource allocation of the UAV, while the communications resource is evenly allocated in even allocation.
Optimized UAV trajectories with various utility and video quality variation requirements are shown in Figure 5 (a) and (b), which also include the optimized trajectories for 2D path optimization and even allocation withŪ = 400 and video quality variation constraint ζ = 1 Mbps 2 . We can see that the UAV's trajectory shrinks with the decrease in the variation of video quality. It means that if the UAV is closer to a particular ground receiver, it will then be far from other ones who have limited channel quality access. However, it will cost much more communications resources to meet the requirement of the video receivers far from the UAV. With the increase of the utility requirement, the UAV will adjust its flying to move closer to the receiver or even hover to provide higher received video quality. As can be seen from Fig. 5 (c), the UAV communicates with the receiver when getting close. The received video data will be cached in the playback buffer and then analyzed without interruption. Figure 5 (e) and (f) show the operation time of the UAV for streaming requested videos for different utility requirements and numbers of ground video receivers. We can observe that the UAVideo considerably reduces the operation time compared to other schemes. With a largerŪ and a larger number of receivers, a more significant performance improvement can be achieved. The performance gaps over the comparison schemes are brought by the joint optimization of the threedimensional UAV trajectory (vs. 2D path optimization, UAV height optimization, and static streaming) and communications resources (vs. even allocation). When the utility requirement or the number of receivers increases, the UAV operation time also increases.

IV. FUTURE WORK
We envision that UAV systems will play a vital role in near future by offering enriched sensing, surveillance, data transmission, and computation services. This area opens up many exciting and critical future research directions.

A. Cooperative UAV system and UAV coverage
In a multi-UAV system, UAVs can work jointly to provide better performance with broader coverage and more powerful computational and communication capabilities [13]. However, the scheduling and resource allocation inherent in multi-UAV aerial computing becomes more complicated. How should these UAVs collaborate to efficiently perform sensing, surveillance, data transmission, and computation requires further research. Moreover, multi-UAV systems may operate in centralized, decentralized, and distributed manners depending on system requirements. As different operation modes call for different schemes, flexibly adapting schemes to operation modes brings new challenges. Besides, where to deploy UAVs for effective cooperative computing (i.e., UAV coverage) is also a non-trivial issue. These problems are very involved in general, and low-complexity and high-performance solutions are necessary to meet the real-time requirements in specific scenarios.

B. Artificial intelligence for resource allocation in aerial computing
Artificial intelligence (AI) has been widely used for optimizing communication and computation systems. In particular, it yields satisfactory performance when conventional optimization techniques fail, as optimization problems cannot be explicitly formulated or efficiently solved. UAV systems have more design variables and higher unpredictability than territorial communication and computation systems. There are already some schemes that use AI to optimize resource allocation for aerial computing [14]. However, there are still many unresolved issues, such as lack of training data, high complexity due to large state space, and insufficient characterization of complex UAV systems. Besides, federated learning and split learning provide an alternative to optimizing UAV systems while protecting users' privacy.

C. Integrating with emerging technologies
Network Function Visualization (NFV) and Software-Defined Networking (SDN) can create automated, scalable, and customizable networks. Caching facilitates popular content delivery and substantially reduces network load. Intelligent reflecting surface (IRS), consisting of nearly passive, low-cost, reflecting elements with reconfigurable parameters, can effectively improve spectrum and energy efficiency. These emerging technologies have already been used in UAV systems and enhanced the performance of UAV systems [15]. However, to the best of our knowledge, there are still many unresolved issues for optimal integration of these technologies in the multi-UAV systems, such as the joint investigation of caching, task offloading with non-negligible input/output sizes, and aerial computing constraints.

D. Scaling computation tasks
The concept of scalable aerial computing works particularly well in situations where computational and communications resources are limited, allowing a tradeoff between the system performance and computational and communications resource consumptions. However, only some of the current programs support such scalability. Further research efforts are needed to enable the scalability of computation tasks in more applications.

V. CONCLUSION
This article focuses on serving all computation tasks simultaneously in resource-limited UAV systems. We first introduce a scalable aerial computing solution, which opens up the possibility to serve more users, and enables the optimal tradeoff between user experience and consumption of both computational and communications resources to maximize the overall performance. We then introduce an aerial video streaming enabled cooperative computing solution UAVideo, which jointly investigates the video features and UAV system constraints, so that the video tasks that exceed UAV's computational capability can be streamed to the territorial servers for collaborative and timely analysis. We have also conducted simulations to verify the performance of the proposed solutions, and the simulation results reveal their superiority. Besides, we have highlighted relevant directions for future research.