Task Planning of Multiple Unmanned Aerial Vehicles Based on Minimum Cost and Maximum Flow
Abstract
:1. Introduction
- We propose a novel task-planning framework for a truck–UAV system, specifically targeting the minimization of system energy consumption in wide-area scenarios with dense supply-point depots. Our approach uniquely addresses the challenges of handling overweight tasks and tasks beyond UAV delivery ranges by strategically assigning these to trucks, thereby optimizing the overall system efficiency and energy utilization.
- Recognizing the load and energy limitations of UAVs, we develop a sophisticated modeling approach by constructing minimum-cost, maximum-flow models for both UAVs and trucks. This allows us to derive optimal sub-paths that cover all delivery tasks with minimal energy consumption. We further enhance this approach by introducing a depot–task set–depot combination strategy, which enables efficient path construction using a resource tree-based algorithm for UAVs and an insertion method for trucks. This integrated method not only ensures comprehensive task coverage but also achieves significant energy savings compared to traditional approaches.
- We conduct comprehensive simulation experiments to validate the feasibility and effectiveness of our algorithms. The results demonstrate that our proposed method outperforms existing solutions in terms of energy efficiency and task completion rates, highlighting the superiority of our approach. Our contributions go beyond mere simulation validation by providing a robust and innovative solution to the complex task-planning problem in truck–UAV systems.
2. Related Work
3. System Model
- UAVs do not encounter obstacles during flight.
- The energy consumption of UAVs caused by take-off, landing, and natural factors is ignored.
- The flight speed of UAVs is constant, and the driving speed of transport vehicles is constant.
- All distribution tasks are equally important. In the same environment, there is no priority ranking for package distribution, and the model does not consider the time window for the delivery of materials for the time being.
- The take-off and landing points of each UAV flight can only be depots, and UAVs cannot dock elsewhere.
- If a UAV lands at a certain depot, it can take off again only after replenishing energy and packages.
- Each task point must be delivered to, can only be delivered to once by either a UAV or a truck, and cannot be delivered to repeatedly.
- Each UAV flight can deliver to one or more task points. The total distance of each UAV flight task shall not exceed the maximum flight distance () of the UAV, and the total weight of the carried packages shall not exceed the total load () of the UAV.
- The total weight of the packages carried by the truck for each task shall not exceed the total load () of the truck.
- Each task point must be delivered to and can only be delivered to once by either a UAV or a truck, without repetition, that is,
- Each UAV flight can deliver to one or more task points. The total distance of each UAV flight task shall not exceed the maximum flight distance () of the UAV, and the total weight of the carried packages shall not exceed the total load () of the UAV. We use to represent the set of task sets for N UAVs and to represent the route arranged for UAV , where represents a flight task of the UAV. Therefore, for each flight task () of the UAV, its total flight distance () should be less than , and its total load () should be less than , that is,
- The total weight of the packages carried by the truck for each task shall not exceed the total load () of the truck. We use to represent the set of task sets for E trucks and to represent the route arranged for truck k, where represents the route of a single task of truck k. The following conditions need to be met:
4. Proposed Algorithm
4.1. Sub-Path Allocation
- It is impossible to solve the problem with only task points in the flow network?
- How should the path of each UAV flight task be represented in the model?
- How should the requirements of UAV load and energy be embodied in the model?
- Depot combination nodes: Since the UAVs are independent, considering the energy and load limitations, a UAV needs to land at a nearby depot to recharge and restock packages before its energy is exhausted. The take-off depot and the landing depot can be either the same or different. For trucks, due to their load limitations, they can only carry a certain weight of packages each time. After finishing a delivery task, if they need to start another trip, they also have to reach a depot to replenish packages. Similarly, the starting depot and the ending depot of a truck can be the same or different. Consequently, each depot combination contains the starting and ending points of a single delivery task for either a truck or a UAV. These starting and ending points may be identical or distinct. In total, there are depot combination nodes. As shown in Figure 2, we add these depot combinations to the graph () as first-level nodes, namely depot combination nodes, which are denoted by blue dots. Therefore, there are depot combination nodes in graph . We define the set of depot combinations as , where with representing a depot combination.
- Task-set nodes: Due to the limitations of the UAV’s load and energy, the number of tasks that a UAV can execute in each flight is limited. Therefore, the tasks assigned to the UAV in the scenario need to be carried out in multiple flights. For a UAV, different depot combinations can result in different s for the task points it is responsible for, and these s are all possible flight tasks for the UAV. Our goal is to select several s among these candidates. These selected s should cover all the tasks assigned to the UAV in the scenario while minimizing the UAV’s energy consumption, and there should be no overlap in the task points among different s. The task points assigned to the UAV and all the depots in the scenario can form a complete undirected graph, where the weight of each edge is the Euclidean distance between two task points. For all depot combinations, the depth-first search algorithm is used to obtain all paths between any two depots in the complete undirected graph. Considering the load and energy limitations of the UAV, all paths with a total distance greater than and a total load greater than are removed. Thus, the remaining paths are all feasible paths for the UAV. Each path can be converted into an combination, and all the task points in the combination can form a task set. We list the task sets of all feasible paths and add them to graph as second-level nodes, that is, task-set nodes, which are represented by green dots, as shown in Figure 2. Assuming that the total number of feasible paths for the UAV in the scenario is T, there are T task-set nodes in graph . The same principle applies to trucks.
- Task nodes: Since the tasks contained in each task set cannot be reflected in the nodes, we add all the task points that the UAV is responsible for to the graph () as task nodes, which are third-level nodes and represented by yellow dots, as shown in Figure 2. Each task node contains only one task point. Taking the UAV as an example, assuming that the number of task points that the UAV is responsible for is , there are task nodes in graph . The same applies to trucks.
- Edges between depot combination nodes and task-set nodes: As mentioned previously, the depth-first search algorithm can be used to obtain all feasible paths of the UAV and the total length of each feasible path. Each feasible path is composed of a task-set node and a depot combination node. If a task-set node and a specific depot combination node can form a feasible path, there exists an edge between this task-set node and this depot combination node. The cost of this edge represents the total length of the corresponding feasible path. For an combination (), the corresponding set of task points may have different execution orders. We select the execution order with the minimum total distance as the final result and record this distance as . In this paper, a depot combination may plan multiple UAV routes simultaneously, that is, an edge may exist between a depot combination node and multiple task-set nodes. Aside from these edges, the cost of edges between other nodes is 0 because the other edges represent the corresponding relationships between different nodes rather than the moving distance. In addition, the capacity of the edge between a depot combination node and a task-set node is the number of task points in the task-set node, that is, . It should be noted that the flow on the edge between a depot combination node and a task-set node is either 0 or , and the flow cannot be adjusted gradually because each UAV flight task is completed at one time.
- Edges between the source node and depot combination nodes: As we know from the previous content, each depot combination node may be connected to multiple task-set nodes. Therefore, it is possible that the starting point and the ending point of each task are the same depot combination. Taking a UAV as an example, assuming that the number of task points that the UAV is responsible for is , the maximum capacity of the edge between the source node and the depot combination node in the minimum-cost, maximum-flow model of the UAV is the total number of task points , as shown in Figure 2.
- Edges between task-set nodes and task nodes: The edges between task-set nodes and task nodes represent the corresponding relationship between task sets and tasks, that is, a task-set node is only connected to the task nodes corresponding to the task points it contains. Therefore, the capacity of the edge between a task-set node and a task node is 1, and the cost is 0.
- Edges between task nodes and the sink node: The capacity of the edge between a task node and the sink node is set to 1, which means that each task point can only be executed once. Similarly, the cost of the edge between them is 0.
Algorithm 1 Allocate depot–task set–depot combinations for UAVs |
|
4.2. Initial Route Planning
- Initialize as an empty stack, and take out the root node (s) and its first direct child node and put them into . Except for the root node, the nodes stored in are all sets of depot combinations.
- Take out the first node from as the current node, obtain the set of its depot combinations, and successively subtract 1 from the parameter () corresponding to each depot combination () in the set, indicating that the usage frequency of this combination is reduced by one. After that, check whether this set can be used to assign the next flight mission for the UAV, that is, to add the next-level node. The inspection criteria are as described follows: If all the parameters corresponding to the combinations in are 0, all depot combinations have been assigned, that is, the path from the root node to the current node is the appropriate initial path, denoted as Path = Stack excluding the first root node + the set of depot combinations of the current node, and the algorithm ends; otherwise, for this set, execute step 3.
- For each depot combination () in the set of depot combinations, search in for depot combinations that contain . Depot combinations with a parameter equal to 0 are not considered. Let be used to store all depot combinations that may serve as the next flight mission for . If there is one or more combinations that meet the requirements, execute step 4; if there are no such combinations, do not operate on . After traversing all combinations, execute step 5.
- Judge each combination () in in turn. If , can be used as the next flight mission. Let . After the traversal is completed, return to step 3.
- If for each combination is , this node cannot find the next-level node downward. Then, it is necessary to judge whether the sum of the parameters corresponding to all combinations in the current is smaller than the sum of the parameters corresponding to . If it is smaller than the sum of the parameters corresponding to , the current path contains more depot combinations and is a better initial path. Let Path = Stack excluding the root node + the set of depot combinations corresponding to the current node, and execute step 7; otherwise, perform a full permutation on corresponding to each to obtain sets of multiple depot combinations. If is empty, fill it with during the permutation, then execute step 6.
- Obtain a set in turn, and make the following judgments for each depot combination () in the set: If the , subtract 1 from . At this time, if all combinations in the set have been traversed, add this set as a child node of the current node to the resource tree and mark it as unvisited; If the parameter of is 0, this depot combination cannot be used anymore, that is, is infeasible. Directly judge the next set. After the traversal of all sets is completed, execute step 7.
- If there are unvisited direct child nodes of the current node, add the current node and these direct child nodes to in turn, and execute step 2; otherwise, judge whether there are unvisited direct child nodes of the parent node of the current node. If there is still none, continue to search upward according to step (7), and at the same time, remove the corresponding nodes from . During this process, continuously reverse all parameter adjustments until is empty, and the algorithm ends.
Algorithm 2 Construct the Initial Path |
|
4.3. Global Route Adjustment
- Insertion at the beginning of : The insertion position (p) is shown in Figure 5a. We use to denote the first take-off depot in , that is, . If , then the candidate depot–task set–depot combination () must already be in the initial path, so this situation will not occur.If and , then we insert directly into position p with as the take-off depot. Obviously, the distance from directly to the first task point in combination is shorter than the distance from to , then to the first task point in combination . Therefore, we choose to let the UAV take off from , then directly execute the first task point in instead of going to take-off point . We stipulate that for a depot–task set–depot combination (A), when one of its depots (a) is replaced by another depot (b), the flight distance of the new A can be defined as . Thus, the total flight distance of the new combination after replacing depot in with is . Therefore, after inserting the candidate combination () into the beginning of , the total distance of the new can be expressed as follows:If and , where and may be the same or different, it is necessary to calculate the total distances of the new after inserting into position p when replacing with and replacing with , then select the minimum one as the final result. At the same time, the take-off depot of should be replaced with the depot in that has not been replaced. The total flight distance of after inserting is expressed as follows:
- Insertion at the end of : The insertion position (p) is shown in Figure 5b. We use to denote the last landing depot in , that is, . If , then can be directly inserted into position p. The total distance of the new can be expressed as follows:If and , then we insert directly into position p with as the take-off depot. The total distance of the new can be obtained from Formula (17). When and , the same principle applies. We insert directly into position p with as the take-off depot.If and , and may be the same or different. In this case, it is necessary to calculate the total distances of the new after replacing with and replacing with when inserting into position p. They can be expressed as follows:After that, we use Formula (16) to select the minimum total distance as the total flight distance of after inserting at position p.
- Insertion between two depot–task set–depot combinations of : The insertion position (p) is shown in Figure 5c. We use to denote the landing depot of the previous combination and the take-off depot of the next combination at position p, that is, . If , then can be directly inserted into position p. The total distance of the new can be obtained from Formula (17). If and , we insert into position p with as the take-off depot and, at the same time, replace the take-off depot of with . When and , the same principle applies. We insert into position p with as the take-off depot and, at the same time, replace the take-off depot of with . Then, the total length of the new can be obtained from Formula (13). If and , where and may be the same or different, the method of adjustment after insertion is the same as that under the same condition when inserting at the beginning of . Therefore, the total distance of the new can be obtained from Formula (16).
5. Simulation Results
6. Conclusions
Author Contributions
Funding
Informed Consent Statement
Data Availability Statement
Conflicts of Interest
References
- Deng, X.; Guan, M.; Ma, Y.; Yang, X.; Xiang, T. Vehicle-Assisted UAV Delivery Scheme Considering Energy Consumption for Instant Delivery. Sensors 2022, 22, 2045. [Google Scholar] [CrossRef]
- Chiang, W.C.; Li, Y.; Shang, J.; Urban, T.L. Impact of drone delivery on sustainability and cost: Realizing the UAV potential through vehicle routing optimization. Appl. Energy 2019, 242, 1164–1175. [Google Scholar] [CrossRef]
- Dissanayaka, D.; Wanasinghe, T.R.; De Silva, O.; Jayasiri, A.; Mann, G.K.I. Review of Navigation Methods for UAV-Based Parcel Delivery. IEEE Trans. Autom. Sci. Eng. 2024, 21, 1068–1082. [Google Scholar] [CrossRef]
- Kuru, K.; Ansell, D.; Khan, W.; Yetgin, H. Analysis and Optimization of Unmanned Aerial Vehicle Swarms in Logistics: An Intelligent Delivery Platform. IEEE Access 2019, 7, 15804–15831. [Google Scholar] [CrossRef]
- Sajid, M.; Mittal, H.; Pare, S.; Prasad, M. Routing and scheduling optimization for UAV assisted delivery system: A hybrid approach. Appl. Soft Comput. 2022, 126, 109225. [Google Scholar] [CrossRef]
- Fan, B.; Li, Y.; Zhang, R.; Fu, Q. Review on the technological development and application of UAV systems. Chin. J. Electron. 2020, 29, 199–207. [Google Scholar] [CrossRef]
- Roberge, V.; Tarbouchi, M.; Labonte, G. Comparison of Parallel Genetic Algorithm and Particle Swarm Optimization for Real-Time UAV Path Planning. IEEE Trans. Ind. Inform. 2013, 9, 132–141. [Google Scholar] [CrossRef]
- Zhu, Y.; Wang, S. Aerial Data Collection with Coordinated UAV and Truck Route Planning in Wireless Sensor Network. In Proceedings of the 2021 IEEE Global Communications Conference (GLOBECOM), Madrid, Spain, 7–11 December 2021; pp. 1–6. [Google Scholar] [CrossRef]
- Braekers, K.; Ramaekers, K.; Van Nieuwenhuyse, I. The vehicle routing problem: State of the art classification and review. Comput. Ind. Eng. 2016, 99, 300–313. [Google Scholar] [CrossRef]
- Kim, G.; Ong, Y.S.; Heng, C.K.; Tan, P.S.; Zhang, N.A. City Vehicle Routing Problem (City VRP): A Review. IEEE Trans. Intell. Transp. Syst. 2015, 16, 1654–1666. [Google Scholar] [CrossRef]
- Liang, Y.J.; Luo, Z.X. A survey of truck–drone routing problem: Literature review and research prospects. J. Oper. Res. Soc. China 2022, 10, 343–377. [Google Scholar] [CrossRef]
- Zhang, R.; Dou, L.; Xin, B.; Chen, C.; Deng, F.; Chen, J. A Review on the Truck and Drone Cooperative Delivery Problem. Unmanned Syst. 2024, 12, 823–847. [Google Scholar] [CrossRef]
- Madani, B.; Ndiaye, M. Hybrid Truck-Drone Delivery Systems: A Systematic Literature Review. IEEE Access 2022, 10, 92854–92878. [Google Scholar] [CrossRef]
- Moshref-Javadi, M.; Hemmati, A.; Winkenbach, M. A comparative analysis of synchronized truck-and-drone delivery models. Comput. Ind. Eng. 2021, 162, 107648. [Google Scholar] [CrossRef]
- Agatz, N.; Bouman, P.; Schmidt, M. Optimization approaches for the traveling salesman problem with drone. Transp. Sci. 2018, 52, 965–981. [Google Scholar] [CrossRef]
- Murray, C.C.; Chu, A.G. The flying sidekick traveling salesman problem: Optimization of drone-assisted parcel delivery. Transp. Res. Part C Emerg. Technol. 2015, 54, 86–109. [Google Scholar] [CrossRef]
- Es Yurek, E.; Ozmutlu, H.C. A decomposition-based iterative optimization algorithm for traveling salesman problem with drone. Transp. Res. Part C Emerg. Technol. 2018, 91, 249–262. [Google Scholar] [CrossRef]
- Liu, Y.; Liu, Z.; Shi, J.; Wu, G.; Pedrycz, W. Two-Echelon Routing Problem for Parcel Delivery by Cooperated Truck and Drone. IEEE Trans. Syst. Man Cybern. Syst. 2021, 51, 7450–7465. [Google Scholar] [CrossRef]
- Schermer, D.; Moeini, M.; Wendt, O. A branch-and-cut approach and alternative formulations for the traveling salesman problem with drone. Networks 2020, 76, 164–186. [Google Scholar] [CrossRef]
- Vásquez, S.A.; Angulo, G.; Klapp, M.A. An exact solution method for the TSP with Drone based on decomposition. Comput. Oper. Res. 2021, 127, 105127. [Google Scholar] [CrossRef]
- Gonzalez-R, P.L.; Canca, D.; Andrade-Pineda, J.L.; Calle, M.; Leon-Blanco, J.M. Truck-drone team logistics: A heuristic approach to multi-drop route planning. Transp. Res. Part C Emerg. Technol. 2020, 114, 657–680. [Google Scholar] [CrossRef]
- Das, D.N.; Sewani, R.; Wang, J.; Tiwari, M.K. Synchronized Truck and Drone Routing in Package Delivery Logistics. IEEE Trans. Intell. Transp. Syst. 2021, 22, 5772–5782. [Google Scholar] [CrossRef]
- Wang, D.; Hu, P.; Du, J.; Zhou, P.; Deng, T.; Hu, M. Routing and Scheduling for Hybrid Truck-Drone Collaborative Parcel Delivery with Independent and Truck-Carried Drones. IEEE Internet Things J. 2019, 6, 10483–10495. [Google Scholar] [CrossRef]
- Long, Y.; Xu, G.; Zhao, J.; Xie, B.; Fang, M. Dynamic Truck–UAV Collaboration and Integrated Route Planning for Resilient Urban Emergency Response. IEEE Trans. Eng. Manag. 2024, 71, 9826–9838. [Google Scholar] [CrossRef]
- Liu, Y.; Guo, B.; Wang, Y.; Wu, W.; Yu, Z.; Zhang, D. TaskMe: Multi-Task Allocation in Mobile Crowd Sensing; Association for Computing Machinery: New York, NY, USA, 2016. [Google Scholar] [CrossRef]
- Szymanski, T.H. Max-Flow Min-Cost Routing in a Future-Internet with Improved QoS Guarantees. IEEE Trans. Commun. 2013, 61, 1485–1497. [Google Scholar] [CrossRef]
- Chen, L.; Kyng, R.; Liu, Y.P.; Peng, R.; Gutenberg, M.P.; Sachdeva, S. Maximum Flow and Minimum-Cost Flow in Almost-Linear Time. In Proceedings of the 2022 IEEE 63rd Annual Symposium on Foundations of Computer Science (FOCS), Denver, CO, USA, 31 October–3 November 2022; pp. 612–623. [Google Scholar] [CrossRef]
- Hadji, M.; Zeghlache, D. Minimum Cost Maximum Flow Algorithm for Dynamic Resource Allocation in Clouds. In Proceedings of the 2012 IEEE Fifth International Conference on Cloud Computing, Honolulu, HI, USA, 24–29 June 2012; pp. 876–882. [Google Scholar] [CrossRef]
- Selby, R.; Porter, A. Learning from examples: Generation and evaluation of decision trees for software resource analysis. IEEE Trans. Softw. Eng. 1988, 14, 1743–1757. [Google Scholar] [CrossRef]
Notation | Definition |
---|---|
Q, D, q | Number, set, and index of depots, respectively |
F | Numbers of customers |
S, f, M | Set, index, and package-weight set of task points, respecitvely |
E, T, e | Number, set, and index of trucks, respectively |
N, U, n | Number, set, and index of UAVs, respectively |
Maximum flight distance of UAVs | |
Maximum load capacity of UAVs | |
Maximum load capacity of the trucks | |
, | Set and index of task sets for N UAVs, respectively |
Set of task sets for E trucks | |
Route arranged for trucks | |
The flight distance of UAV | |
The travel distance of truck | |
Total energy consumption of UAVs | |
Total energy consumption of trucks | |
Flow-cost network graph | |
Number of task points | |
The depot–task set–depot combinations | |
Set of depot combinations | |
Set of points, edges of , capacity of each edge, and total cost of each edge, respectively |
Method | Number of UAVs | Number of Trucks | Number of Task Points | Total Energy Consumption |
---|---|---|---|---|
MRTP | 2 | 2 | 15 | 6.9 |
GTP | 2 | 2 | 15 | 7.8 |
MRTP | 2 | 2 | 30 | 27.8 |
GTP | 2 | 2 | 30 | 30.6 |
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content. |
© 2025 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https://creativecommons.org/licenses/by/4.0/).
Share and Cite
Shi, X.; Zhai, X.; Wang, R.; Le, Y.; Fu, S.; Liu, N. Task Planning of Multiple Unmanned Aerial Vehicles Based on Minimum Cost and Maximum Flow. Sensors 2025, 25, 1605. https://doi.org/10.3390/s25051605
Shi X, Zhai X, Wang R, Le Y, Fu S, Liu N. Task Planning of Multiple Unmanned Aerial Vehicles Based on Minimum Cost and Maximum Flow. Sensors. 2025; 25(5):1605. https://doi.org/10.3390/s25051605
Chicago/Turabian StyleShi, Xiaodong, Xiangping Zhai, Rui Wang, Yi Le, Shuang Fu, and Ningzhong Liu. 2025. "Task Planning of Multiple Unmanned Aerial Vehicles Based on Minimum Cost and Maximum Flow" Sensors 25, no. 5: 1605. https://doi.org/10.3390/s25051605
APA StyleShi, X., Zhai, X., Wang, R., Le, Y., Fu, S., & Liu, N. (2025). Task Planning of Multiple Unmanned Aerial Vehicles Based on Minimum Cost and Maximum Flow. Sensors, 25(5), 1605. https://doi.org/10.3390/s25051605