Unmanned aerial vehicle distribution scheduling model capable of transferring orders and solving algorithm of unmanned aerial vehicle distribution scheduling model
By introducing transit stations and branch pricing algorithms into the drone urban distribution network, the problem of low power replenishment efficiency when executing long-distance orders is solved, and more efficient distribution paths and higher drone usage rates are achieved.
Patent Information
- Application Number
- CN202510037764.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-01-10
- Publication Date
- 2025-05-09
AI Technical Summary
In urban drone distribution, long-distance orders cause drones to need to recharge power during execution, which is inefficient and reduces the use rate of drones.
The strategy of order transferability is adopted. By adding a transit station to the distribution network, drones are allowed to deliver goods to the transit station, which is picked up and delivered by another drone, and is scheduled in combination with branch pricing algorithms.
It effectively reduces the distance of the drone delivery path, improves the utilization rate of a single drone, and improves the delivery efficiency.
Smart Images

Figure CN119963091A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to an unmanned aerial vehicle delivery scheduling model for order transfer and a solution algorithm thereof. Technical Background
[0002] With the continuous advancement of technology, various delivery modes have emerged. Among them, drone delivery has received widespread attention. This change has not only greatly improved delivery efficiency, but also changed the way delivery services operate. Compared with traditional manual delivery, drone delivery has the following advantages: it can traverse complex urban terrain; it has a stable delivery time; and it reduces ground traffic pressure.
[0003] In the actual scenario of drone urban delivery, when the battery life of the drone is not enough to continue the next flight, the strategy of replacing the battery at the drone station is usually adopted to ensure that its remaining battery life meets the needs of executing other order delivery tasks. However, for some orders with longer distances, the distance between the pickup point and the delivery point has exceeded the maximum flight distance of the drone when it is fully charged. When executing such orders, the drone can land at an empty drone station when the battery life is insufficient, replace the battery for recharging, and then continue to fly to the delivery point. However, this strategy of recharging during the execution of long-distance orders is inefficient. On the one hand, the drone station that can recharge may be far away from the starting point of the order, which will increase the flight distance of the drone and consume extra time. On the other hand, it takes a long time for a drone to deliver a long-distance order, which makes the drone unusable for delivering other orders for a long time, reducing the utilization rate of a single drone. Summary of the invention
[0004] In view of the above-mentioned technical problems existing in the prior art, the object of the present invention is to provide a drone delivery scheduling model for order transfer and its solution algorithm.
[0005] The establishment of the drone delivery scheduling model for order transfer includes the following process:
[0006] 3.1 Symbol Definition
[0007] K = {1,...,k}: drone number set;
[0008] K′={1,...,k′}: the set of starting positions of drones;
[0009] R = {1,...,n}: the set of all order numbers;
[0010] P = {1+k, 2+k, ..., n+k}: set of order pickup points;
[0011] D = {1+k+n, 2+k+n, ..., 2n+k}: set of order delivery points;
[0012] T = {1+k+2n, 2+k+2n, ..., t+k+2n}: set of transfer station nodes, t is the number of transfer stations;
[0013] S=k+2n+t+1: virtual termination node, i.e. the final gathering node of drones;
[0014] N = {K∪P∪D∪D∪S}: the set of all nodes in the network;
[0015] The set of arcs between nodes;
[0016] G = (N, A): directed graph;
[0017] o(k): starting node of drone k;
[0018] p(r): pickup point for order r;
[0019] d(r): delivery point of order r;
[0020] t ij : The time it takes for the drone to fly from node i to node j;
[0021] e i : The earliest service time of node i, that is, the earliest time when the drone arrives at node i;
[0022] l i : The latest service time of node i, that is, the latest time when the drone arrives at node i;
[0023] q i : The load requirement of node i; if node i is the pickup point for an order, q i is the weight of the goods in this order. If node i is the delivery point of an order, then q i =-q i-n ;
[0024] q r : The demand weight of order r, that is, the weight of the goods in order r;
[0025] Q: Maximum payload weight of the drone;
[0026] W: drone weight;
[0027] α: energy consumption factor;
[0028] σ: The drone’s full power;
[0029] 3.2 Variables
[0030] If drone k flies from node i to node j, then otherwise
[0031] If drone k flies from node i to node j carrying the cargo of order r, then otherwise
[0032] If the goods of order r are transferred from drone k to drone l at transfer station node i, then otherwise
[0033] If the goods of order r are transferred from drone l to drone k at transfer station node i, the value is 1, otherwise the value is 0;
[0034] The time when drone k arrives at node i;
[0035] The payload of drone k when it leaves node i;
[0036] f i k : The accumulated power consumption when UAV k arrives at node i.
[0037] 3.3 Model objective function
[0038] The problem is defined in a directed graph G = (N, A), where N = {1, 2, ... k + 2r + t + 1} is the set of all nodes in the network. is the set of arcs between nodes. Define K = {1,...,k} as the set of starting positions of the drone. R = {1,...,n} is the set of numbers of all orders, each order has a corresponding pickup point and delivery point, P = {1+k,2+k,...,n+k} is the set of pickup points for all orders, and D = {1+k+n,2+k+n,...,2n+k} is the set of delivery nodes for all orders. Assuming that the order number is r, then the pickup node corresponding to order r is r+k in the set P, and the delivery node corresponding to order r is k+n+r in the set D. Define T = {1+k+2n,2+k+2n,...,t+k+2n} as the set of transfer station nodes, and S = k+2n+t+1 as the virtual terminal of the drone. Except for the transfer station nodes, each node in the network has a load requirement. The load requirement of the order pickup node is The load requirement of the delivery node is For the initial node and virtual end point S of the drone, its load requirement Each pickup node and delivery node has a time window limit Since every customer hopes that the order can be delivered as soon as possible, the earliest arrival time of the pickup node and the delivery node is e i Set to 0. and is a decision variable. If drone k flies from node i to node j, otherwise If drone k flies from node i to node j carrying the cargo of order r, then otherwise If the goods of order r are transferred from drone k to drone l, then otherwise t ij is the time it takes for the UAV to fly from node i to node j.
[0039] For the scheduling of drone delivery networks, the optimization goal should be to minimize the time it takes for all drones to complete orders. Therefore, based on the above symbolic definition, the time consumed on all drone paths is summed up to obtain the following objective function:
[0040]
[0041] The objective function in this design modeling is to minimize the total time it takes for the drone to complete the delivery of all orders.
[0042] 3.4 Constraints
[0043]
[0044]
[0045]
[0046]
[0047]
[0048]
[0049]
[0050]
[0051]
[0052]
[0053]
[0054]
[0055]
[0056]
[0057]
[0058]
[0059]
[0060]
[0061]
[0062]
[0063] Expression (2) indicates that each drone must start from its starting position;
[0064] Expression (3) indicates that each drone must return to the end point (the final gathering node of the drones);
[0065] Expression (4) indicates that the pickup nodes, delivery nodes, and transfer station nodes in the network satisfy the flow balance constraint, that is, the number of arcs entering a node must be equal to the number of arcs leaving the node;
[0066] Expression (5) indicates that the pickup node of each order can only be visited once by a drone;
[0067] Expression (6) indicates that the delivery node of each order can only be visited once by a drone;
[0068] Expression (7) indicates that if an order enters a transfer station node, it must be carried out of the transfer station node by the same drone or another drone;
[0069] Expression (8) indicates that if the node an order enters is not its pickup, delivery, or transfer station node, the order must be carried out of the node by the same drone;
[0070] Expression (9) converts the two decision variables and In association, this constraint states that if a drone has not passed through arc (i, j), then it cannot carry an order through arc (i, j);
[0071] Expression (10) represents the logical constraint on the arrival time of each node in the network;
[0072] Expression (11) indicates that the time when the drone arrives at the pickup node and the delivery node satisfies the time window constraint;
[0073] Expression (12) ensures that the variable The value is 1;
[0074] Expression (13) ensures that when an order needs to be transferred, the time when the two drones arrive at the transfer station node is synchronized. This expression means that when an order is transferred from drone k to another drone l, the time when drone l arrives at the transfer station node cannot be earlier than the time when drone k arrives at the node;
[0075] Expression (14) represents the logical constraint on updating the current payload of the drone when it visits each node in the network;
[0076] Expressions (15) and (16) represent the update of the load on the drone when it delivers the order to the transfer point and picks up the order at the transfer point, respectively;
[0077] Expression (17) indicates that the drone load cannot exceed its maximum load limit;
[0078] Expression (18) represents the update of the accumulated power consumption of the drone when it arrives at each node;
[0079] Expression (19) indicates that the cumulative power consumption of the drone cannot exceed its full power;
[0080] Expression (20) indicates that the cumulative power consumption and load of the drone at its starting position node are 0;
[0081] Expressions (21)-(22) represent the types of variables.
[0082] 3.5 Branch-and-Price Algorithm
[0083] After the above modeling, a mixed integer programming model of a drone delivery network can be obtained. However, when the number of orders and the number of drones are large, the variables and constraints of the model will become very large, and the efficiency of directly solving the model using a commercial solver will be very low. Based on this, the present invention uses a branch pricing algorithm to solve the problem. The basic structure of the algorithm consists of a column generation algorithm and a branch and bound algorithm. The column generation algorithm decomposes the problem into a main problem and a sub-problem. Among them, the main problem is a set covering model, which is also a mixed integer programming model, and each column in the model is a path. The sub-problem is a constrained resource shortest path problem, and its goal is to find a path with a negative reducedcost. The sub-problem is solved by a labeling algorithm, and then the obtained solution is added to the relaxed main problem. The solution obtained by the column generation algorithm is usually not an integer solution. At this time, it is necessary to branch the non-integer solution, obtain two new sub-problems and solve them, and update the upper and lower bounds at the same time until the gap between the upper and lower bounds is 0, and the optimal integer solution is obtained.
[0084] 3.5.1 Establishing the main problem set coverage model
[0085] In the original distribution network, the transfer station nodes will be visited multiple times by different drones, and the time when each drone leaves the transfer station node is not easy to express. Therefore, the original network, i.e. the directed graph G(N, A), is expanded and new nodes are added. Each transfer station node t is copied 2×n times, where n is the number of orders and each order corresponds to t Nodes and t Node, where Indicates that order r enters the transfer station node, Indicates that the order leaves the transfer station node. r- is the set of nodes entering the transfer station corresponding to order r. The set of arcs between nodes in the expanded network is recorded as A'. Based on the expanded network, the set coverage model of formulas (23)-(31) is established.
[0086]
[0087]
[0088]
[0089]
[0090]
[0091]
[0092]
[0093]
[0094]
[0095] Expression (23) is the objective function of the main problem, which means minimizing the time on the paths of all drones. Where Ω is the set of all paths, c p is the completion time of path p. p is a 0-1 variable. If path p is selected, then x p =1, otherwise x p =0;
[0096] Expression (24) indicates that each drone can be used at most once. ip is a 0-1 variable, indicating whether path p contains node i. If path p contains node i, then a ip =1, otherwise a ip =0;
[0097] Expression (25) indicates that each pickup node and delivery node must be visited once;
[0098] Expression (26) ensures that if in a path p, an order r is delivered to the corresponding transfer station node, then there must be another path p′ to the transfer station node to pick up the order and deliver it to the delivery point; where p r and d r are the pickup node and delivery node of order r respectively. Indicates that path p contains node p r and nodes That is, the goods of order r are delivered from the pickup node to the transfer station node;
[0099] Expression (27) represents the logical constraints on the arrival time of each node in path p; where M is a set large number; β i represents the time to reach node i; is a 0-1 variable, indicating whether the path p contains arc (i, j). If it contains arc (i, j), the value is 1, otherwise it is 0. M represents a very large number, such as 10. 6 .
[0100] Expression (28) indicates that the time when the drone arrives at the pickup node and the delivery node must satisfy the time window constraint. i is the time when the UAV arrives at node i, e i and represent the earliest arrival time and the latest arrival time of node i respectively;
[0101] Expression (29) is a logical constraint that controls the synchronization of the time when two different paths arrive at the transfer station node. It means that if order r is transferred, then The arrival time of the node cannot be earlier than The arrival time of the node;
[0102] Expressions (30)-(31) represent the types and attributes of variables.
[0103] 3.5.2 Sub-question labeling algorithm
[0104] The shortest path problem with limited resources is an NP-hard problem. This paper uses a labeling algorithm based on dynamic programming to solve it. The general framework of the labeling algorithm is: starting from the source node, expanding to each reachable node, generating a new label for each node expanded to, comparing the newly generated label with the label stored in the node list, and using the dominant criterion to prune to reduce the search space.
[0105] First, define the label L: for label L, the node of the label is recorded as a(L), which records the node number of the label; the arrival time is recorded as t(L); the current load is recorded as q(L); the current remaining power is recorded as e(L); the cumulative cost of the label is recorded as c(L). In addition, define O(L) as the set of orders that have been started but not yet completed (that is, the request has been received from the pickup node or the transfer station node, but has not yet been delivered to its delivery node or transfer station node); O T (L) is the set of orders starting from the transfer station node; C(L) is the set of completed orders.
[0106] When the label is extended along arc (a(L), j) to node j, (32)-(34) must be satisfied.
[0107] t(L)+t a(L),j ≤lt j (32)
[0108] q(L)+q j ≤Q (33)
[0109] e(L)-ec a(L),j ≥0 (34)
[0110] where lt j represents the latest arrival time of node j, t a(L),j represents the time from node a(L) to node j; expression (32) represents the time window constraint of node j; expression (33) represents the capacity constraint; expression (34) represents the power constraint, where ec a(L),j represents the power consumed by flying from node a(L) to node j.
[0111] If node j satisfies (32)-(34), a new label L′ is generated at node j, and the information of label L′ is updated in the following way:
[0112] a(L′)=j(35)
[0113] t(L′)=t(L)+t a(L),j (36)
[0114] q(L′)=q(L)+q j (37)
[0115] e(L′)=e(L)-ec a(L),j (38)
[0116] c(L′)=c(L)+t a(L),j (39)
[0117]
[0118]
[0119]
[0120] (35)-(39) represent the updated node number, the time to reach node j, the load when reaching node j, the cumulative power consumption when reaching node j, and the cumulative cost when reaching node j, respectively; (40)-(42 ... and the cumulative cost when reaching node j, respectively. T (L) is updated, where T + and T - For all t + and t - A collection of nodes.
[0121] 3.5.3 Heuristic Algorithm for Constructing Initial Path
[0122] The main problem of the column generation algorithm is a linear programming problem, and the subproblems are used to generate new columns. To start this process, the algorithm needs an initial solution to construct the first feasible solution to the main problem. Therefore, it is necessary to design a heuristic algorithm for constructing an initial solution. In the scenario of this article, the initial solution is a set of feasible paths. This article designs a large domain search algorithm for the order transfer scenario to construct an initial set of paths. The large domain algorithm randomly removes a certain number of order pickup nodes and delivery nodes from the path, and then inserts these nodes into the path to form a new solution.
[0123] When a node is inserted into a path, it will affect the arrival time and cumulative power consumption of the nodes after the insertion position in the path. Therefore, each time a position is inserted, it is necessary to check whether the time window constraint, power constraint and maximum load constraint are met. In addition, since the scenario in this article involves the transfer of orders, when inserting nodes, the pickup node and delivery node of an order can be inserted into two different paths respectively. At this time, a transfer node must be inserted at any position after the inserted pickup node and any position before the delivery node to ensure that the two paths deliver the order to the transfer node and take the order away from the transfer node respectively. It should be noted that in order to ensure the order in which the two drones arrive at the transfer node, the transfer node inserted before the delivery node must also meet the arrival time that is not earlier than the arrival time of the transfer node in the other path.
[0124] The large domain algorithm process for constructing the initial solution is as follows:
[0125] 1) Obtain the initial feasible path and feasible solution for drone delivery
[0126] For each order, find the drone closest to the pickup point, determine whether the drone's current remaining range supports the drone reaching the pickup point, and fly from the pickup point to the delivery point; if not, find the drone that is the second closest to the pickup point, and so on, until a drone with sufficient range is found;
[0127] If the order is a long-distance order, that is, the distance from the pickup point to the delivery point exceeds the longest flight distance of the drone when it is fully charged, the pickup point is first added to the current drone path, and then the nearest transfer station node is added to the current drone path. If the distance from the transfer station node to the delivery point is still greater than the drone's longest endurance, then the second closest transfer station node is converted and added to the current drone path, and so on, until the distance from the transfer station node to the delivery point is no greater than the drone's longest endurance, find a drone with sufficient endurance and the corresponding transfer station node, add the selected transfer station node and delivery point to the current drone path of the long-distance order, and the goods of the long-distance order are delivered from the pickup point to the transfer station node by the first drone, and then delivered from the transfer station node to the delivery point by the second drone;
[0128] The initial feasible path and feasible solution of drone delivery are obtained through the above method;
[0129] 2) After obtaining the feasible solution of the initial feasible path for drone delivery in step 1), use the destruction operator to randomly delete the pickup points and delivery points of q orders from the initial feasible path. If the order is a long-distance order, the transfer station nodes after the pickup point and before the delivery point in the path are also deleted to obtain the path after the destruction;
[0130] 3) Then use the repair operator to randomly insert the pickup point and delivery point of the removed order into the damaged path obtained in step 2). Similarly, if the order to be inserted is a long-distance order, a transfer station node needs to be inserted after the pickup point and before the delivery point. It should be noted that the arrival time of the transfer station node inserted before the delivery point cannot be earlier than the arrival time of the transfer station node inserted before the pickup point, so as to ensure the synchronization of the time when the two drones arrive at the same transfer station node; among them, when inserting the pickup node and delivery node of an order, the pickup point and delivery point are inserted into each position in the path one by one. Each time a position is inserted, the completion time of the path after insertion is calculated. Each position of all drone paths is inserted once according to this method, and the completion time of the path after insertion is calculated and compared respectively to find the position with the smallest total completion time after insertion, thereby determining the insertion position of the final pickup point and delivery point in the path.
[0131] After the destruction and repair process described above, the algorithm iterates continuously. After the iteration is completed, the algorithm will output the optimal solution in the iterative process. The optimal solution is the optimal initial path of the drone.
[0132] The operation process of the large domain algorithm is as follows:
[0133] Input: Initial feasible solution S
[0134] 1: Initialize the initial solution S to S best and the current solution S cur , that is, assign the initial solution S to S best and the current solution S cur ;
[0135] 2: While loop, when the algorithm termination condition is not met, that is, when the set number of iterations is not reached:
[0136] 3: Copy the current solution: S c ' ur =S cur ;
[0137] 4: Use the removal operator from S c ' ur Remove the pickup and delivery points of q orders;
[0138] 5: Use the insertion operator to insert the pickup and delivery points of these q orders into S c ' ur middle;
[0139] 6: If f(S c ' ur )≤f(S best ), update the optimal solution: S best =Sc ' ur ;
[0140] 7: If step 6 is not satisfied, generate a random number P′ between 0 and 1; if P′≤P, accept the current solution S with the probability of accepting the suboptimal solution c ' ur .
[0141] Symbol definition:
[0142] S: initial feasible solution, i.e. a set of initial path solutions;
[0143] n: order quantity;
[0144] S cur : Current drone path;
[0145] S b ' est : Current optimal drone path;
[0146] f(S c ' ur ): The objective function corresponding to the current UAV path, that is, the current total completion time;
[0147] f(S best ): The objective function corresponding to the current optimal UAV path, that is, the current minimum total completion time;
[0148] P: The probability of accepting the suboptimal solution, calculated as Randomly generate a random number P′ between 0 and 1. If P′≤P, accept the current solution S c ' ur .
[0149] The present invention is based on the initial path generated by the large domain algorithm. For the initial path, the relaxed main problem is solved to obtain the dual variable. The reduced cost defined by the obtained dual variable is used to solve the subproblem using the labeling algorithm to generate a new path. If the subproblem finds a path with a negative reduced cost, it is added to the main problem. If no new path can be added to the main problem, that is, the subproblem cannot find a path with a negative reduced cost, the optimal path is obtained.
[0150] Compared with the prior art, the beneficial effects achieved by the present invention are as follows: the present invention adopts a strategy of order transfer, that is, several transfer stations supporting temporary storage of goods are added to the distribution network, and drones can deliver the ordered goods to the transfer station, and another drone flies to the transfer station to pick up the goods and delivers them to the distribution point. In this scenario, the scheduling of drones needs to consider the time when two drones arrive at the transfer station one after another. Since the endurance of the drone is also highly related to its own load, it is also necessary to determine its remaining endurance mileage based on the real-time load of the drone. In the patent of the present invention, the problem is modeled as a mixed integer programming model, and constraints on the time when the two drones arrive at the transfer station are added to the model, and a branch pricing algorithm is designed to solve it. The algorithm framework consists of a column generation algorithm nested in a branch pricing algorithm, in which the main problem of the column generation algorithm is a set covering model, and the subproblem is a basic shortest path problem with constraints. Combined with an efficient heuristic algorithm to give a feasible initial solution, the algorithm can effectively solve, reduce the distance of the drone delivery path, and improve the utilization rate of a single drone. BRIEF DESCRIPTION OF THE DRAWINGS
[0151] Figure 1 A scheduling diagram considering that orders can be transferred;
[0152] Figure 2 It is a directed graph established based on order information and drone location information;
[0153] Figure 3 The drone path map with the transfer station node inserted. Example 1
[0154] This embodiment 1 is used as an example to verify the scientificity and effectiveness of the above-mentioned drone delivery scheduling model and its solution algorithm for order transfer:
[0155] like Figure 1 As shown in the figure, the starting positions of drone 1 and drone 2 are drone station 1 and drone station 3 respectively. Order 1 needs to pick up the goods from drone station 2 and send them to drone station 6, and order 2 needs to pick up the goods from drone station 4 and send them to drone station 5. The above drone starting positions and pickup points, delivery points and transfer stations are converted into a Figure 2 The directed graph shown in Figure 1. In the figure, the transfer station is replicated into four transfer station nodes, corresponding to two orders entering and leaving the transfer station respectively.
[0156] The distance between the pickup point and the delivery point for Order 1 exceeds the maximum flight distance of the drone when fully charged, so Order 1 needs to be transferred. Figure 3 As shown in the figure, when constructing the path, first insert the p1 node and the d1 node into the two paths respectively, and then insert the transfer station node corresponding to order 1 into the After inserting into the p1 node, Insert before node d1. If inserted before p2, the arrival time of drone 2 at the transfer station is earlier than that of drone 1, which is not feasible. Insertion before d2 and d1 is feasible, but the total completion time when inserted into d1 is greater than the total completion time when inserted into d2. Therefore, the optimal insertion position is between p2 and d2. Both paths do not violate the time window and maximum capacity constraints.
Claims
1. A drone delivery scheduling model considering order transferability, characterized by The establishment of the model includes the following processes: 1) Define the state parameters and variables in drone delivery. The parameter symbols are defined as follows: K = {1,...,k}: drone number set; K′={1,...,k′}: the set of starting positions of drones; R = {1,...,n}: the set of all order numbers; P = {1+k, 2+k, ..., n+k}: set of order pickup points; D = {1+k+n, 2+k+n, ..., 2n+k}: set of order delivery points; T = {1+k+2n, 2+k+2n, ..., t+k+2n}: set of transfer station nodes, t is the number of transfer stations; S=k+2n+t+1: virtual termination node, i.e. the final gathering node of drones; N = {K∪P∪D∪T∪S}: the set of all nodes in the network; The set of arcs between nodes; G = (N, A): directed graph; o(k): starting node of drone k; p(r): pickup point for order r; d(r): delivery point of order r; t ij : The time it takes for the drone to fly from node i to node j; e i : The earliest service time of node i, that is, the earliest time when the drone arrives at node i; l i : The latest service time of node i, that is, the latest time when the drone arrives at node i; q i : The load requirement of node i; if node i is the pickup point for an order, q i is the weight of the goods in this order. If node i is the delivery point of an order, then q i =-q i-n ; q r : The demand weight of order r, that is, the weight of the goods in order r; Q: Maximum payload weight of the drone; W: drone weight; α: energy consumption factor; σ: The drone’s full power; If drone k flies from node i to node j, then otherwise If drone k flies from node i to node j carrying the cargo of order r, then otherwise If the goods of order r are transferred from drone k to drone l at transfer station node i, then otherwise If the goods of order r are transferred from drone l to drone k at transfer station node i, the value is 1, otherwise the value is 0; The time when drone k arrives at node i; The payload of drone k when it leaves node i; The cumulative power consumption of drone k when it arrives at node i; 2) Determine the objective function of the drone delivery network optimization model: For the scheduling of drone delivery networks, the optimization goal should be to minimize the time it takes for all drones to complete orders. Therefore, based on the above symbolic definition, the time consumed on all drone paths is summed up to obtain the following objective function: 3) Determine the constraints Expression (2) indicates that each drone must start from its starting position; Expression (3) indicates that each drone must return to the end point, which is the final gathering node of the drones; Expression (4) indicates that the pickup point, delivery point, and transfer station nodes in the network satisfy the flow balance constraint, that is, the number of arcs entering a node must be equal to the number of arcs leaving the node; Expression (5) indicates that the pickup point for each order can only be visited once by a drone; Expression (6) indicates that the delivery point of each order can only be visited once by a drone; Expression (7) indicates that if an order enters a transfer station node, it must be carried out of the transfer station node by the same drone or another drone; Expression (8) indicates that if the node an order enters is not its pickup, delivery, or transfer station node, the order must be carried out of the node by the same drone; Expression (9) converts the two decision variables and In association, this constraint states that if a drone has not passed through arc (i, j), then it cannot carry an order through arc (i, j); Expression (10) represents the logical constraint on the arrival time of each node in the network; Expression (11) indicates that the time when the drone arrives at the pickup point and the delivery point satisfies the time window constraint; Expression (12) ensures that the variable The value is 1; Expression (13) ensures that when an order needs to be transferred, the time when the two drones arrive at the transfer station node is synchronized. This expression means that when an order is transferred from drone k to another drone l, the time when drone l arrives at the transfer station node cannot be earlier than the time when drone k arrives at the node; Expression (14) represents the logical constraint on updating the current payload of the drone when it visits each node in the network; Expressions (15) and (16) represent the update of the load on the drone when it delivers the order to the transfer station node and picks up the order from the transfer station node, respectively; Expression (17) indicates that the drone load cannot exceed its maximum load limit; Expression (18) represents the update of the accumulated power consumption of the drone when it arrives at each node; Expression (19) indicates that the cumulative power consumption of the drone cannot exceed its full power; Expression (20) indicates that the cumulative power consumption and load of the drone at its starting position node are 0; Expressions (21)-(22) represent the types of variables.
2. The algorithm for solving the drone delivery scheduling model considering order transferability as described in claim 1 is characterized in that The following steps are involved: 1) Construct the main problem set coverage model. The establishment process is as follows: Expand the original network, i.e. the directed graph G(N, A), add new nodes, and replicate each transfer station node 2×n times, where n is the number of orders and each order corresponds to t Nodes and t Node, where Indicates that order r enters the transfer station node, Indicates that order r leaves the transfer station node; T r- is the set of nodes entering the transfer station corresponding to order r; the set of arcs between nodes in the expanded network is recorded as A'. Based on the expanded network, the set coverage model of formulas (23)-(31) is established; Expression (23) is the objective function of the main problem, which means minimizing the time on the paths of all drones; where Ω is the set of all paths, c p is the completion time of path p; x p is a 0-1 variable. If path p is selected, then x p =1, otherwise x p =0; Expression (24) indicates that each drone can be used at most once; ip is a 0-1 variable. If path p contains node i, then a ip =1, otherwise a ip =0; Expression (25) indicates that each pickup point and delivery point must be visited once; Expression (26) ensures that if in a path p, an order r is delivered to the corresponding transfer station node, then there must be another path p′ to the transfer station node to pick up the order and deliver it to the delivery point; where p r and d r are the pickup node and delivery node of order r respectively. Indicates that path p contains node p r and nodes That is, the goods of order r are delivered from the pickup node to the transfer station node; Expression (27) represents the logical constraint of the arrival time of each node in path p; where M is a set large number; β i represents the time to reach node i; is a 0-1 variable, indicating whether the path p contains arc (i, j). If it contains arc (i, j), the value is 1, otherwise the value is 0; Expression (28) indicates that the time for the drone to arrive at the pickup point and the delivery point must satisfy the time window constraint; where β i is the time when the UAV arrives at node i, e i and l i They represent the earliest arrival time and the latest arrival time of node i respectively; Expression (29) is a logical constraint that controls the synchronization of the time when two different paths arrive at the transfer station node; it means that if order r is transferred, then The arrival time of the node cannot be earlier than The arrival time of the node; Expressions (30)-(31) represent the types and properties of variables; 2) Based on the initial path of drone delivery generated by the large domain algorithm, for the initial path, solve the relaxed main problem, obtain the dual variable, obtain the reduced cost defined by the dual variable, use the labeling algorithm to solve the subproblem, generate a new path, if the subproblem finds a path with a negative reducedcost, add it to the main problem; if no new path can be added to the main problem, that is, the subproblem cannot find a path with a negative reducedcost, get the optimal path.
3. The algorithm for solving the drone delivery scheduling model considering order transferability as described in claim 2 is characterized in that The labeling algorithm process for solving its sub-problems is as follows: First, define the label L: for label L, the node of the label is recorded as a(L), which records the node number of the label; the arrival time is recorded as t(L); the current load is recorded as q(L); the current remaining power is recorded as e(L); the cumulative time cost of the label is recorded as c(L); in addition, define O(L) as the set of orders that have been started but not yet completed, that is, the request has been received from the pickup point or transfer station node, but has not yet been delivered to its delivery point or transfer station node; O T (L) is the order set starting from the transfer station node; C(L) is the set of completed orders; When the label is extended along arc (a(L), j) to node j, (32)-(34) must be satisfied. t(L)+t a(L),j ≤lt j (32) q(L)+q j ≤Q (33) e(L)-ec a(L),j ≥0 ( 34 where lt j represents the latest arrival time of node j, t a(L),j represents the time from node a(L) to node j; expression (32) represents the time window constraint of node j; expression (33) represents the capacity constraint; expression (34) represents the power constraint, where ec a(L),j represents the power consumed by flying from node a (L) to node j; If node j satisfies (32)-(34), a new label L′ is generated at node j, and the information of label L′ is updated as follows: a(L′)=j(35) t(L′)=t(L)+t a(L),j (36) q(L′)=q(L)+q j (37) e(L′)=e(L)-ec a(L),j (38) c(L′)=c(L)+t a(L),j (39) (35)-(39) represent the updated node number, the time to reach node j, the load when reaching node j, the cumulative power consumption when reaching node j, and the cumulative cost when reaching node j, respectively; (40)-(42) represent the updated node number, the time to reach node j, the load when reaching node j, the cumulative power consumption when reaching node j, and the cumulative cost when reaching node j, respectively; (41)-(43) represent the updated node number, the time to reach node j, and the cumulative cost when reaching node j, respectively. T (L) is updated, where T + and T - For all t + and t - A collection of nodes.
4. The algorithm for solving the drone delivery scheduling model considering order transferability as described in claim 2 is characterized in that The large domain algorithm process for constructing the initial solution is as follows: 1) Obtain the initial feasible path solution for drone delivery For each order, find the drone closest to the pickup point, determine whether the drone's current remaining range supports the drone reaching the pickup point, and fly from the pickup point to the delivery point; If it is not supported, find the second closest drone to the pickup point for the order, and so on, until a drone with sufficient range is found; If the order is a long-distance order, that is, the distance from the pickup point to the delivery point exceeds the longest flight distance of the drone when it is fully charged, the pickup point is first added to the current drone path, and then the nearest transfer station node is added to the current drone path. If the distance from the transfer station node to the delivery point is still greater than the drone's longest endurance, then the second closest transfer station node is converted and added to the current drone path, and so on, until the distance from the transfer station node to the delivery point is no greater than the drone's longest endurance, find a drone with sufficient endurance and the corresponding transfer station node, add the selected transfer station node and delivery point to the current drone path of the long-distance order, and the goods of the long-distance order are delivered from the pickup point to the transfer station node by the first drone, and then delivered from the transfer station node to the delivery point by the second drone; The initial feasible path and feasible solution of drone delivery are obtained through the above method; 2) After obtaining the feasible solution of the initial feasible path for drone delivery in step 1), use the destruction operator to randomly delete the pickup points and delivery points of q orders from the initial feasible path. If the order is a long-distance order, the transfer station nodes after the pickup point and before the delivery point in the path are also deleted to obtain the path after the destruction; 3) Then use the repair operator to randomly insert the pickup point and delivery point of the removed order into the damaged path obtained in step 2). Similarly, if the order to be inserted is a long-distance order, a transfer station node needs to be inserted after the pickup point and before the delivery point. It should be noted that the arrival time of the transfer station node inserted before the delivery point cannot be earlier than the arrival time of the transfer station node inserted before the pickup point, so as to ensure the synchronization of the time when the two drones arrive at the same transfer station node; among them, when inserting the pickup node and delivery node of an order, the pickup point and delivery point are inserted into each position in the path one by one. Each time a position is inserted, the completion time of this path after the insertion is calculated. After the destruction and repair process described above, the algorithm iterates continuously. After the iteration is completed, the algorithm will output the optimal solution in the iterative process. The optimal solution is the optimal initial path of the drone. The operation process of the large domain algorithm is as follows: Input: Initial feasible solution S 1: Initialize the initial solution S to S best and the current solution S cur , that is, assign the initial solution S to S best and the current solution S cur ; 2: While loop, when the algorithm termination condition is not met, that is, when the set number of iterations is not reached: 3: Copy the current solution: S c ' ur =S cur 4: Use the removal operator from S c ' ur Remove the pickup and delivery points for q orders 5: Use the insertion operator to insert the pickup and delivery points of these q orders into S c ' ur middle 6: If f(S c ' ur )≤f(S best ), update the optimal solution: S best =S c ' ur 7: If P′≤P, accept the current solution S with the probability of accepting the suboptimal solution c ' ur ; Symbol definition: S: initial feasible solution, i.e. a set of initial path solutions; n: order quantity; S cur : Current drone path; S b ' est : Current optimal drone path; f(S c ' ur ): The objective function corresponding to the current UAV path, that is, the current total completion time; f(S best ): The objective function corresponding to the current optimal UAV path, that is, the current minimum total completion time; P: The probability of accepting the suboptimal solution, calculated as Randomly generate a random number P′ between 0 and 1. If P′≤P, accept the current solution S c ' ur .