Unmanned aerial vehicle scheduling method and system, electronic equipment, storage medium and program product
By obtaining the remaining capacity of the UAV task table and searching for the minimum offset, combined with a priority squeezing strategy, the problems of flight path conflicts and resource idleness in UAV scheduling are solved, achieving efficient and safe UAV scheduling and improving the operational efficiency and safety of low-altitude economy.
Patent Information
- Application Number
- CN202510892540.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-06-30
- Publication Date
- 2025-11-21
AI Technical Summary
Existing drone scheduling methods are prone to flight path conflicts, take-off and landing congestion, and idle airspace resources in mission overload scenarios, resulting in limited efficiency and safety of low-altitude economic operation, as well as insufficient intelligence and flexibility.
By acquiring the current task table and information on tasks to be inserted, the remaining capacity is calculated, the available idle time slots are determined, and a minimum offset search is performed when direct insertion is not possible to determine the target insertion time slot. Combined with a priority squeezing strategy, efficient and safe drone scheduling is achieved.
It improves the intelligence level and decision-making flexibility of drone scheduling, ensures efficiency, safety and scalability in complex environments, avoids scheduling conflicts and resource bottlenecks, and improves resource utilization.
Smart Images

Figure CN120998070A_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of unmanned aerial vehicle (UAV) technology, and in particular to a UAV scheduling method, system, electronic device, storage medium, and program product. Background Technology
[0002] In recent years, with the rapid development of the urban low-altitude economy, the application of unmanned aerial vehicles (UAVs) in diverse scenarios such as emergency rescue, urban logistics, facility inspection, and urban air traffic has experienced explosive growth. This growth has brought about a massive demand for concurrent flight missions, posing a severe challenge to the management and scheduling of urban airspace. As a core infrastructure, the flight scheduling system urgently needs to efficiently handle the conflict detection and time scheduling issues of a large number of concurrently submitted missions.
[0003] Existing drone scheduling methods often employ a static "first-come, first-served" mechanism, which leads to a situation where existing systems are prone to conflicting flight paths, takeoff and landing congestion, and idle airspace resources under mission overload scenarios, severely restricting the operational efficiency and safety of the low-altitude economy.
[0004] Therefore, existing drone scheduling methods are insufficient in terms of intelligence and flexibility, and urgently need to be improved to achieve efficient and safe drone scheduling solutions. Summary of the Invention
[0005] This invention provides a drone scheduling method, system, electronic device, storage medium, and program product to solve the problems of low intelligence and flexibility in existing drone scheduling methods.
[0006] This invention provides a method for scheduling unmanned aerial vehicles (UAVs), comprising: Obtain the current task table and the task information to be inserted; wherein, the task information to be inserted includes the drone number to be inserted, the task type to be inserted, and the time period of the task to be inserted; Based on the current task table, obtain the remaining capacity corresponding to the time period of the task to be inserted; When determining the allowable insertion of flight missions based on the remaining capacity, the available idle time slots are determined based on the current mission list and the number of the UAV to be inserted; When it is determined that the flight mission to be inserted cannot be directly inserted based on the time period of the mission to be inserted and the available idle time period, a minimum offset search is performed based on the mission information to be inserted and the current mission table to determine the target insertion time period; Based on the target insertion time period, the scheduling result of the flight mission to be inserted is determined.
[0007] According to a UAV scheduling method provided by the present invention, the step of determining the target insertion time period by performing a minimum offset search based on the task information to be inserted and the current task table includes: Based on the time period of the task to be inserted and the current task table, an offset search is performed to determine the candidate insertion time period and the candidate scheduled flight task; The candidate scheduled flight missions are adjusted based on the candidate insertion time period and the mission information to be inserted. When a conflict is detected between the adjusted candidate scheduling flight mission and other flight missions, the offset search continues until there is no conflict between the adjusted candidate scheduling flight mission and other flight missions. At this point, the current candidate insertion period is determined as the target insertion period. The other flight missions include other missions in the current mission table besides the adjusted candidate scheduling flight mission and the flight mission to be inserted.
[0008] According to a UAV scheduling method provided by the present invention, after performing a minimum offset search based on the task information to be inserted and the current task table, the method further includes: If the target insertion time period is not determined, obtain the conflicting flight mission and its first priority based on the task to be inserted time period and the current task table; When it is detected that the first priority is lower than the second priority corresponding to the flight task to be inserted, the flight task to be inserted is inserted according to the time period of the task to be inserted, and the conflicting flight task is scheduled to other idle time periods other than the time period of the task to be inserted. If the first priority is detected to be higher than or equal to the second priority, the flight mission to be inserted will be scheduled to the other idle time slot.
[0009] According to a drone scheduling method provided by the present invention, the step of obtaining the remaining capacity corresponding to the time period of the task to be inserted based on the current task table includes: Based on the current task table, obtain the already inserted capacity corresponding to the time period of the task to be inserted; Obtain the total capacity corresponding to the time period of the task to be inserted; The remaining capacity is obtained by subtracting the total capacity from the already inserted capacity.
[0010] According to a drone scheduling method provided by the present invention, obtaining the total capacity corresponding to the time period for the task to be inserted includes: Based on the type of task to be inserted, obtain the flight path length and the safe distance of the UAV; The total capacity is obtained by dividing the flight path length and the safe distance of the UAV.
[0011] According to a drone scheduling method provided by the present invention, obtaining the total capacity corresponding to the time period for the task to be inserted includes: Acquire historical flight mission data, meteorological data, and flight flow data, and determine the target time period based on the time period of the mission to be inserted; The historical flight mission data is statistically analyzed based on the target time period to obtain the historical average number of flight missions corresponding to the target time period; The capacity is predicted based on the meteorological data and the flight flow data using a capacity prediction model, and the model-predicted capacity for the target time period is obtained. The total capacity corresponding to the time period of the mission to be inserted is obtained by weighted summing of the historical average number of flight missions and the model predicted capacity.
[0012] The present invention also provides an unmanned aerial vehicle (UAV) scheduling system, comprising: The first acquisition module is used to acquire the current task table and the task information to be inserted; wherein, the task information to be inserted includes the drone number to be inserted, the task type to be inserted, and the time period of the task to be inserted; The second acquisition module is used to acquire the remaining capacity corresponding to the time period of the task to be inserted based on the current task table. The first determining module is used to determine the available idle time period for insertion based on the current task table and the number of the UAV to be inserted when determining that the insertion of the flight task is allowed based on the remaining capacity; The second determining module is used to determine the target insertion time period by performing a minimum offset search based on the task to be inserted information and the current task table when it is determined that the flight task to be inserted cannot be directly inserted based on the task time period to be inserted and the available idle time period to be inserted. The task scheduling module is used to determine the scheduling result of the flight task to be inserted based on the target insertion time period.
[0013] The present invention also provides an electronic device, including a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor executes the computer program to implement any of the above-described drone scheduling methods.
[0014] The present invention also provides a non-transitory computer-readable storage medium having a computer program stored thereon, characterized in that the computer program, when executed by a processor, implements the UAV scheduling method as described in any of the preceding claims.
[0015] The present invention also provides a computer program product, comprising a computer program, characterized in that, when the computer program is executed by a processor, it implements the UAV scheduling method as described in any of the preceding claims.
[0016] The UAV scheduling method, system, electronic device, storage medium, and program product provided by this invention first acquire the current task table and the information of tasks to be inserted. The information of tasks to be inserted includes the UAV number, the task type, and the time period. Then, based on the current task table, the remaining capacity corresponding to the time period of the task to be inserted is obtained to determine whether insertion is allowed from a capacity perspective. This fundamentally avoids scheduling conflicts, security risks, and system performance bottlenecks caused by task overload in UAV clusters. When it is determined that insertion of the flight task is allowed based on the remaining capacity (i.e., under the premise that resource capacity allows), the available idle time period is determined based on the current task table and the UAV number to be inserted. This further determines whether the new task can be inserted directly without disturbance, thereby reducing unnecessary task adjustments and greatly improving scheduling efficiency and resource utilization. When it is determined that a new task cannot be directly inserted, a minimum offset search is performed based on the task information and the current task table to determine the target insertion time period through a minimum offset strategy, ensuring that the impact of the new task insertion on the existing plan reaches global optimum and is minimized. Finally, the scheduling result of the flight task to be inserted is determined based on the target insertion time period. In this invention, a highly adaptive dynamic scheduling scheme is formed through the progressive and intelligent collaboration of the above three-level decision-making mechanism. This scheme can not only significantly improve the intelligence level and decision-making flexibility of the UAV scheduling method, but also continuously ensure the efficiency, safety and scalability of UAV operations in complex and ever-changing environments, ultimately achieving efficient and safe UAV scheduling under resource constraints. Attached Figure Description
[0017] To more clearly illustrate the technical solutions in this invention or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are some embodiments of this invention. For those skilled in the art, other drawings can be obtained from these drawings without creative effort.
[0018] Figure 1 This is one of the flowcharts illustrating the drone scheduling method provided by the present invention; Figure 2 This is the second flowchart illustrating the drone scheduling method provided by the present invention; Figure 3 This is the third flowchart illustrating the drone scheduling method provided by the present invention; Figure 4 This is a schematic diagram of the structure of the UAV scheduling system provided by the present invention; Figure 5 This is a schematic diagram of the structure of the electronic device provided by the present invention. Detailed Implementation
[0019] To make the objectives, technical solutions, and advantages of this invention clearer, the technical solutions of this invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some, not all, of the embodiments of this invention. All other embodiments obtained by those skilled in the art based on the embodiments of this invention without creative effort are within the scope of protection of this invention.
[0020] In recent years, with the rapid development of the urban low-altitude economy, the application of unmanned aerial vehicles (UAVs) in diverse scenarios such as emergency rescue, urban logistics, facility inspection, and urban air traffic has experienced explosive growth. This growth has brought about a massive demand for concurrent flight missions, posing a severe challenge to the management and scheduling of urban airspace. As a core infrastructure, the flight scheduling system urgently needs to efficiently handle the conflict detection and time scheduling issues of a large number of concurrently submitted missions.
[0021] Existing drone scheduling methods often employ a static "first-come, first-served" mechanism, which leads to a situation where existing systems are prone to conflicting flight paths, takeoff and landing congestion, and idle airspace resources under mission overload scenarios, severely restricting the operational efficiency and safety of the low-altitude economy.
[0022] Therefore, existing drone scheduling methods are insufficient in terms of intelligence and flexibility, and urgently need to be improved to achieve efficient and safe drone scheduling solutions.
[0023] Based on the above problems and analysis, this invention proposes a drone scheduling method, system, electronic device, storage medium, and program product. The following describes these in conjunction with... Figures 1-5 Describe it.
[0024] Figure 1 This is one of the flowcharts illustrating the drone scheduling method provided by the present invention, such as... Figure 1 As shown, the drone scheduling method includes steps S110, S120, S130, S140 and S150.
[0025] Step S110: Obtain the current task table and the task information to be inserted; wherein, the task information to be inserted includes the drone number to be inserted, the task type to be inserted, and the time period of the task to be inserted.
[0026] Here, the current task table is the set of drone flight tasks that have been approved by the scheduler and allocated resources. The current task table includes task information for the assigned flight tasks, including but not limited to: assigned drone number, assigned task type, assigned task time period, assigned task takeoff time, assigned task landing time, and assigned task flight time.
[0027] The task information to be inserted refers to the task information of the flight mission to be inserted. Among them, the UAV number to be inserted is the number of the UAV to be inserted; the task type to be inserted is the type of flight mission to be inserted; and the task time period to be inserted is the time period consisting of the takeoff time and landing time of the flight mission to be inserted.
[0028] Step S120: Obtain the remaining capacity corresponding to the time period of the task to be inserted based on the current task table.
[0029] Then, based on the current task table, obtain the remaining capacity corresponding to the time period of the task to be inserted.
[0030] Specifically, based on the current task table, we can obtain the already inserted capacity corresponding to the time period of the task to be inserted; at the same time, we can obtain the total capacity corresponding to the time period of the task to be inserted; then, we can subtract the total capacity from the already inserted capacity to obtain the remaining capacity.
[0031] When determining the allowable insertion of a flight mission based on the remaining capacity, step S130 is executed: determine the available idle time period based on the current mission table and the number of the UAV to be inserted.
[0032] After obtaining the remaining capacity corresponding to the time period of the task to be inserted, the system checks whether the remaining capacity is greater than a preset value to determine whether the insertion of the flight task is allowed. This preset value can be set to 0. If the remaining capacity > 0, it indicates that there is still scheduling space, and the insertion of the flight task is allowed; if the remaining capacity ≤ 0, it indicates that the system is full or overloaded, and the insertion of the flight task is not allowed.
[0033] When determining the allowable insertion time slots for flight missions based on remaining capacity, the available time slots are determined based on the current mission list and the number of the UAV to be inserted.
[0034] Specifically, the process begins by determining the gaps between assigned flight missions based on the assigned mission time slots in the current task table, and recording this as the initial insertable idle time slot. Then, based on the drone number to be inserted, the preset cooldown interval, the preset buffer time, and the assigned drone numbers in the current task table, the interval time slot is determined. The preset cooldown interval is the minimum safe time interval between two flight missions of the same drone, for example, 30 minutes; the preset buffer time is the buffer time between flight missions of different drones. Finally, subtracting this interval time slot from the initial insertable idle time slot yields the insertable idle time slot.
[0035] If the remaining capacity determines that inserting a flight mission is not permitted, the mission will be postponed to the next available free time slot. For example, if the mission's time slot is 8:20-8:40 and its target time slot is 8:00-9:00, and the remaining capacity in the target time slot of 8:00-9:00 is insufficient to insert the mission, then the system will continue to determine whether the next target time slot is suitable for inserting the mission.
[0036] When it is determined that the flight mission to be inserted cannot be directly inserted based on the time period of the mission to be inserted and the available idle time period, step S140 is executed: perform a minimum offset search based on the mission information to be inserted and the current mission table to determine the target insertion time period.
[0037] After obtaining the available idle time slots, the system checks whether the time slot for the task to be inserted overlaps with the available idle time slots to determine whether direct insertion of the flight task is allowed. If there is an overlap, and it is determined that direct insertion of the flight task is not possible, a minimum offset search is performed based on the task information and the current task table to determine the target insertion time slot.
[0038] Specifically, based on the time period of the task to be inserted and the current task table, an offset search is performed to determine the candidate insertion time period and the candidate scheduled flight task. The candidate scheduled flight task is then adjusted based on the candidate insertion time period and the task information. If a conflict is detected between the adjusted candidate scheduled flight task and other flight tasks, the offset search continues until the adjusted candidate scheduled flight task no longer conflicts with other flight tasks. At this point, the current candidate insertion time period is determined as the target insertion time period. Other flight tasks include all other tasks in the current task table besides the adjusted candidate scheduled flight task and the flight task to be inserted.
[0039] If there is no overlap between the time period for inserting the mission and the available idle time period, the mission to be inserted can be directly inserted into the available idle time period.
[0040] Step S150: Determine the scheduling result of the flight mission to be inserted based on the target insertion time period.
[0041] After determining the target insertion time period based on the minimum offset search strategy, the assigned flight tasks in the current task table corresponding to the target insertion time period are scheduled, and the flight tasks to be inserted are inserted into the current task table according to the target insertion time period to obtain the scheduling result of the flight tasks to be inserted.
[0042] The UAV scheduling method provided by this invention first obtains the current task table and information on tasks to be inserted. The information includes the UAV number, task type, and time slot. Then, based on the current task table, the remaining capacity corresponding to the time slot is obtained to determine whether insertion is allowed from a capacity perspective. This fundamentally avoids scheduling conflicts, security risks, and system performance bottlenecks caused by task overload in UAV clusters. When it is determined that insertion is allowed based on the remaining capacity (i.e., resource capacity permitting), the available idle time slot is determined based on the current task table and the UAV number to be inserted. This further determines whether a new task can be inserted directly without disruption, reducing unnecessary task adjustments and significantly improving scheduling efficiency and resource utilization. When it is determined that a new task cannot be directly inserted, a minimum offset search is performed based on the task information and the current task table to determine the target insertion time slot using a minimum offset strategy. This ensures that the impact of the new task insertion on the existing plan is globally optimal and minimized. Finally, the scheduling result of the inserted flight task is determined based on the target insertion time slot. In this invention, a highly adaptive dynamic scheduling scheme is formed through the progressive and intelligent collaboration of the above three-level decision-making mechanism. This scheme can not only significantly improve the intelligence level and decision-making flexibility of the UAV scheduling method, but also continuously ensure the efficiency, safety and scalability of UAV operations in complex and ever-changing environments, ultimately achieving efficient and safe UAV scheduling under resource constraints.
[0043] Figure 2 This is the second flowchart illustrating the drone scheduling method provided by the present invention, as shown below. Figure 2 As shown, in one embodiment, step S140 may include steps S141, S142 and S143.
[0044] Step S141: Based on the time period of the task to be inserted and the current task table, perform an offset search to determine the candidate insertion time period and the candidate scheduled flight task.
[0045] In this embodiment, an offset search is first performed based on the time period of the task to be inserted and the current task table. The offset search can be performed using either a forward search or a backward search.
[0046] When determining candidate insertion time periods and candidate scheduling flight missions, a forward search can be performed to obtain the candidate mission (denoted as the first candidate mission) with the smallest distance (denoted as t1) between the end time of the assigned mission in the current task table and the start time (denoted as t2) of the task to be inserted. At the same time, a backward search can be performed to obtain the candidate mission (denoted as the second candidate mission) with the smallest distance (denoted as t2) between the start time of the assigned mission in the current task table and the end time (denoted as t2) of the task to be inserted. Then, the candidate mission corresponding to the smaller value between t1 and t2 is selected as the candidate scheduling flight mission.
[0047] Then, the task time slots and UAV numbers of the assigned flight tasks adjacent to the candidate scheduled flight task are obtained to determine the target time interval (denoted as the first target time interval). It should be understood that if searching forward, the next assigned flight task after the candidate scheduled flight task is obtained as the adjacent assigned flight task; if searching backward, the previous assigned flight task before the candidate scheduled flight task is obtained as the adjacent assigned flight task. If the numbers match, the first target time interval is determined as a preset cooling time interval. If the numbers do not match, the first target time interval is determined as a preset buffer time.
[0048] Next, candidate insertion time periods are determined based on the time period of the task to be inserted and the first target time interval.
[0049] Step S142: Adjust the candidate scheduled flight missions according to the candidate insertion time period and the mission information to be inserted.
[0050] Next, the candidate scheduled flight missions are adjusted based on the candidate insertion time period and the mission information to be inserted.
[0051] In one implementation, the UAV codes of candidate scheduled flight missions can be obtained to determine the second target time interval.
[0052] Step S143: When a conflict is detected between the adjusted candidate scheduling flight mission and other flight missions, the offset search continues until there is no conflict between the adjusted candidate scheduling flight mission and other flight missions. Then, the current candidate insertion time period is determined as the target insertion time period.
[0053] The other flight missions include the other missions in the current mission table besides the adjusted candidate scheduling flight missions and the flight missions to be inserted.
[0054] Furthermore, it detects whether the adjusted candidate scheduling flight missions conflict with other flight missions. Conflict detection includes whether there is overlap between mission times and whether they meet the safe time interval.
[0055] If the adjusted candidate scheduling flight mission overlaps with the mission time of at least one other flight mission or does not meet the safe time interval, a conflict is determined. In this case, the offset search continues until the adjusted candidate scheduling flight mission does not conflict with other flight missions, and the current candidate insertion time period is determined as the target insertion time period.
[0056] For example, the assigned flight mission time slots in the current task table are 9:00-9:20, 9:50-10:20, and 10:30-10:40, while the time slot for the mission to be inserted is 10:15-10:20. Based on 10:15, the mission corresponding to the 9:50-10:20 time slot is determined as a candidate scheduling flight mission. Assuming that the drone number for the 10:30-10:40 mission is inconsistent with the drone number to be inserted, the first target time interval is a preset buffer time, such as 5 minutes, and the candidate insertion time slot is determined to be 10:15-10:25. If the drone code for the candidate scheduling flight mission is inconsistent with the drone number to be inserted, the second target time interval is a preset buffer time, such as 5 minutes. In this case, the mission time slot of the candidate insertion time slot is adjusted to 9:40-10:10. If the drone number of the candidate scheduled flight mission is the same as the drone number of the 9:00-9:20 mission, a conflict exists because the time interval between the two (20 minutes) is less than the preset cooldown time interval (e.g., 30 minutes). If the drone number of the candidate scheduled flight mission is different from the drone number of the 9:00-9:20 mission, a conflict exists because the time interval between the two (20 minutes) is less than the preset buffer time (e.g., 5 minutes).
[0057] If the adjusted candidate scheduling flight mission overlaps with the mission times of other flight missions and all meet the safe time interval, then it is determined that there is no conflict. In this case, the search is stopped, and the candidate insertion time period is determined as the target insertion time period.
[0058] In this embodiment, the target insertion time period is determined by the above-mentioned minimum offset strategy, which ensures that the impact of the new task insertion on the existing plan is globally optimal and minimized.
[0059] In one embodiment, after the above step "perform minimum offset search based on the task information to be inserted and the current task table", the method further includes steps S160, S171 and S172.
[0060] If the target insertion time period is not determined, proceed to step S160: based on the task to be inserted time period and the current task table, obtain the conflicting flight task and its first priority.
[0061] If the target insertion time period cannot be determined according to the minimum offset search strategy, a high-priority squeezing strategy can be further executed.
[0062] Specifically, based on the time period of the task to be inserted and the current task table, the conflicting flight task and its corresponding priority are obtained. To distinguish it from the priority of the flight task to be inserted, it is recorded as the first priority.
[0063] As one implementation method, when acquiring conflicting flight missions, flight missions that overlap with the time period of the mission to be inserted can be retrieved from the current mission table and recorded as conflicting missions.
[0064] As one implementation method, the first priority can be determined based on the mission type of the conflicting flight mission and the preset mapping relationship between mission type and priority.
[0065] For example, the task type may include emergency tasks, manned tasks, logistics tasks, inspection tasks, training tasks, and others, with priorities set from 1 to 6, where a smaller value indicates a higher priority.
[0066] When it is detected that the first priority is lower than the second priority corresponding to the flight task to be inserted, step S171 is executed: insert the flight task to be inserted according to the time period of the task to be inserted, and schedule the conflicting flight task to other idle time periods other than the time period of the task to be inserted.
[0067] When a flight task with the highest priority is detected to be lower than the priority of the task to be inserted (denoted as the second priority), i.e., the task to be inserted has a higher priority, the higher-priority task (i.e., the flight task to be inserted) is inserted according to the time slot of the task to be inserted, and the lower-priority conflicting flight tasks are scheduled to other idle time slots other than the time slot of the task to be inserted. As one implementation method, the lower-priority conflicting flight tasks can be postponed to the next available idle time slot.
[0068] If the first priority is detected to be higher than or equal to the second priority, then step S172 is executed: the flight mission to be inserted is scheduled to the other idle time period.
[0069] If the first priority is detected to be higher than or equal to the second priority corresponding to the flight mission to be inserted, the flight mission to be inserted will be directly scheduled to another idle time slot. As one implementation method, the flight mission to be inserted can be postponed to the next available idle time slot.
[0070] In this embodiment, by comparing the priorities of the flight task to be inserted and its conflicting flight tasks (i.e., conflicting flight tasks), if the priority of the flight task to be inserted is higher, then the flight task to be inserted is directly inserted, and the low-priority conflicting flight tasks are scheduled to other idle time slots, thereby ensuring the "zero-latency" execution of high-priority tasks and significantly improving the responsiveness and support level for critical tasks. Furthermore, this high-priority squeezing strategy, which uses priority as a decision factor, is based on the aforementioned three-level decision-making mechanism. Through deep collaboration, it can elevate the intelligence, adaptability, and business support capabilities of UAV dynamic scheduling to a new level.
[0071] Figure 3This is one of the flowcharts illustrating the drone scheduling method provided by the present invention, such as... Figure 3 As shown, step S120 may include steps S121, S122 and S123.
[0072] Step S121: Based on the current task table, obtain the already inserted capacity corresponding to the time period of the task to be inserted.
[0073] In this embodiment, the flight timeline can be divided into fixed-granularity time periods, such as one time period per hour. The corresponding target time period, denoted as T, is determined based on the time period of the task to be inserted. i Then, from the current task table, obtain the inserted capacity for the target time period, denoted as N. i .
[0074] As one implementation method, when determining the target time period, it can be determined based on the start time of the time period to be inserted. Specifically, the target time period corresponding to the start time is determined according to the preset time period division.
[0075] For example, if the time period for inserting a task is 9:20-9:40, the target time period can be determined as 9:00-10:00 based on the start time of the task to be inserted, 9:20. Then, the number of flight tasks taking off between 9:00 and 10:00 in the current task table is counted.
[0076] As one implementation, the inserted capacity can be characterized by the number of assigned flight missions.
[0077] Step S122: Obtain the total capacity corresponding to the time period of the task to be inserted.
[0078] Specifically, the target time period T can be determined based on the time period of the task to be inserted. i Then, retrieve the target time period T from the current task table. i The corresponding total capacity is denoted as P. i .
[0079] As one implementation method, the flight path length and the safe distance of the UAV can be obtained according to the type of task to be inserted, and then the flight path length and the preset safe distance of the UAV can be divided to obtain the total capacity.
[0080] As another implementation method, historical flight mission data can be obtained, and a target time period can be determined based on the time period of the mission to be inserted. The historical flight mission data can be statistically analyzed based on the target time period to obtain the historical average number of flight missions corresponding to the target time period, which is used as the total capacity.
[0081] As another implementation method, historical flight mission data, meteorological data, and flight flow data can be acquired, and a target time period can be determined based on the time period of the mission to be inserted. The historical flight mission data can be statistically analyzed based on the target time period to obtain the historical average number of flight missions corresponding to the target time period. The capacity can be predicted based on the meteorological data and flight flow data using a capacity prediction model to obtain the model predicted capacity corresponding to the target time period. The historical average number of flight missions and the model predicted capacity can be weighted and summed to obtain the total capacity corresponding to the time period of the mission to be inserted.
[0082] It should be noted that the execution order of steps S121 and S122 is not important.
[0083] Step S123: Subtract the total capacity from the inserted capacity to obtain the remaining capacity.
[0084] Subtracting the inserted capacity from the total capacity yields the remaining capacity, denoted as Δ. i That is, Δ i =P i -T i。
[0085] In this embodiment, the remaining capacity is calculated based on the total capacity and the already inserted capacity, so that subsequent decisions on whether to allow insertion can be made based on the remaining capacity. This capacity-based decision-making mechanism can fundamentally avoid scheduling conflicts, security risks, and system performance bottlenecks caused by task overload in drone swarms, significantly improve the security of drone scheduling schemes, and lay a reliable foundation for large-scale drone collaborative operations.
[0086] In one embodiment, step S122 may include steps S1221 and S1222.
[0087] Step S1221: Obtain the flight path length and UAV safe distance according to the type of task to be inserted; Step S1222: Perform a division operation on the route length and the UAV safety distance to obtain the total capacity.
[0088] In this embodiment, the maximum capacity can be used to characterize the total capacity.
[0089] The process for determining the maximum capacity is as follows: Based on the type of task to be inserted, obtain the flight path length and the safe distance between drones. The flight path length is the length of the flight path corresponding to the task to be inserted, and the safe distance between drones is the safe distance between two drones when executing this type of task. Then, perform a division operation on the flight path length and the preset safe distance between drones to obtain the total capacity.
[0090] In this embodiment, the maximum number of flight missions that can be accommodated by calculating the maximum capacity is used as the total capacity for subsequent calculation of the remaining capacity.
[0091] In one embodiment, step S122 may further include: step S1223, step S1224, step S1225 and step S1226.
[0092] Step S1223: Obtain historical flight mission data, meteorological data, and flight flow data, and determine the target time period based on the time period of the mission to be inserted.
[0093] In this embodiment, considering the influence of weather factors, flight density, and other factors, it is actually impossible to schedule UAV flight missions according to the maximum accommodating capacity. Furthermore, considering the reference value of historical flight data, this embodiment combines historical flight data, meteorological data, and flight flow data to predict the actual accommodating capacity as the total capacity. This further improves the accuracy of the remaining capacity assessment results, further avoids scheduling conflicts, safety hazards, and system performance bottlenecks caused by UAV swarm overload, and enhances the safety of the UAV scheduling scheme.
[0094] Here, historical flight mission data refers to flight mission data within a past period (such as one month, six months, etc.). Meteorological data can be the weather data for the current day or the weather data for the target time period, including but not limited to: weather phenomena, temperature, humidity, wind speed, wind direction, and visibility. Flight flow data is the number of drones executed within a preset time period (such as the current hourly segment or the past hourly segment). For example, if the initiation time of the task to be inserted is 9:20, the number of drones executed during the period from 9:00 to 9:20 can be obtained, assuming it is 20. If the preset time period is 1 hour (i.e., 60 minutes), the corresponding flight flow is 20 / (20 / 60) = 60. For example, if the initiation time of the task to be inserted is 9:20, and the preset time period is 1 hour, the number of drones executed during the period from 8:00 to 9:00 can be obtained, assuming it is 50, the corresponding flight flow is 50.
[0095] When determining the target time period, it can be determined based on the start time of the time period to be inserted. Specifically, the target time period corresponding to the start time is determined according to the preset time period division.
[0096] Step S1224: Statistically analyze the historical flight mission data according to the target time period to obtain the historical average number of flight missions corresponding to the target time period.
[0097] The historical flight mission data is statistically analyzed based on the target time period to obtain the total number of historical flight missions corresponding to the target time period. Then, a division operation is performed based on the total number of historical flight missions and the number of days corresponding to the historical flight mission data to obtain the historical average number of flight missions for the target time period.
[0098] Step S1225: Using a capacity prediction model, based on the meteorological data and the flight flow data, the capacity is predicted to obtain the model-predicted capacity corresponding to the target time period.
[0099] Here, the capacity prediction model can use a linear prediction algorithm, which can prioritize computing speed and real-time response capability, with low resource consumption. It is suitable for the drone scheduling scenario in this embodiment where the prediction accuracy requirement is moderate but the timeliness requirement is extremely high.
[0100] The capacity prediction model can be trained based on sample meteorological data, sample flight flow data, and sample capacity data.
[0101] Meteorological data and flight flow data are input into the capacity prediction model to predict the capacity and obtain the predicted capacity corresponding to the target time period, which is denoted as the model predicted capacity.
[0102] Step S1226: The historical average number of flight missions and the model predicted capacity are weighted and summed to obtain the total capacity corresponding to the time period of the mission to be inserted.
[0103] Substitute the historical average number of flight missions and the model-predicted capacity into the following formula, perform a weighted sum, and obtain the total capacity corresponding to the time period for which the mission to be inserted will be inserted.
[0104] ; Among them, P i For total capacity, For the target time period T i The historical average number of flight missions The model's prediction capacity is α, which is a preset weighting coefficient, where 0 < α < 1.
[0105] In this embodiment, historical flight data, meteorological data, and flight flow data are combined to predict the actual accommodating capacity as the total capacity, which is then used to calculate the remaining capacity. This can further improve the accuracy of the remaining capacity assessment results, avoid scheduling conflicts, safety hazards, and system performance bottlenecks caused by drone swarms being overloaded, and enhance the safety of the drone scheduling scheme.
[0106] For example, suppose the current task table includes the assigned drone flight tasks shown in Table 1 below.
[0107] Table 1 Current Tasks
[0108] At this point, the tasks to be inserted should be listed in Table 2 below, which includes information about the tasks to be inserted.
[0109] Table 2 Tasks to be Inserted
[0110] Based on the scheduling strategy of this invention, for task 4 to be inserted, since there is no flight task in the current task table for the period of 7:00-8:00, and there is remaining capacity in this period, task 4 can be inserted into the current task table for the period of 7:20-7:40.
[0111] For Task 5 to be inserted, assuming there is remaining capacity during the 8:00-9:00 time period, the available idle time periods for insertion are further determined, including 8:20-8:30 and 8:55-9:00. Since neither of these two available idle time periods can be directly inserted, the target insertion time period is further determined using the minimum offset search strategy. However, this strategy cannot confirm the target insertion time period. Therefore, a high-priority squeezing strategy is adopted. Since the priority of Task 5 logistics is 3, while the priority of its conflicting task (Task 2) inspection is 4, Task 5 has a higher priority. Therefore, Task 5 is directly inserted into the current task table from 8:50-9:10, while Task 3 is scheduled to the next available idle time period. Considering the preset buffer time between different drones, the next available idle time period can be determined as 9:35-10:00. The resulting task table after scheduling is shown in Table 3 below.
[0112] Table 3. Scheduled Task List
[0113] The UAV scheduling system provided by the present invention is described below. The UAV scheduling system described below can be referred to in correspondence with the UAV scheduling method described above.
[0114] Figure 4 This is a schematic diagram of the unmanned aerial vehicle (UAV) scheduling system provided by the present invention, as shown below. Figure 4 As shown, the device includes a first acquisition module 410, a second acquisition module 420, a first determination module 430, a second determination module 440, and a task scheduling module 450; wherein: The first acquisition module 410 is used to acquire the current task table and the task information to be inserted; wherein, the task information to be inserted includes the drone number to be inserted, the task type to be inserted, and the time period of the task to be inserted; The second acquisition module 420 is used to acquire the remaining capacity corresponding to the time period of the task to be inserted based on the current task table. The first determining module 430 is used to determine the available idle time period based on the current task table and the number of the UAV to be inserted when determining that the insertion of the flight task is allowed based on the remaining capacity; The second determining module 440 is used to determine the target insertion time period by performing a minimum offset search based on the task to be inserted information and the current task table when it is determined that the flight task to be inserted cannot be directly inserted based on the task time period to be inserted and the available idle time period to be inserted. The task scheduling module 450 is used to determine the scheduling result of the flight task to be inserted based on the target insertion time period.
[0115] The UAV scheduling system provided by this invention first obtains the current task table and information on tasks to be inserted. The information includes the UAV number, task type, and time slot. Then, based on the current task table, it obtains the remaining capacity corresponding to the time slot to determine whether insertion is allowed from a capacity perspective. This fundamentally avoids scheduling conflicts, safety hazards, and system performance bottlenecks caused by task overload in UAV clusters. When it is determined that insertion is allowed based on the remaining capacity (i.e., resource capacity permitting), the system further determines available idle time slots based on the current task table and the UAV number to be inserted. This further determines whether a new task can be inserted directly without disruption, reducing unnecessary task adjustments and significantly improving scheduling efficiency and resource utilization. When it is determined that a new task cannot be directly inserted, a minimum offset search is performed based on the task information and the current task table to determine the target insertion time slot using a minimum offset strategy. This ensures that the impact of the new task insertion on the existing plan is globally optimal and minimized. Finally, the scheduling result of the inserted flight task is determined based on the target insertion time slot. In this invention, a highly adaptive dynamic scheduling system is formed through the progressive and intelligent collaboration of the above three-level decision-making mechanism. This system can not only significantly improve the intelligence level and decision-making flexibility of the UAV scheduling system, but also continuously ensure the efficiency, safety and scalability of UAV operations in complex and ever-changing environments, ultimately achieving efficient and safe UAV scheduling under resource constraints.
[0116] It should be noted that the UAV scheduling system provided in this embodiment of the invention can implement all the method steps implemented in the above UAV scheduling method embodiment and can achieve the same technical effect. Here, the parts that are the same as those in the method embodiment and the beneficial effects will not be described in detail.
[0117] Figure 5 An example is a schematic diagram of the physical structure of an electronic device, such as... Figure 5As shown, the electronic device may include: a processor 510, a communications interface 520, a memory 530, and a communication bus 540, wherein the processor 510, the communications interface 520, and the memory 530 communicate with each other via the communication bus 540. The processor 510 can call logical instructions in the memory 530 to execute a UAV scheduling method, which includes: Obtain the current task table and the task information to be inserted; wherein, the task information to be inserted includes the drone number to be inserted, the task type to be inserted, and the time period of the task to be inserted; Based on the current task table, obtain the remaining capacity corresponding to the time period of the task to be inserted; When determining the allowable insertion of flight missions based on the remaining capacity, the available idle time slots are determined based on the current mission list and the number of the UAV to be inserted; When it is determined that the flight mission to be inserted cannot be directly inserted based on the time period of the mission to be inserted and the available idle time period, a minimum offset search is performed based on the mission information to be inserted and the current mission table to determine the target insertion time period; Based on the target insertion time period, the scheduling result of the flight mission to be inserted is determined.
[0118] Furthermore, the logical instructions in the aforementioned memory 530 can be implemented as software functional units and, when sold or used as independent products, can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present invention, or the part that contributes to the prior art, or a part of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods described in the various embodiments of the present invention. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.
[0119] On the other hand, the present invention also provides a computer program product, the computer program product comprising a computer program that can be stored on a non-transitory computer-readable storage medium, wherein when the computer program is executed by a processor, the computer is able to execute the UAV scheduling method provided by the above methods, the method comprising: Obtain the current task table and the task information to be inserted; wherein, the task information to be inserted includes the drone number to be inserted, the task type to be inserted, and the time period of the task to be inserted; Based on the current task table, obtain the remaining capacity corresponding to the time period of the task to be inserted; When determining the allowable insertion of flight missions based on the remaining capacity, the available idle time slots are determined based on the current mission list and the number of the UAV to be inserted; When it is determined that the flight mission to be inserted cannot be directly inserted based on the time period of the mission to be inserted and the available idle time period, a minimum offset search is performed based on the mission information to be inserted and the current mission table to determine the target insertion time period; Based on the target insertion time period, the scheduling result of the flight mission to be inserted is determined.
[0120] In another aspect, the present invention also provides a non-transitory computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, is implemented to perform the UAV scheduling method provided by the above methods, the method comprising: Obtain the current task table and the task information to be inserted; wherein, the task information to be inserted includes the drone number to be inserted, the task type to be inserted, and the time period of the task to be inserted; Based on the current task table, obtain the remaining capacity corresponding to the time period of the task to be inserted; When determining the allowable insertion of flight missions based on the remaining capacity, the available idle time slots are determined based on the current mission list and the number of the UAV to be inserted; When it is determined that the flight mission to be inserted cannot be directly inserted based on the time period of the mission to be inserted and the available idle time period, a minimum offset search is performed based on the mission information to be inserted and the current mission table to determine the target insertion time period; Based on the target insertion time period, the scheduling result of the flight mission to be inserted is determined.
[0121] The device embodiments described above are merely illustrative. The units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the modules can be selected to achieve the purpose of this embodiment according to actual needs. Those skilled in the art can understand and implement this without any creative effort.
[0122] Through the above description of the embodiments, those skilled in the art can clearly understand that each embodiment can be implemented by means of software plus necessary general-purpose hardware platforms, and of course, it can also be implemented by hardware. Based on this understanding, the above technical solutions, in essence or the part that contributes to the prior art, can be embodied in the form of a software product. This computer software product can be stored in a computer-readable storage medium, such as ROM / RAM, magnetic disk, optical disk, etc., and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute the methods described in the various embodiments or some parts of the embodiments.
[0123] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention, and not to limit them; although the present invention has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that modifications can still be made to the technical solutions described in the foregoing embodiments, or equivalent substitutions can be made to some of the technical features; and these modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the spirit and scope of the technical solutions of the embodiments of the present invention.
Claims
1. A method for scheduling unmanned aerial vehicles (UAVs), characterized in that, include: Obtain the current task table and the task information to be inserted; wherein, the task information to be inserted includes the drone number to be inserted, the task type to be inserted, and the time period of the task to be inserted; Based on the current task table, obtain the remaining capacity corresponding to the time period of the task to be inserted; When determining the allowable insertion of flight missions based on the remaining capacity, the available idle time slots are determined based on the current mission list and the number of the UAV to be inserted; When it is determined that the flight mission to be inserted cannot be directly inserted based on the time period of the mission to be inserted and the available idle time period, a minimum offset search is performed based on the mission information to be inserted and the current mission table to determine the target insertion time period; Based on the target insertion time period, the scheduling result of the flight mission to be inserted is determined.
2. The UAV scheduling method according to claim 1, characterized in that, The step of performing a minimum offset search based on the task information to be inserted and the current task table to determine the target insertion time period includes: Based on the time period of the task to be inserted and the current task table, an offset search is performed to determine the candidate insertion time period and the candidate scheduled flight task; The candidate scheduled flight missions are adjusted based on the candidate insertion time period and the mission information to be inserted. When a conflict is detected between the adjusted candidate scheduling flight mission and other flight missions, the offset search continues until there is no conflict between the adjusted candidate scheduling flight mission and other flight missions. At this point, the current candidate insertion period is determined as the target insertion period. The other flight missions include other missions in the current mission table besides the adjusted candidate scheduling flight mission and the flight mission to be inserted.
3. The UAV scheduling method according to claim 1, characterized in that, After performing a minimum offset search based on the task information to be inserted and the current task table, the process further includes: If the target insertion time period is not determined, obtain the conflicting flight mission and its first priority based on the task to be inserted time period and the current task table; When it is detected that the first priority is lower than the second priority corresponding to the flight task to be inserted, the flight task to be inserted is inserted according to the time period of the task to be inserted, and the conflicting flight task is scheduled to other idle time periods other than the time period of the task to be inserted. If the first priority is detected to be higher than or equal to the second priority, the flight mission to be inserted will be scheduled to the other idle time slot.
4. The UAV scheduling method according to any one of claims 1 to 3, characterized in that, The step of obtaining the remaining capacity corresponding to the time period of the task to be inserted based on the current task table includes: Based on the current task table, obtain the already inserted capacity corresponding to the time period of the task to be inserted; Obtain the total capacity corresponding to the time period of the task to be inserted; The remaining capacity is obtained by subtracting the total capacity from the already inserted capacity.
5. The UAV scheduling method according to claim 4, characterized in that, The step of obtaining the total capacity corresponding to the time period of the task to be inserted includes: Based on the type of task to be inserted, obtain the flight path length and the safe distance of the UAV; The total capacity is obtained by dividing the flight path length and the safe distance of the UAV.
6. The UAV scheduling method according to claim 4, characterized in that, The step of obtaining the total capacity corresponding to the time period of the task to be inserted includes: Acquire historical flight mission data, meteorological data, and flight flow data, and determine the target time period based on the time period of the mission to be inserted; The historical flight mission data is statistically analyzed based on the target time period to obtain the historical average number of flight missions corresponding to the target time period; The capacity is predicted based on the meteorological data and the flight flow data using a capacity prediction model, and the model-predicted capacity for the target time period is obtained. The total capacity corresponding to the time period of the mission to be inserted is obtained by weighted summing of the historical average number of flight missions and the model predicted capacity.
7. A drone dispatching system, characterized in that, include: The first acquisition module is used to acquire the current task table and the task information to be inserted; wherein, the task information to be inserted includes the drone number to be inserted, the task type to be inserted, and the time period of the task to be inserted; The second acquisition module is used to acquire the remaining capacity corresponding to the time period of the task to be inserted based on the current task table. The first determining module is used to determine the available idle time period for insertion based on the current task table and the number of the UAV to be inserted when determining that the insertion of the flight task is allowed based on the remaining capacity; The second determining module is used to determine the target insertion time period by performing a minimum offset search based on the task to be inserted information and the current task table when it is determined that the flight task to be inserted cannot be directly inserted based on the task time period to be inserted and the available idle time period to be inserted. The task scheduling module is used to determine the scheduling result of the flight task to be inserted based on the target insertion time period.
8. An electronic device comprising a memory, a processor, and a computer program stored in the memory and running on the processor, characterized in that, When the processor executes the computer program, it implements the UAV scheduling method as described in any one of claims 1 to 6.
9. A non-transitory computer-readable storage medium having a computer program stored thereon, characterized in that, When the computer program is executed by the processor, it implements the UAV scheduling method as described in any one of claims 1 to 6.
10. A computer program product, comprising a computer program, characterized in that, When the computer program is executed by the processor, it implements the UAV scheduling method as described in any one of claims 1 to 6.
Citation Information
Patent Citations
Unmanned aerial vehicle intelligent remote management method and system based on smart city, and cloud platform
CN113869598A
Unmanned aerial vehicle scheduling method, device and system and computer readable storage medium
CN114019994A
Unmanned aerial vehicle cluster autonomous cooperative reconnaissance time resource distributed allocation method and system
CN114859979A
Target search method and device based on target prediction
CN115825904A
Real-time task scheduling method for solving the state of priority reversed
KR1019990050550A
Cited By
Unmanned aerial vehicle task scheduling method and device, electronic equipment, medium and product
CN121397759A
Rapid arrangement and insertion method for newly added tasks of unmanned aerial vehicle
CN122066194A