Autonomous Recharging and Flight Mission Planning for Battery-operated Autonomous Drones

Unmanned aerial vehicles (UAVs), commonly known as drones, are being increasingly deployed throughout the globe as a means to streamline monitoring, inspection, mapping, and logistic routines. When dispatched on autonomous missions, drones require an intelligent decision-making system for trajectory planning and tour optimization. Given the limited capacity of their onboard batteries, a key design challenge is to ensure the underlying algorithms can efficiently optimize the mission objectives along with recharging operations during long-haul flights. With this in view, the present work undertakes a comprehensive study on automated tour management systems for an energy-constrained drone: (1) We construct a machine learning model that estimates the energy expenditure of typical multi-rotor drones while accounting for real-world aspects and extrinsic meteorological factors. (2) Leveraging this model, the joint program of flight mission planning and recharging optimization is formulated as a multi-criteria Asymmetric Traveling Salesman Problem (ATSP), wherein a drone seeks for the time-optimal energy-feasible tour that visits all the target sites and refuels whenever necessary. (3) We devise an efficient approximation algorithm with provable worst-case performance guarantees and implement it in a drone management system, which supports real-time flight path tracking and re-computation in dynamic environments. (4) The effectiveness and practicality of the proposed approach are validated through extensive numerical simulations as well as real-world experiments.


I. INTRODUCTION
W ITHIN future smart cities and ecosystems, autonomous drones are often envisaged as key-enabling technologies that would bolster and refine a range of vital services and procedures, including environmental surveillance, search and rescue operations, traffic monitoring and logistics [1], [2]. This outlook rests on drones' salient properties: (1) Energyefficiency: Small drones typically consume less energy per package-km than delivery trucks [3]. They are particularly energy-efficient for transporting lightweight items in short trips (within 4 km), whereas ground vehicles are useful for carrying heavier objects over long distances. (2) Agility: Unlike on the ground, there is little restriction and fewer obstacles in the sky, hence drones can travel across space in straight paths with nimble navigation. (3) Swiftness: Aerial transportation is usually not hampered by traffic congestion. Thus, the flight duration is mostly reflected by the distance traveled. Drones can also be rapidly launched via catapults and drop payloads by parachutes in response to time-critical situations. (4) Safeness: As there is no on-board human operator, UAVs are particularly appealing for mission tasks that are hazardous, contagious or lethal. Furthermore, in applications such as transport of medical supplies or disaster management, aerial drones may conduce to saving lives. (5) Low-cost: Drone technologies have matured over time and price has dropped due to economies of scale. The adoption of customized drone systems can yield notable cost reduction in a number of applications, including field spraying, surveillance in precision agriculture, monitoring of difficult-to-access infrastructure as well as parcel deliveries [4]. Nevertheless, drones are plagued with several operational challenges, such as limited battery endurance, meagre loadability and sensitivity to ambient factors [3], [5]. In particular, typical drones are only suitable for short-range trips, which restrains their applicability in persistent, long-distance mission tasks. Incidentally, though drones are expected to travel within certain high altitudes, they are largely susceptible to wind conditions (especially in light of their sheer weight).
Most of the existing planners for optimizing UAV routing focus on short-distance (reachable within the maximum flight time), recurrent tours that can be performed in parallel by a fleet of drones (e.g., for last-mile package deliveries). While beneficial on their own, these methods are not readily amenable to fuel-constrained, distant flight trips which demand a battery endurance model and entail an additional overhead for managing the recharging decisions. Such flights are often associated with solitary or non-parallelizable missions involving monolithic workflows or interdependent subtasks. One practical example concerns police patrols, which are typically discerned based on the pre-assigned monitoring area or district. Currently, UAE is actively utilizing drones to accompany police cars or independently monitor specific sites of interest [6], [7]. Another example relates to dronebased postal/governmental services being tested in UAE, France, UK, and Japan [8]- [11]. As is customary in these procedures, UAV's flight trajectory would likely consist of a sequence of visits to designated locations, wherein the shipment can undergo the prescribed successive pipeline for authentication and/or certification (e.g., stamp collection for a permit/document).

arXiv:1703.10049v5 [cs.RO] 19 Apr 2022
Without a reliable and inclusive battery consumption model in place, long-distance drone routing is prone to disruptions and exorbitant operational costs. Arguably, an ill-estimated battery charge level (e.g., owing to overlooked adversarial weather conditions) might degrade service quality or even lead to mission failure (e.g., when a drone runs out of charge before reaching a charging station or returning to the depot). On the other hand, frequent recharging detours might incur unnecessary delays and excessive energy expenditure.
In response to these demerits, we synthesize and experimentally validate an effective multifaceted tour management framework for energy-constrained, long-haul drone routing applications. Specifically, the present study complements and advances the relevant literature with the following four-fold contributions: ® Drawing on intensive experimentation and analysis, we design a first-order regression model for estimating energy consumption of typical multi-copter UAVs. The model accommodates wind speed and direction, UAV motion kinematics and payload mass, allowing for sufficiently accurate yet computationally inexpensive battery performance estimation in complex real-world environments (within 5% deviation error, as validated on three different drones). ® With the established model, the energy-constrained tour management problem is formulated as a multi-objective extension of ATSP, in which a drone is tasked with visiting the chosen (possibly distant) target locations while maintaining battery state-of-charge (SoC) within limits. The objective function aims at minimizing the total trip duration; the flight time plus the duration of recharging operations. ® We devise an efficient approximation algorithm inducing near-optimal (within an asymptotic constant factor) tandem of flight mission decisions and charging strategies. The average-case performance and scalability of the algorithm are demonstrated through numerical simulations. ® We implement the proposed approach in a drone management system that supports real-time flight path tracking and re-computation in dynamic environments. Subsequently, simulation studies and real-world experiments are provided to corroborate the effectiveness and practicality of the featured planner.

II. RELATED WORK
The extant literature on drones can be thematically organized into two major threads: (1) low-level transient control of flight operations, for instance, modulating propellers and maintaining balance through PID and MPC controllers [12], [13], and (2) high-level planning and management of drone missions, for example, obstacle avoidance, localization and mapping, and trajectory planning [14]. In the latter theme, most prior research on UAV routing, such as the works in [15]- [20], focused on short-distance fleet-based flight scenarios intended primarily for last-mile parcel deliveries. To overcome the range barrier, the studies in [21]- [23] propose different extended setups, involving mobile assisting platforms or multiple spatially distributed battery charging/swapping stations. Yet, the approaches developed therein lack optimality guarantees (except the one in [21]) and leave unexplored the potential of optimizing the duration of recharging operations (hence the consumed energy). Table I provides a further comparison  between the present paper and the aforementioned studies. Meanwhile over the recent past, several general-purpose planners for autonomous robots, such as Kongming [25], p-Sulu [26], COLIN [27] or ScottyActivity [28], have emerged in the Artificial Intelligence community. An important characteristic of COLIN and ScottyActivity is that they do not require time discretization. This is essential for efficient planning in scenarios with long operational horizons and activities with multiple time scales. Although these approaches have significantly increased expressivity of the problems that could be modeled, there is a lack of theoretical understanding of solution quality and running time. In particular, they often rely on Heuristic Forward Search (e.g. as in COLIN and Scotty-Activity), and Integer Programming (e.g., as in p-Sulu), both of which are provably unscalable in many domains. This work explores a different approach by exploiting problem structure with a deeper understanding from a theoretical perspective.
The problem under study is linked to several variants of the Vehicle Routing Problem (VRP), namely Solar-VRP [29], Hybrid-VRP [30], Green-VRP [31], and Electric-VRP [32]. Solar-VRP seeks to optimize the route and speed of a solarpowered electric vehicle in a single-source single-destination tour such that power consumption is balanced by harnessed solar energy. In Hybrid-VRP, the objective instead is to minimize the fuel consumption of a hybrid (electric and fuel powered) vehicle by modulating its driving mode based on trip information and finding an optimal path considering intermediate filling and charging stations. Green-VRP, Electric-VRP and variants thereof are concerned with optimal routing and refueling planning of a fleet of alternative fuel-powered vehicles considering the associated environmental and financial tolls. Unlike the setting studied here, the vehicle energy/fuel consumption rate is assumed constant in the preceding line of studies. For current purposes, we cast the energy-constrained drone tour management program as an extended version of the Fuel-constrained UAV Routing Problem (FCURP) studied in [21]. Therein, the authors develop an approximation algorithm for FCURP, based on the approach in [33] for the special case of the problem with symmetric travel costs. Building upon these methods, we devise an asymptotic constant-factor approximation algorithm for multi-objective FCURP and validate its practicality experimentally through real-world trials.
Although power consumption modeling and estimation of electric vehicles has been extensively studied, the research focus revolved primarily around ground vehicles [34]- [39]. Deviating from the latter, UAVs exhibit certain unique characteristics that entail new challenges (e.g., the impact of wind is more substantial for drone flight). As surveyed in [40], the methods developed for drones can be broadly categorized into two types: model-based white-box and black-box. The former approach hinges on explicit theoretical (in a sense "microscopic") behavior model of a drone that comprehensively characterizes the motor performance, aerodynamic environment,  and battery systems. However, producing a reliable white-box model often requires a large amount of data for calibration as well as specific particulars of the drone. For example, the aerodynamic parameters such as propeller and motor efficiencies, drag coefficients could be cumbersome to compute accurately without resorting to sophisticated experimental setups like wind tunnel. In contrast, a model-agnostic black-box method that relies on generic statistical techniques can estimate battery endurance of a drone with only a small set of measurable variables and parameters. In the sections to follow, we design a simple yet accurate power consumption regression model for multi-copter UAVs which is then leveraged for joint flight mission planning and recharging optimization.

III. PROBLEM STATEMENT
This section formalizes the problem of joint flight mission planning and recharging optimization for battery-operated autonomous drones. We propose a multi-criteria objective function that seeks to complete a flight tour mission for a set of target sites in the shortest time while minimizing duration of intermediate recharges.
As illustrated in Fig. 1, consider a set of sites of interest, denoted by S, that a drone needs to visit (e.g., sites for measurements or patrolling or drop-off locations of parcels), and a set C of charging station locations where a drone can refuel its battery. Let v 0 correspond to the base location of a drone and V S ∪ C ∪ {v 0 }. Given a pair of locations u, v ∈ V , we denote the designated direct flight path from u to v by (u, v), and the corresponding flight time by τ (u, v). As is customary, we assume that, while in route, the drone first ascends vertically to a desired altitude, then travels in a straight path, and finally descends to the destination vertically. Let E (u, v), τ (u, v) be the energy consumption required for the drone to fly along (u, v) in a time span of τ (u, v). Here, E(·, ·) is an increasing function that maps the combination of flight path (u, v) and flight time τ (u, v) to the required amount of energy. As exemplified in Section IV, E(·, ·) can be estimated through a first-order regression model.
We represent the charging strategy by a function b(·) : C → R that maps a charging station to an amount of energy to be recharged. When recharging the battery at u ∈ C, let the incurred charging time be τ c (b(u)). Define by η c ≤ 1 and η d ≥ 1 the charging and discharging efficiency coefficients, respectively. Once at a charging station u, the drone recharges its battery by an amount of energy denoted by η c b(u). Whereas when flying between two sites u, v ∈ V , it drains η d E (u, v), τ (u, v) amount of energy from the battery.
A flight mission plan is denoted by F, which is a tour starting and terminating at v 0 that consists of a sequence of locations in S ∪ C ∪ {v 0 }. Set F k to be the k-th location in F, then F 1 = F |F | = v 0 , and let x k be the state-of-charge (SoC) when reaching F k . We require the SoC to stay within a feasible range [B, B]. The lower bound of SoC, B, ensures sufficient residual energy for the drone to return to the base in case of emergency. The initial SoC is conventionally set to x 0 = B.
With the above notations, the drone flight mission planning with recharging problem (DFP) is formulated as (2) where DFP aims to find a flight mission plan F together with a charging strategy b(·) that minimizes the total trip time, consisting of the flight time plus the recharging time, while maintaining the SoC within permissible limits. The difficulty of DFP is to balance the flight decisions and charging decisions. On one hand, a flight mission plan needs to consider the requirement of completing the tour goals in minimal total trip time. On the other hand, it needs to be able to reach a charging station in case of insufficient SoC.
For further practical adaptations, the formulation of DFP can be extended to incorporate a variety of pragmatic mission planning factors, such as restrictions of no-fly zones and altitude as well as wind speed forecast information. Users can additionally weigh in with application-specific preferences, such as mission completion deadline or maximum payload weight. In Section VII, we highlight several immediate extensions for future work and sketch their solution methodologies.

IV. POWER CONSUMPTION MODEL
In order to accurately optimize the flight missions of drones, this section develops a practical battery endurance estimator for UAVs. First, we perform extensive experiments considering various flight scenarios on multiple drones to generate training data and examine energy consumption covariates. We then develop a nine-term regression model and train it for each drone. Lastly, we appraise the model fidelity through field experiments.

A. Experimental Setup and Scope
We evaluate the power consumption of three commercial drone models, namely 3DR Solo 1 , DJI Matrice 100, and DJI Matrice 600 Pro 2 , which appear in Fig. 2 (see Table III in the supplementary materials for their specifications). The drones support developer kits, which allowed us to extract the sensor readings and program the flight paths. The onboard barometer and GPS sensors served for measuring the 3-dimensional movements of a drone. The (ground) speed and position of a drone were obtained through GPS and IMU modules, while the altitude was obtained through barometer and GPS. To construct a detailed and practical battery endurance model, we examine the following four compound factors: 1) Motion -We further categorize drone motion into three types: hovering, horizontal and vertical. 2) Weight -The total weight of a drone including the carried payload. 3) Wind -Wind may benefit the power consumption in some cases and incur resistance in other cases. To distinguish, both ground speed and direction are considered. 4) Altitude -Flight altitude correlates with the fluid density of air, which in turn may affect rotor thrust.

B. Experimentation Results and Analysis
Analyzing the Impact of Motion: To this end, four experiments were conducted, with the first three on 3DR Solo and the last on DJI Matrice 600, which results are detailed below. Figs. 3 and 5 depict the recorded data traces. EXPERIMENT 1: To assess the baseline power consumption, the test drone was hovered in the air without any movement. Note that drones may slightly drift around the takeoff location due to deviation error of GPS modules, hence the speed data smaller than 0.5 m/s is filtered out. From the recorded data, we observe that the drone can maintain a sufficiently steady flying altitude with steady power consumption. EXPERIMENT 2: The test drone ascended and descended repeatedly, producing time-series data that allowed computing its vertical acceleration and speed. We observe larger power fluctuations due to vertical movements. Power consumption increases slightly when the drone ascends steadily. EXPERIMENT 3: The test drone moved horizontally without altering its altitude in this experiment. The GPS data comprises of speed and course angle of the drone. We also gathered average wind speed and direction using a wind speed meter. We observe smaller power fluctuations due to horizontal movements as compared to vertical ones.  but on days with different wind conditions. The wind direction and average speed were measured with a wind meter. EXPERIMENT 7: Fig. 6 shows the battery power consumption of 3DR Solo under different wind speeds when flying into a headwind and tailwind at maximum ground speed (18 km/h). We observe decreased power consumption when flying into a headwind, which is due to the increasing thrust by translational lift when the drone transitions from hovering to forward flight. When flying into a headwind, translational lift increases as the relative airflow over the propellers increases, resulting in less power consumption to hover the drone [41]. However, when the wind speed exceeds a certain limit, the aerodynamic drag may outweigh the benefit of translational lift. The drone speed is relatively slow in our setting, even at its peak. Hence, flying into a headwind is likely more energyefficient for 3DR Solo. Assessing the Influence of Altitude: To quantify the impact of air density on battery performance, we performed multiple tests on DJI Matrice 600 as elaborated below. EXPERIMENT 8: The test drone was hovered for around 2 minutes with zero ground speed at a height of 50 and 110 meters (FAA maximum permitted altitude is 120 meters ). As seen from Fig. 7, the observed variation in power consumption is merely 1%. While at higher altitudes the effect might be more substantial, given the adopted FAA regulations, the incurred impact is assumed constant.

C. Regression Model of Power Consumption for Drones
This section introduces a general multivariate black-box model of power consumption for multi-copter drones. In essence, the battery consumption of an electric vehicle is determined by the total power needed to overcome the physical forces opposing its motion, which include the force for acceleration and aerodynamic drag force [35], [36], [39].
LetP denote the estimated battery power consumption of a drone. Hinging on the insights gained in Section IV-B as well as prior models for electric vehicles, we expressP as a linear combination of three composite forces parameterized by mass, acceleration, velocity and wind attributes. Mathematically,P takes the following form: where · denotes the magnitude of a vector, β 1 , ..., β 9 are the regression coefficients to be calculated and • v xy and a xy are the speed and acceleration vectors describing the horizontal movement of the drone, • v z and a z are the speed and acceleration vectors characterizing the vertical movement of the drone, • m is the payload weight, • w xy is the vector of wind dynamics in the horizontal surface. Assuming uniform conditions in (5), the total power consumption of a drone in time interval ∆t would then amount tô P ·∆t. We note that while the above model does not capture all detailed factors, it can provide relatively accurate estimations with low computational complexity, as verified in Secs. IV-D and VI-B.

D. Model Evaluation
Based on the data collected from the experiments in Section IV-B, power consumption predictive models were trained for each of the three test drones. We assess the accuracy of produced estimations through two set of experiments. In the first, 3DR Solo and DJI Matrice 100 were programmed to perform vertical movements, then fly into a headwind and tailwind carrying different payload amounts while maintaining their altitude during the horizontal flight.
As evidenced by Fig. 8, the predicted and the ground truth power consumption records match closely within 0.4% error. The second experiment, conducted with DJI Matrice 600, employed a more complex flight scenario with multiple target locations and a recharging station as laid out in Section VI-B. According to the results, the estimated energy consumption was within 5% deviation from the actual measurements.

A. Case with Uniform Speed and Steady Wind
To provide efficient algorithms for DFP, we first consider a basic setting under some realistic assumptions. Suppose that the horizontal speed of the drone is a uniform constant under steady wind condition, which will be relaxed in Section V-B. Then, the flight time τ (u, v) between two sites u, v ∈ V is proportional to the length of flight path (u, v), denoted by d(u, v). The energy consumption model established in Section IV implies that the function E (u, v), τ (u, v) is linear in the distance d(u, v), and the charging time τ c (b(u)) is linear in the amount of recharged energy b(u). Thus, we assume the following linear objective functions: for some constants c a , c b , c f (u, v) > 0. Note that we allow c f (u, v) to be edge-dependent. This can model non-uniform environment 3 for each (u, v), for instance, a path experiencing stronger wind is expected to have a larger constant c f (u, v). Denote the minimum and maximum values of In this paper, we concentrate mostly on long-distance trips (e.g., ≥ 4 km), for which the vertical landing and take-off operations usually constitute a small part of the whole flight (e.g., < 10m vertically), hence account for only a marginal percentage of the total energy expenditure (e.g., < 1%). For exposition clarity, the energy consumption of these operations is assumed to be implicitly captured by c f (u, v) · d(u, v), though the results can be easily extended to consider them explicitly.
For convenience of notation, for a flight mission plan (F, b(·)), we write τ (F) Under the aforementioned assumptions, the total charging time τ c (b(F)), in an optimal flight mission plan F with the corresponding charging strategy b(F), is related to the total flight time τ (F) by the following lemma. Lemma 1. In an optimal flight mission plan (F, b(·)), we have Such a plan (F, b (·)) can be found in O(|V |) time.
Proof. See the supplementary materials. (Algorithm 4 below demonstrates how to construct such a plan explicitly.) Both Lemma 1 and Lemma 2 allow us to focus on minimizing the distance d(F) instead of total trip time. Hence, we simplify DFP such that the resulting problem's optimal solution is later shown to be within a constant factor from an optimal solution of DFP. The simplified formulation (SDFP) is defined as and its explicit Mixed-Integer Linear Programming (MILP) formulation is provided in the supplementary materials. In SDFP, we consider a modified distance function d(·, ·), which is defined as follows. Recall that V S ∪ C ∪ {v 0 }. Consider a weighted directed complete graph G 0 = (V, 2 V 2 ), whose edge lengths are defined by {c f (u, v) · d(u, v)} u,v . Then, for a pair of nodes u, v ∈ G 0 , d(u, v) quantifies the distance of the shortest feasible path from u to v assuming full charge at u and possibility of passing through charging stations. SDFP specializes to the Tour Gas Station problem studied in [33], which is NP-hard.
Note that we assume in SDFP that the SoC is brought to its maximum at each charging station. Once we obtain a tour under this assumption, it can be turned into a flight mission plan with the minimal charging requirements using Lemma 2.
For u ∈ V , let d u min v∈C d(u, v) be the distance to the nearest charging station from u, and s u argmin v∈C d(u, v) be the corresponding nearest charging station from u. Also, let d u min v∈C d(v, u) be the shortest distance starting from a charging station to u, and s u argmin v∈C d(v, u) be the corresponding charging station. Since we have asymmetric distances, s u is not necessarily equal to s u .
Following [33], we make a mild assumption that for every Intuitively, this assumption indicates that the distance between a pair of sites is always reachable by the available battery capacity. This assumption can be justified (for α = 1) as follows. For a location u ∈ S \ {v 0 }, if every v ∈ C is at a distance greater than U 2 , then it is infeasible to visit u without incurring the battery level below B (as the SoC drops below B − η d U = B). Moreover, β is defined as the maximum ratio between edges going between two gas stations, such as d In the following, we present an algorithm to SDFP and then DFP. The main algorithm is Find-plan V, d , which is an extension of the Hungarian Algorithm [42] for finding a tour for ATSP. It converts the graph into a bipartite graph, iteratively solves the minimum assignment problem, and finally combines all sub-tours to get a single tour. The resulting tour is passed to the procedure Fix-plan for converting it to a feasible flight mission plan F, which might use a non-optimal charging strategy b(·). Then, the resulting plan (F, b(·)) is delegated to procedure Fix-charge for finding the minimal charging requirements with respect to the flight mission plan F. Specifically, the three procedures in Find-plan V, d are: • Init-distances V, d, u, v : This provides a lower bound for an optimal solution. Namely, it finds for every pair of locations u, v ∈ V , the minimum possible distance d(u, v), and the corresponding shortest path P(u, v) to go from u to v without going out of the operational range of the battery. Note that if d(u, v) ≤ U − d u − d v then the drone can always go from u to v directly 4 . Otherwise, in the best possible scenario, the drone can reach u with SoC at most B − η d d u , next it can visit a sequence of charging stations (only if the distance d between two successive such stations is at most U ), then, from the last station, it has to reach v such that the SoC at v is at least B + η d d v (so that there is sufficient battery to reach s v ). In particular, the distance from u to the first charging station on this path should be at most U − d u . Similarly, the distance from the last station on the path to 4 That is, starting with SoC= B at su, then the drone reaches u with SoC B − η d d u , and then it flies directly from u to v causing the SoC to drop to Thus, there is sufficient battery at v to reach sv.
( d(u, v), P(u, v)) ← Init-distances V, d, u, v 4: Consider the weighted directed graph G = (V, E; d) where E = 2 V 2 5: F 0 ← find a tour using the Hungarian algorithm on G 6: 1: Let F i 1 , . . . , F ir be the charging stations, in the order they appear on F 2: for j = 0, 1, . . . , r do 3: 4: for j = 1, . . . , r do 5: This explains the definition of the graph G in line 5 of the procedure.
• Fix-plan G, F 0 : Given the flight mission plan F 0 returned by the Hungarian algorithm considering the weights d, this procedure reconstructs a feasible flight mission plan F for SDFP. First, each edge (u, v) is replaced in the flight mission plan by the corresponding path P(u, v). Since the resulting mission plan may still be infeasible, the procedure adds to every site a round trip to the closest charging stations (from and to the site).
Finally, the added stations are dropped sequentially in a greedy manner as long as feasibility is maintained. • Fix-charge F, b(·) : Starting from the flight mission plan (F, b(·)) returned by Fix-plan G, F 0 , this procedure finds a minimal amount of recharging energy, according to Lemma 2. Let OPT DFP and OPT SDFP be the optimal solutions of DFP and SDFP, respectively. The below theorem establishes that algorithm Find-plan V, d] has an asymptotic constant-factor approximation guarantee for DFP. Proof. See the supplementary materials.

B. Practical Adaptations
The preceding section explored a basic setting of DFP and its efficient algorithms. In practice, an automated drone management system may require more sophisticated options. Here, we provide two extensions to the above algorithms to obtain heuristics for further practical applications. 1) Wind Uncertainty: Under steady wind conditions, we assume in the preceding algorithms that c f (u, v) stays constant on the designated path from u to v. To account for wind volatility, it should be more precisely represented by c f (u, v, w), where w is a vector whose value lies in an uncertain domain w ∈ W . For example, W can be defined by the anticipated speed and orientation ranges [|w|, |w|], [θ w , θ w ]. To adjust the algorithms, one can proceed conservatively by replacing c f (u, v) with c f (u, v) = max w∈W c f (u, v, w). 2) Variable Drone Speed: During monitoring or patrolling missions, the drone may need to vary its speed uniformly at certain designated paths in V . In this case, we run the algorithms sequentially in multiple rounds, with an increasing drone speed at each round, until reaching infeasibility (higher speed may result in insufficient battery to reach some sites, hence resulting no feasible solution). Then we will enumerate all the optimal solutions across the rounds to find the best solution with the lowest total flight time. By enumerating the possibilities of different drone speeds, the algorithms can identify an optimal flight mission plan.
VI. EXPERIMENTAL VALIDATION AND CASE STUDIES As one demonstration, we implement the proposed approach in an automated drone management system and verify the produced flight mission plans and recharging strategies in a realworld experiment. Additionally, to complement the analytic results derived in Sec. V-A, the average-case performance and scalability of the featured planner are scrutinized extensively through numerical simulations and diverse case studies.

A. Drone Management System
The system interface, depicted in Fig 9, allows users to specify individual goals and visualize the computed flight mission plan. The system connects to a cloud server, which accepts location data from the users and computes the optimal flight mission plan. Then, the drone is programmed to follow the precomputed flight mission plan. For dynamic tracking, the data from onboard sensors, including GPS, video feed, and SoC can be fetched continuously to monitor the real-time flight status of the drone. Should notably deviant sensor measurements be detected from the values estimated in the pre-computed mission plan, real-time calibration can be performed to find the minimum adjustment to the previous plan.

B. Field Experiment
To validate the practicality of the proposed planner and corroborate the power consumption model developed in Sec. IV, a long-distance test mission was carried out in a real-world uncontrolled environment. Particularly, DJI Matrice 600 was deployed to patrol a rural area, delimited in Fig. 10, with 4 sites of interest and a charging station. The drone, which has a maximum flight duration of 38 minutes and a payload capacity of 6 kg, was loaded with a 2 kg weight and programmed to fly at 120-meter altitude maintaining 30 km/h horizontal speed. The lower bound on the battery SoC was set to 40%. The average wind speed was estimated to 30 km/h, as measured by a portable wind meter at the start-and end-points of the route. Video footage of the experiment is available online 5 .
As displayed in Fig. 10, the proposed planner in Alg. 3 returned the flight mission route [S, 1, 2, 3, C, 4, S], which has a total distance of 9.47 km and includes one recharging stop. The detour to C resulted from the selected minimum battery SoC limit of 40% (pictured as a red line in Fig. 10). From the experiment results, we observe a slight discrepancy (of around 5%) between the actual battery energy levels and the estimates provided by the regression model developed in Sec. IV. This is attributed primarily to inaccurate wind profile as the measurements were taken only at one location.

C. Case Studies
Setup: The studied scenario considers four sites of interest and four charging stations. Fig. 11 depicts the locations of the sites (as black points), charging stations (as blue squares) and the base (as magenta triangle) wherefrom the test drone (3DR Solo) departs for the mission. Positioning of these nodes and their inter-distances are based on locations in a suburban community in Abu Dhabi. The following two major sets of studies were undertaken.
• Study 1: Here, 4 sub-cases were examined under different wind and payload conditions. In the first two, 3DR Solo is equipped only with one battery and the average wind speed is set to 18 km/h. Then we double the battery capacity with the same wind condition in the remaining two sub-cases. Since the battery capacity was doubled, extra weight was added to the drone. Table II summarizes the parameters of all the sub-cases, which are denoted by S 1 C 1 to S 1 C 4 . • Study 2: To evaluate the planner's performance under uncertainties, we vary the wind speed and orientation within a certain range then investigate whether a feasible solution can be obtained. We select the sub-case with the shortest total trip time in Study 1 (i.e., S 1 C 1 ) and then gradually elevate the level of uncertainties. Specifically, four sub-cases, denoted by S 2 C 1 to S 2 C 4 , are considered  wherein the wind speed and orientation are varied from 9 to 21 km/h and from 0 • to 360 • in four discrete scales (e.g., S 2 C 1 assumes the wind speed could range from 9 to 12 km/h with an orientation lying within [−45 • , 45 • ]). Results: For comparison, we employ a benchmark strategy that routes the drone to the nearest unvisited site, and flies to a charging station if the battery SoC drops below a preset threshold. The minimum SoC that could fly to a nearest charging station from any site serves as the threshold. Fig. 13 visualizes the flight mission plans produced by the proposed approach for both case studies, while Fig. 12 draws a comparison against the benchmark algorithm in terms of the travel time and energy consumption. In Fig. 13, the numbers indicate the path order of the drone, colors represent the battery SoC, wind speeds and orientations are pictured on the upper-left corners. Study 1: The following two findings transpire: (1) The northeast wind lead to higher energy consumption than the south wind. Besides, longer travel time is observed due to increased charging duration. (2) Increasing battery capacity of 3DR Solo did not induce reduced travel time. We observe that though the flying time in S 1 C 3 is the shortest, it takes more time to charge since the drone becomes heavier by carrying extra weight for the battery, consequently resulting in longer total travel time. Study 2: As deduced from Fig. 12, the energy consumption increases with the rising level of uncertainties. To that extent, the worst scenario is captured by S 2 C 4 , in which the drone S1C1 S1C2 S1C3 S1C4 0  may always fly into a tailwind. Thus, S 2 C 4 provides the most conservative result. Also, for high uncertainty levels, the observed performance gap (w.r.t. the trip time and energy consumption) between the proposed approach and the benchmark diminished. This is due to the latter taking more frequent recharging decisions in provision for heightened uncertainties.

D. Numerical Analyses
To conclude the evaluation, we investigate the proposed approach's average-case performance and scalability via simulations on randomly generated large-scale instances with up to 200 vertices. Therein, the number of charging stations is set to 1 5 th the number of vertices, which are positioned uniformly at random on a canvas area of 3.33 km by 3.33 km. The drone speed is fixed to 18 km/h and the battery capacity to 80 Wh. Wind speed is sampled uniformly at random from [0, 3.6] km/h with a direction chosen uniformly from [215 • , 235 • ]. Fig. 14a plots the empirical and theoretical approximation ratios attained by Alg. 3 for SDFP across 10 runs at 95% confidence interval. The optimal solutions of SDFP were computed by a numerical solver based on the MILP formulation provided in the supplementary materials. In the simulations, Alg. 3 exhibited favorable average-case performance, far surpassing its theoretical worst-case guarantees stated in Lemma 3. Furthermore, as the number of vertices grew, the empirical approximation ratio of Alg. 3 improved, approaching near-optimality.
Lastly, Fig. 14b explores the average computational complexity (over 10 runs) of the planner introduced in Alg. 1 (implemented in Python 3 on an Intel i9-9900k CPU) along with the total energy savings ensued from recharging optimization (Alg. 4). For up to 200 vertices, the measured running time did not exceed 30 seconds, which could be further reduced in a computationally more efficient programming environment (e.g., C++). With respect to recharging optimization, the achieved energy savings were more substantial for small-scale instances, in which the share of partial recharges was relatively more prominent.

VII. PROSPECTIVE EXTENSIONS A. Fleet Mission Planning with Recharging Optimization
In extending the current problem setup to a more general setting with multiple UAVs, we differentiate between two scenarios, namely with shared (i.e., supports charging multiple drones simultaneously) and non-shared charging stations. For instance, a charging site with multiple adjacently placed inductive recharging landing pads (such as those mentioned in [43]) exemplifies the shared setup, whereas the one with a single inductive pad corresponds to the non-shared scenario. In the former case, one can avail the polynomial-time transformation proposed by Bellmore and Hong [44] to convert the problem to an equivalent instance of standard TSP on an expanded graph, which can then be directly tackled by the algorithm proposed in Alg. 1 while retaining the approximation guarantee in Theorem 1. In the resultant solutions, several UAVs may be assigned to charge simultaneously at a single station, hence the requirement of shared charging stations.
On the other hand, for the scenario where shared charging is not supported, the problem transforms into joint mission planning and recharging scheduling. One sub-optimal approach is to further extend the adapted MILP formulation of SDFP with additional constraints that cater for multi-UAV routing, as detailed in Sec. C in the supplementary materials. As indicated by the simulations results reported in Sec. C in the supplementary materials, the augmented formulation can handle sufficiently large instances. However, since the formulation lacks representation of time, it allows a charging station to be used only once. The output solutions might yield arbitrarily worse objective values compared to the optimum (with recharging scheduling), thereby stimulating future research into developing efficient approximation algorithms for this problem.

B. Mission Planning with Mobile Charging Stations
Another promising avenue to explore is the extension to the case with mobile charging stations. Such a setup allows for more flexible and robust drone management system that caters for uncertainties. In [45], an autonomous robotic mobile platform (see Fig. 15) was proposed that can recharge drones automatically. The system includes a tethered rover that is capable of autonomous navigation, and is equipped with a robotic arm carrying an inductive charging pad, which can flexibly recharge drones of varying sizes and shapes from different positions. With this dynamic model, the problem would additionally include optimizing the number of rovers and their routing.  VIII. CONCLUSION To consolidate the practical applications of drones, this paper developed and experimentally verified an automated tour management system for an energy-constrained UAV deployed on long-distance flight missions (e.g., for monitoring or data acquisition purposes). Through extensive experimentation and analysis, we derived an effective power consumption estimation model for multi-copter UAVs and validated it on multiple drones. With this model, we formulated the energy-constrained tour management problem as a multi-objective extension of ATSP and developed an efficient mission planning algorithm with certifiable performance guarantees. Future work can be directed towards developing approximation algorithms for extended variants of the problem with multiple UAVs and nonshared/mobile charging stations.

B. Mixed-Integer Linear Formulation of SDFP
This section provides the mixed-integer linear programming formulation of SDFP adapted from [21].
Given a complete directed graph G = (V, E) with V as vertices and E representing the set of edges, define an integer variable x ij which determines the number of edges from vertex i to j in V (note that it may exceed one for edges between charging stations). Let L = B − B be the available battery capacity and η d d(i, j) be the energy consumption on edge (i, j) ∈ E. Denote by p ij the flow from i to j, by r j the energy level after reaching vertex j, and by v 0 the base. With this notation, SDFP can be recast into the following mixedinteger linear program: i∈V \{k} i∈V \{k}

C. Multi-UAV Mission Planning with Non-shared Charging Stations
Here, we extend the MILP formulation of SDFP to the setting with multiple UAVs and non-shared charging stations. Let N (N ≤ |S|) be the number of UAVs stationed at the base v 0 . Then the problem can be defined as follows: i∈V \{k} x ik = 1 ∀k ∈ S\v 0 , (S. 15) i∈V \{k} x ik ≤ 1 ∀k ∈ C, (S. 16) i∈V \{v0} x v0i = N, (S.17) x ij ∈ {0, 1} ∀i, j ∈ V (S. 18) In the above program, Constr. (S.15) states that N number of edges will be selected from the starting node. Considering that each charging station is allowed to be utilized only once, as enforced by Constr. (S.16), the tours assigned to UAVs will have non-intersecting paths. Given that all the tours are disjoint, the energy constraints in (S.7)-(S.12) become independent of the number of UAVs since they rely only on the visited target sites. Note that this formulation assumes uniform battery capacity L for all the drones. Also, the above program stipulates dispatching exactly N drones, however one can replace the equality in Constr. (S.17) with inequalities to regulate the number of deployed drones.
To investigate the scalability of the above MILP, we performed a set of simulations on a 100x100 2D surface. The sites of interest and charging stations were placed randomly (uniform selection) on the surface with a three-to-one ratio of sites to stations. The distance and fuel cost between nodes were computed based on the Euclidean metric, and each drone's batter capacity L was set to 120. The setup considers three different numbers of UAVs and a total number of vertices ranging from 20 to 100 in steps of 5. The simulations were implemented with Python and Gurobi solver on an Intel i9-9900k CPU with 32 GB of RAM. Fig. 16 depicts the computational time of the MILP program across 30 runs at 99% confidence interval and the average tour cost per UAV. As observed from the figure, for large-scale instances with 100 vertices, the running time did not exceed 100 seconds. Also, as expected, the average tour cost per UAV decreased with growing fleet size.
As an illustration of multi-UAV mission planning with nonshared charging stations, we invoke the above MILP program to emulate the field experiment reported in Sec. VI-B with two drones. In the obtained solution, which is visualized in Fig. 17, the first drone is assigned to visit three nearby sites while the other is dispatched to the last, distant site (UAV1:[S,1,2,3,S], UAV2:[S,4,S]). The charging station remained unused as both drones battery charge satisfied the minimum permissible SoC limit, which was set to 40%.  Consider an optimal flight plan (F, b(·)) and assume that the charging stations, in the order they appear on F, is F i1 , . . . , F ir , where without loss of generality, we assume F i1 = v 0 . For completeness, let i 0 1 and i r+1 |F|. For j = 0, 1, . . . , r, let
Then, the feasibility of the flight mission plan F implies B k ≥ B, for j = 0, . . . , r (S. 19)