The usage of Unmanned Aerial Vehicles (UAVs) to accomplish different kinds of tasks in post-disaster recovery scenarios has recently become the subject of investigation (Erdelj et al., 2017). Fleets of UAVs performing environmental monitoring (Saeed et al., 2017), dispatching medicines in rural/hardly accessible areas (Bamburry, 2015), or ensuring mobile connectivity (Fotouhi et al., 2019) have already been envisioned. As a relevant example, UAVs are employed in Rwanda to deliver blood packs to 21 hospitals located in remote and isolated areas on a regular basis, even in the presence of harsh weather conditions (Ackerman and Strickland, 2018).
To date, critical tasks such as those aforementioned exploited dedicated UAVs, with equipment and resources selected and dimensioned according to the needs of the specific task (Lee, 2017). However, in a post-disaster scenario, fleets of UAVs are likely to be dispatched carrying out different tasks over the same geographical area. For instance, a UAV equipped with a video-camera may be dispatched to monitor a certain geographical area. At the same time, another UAV equipped with an antenna may be dispatched to provide communications support over a geographical area. If the latter UAV were also equipped with a video-camera and had the needed additional resources (e.g., enough battery), it could have carried out the surveying task as well, eliminating the need for dispatching the former UAV. Thus, a 50% savings in the number of UAVs would be achieved at the cost of some increase in the total required energy, to account for the video-camera consumption and the increased load carried by the UAV. Howver, this energy increase would be minimal, compared to the energy required to fly the UAV and operate the antenna and would be more than compensated for by saving the engagement of another UAV. Another possible implication of a UAV carrying out two tasks instead of two UAVs carrying out a single task each, is that the quality of service associated with each task may be lower in the former case, as the UAV is now not dedicated to a specific task only. For instance, surveillance of some region maybe delayed if providing communication support in another region is prioritized. The aforementioned implications of multitasking will be low if an effective joint planning of multitask missions is devised. In addition, the larger the number of candidate UAVs that can participate in a specific task, the lower the impact of multitasking on the quality of the delivered task is expected to be.
In this study, we investigate a joint planning of multitask missions leveraging a fleet of UAVs equipped with a standard set of accessories i) a video monitoring system (Kurz et al., 2011), ii) a cellular communication interface, and iii) a mounting frame for parcel carriage, to enable UAVs to perform heterogeneous tasks such as medicine/blood delivery, aerial monitoring, and mobile connectivity provisioning. Such planning must take into account the specific constraints generated by every type of mission, i.e.: limited payload capacity of the UAVs’ payload and restricted delivery time windows for the parcel delivery tasks; time-varying network connectivity requirements, due to the users’ movements within the served area; conflicting service needs in the same area (e.g. both monitoring and connectivity provisioning tasks compete for the usage of the upload transmission bandwidth provided by an UAV). Mission plans for each UAV can be crafted at a centralized entity, e.g., the first responders’ control center, and then transmitted to the individual UAVs via their wireless interface.
The usage of multi-purpose UAVs instead of UAVs specialized for a single mission is expected to improve the overall mission service quality, for a given number of employed UAVs. To show the benefits achieved by the usage of multi-purpose UAVs, we develop an optimization framework based on Integer Linear Programming (ILP) to optimally schedule UAVs tasks in a post-disaster environment. Due to the necessity of performing heterogeneous tasks with different requirements in terms of data transmission, the model attempts to optimize the global task satisfaction level (i.e., the fraction of service requests being satisfied by the UAV fleet at every location and time epoch), while imposing that all the delivery tasks are fulfilled within their respective time windows. Since the problem is NP-hard, two heuristic algorithms for larger-scale environments are developed to cope with the increased complexity of the optimization framework. The aim of the two greedy approaches is to ensure fast computation of a feasible solution while limiting the required computational complexity, which is a fundamental requirement to enable a fast reaction to emergency situations. The case study is a simulated flooding event in the San Francisco area, where UAVs depart from one of the depots surrounding the emergency area and must return to a depot after completion of their task to change/recharge batteries. Results show that our heuristic algorithms provide good performance in comparison to the optimum, while ensuring rapid calculation of the UAVs’ trajectories. Furthermore, fully equipping all UAVs, e.g., providing all of them with cameras and radios, implies greater flexibility that outweighs the resulting lower payload available for parcel delivery missions, further increasing performance.
The main contributions of the paper can be summarized as follows:
a novel system model, synthetically and effectively describing the main entities involved in multi-task UAV management, along with the decisions to make and their effects;
an optimization formulation of the multi-task UAV management problem, allowing us to assess whether or not multi-task UAVs can attain the same performance of single-purpose ones;
two efficient and effective heuristics, providing different trade-offs between low complexity and high quality decisions.
The remainder of the paper is organized as follows. Sec. 2 briefly reviews the related literature. Sec. 3 presents an optimization formulation of the multitask UAVs trajectory planning problem. We present the heuristic approaches to tackle large instances in Sec. 4, providing a worst-case ratio analysis. We discuss our reference scenario in Sec. 5 and report our numerical evaluation in Sec. 6. Conclusions are drawn in the final section.
2 Related Work
Beside military and security operations, the usage of UAVs is envisioned in a plethora of civil applications, ranging from agriculture to environmental monitoring and disaster management (see (Otto et al., 2018) for a thorough taxonomy and survey). According to the categorization of UAV-assisted disaster management frameworks provided in (Erdelj and Natalizio, 2016; Erdelj et al., 2017), our work falls under the umbrella of medical applications, as our UAVs can transport and deliver medicines and first-aid items within the served area, and of damage assessment frameworks, as the UAVs are also equipped with monitoring systems to perform video inspections. Moreover, while on flight, the UAVs can be integrated into the emergency communication system if equipped with a cellular communication interface, thus providing connectivity across the disaster area.
A critical comparison of different types of UAVs to be adopted in emergency scenarios is provided in (Erdelj et al., 2017): the authors conclude that quadcopters offer a good tradeoff between flight autonomy, carried payload weight, and equipment cost. Therefore, in this study, the characteristics of the UAVs we adopt mimic those of typical quadcopters.
In the following, we focus on the three types of tasks encompassed in the scenario under study.
2.1 UAV placement for wireless coverage
UAVs can be leveraged in a number of wireless networking applications, e.g., complementing existing cellular systems by providing additional capacity where needed, or ensuring network coverage in emergency or disaster scenarios (see (Mozaffari and others, 2018) for a comprehensive overview). The problem of placing UAVs in terms of height and position in 3D environments to provide wireless coverage has been addressed by several studies: analytical frameworks to compute the optimal height (Mozaffari et al., 2015) or to maximize the associated revenue (Bor-Yaliniz et al., 2016) have been developed, as well as heuristic approaches (Reina et al., 2018b; Zhao et al., 2018; Trotta et al., 2018). In (Bupe et al., 2015), an algorithm controlling the deployment and positioning of UAVs within cells of a mobile network has been implemented and demonstrated using quadcopters. In (Ferranti et al., 2019), a two-tier emergency infrastructure-less network aimed at providing connectivity in the immediate aftermath of a natural disaster is proposed, where the lower tier connects nearby survivors in a self-organized mesh via short-range wireless technologies and the upper tier creates long-range wireless links between UAVs exploring the area of interest. Several game theoretic approaches for the management of UAV-assisted networks have been proposed (Mkiramweni et al., 2018): the reader is referred to (Mkiramweni et al., 2019) for a comprehensive literature review on game-theoretic techniques adopted in UAV-based wireless networks. Metaheuristic approaches such as local search algorithms (Reina et al., 2018a)et al., 2019) have been investigated to find UAVs’ positions that provide better wireless coverage to the victims in a post-disaster environment.
Differently from the above-mentioned studies, our model jointly considers a dynamic selection of the areas to be covered depending on the evolution of the disaster over time and based on the predicted mobility patterns of users. Additionally, it jointly optimizes the scheduling of the UAV moving, covering, monitoring, delivering and recharging actions.
2.2 UAV-based post-disaster monitoring systems
As overviewed in (Chmaj and Selvaraj, 2015; Changchun et al., 2010), fleets of UAVs operating as distributed processing systems can be adopted as aerial sensing infrastructures for various monitoring tasks including, e.g., surveillance, object detection, movement tracking and support to navigation. In (Garapati et al., 2017), a game-theoretic approach for the distributed scheduling of monitoring and wireless coverage tasks among a fleet of UAVs. In (Alfeo et al., 2019), metaheuristic approaches based on stigmergy and flocking have been proposed to optimize target searches of UAV fleets, in absence of prior knowledge about their location or about positions of potential obstacles. Prototypes of UAV-based architectures for sensing operations have been described in (Zema et al., 2017) and (Luo et al., 2015) with a specific focus on video capture services.
In our paper, we consider a conceptually similar UAV equipment of hardware and software modules, where each UAV is equipped with on-board sensors, as well as processing, coordination, and networking capabilities. Additionally, we tackle some aspects not considered in (Zema et al., 2017), i.e., the scheduling of heterogeneous tasks of multiple UAVs and the integration of the UAVs with a wireless service. With respect to the study in (Garapati et al., 2017), for the task allocation to UAVs, we adopt a centralized scheduling approach instead of a distributed game-theoretic framework.
2.3 UAVs for parcel delivery
Several recent studies have already investigated optimization strategies for UAV-assisted delivery models (see (Yoo et al., 2018) for a literature review). In particular, variations of the Traveling Salesman Problem (Murray and Chu, 2015), modular optimization approaches (Lee, 2017) and heuristic algorithms (Peng et al., 2019; Krakowczyk et al., 2018) leveraging UAVs for last-mile delivery have been introduced, also in tandem with traditional truck-based delivery (Ferrandez et al., 2016; Liu et al., 2018)
. A game-theoretical framework complemented by machine learning algorithms adopted for local UAV control is proposed in(Shiri et al., 2019) for the path planning under wind perturbation. A comparative study of different metaheuristic approaches for path planning is offered in (Ghambari et al., 2018), including particle swarm optimization, artificial bee colony, invasive weed optimization, lightning search and differential evolutionary approaches.
Focusing on medicine delivery, the authors of (Scott and Scott, 2017) compare two linear programming models that combine truck-based transportation and UAV delivery. In our model, we consider a relatively small geographical area affected by a natural disaster and focus on the last-mile UAV assisted delivery problem, assuming that medicines have been carried beforehand at depots located at the border of the target area.
Finally, note that a preliminary version of this study appears in (Malandrino et al., 2019)
. In this paper, we provide a more comprehensive discussion on heuristic approaches to tackle the problem, including complexity analysis and proofs of worst-case performance ratio, as well as a performance comparison between two different heuristic algorithms. Such algorithms have been specifically designed to capture the peculiarities of the complex multitasking problem at hand, while maintaining low computational complexity (indeed, they exhibit either linear or quadratic dependencies on the input sizes). We have therefore opted for not leveraging well known metaheuristic approaches such as e.g. genetic algorithms, whose complexity depends not only on the input sizes but also exhibit linear dependency on the number of generations and the population size.
3 System model and optimization problem
The notation we use in the remainder of the section is summarized in Tab. 1. Lower-case Greek letters indicate decision variables, lower-case Latin ones indicate parameters. Upper-case, calligraphic Latin letters indicate sets. Upper-case, regular Latin letters with indices indicate a specific element of the corresponding set, e.g., the location of a UAV. Upper-case, regular Latin letters without indices indicate design choices, e.g., UAV range, or system-wide parameters. All indices are written between parentheses, in lexicographic order.
Space and time
Time is discretized into a set of epochs, while space is discretized in a set of locations. The distance between two locations , is indicated as (clearly, ). Some locations host depots.
Importantly, locations can be associated an elevation as well as a latitude and longitude. It follows that, in the scenarios that warrant it, multiple locations can correspond to the same position, at different heights.
Binary variables indicate whether UAV is at location in epoch . Clearly, UAVs can only be in one location at a time and, given their maximum speed, in each epoch they can only travel between locations closer than a maximum distance . This translates into the following constraints, which hold for any and :
UAVs have a payload capacity and can carry zero or more payload items , each with a mass of . Examples of payload items (payloads for short) are blood packs or cameras. Binary decision variables express whether payload is carried by UAV at time .
UAV payload can only change at depot locations; thus, for any , , and , we have:
Importantly, (4) implies that, as far as the model is concerned, deliveries are not dropped at their intended destination; this leads to an overestimation of the UAV weight, hence, its energy consumption. This is intentional, and enables our decisions to account for the fact that some deliveries – in the worst case, all deliveries – may fail, e.g., because local conditions prevent drones from landing. Even in such a worst-case scenario, drones must still have enough energy to go back to the base with all their deliveries onboard.
In (4), we do not consider the fact that some payloads, e.g., medicine packs, will be dropped somewhere during the mission. This accounts for the worst-case event that one or more drops fail, because, e.g., ground conditions are not adequate for UAV landing; in such a case, UAVs must have enough energy to bring all payloads back, if need be.
|parameter||Earliest epoch at which to deliver payload|
|parameter||Latest epoch at which to deliver payload|
|parameter||Payload capacity of UAVs|
|shorthand||Whether drone delivers payload at time|
|parameter||Battery capacity of UAVs|
|parameter||Energy consumed for the vertical ascent and descent when making a delivery|
|parameter||Energy consumed when traveling between locations and , per unit of weight|
|parameter||Location at which payload shall be delivered|
|set||Locations with depots|
|shorthand||Location of UAV at epoch|
|set||Non-delivery missions, e.g., coverage or monitoring|
|parameter||Work per epoch for mission needed by users in location|
|parameter||Work quality for mission that a UAV at location|
|parameter||Whether payload is necessary to perform mission|
|parameter||Data generated by performing one unit of work of mission|
|set||Payload items to be delivered|
|parameter||Whether traffic can be transferred between UAVs at and|
|parameter||Capacity (land-to-air) of the UAVs’ on-board base station|
|parameter||Maximum distance a UAV can cover in one epoch|
|parameter||Weight of payload|
|parameter||Distance between locations and|
|real variable||Battery level of UAV at epoch|
|binary variable||Whether UAV is in location at epoch|
|real variable||Fraction of epoch that UAV spends in mission|
|real aux. variable||Satisfaction of users in location concerning mission at epoch|
|binary variable||Whether traffic generated at UAV at epoch can reach the cellular network|
|binary variable||Whether UAV carries payload at epoch|
Energy and battery
Real variables express the battery level of UAV at epoch . Clearly, such variables must be positive and can never exceed the battery capacity , i.e.,
Next, we need to account for power consumption. Indicating with whether drone delivers payload at time , we can write:
In (6), the energy consumed at time is given by the product between a factor , accounting for the distance between the locations, i.e., for how far the UAV had to travel, the total weight of the UAV, plus the vertical energy consumption incurred if the drone performs a delivery at time . Importantly, , i.e., energy is also consumed by hovering over the same location. A UAV weight is given by the weight of the UAV itself and the sum of the weight of the payload items it carries. Note that (6) does not hold at depot locations in , as there UAVs can recharge or swap their batteries. The actual values of the parameters can be set according to any energy model, e.g., (Zeng et al., 2019). Such energy models are also able to account for the energy consumption due to elevation changes across locations, if any, and to embed such a consumption in the values of . Also, notice that the energy consumed to transmit/receive data is not accounted for in our model, as it is negligible to the energy needed to move the UAV.
Some payload items must be delivered at certain locations and times. Specifically, parameters , , indicate the target location (final point), as well as the earliest and latest times at which the delivery can take place: the time interval defined by the earliest and latest times will define the delivery time window for a payload. The following constraint imposes that all deliveries are carried out:
Eq. (7) can be read as follows: there must be at least one epoch between and during which a UAV visits the target location while carrying payload . It is important to stress that associating a constraint with delivery missions also implies that such missions must be performed, and any additional tasks will be undertaken only if it does not interfere with deliveries.
We consider a set of additional missions, e.g., wireless network coverage and video monitoring. We express the demand of each location for mission at epoch through parameters , e.g., the traffic offered by the users111For simplicity and without loss of generality, in this paper we focus on uplink traffic.. Parameters express how well a UAV in location can perform mission , e.g., the quality of coverage it can provide. Furthermore, parameters express the fact that some payload items , e.g., radios, are needed for mission . Finally, parameters express how much data is generated by performing one unit of work in mission . The values of the
parameters can be, depending upon the situation, estimateda priori (e.g., the escape roads from a given area are routinely planned in advance) and/or detected during the disaster (e.g., the areas closer to the coast need to be monitored during/after a flooding).
The main decision to make is how long UAVs perform additional missions. This is conveyed by variables , expressing the fraction of epoch that UAV uses to perform mission . The first constraint we impose is that UAVs do not perform missions that they are not equipped for:
Also, we cannot exceed the need of locations:
Note that (9) also accounts for the quality with which UAVs at different locations can perform the missions, e.g., the maximum network capacity or monitoring capability that a UAV in location can offer.
Next, we need to ensure that all the data traffic generated by additional missions is transferred to the in-field deployed cellular network (denoted with ), so that it can be offloaded to the backbone network infrastructure. To this end, we denote with whether a UAV in location and one in location can exchange data, and by whether a UAV in location can send data to the in-field cellular network. Such information can be obtained from existing models and/or experimental measurements, as better detailed in Sec. 5 later. A value of corresponds to the fact that it is impossible to send any data between and , e.g., because the locations are too far away.
Given the above, we can determine whether the data generated by additional missions performed by UAV at time can make its way to the cellular network, through a binary variable :
Eq. (10) says that UAV can route its data to the cellular network if can be reached directly from its location (first term), or if can reach another UAV that, in turn, can reach the cellular network (i.e., ). Given the values, we impose that no UAV performs any mission that generates data, unless such data can reach the network:
Eq. (11) also imposes that the quantity of data generated by all missions performed by UAV at epoch does not exceed the quantity of data that can be transferred through the onboard radio interface.
Objective and complexity
As a first step, we define the satisfaction of location at epoch for mission . Such a value is the ratio between the amount of service that the location was actually provided over that needed:
We then define our objective as maximizing the sum of the -values defined in (12):
The problem of optimizing (13) subject to the constraints (1)–(12) is combinatorial in nature and, like many combinatorial problems, is NP-hard. Indeed, deciding the payload of each UAV in each trip can be seen as an instance of bin-packing – which is itself an NP-hard problem (Garey and Johnson, 1981) –, subject to additional constraints concerning energy and delivery times. It follows that it is impractical to directly solve the problem for all but small instances; therefore, we devise several heuristic algorithms as detailed next.
4 Heuristic Algorithms
In this section we present two heuristic algorithms aimed at tackling large instances of the considered post-disaster scenario: the first one is a low-complexity greedy algorithm, whereas the second one has higher complexity and builds upon the insertion method first proposed in (Solomon, 1987).
Both heuristic approaches leverage a graph-based representation of the considered scenario, where every delivery location is identified by a graph node . Additional nodes are added to identify the depots in . Here, for simplicity, we consider the case of a single depot, i.e.,. Arc represents route connecting delivery locations and (to simplify the notation, the identifier is omitted). Each route consists of a list of locations in that are visited at each time epoch while traveling from to , where is the travel duration, in number of epochs (clearly, and ). Note that hovering over the same location is captured in the list by replicating once per every hovering epoch. In the remainder of the section, we will indicate the location visited during the -th epoch of route as , with . Note that we consider a set of alternative routes for each location pair, which include the shortest paths222Note that opting for longer lightpaths could increase the satisfaction level of additional missions, but might as well lead to infeasibilities of the delivery missions due to violation of energy or delivery windows constraints. (i.e., , where is a system parameter).
Each arc is associated with two weights: the travel duration and the energy spent by the UAV to travel from node to along route . Energy is computed under the conservative assumption that the UAV’s payload is always fully loaded. An example of graph topology with one depot and two delivery nodes is reported in Figure 1.
Note that both algorithms determine a single tour for each UAV. Consecutive tours can be obtained by running the algorithms for consecutive non-overlapping time horizons , where time horizons are sized considering the maximum number of epochs a UAV can fly, either hovering or cruising among locations, without being recharged. In this case, the set of deliveries is split into subsets , such that , where each set contains the deliveries .
4.1 Greedy heuristic
As reported in Algorithm 1, the proposed greedy algorithm considers as inputs the sets of UAVs, time epochs and locations associated to deliveries and to the depot, as well as the UAVs’ battery capacity and transmission capacity on the onboard radio system. Moreover, for every delivery, it takes as input the associated payload weight and time window, whereas for every UAV it takes as input the residual payload capacity available for parcels and the parameters (defined below). Note that the residual payload capacity of a UAV depends on the onboard equipment (e.g., antenna and monitoring system). In our greedy approach, the equipment of each UAV is chosen a priori333In section 6, it will be shown that loading every UAV with the necessary equipment to perform all the additional missions in leads to close-to-the-optimum performance.. Therefore, the factors are defined as follows: if UAV does not carry the equipment required to accomplish task , then , otherwise , where are predefined system weights such that . Finally, the time and energy required to travel between every location pair, the mission service requirements per location and epoch, the mission work quality per location, and the amount of data per epoch generated by each mission are provided as inputs (line 1).
Deliveries are ordered (line 2) depending on their urgency, i.e., the expiration of the delivery time window . Then UAVs are considered one at a time444In the case of a fleet of UAVs characterized by heterogeneous equipment, the criterion adopted for UAV selection can be designed according to the characteristics of the specific scenario. E.g., if delivery locations and their surroundings generate service requests for additional missions as well, then UAVs carrying the equipment required to fulfil such additional missions should be picked first. Conversely, if the areas with highest service requirements for additional missions do not include delivery points, then UAVs carrying no additional equipment should be selected first, since their residual payload capacity () is higher and thus they can carry a larger amount of items to be delivered. and the associated lists and , respectively indicating the locations and the arcs included in their tours, are initialized. The depot is set as tour departure location. Moreover, their current battery consumption , carried load , and flight time are initialized to (line 4).
Then, for every UAV, the ordered list of (yet unserved) deliveries is scanned one element at a time, the best route to reach the delivery location is identified and feasible deliveries are assigned to the UAV (lines 5-11). For the selection of the best route , to incorporate the fulfillment of additional missions, we adopt the multi-objective approach described in (Zografos and Androutsopoulos, 2004): the arc to be traversed to reach the delivery location is chosen by minimizing a weighted function of traveling time and mission accomplishment levels associated to the arc, as per Eq. (14), where and and parameters are used as weights: the closer approaches , the more predominant the accomplishment of mission becomes w.r.t. the minimization of the total time duration of the tour. Note that a delivery is considered to be feasible (line 7) if:
its delivery location can be reached before the time window expiration and the UAV can return to the depot before the end of the considered time horizon, i.e., if it holds that and that , where indicates the shortest route from location to the depot;
the residual battery capacity is sufficient to allow the flight to the delivery location and the return to the depot, i.e., if ;
the residual payload capacity is sufficient to accommodate the item to be delivered, i.e., if .
After the assignment of a delivery, the traversed arc and the delivery location are added to the UAV’s tour. Moreover, traveling time, consumed energy, and residual payload capacity are updated (line 8) and the delivery is added to the set of served ones. Finally, the mission service requirements per epoch of every location traversed to reach location starting from location are recomputed by means of the update routine (line 9) to reflect the residual needs after being served by the current UAV. The update criteria depend on the maximum transmission capacity of the onboard wireless interface of the UAV, , on the data transmission requirements of each mission, , and on the parameters . More in detail, if the total data rate required in location at time to fully accomplish all the additional missions does not exceed , then are set either to 0, if the mission quality parameters are sufficiently high, or decreased by the amount for every mission (lines 4-6). Otherwise, the maximum transmission capacity is partitioned among the missions, proportionally to the product (i.e., the data rate required by mission weighted by the importance of fulfilling mission ). During the routine executions, the values of variables are also computed according to the mission fulfillment share of every UAV.
When the delivery list scan is concluded, the best arc to return to the depot is selected according to Eq. (14), where and , providing that the conditions and are satisfied; parameters are again updated and the UAV tour is terminated (lines 12-17).
If some unserved deliveries remain after considering every available UAV, then the algorithm stops and notifies that it was unable to find a feasible solution (lines 18-19). Otherwise, the routine conn_ check is executed to perform connectivity checks among UAVs. If a UAV cannot directly communicate with the cellular network, i.e., , nor with another UAV having cellular network connectivity, i.e., , then no data generated by any mission can be transmitted; therefore, variable is set to 0 for every mission . Finally, the tour assigned to every UAV is returned (lines 20-21).
On the contrary, if some UAVs remain unused, they can perform additional missions, even if they are not assigned to any delivery mission. Thus, the algorithm can be executed again after enlarging the set of payload items by generating fake delivery payloads (i.e., with ) and no restriction on the delivery time window (i.e., and ). The delivery locations can be chosen randomly or placed where have the highest values.