Unmanned aerial vehicle cluster scheduling system and method based on multi-target dynamic optimization

By dividing the UAV swarm scheduling system into a scheduling layer, an optimization layer, and an execution layer, and by adopting a multi-objective dynamic optimization strategy, the problems of versatility and flexibility of the existing system in complex task scenarios are solved, and efficient and real-time scheduling optimization is achieved.

CN120949792APending Publication Date: 2025-11-14HANGZHOU DIANZI UNIV
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202511018442.3
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-07-23
Publication Date
2025-11-14

AI Technical Summary

Technical Problem

Existing UAV swarm scheduling systems lack versatility and flexibility when facing various complex task scenarios. They have high computational complexity, making it difficult to achieve fast and effective task convergence. Furthermore, the scheduling system is highly coupled with the execution layer and lacks flexible and efficient feedback and adjustment mechanisms.

Method used

The system architecture is divided into a scheduling layer, an optimization layer, and an execution layer. A multi-objective dynamic optimization strategy is introduced, and task auctions are conducted through simulated annealing algorithm and dual-branch strategy. Weights are dynamically adjusted to achieve multi-objective collaborative scheduling, reduce computational complexity, and improve real-time response.

Benefits of technology

It achieves multi-objective dynamic optimization in various complex task scenarios, improves the system's adaptability and practicality, reduces computational overhead, and enhances the real-time response capability of the scheduling system.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120949792A_ABST
    Figure CN120949792A_ABST
Patent Text Reader

Abstract

The invention discloses an unmanned aerial vehicle cluster scheduling system and method based on multi-target dynamic optimization. The cluster scheduling system comprises a scheduling layer, an optimization layer and an execution layer. And the scheduling layer performs task scheduling according to the optimization result of the optimization layer, receives the monitoring data returned by the execution layer, and determines that the task is completed or a secondary auction is started. And the execution layer adds a to-be-executed task into a task queue of the unmanned aerial vehicles according to a scheduling result of the scheduling layer, and monitors a task execution result and the state of each unmanned aerial vehicle. The optimization layer defines an optimization target set for a given task and performs task auction according to the monitoring data returned by the execution layer, each unmanned aerial vehicle gives an optimization scheme by taking the maximization of the comprehensive score of a cluster as a target and fusing a double-branch strategy based on a simulated annealing algorithm, and finally, the scheme with the highest total score is transmitted to the scheduling layer. And determining the unmanned aerial vehicle winning auction. According to the invention, the system structure is decoupled, the calculation overhead is reduced, and the real-time response capability is improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention belongs to the field of automation control technology and relates to a distributed scheduling optimization method for swarms, specifically a UAV swarm scheduling system and method based on multi-objective dynamic optimization. Background Technology

[0002] In practical applications, the high diversity of task scenarios makes it difficult to unify the scheduling optimization objectives of distributed clusters. Existing scheduling strategies lack universality, struggle to adapt to complex heterogeneous task requirements, and generally neglect the balancing optimization between multiple performance indicators, easily leading to the problem of optimal performance for a single indicator but a decline in overall system performance. Existing scheduling algorithms are computationally complex and have poor real-time performance, especially when facing large-scale tasks and heterogeneous UAV swarms, making it difficult to achieve fast and effective task convergence under limited computing resources. Furthermore, the scheduling mechanism of existing scheduling systems is highly coupled with the execution layer, lacking flexible and efficient feedback and adjustment mechanisms when encountering problems such as task failures, path conflicts, or state uncertainties.

[0003] Existing technology 1 (CN119850075A) discloses a fuzzy mathematical programming particle swarm optimization algorithm for drone delivery center location selection. This method involves detailed modeling and characterization of the multi-drone delivery center location problem in a park, considering complex constraints such as drone payload and endurance, energy consumption, and no-fly zone distribution. It utilizes fuzzy mathematical programming to reduce delivery time and operating cost objectives, providing an efficient and accurate drone delivery center location solution. However, this method optimizes specific objectives for a particular scenario, exhibiting strong scenario limitations and poor universality, making it difficult to port to other application scenarios. Furthermore, the scheduling system is highly coupled with path planning, resulting in high complexity.

[0004] Prior art 2 (CN117111635A) discloses a drone swarm management system and its control method. Through mechanisms such as task division, task allocation decision and dynamic adjustment, it can flexibly adjust the task allocation and path planning strategy of the drone swarm according to different task requirements and environmental changes. It can also cope with communication failures and partial drone failures, and can adapt to different complex and diverse task scenarios, thus improving service availability to a certain extent. However, in the task allocation process, it only considers whether the resources are matched, without considering the problem of cluster load balancing, and adopts a greedy scheduling mechanism, which lacks scheduling optimization.

[0005] In summary, existing research on distributed UAV swarm scheduling focuses on dedicated environments with a single optimization objective. This makes it difficult to adapt to multi-objective dynamic optimization in various complex task scenarios, and it is also difficult to port a single system to different environments. Furthermore, the development costs are high, and the industrial usability is weak. Summary of the Invention

[0006] To address the shortcomings of existing technologies, this invention proposes a UAV swarm scheduling system and method based on multi-objective dynamic optimization. The system architecture is divided into a scheduling layer, an optimization layer, and an execution layer, which effectively reduces computational complexity and improves real-time response. At the same time, based on a dynamic weight strategy with a fixed primary objective and adaptive adjustments to secondary objectives, it breaks through the limitations of traditional single-objective orientation, realizes multi-objective dynamic optimization for various complex task scenarios, and has very good universality.

[0007] A multi-objective dynamic optimization-based UAV swarm scheduling system includes a scheduling layer, an optimization layer, and an execution layer.

[0008] The scheduling layer schedules tasks based on the optimization results of the optimization layer and receives monitoring data returned by the execution layer. When a task is completed, the task status ends, and the system returns to the optimization layer for a new task auction. If a task execution error occurs, the system returns to the optimization layer to initiate a second auction.

[0009] The execution layer adds the tasks to be executed to the UAV's task queue according to the scheduling result of the scheduling layer, monitors the task execution results and the status of each UAV, and returns the monitoring data to the scheduling layer and the optimization layer.

[0010] The optimization layer defines a set of optimization objectives based on the given task. Based on the monitoring data returned by the execution layer, a task auction is conducted. Specifically, the optimization algorithm parameters are initialized, and the initial weighted sum of the total scores of each drone in the cluster for the given task is calculated. Each drone in the cluster publishes its initial weighted sum of total scores to a commonly subscribed topic. Each drone then aims to maximize the overall score of the cluster, providing an optimization scheme based on simulated annealing combined with a dual-branch strategy. Finally, the scheme with the highest total score is transmitted to the scheduling layer to determine the winning drone in the auction.

[0011] A method for scheduling UAV swarms based on multi-objective dynamic optimization, which realizes UAV swarm scheduling under multi-objective constraints based on the above system, specifically includes the following steps: Step 1: Distributed UAV swarm collaborative startup An initial coordinator is selected, which responds to the global START command, broadcasts survival information to other drones in the cluster via a heartbeat topic, sends a PREPARE request, waits for all other drones in the cluster to respond READY, and sends SYNC_START after timeout or when all drones respond, triggering the task auction.

[0012] Step 2: Optimization layer initialization definition s2.1. For a given task, define the optimization objective set G = { , , , },in, Indicates the shortest flight time. Indicates the shortest flight distance. This indicates minimal power consumption. This indicates the most balanced load.

[0013] s2.2, For the j-th drone U in the cluster j Define its multidimensional score vector for a given task. =[ , , , ], ∈[0,1], representing the unmanned aerial vehicle U j The i-th target The standardized scores on the scale, i=1,2,3,4.

[0014] s2.3, Introducing the target weighted vector =[ , , , ],and Initialize weights Calculate UAV U j initial total score weighted sum As a score for participating in the task auction: s2.4 Define the parameters in the dynamic optimization algorithm, including the weight learning rate η, the penalty intensity coefficient λ, the convergence threshold ϵ, and the maximum number of iterations. And the minimum threshold θ for weights.

[0015] Step 3: Cluster Data Synchronization During the initial task auction, all drones in cluster M will submit their respective multidimensional score vectors. Weighted sum of total score Publish to a topic, and obtain the scores of the other drones participating in this task auction by subscribing to the topic, thus achieving cluster data synchronization.

[0016] After the initial task auction is completed, drones performing the same task form a small cluster. During subsequent branch task auctions, the drones within the cluster will submit their respective multidimensional score vectors. Weighted sum of total score Publish to a dedicated topic in the small cluster.

[0017] Step 4: Dynamic Optimization Weight vectors are generated based on feedback data from the execution layer and monitoring results of the system status. The specific steps for dynamic adjustment and optimization are as follows: s4.1 Set the system optimization objective to find a set of optimal weights. Maximize the cluster's overall score: Set the constraints as follows: in, It is a candidate cluster. Indicates the j-th drone U j Available resource vector, This represents the sensor vectors required for the task. is a positive integer not less than 1, representing the number of drones required for the mission. n represents the initial number of candidate drones. >1 is a real number, representing the proportion of candidate drones. This represents a subset of the primary optimization objective. t is an integer representing the number of iterations. This indicates the maximum number of iterations required for optimization.

[0018] s4.2, Based on the multidimensional score vectors of each drone in the topic Weighted sum of total score And the main optimization objective of this operation. Candidate cluster C is obtained through preliminary screening using Pareto optimality theory.

[0019] s4.3. Based on the simulated annealing algorithm and the dual-branch strategy, each UAV in the candidate cluster C is evaluated according to the multidimensional score vector of other UAVs obtained in step 3. Perform iterations to optimize the weight vector. The optimization results will then be published in the topic.

[0020] At the start of the optimization, initialize two countdown timers. , ,and The drones in candidate cluster C start a countdown timer based on the publication timestamp of the first optimization result in the topic. , During the countdown timer Before the countdown ends, each drone will publish its converged optimization results to the topic, during the countdown timer. When the countdown ends, output the optimal weight obtained in the current iteration. , And the corresponding drones are grouped into the topic.

[0021] Step 5: Cluster Distributed Scheduling Scheduling is performed based on the optimization results from step 4, using the countdown timer. If there are other drones in the topic before the countdown ends... The published total score Larger than drones Total score obtained Then the drone The optimization results are updated for drones. The results were published. (Countdown timer) When the countdown ends, the drones in candidate cluster C are scheduled according to the optimization results and the status feedback is monitored. If an execution exception occurs, it returns to s4.3 for a second auction.

[0022] Step 6: Task Execution and Status Feedback Based on the scheduling results from step 5, each drone in the cluster adds its tasks to the corresponding queue. Each drone executes the tasks in the queue sequentially or returns to step 2 to participate in a new task auction. Each drone reports monitoring results on an ms cycle based on the actual execution status of the tasks and dynamic resource monitoring, thus achieving scheduling and optimization.

[0023] The present invention has the following beneficial effects: 1. Based on the unified task requirement representation, scenario target representation, and scheduling interface standard, it ensures not only the successful execution of tasks under distributed UAV scheduling, but also allows users to specify targets / unique requirements to achieve dynamic optimization during the execution process.

[0024] 2. Breaking away from the single optimization objective of traditional methods, it enables multi-objective optimized collaborative scheduling, greatly improving the adaptability of the scheduling system. A self-learning mechanism is introduced to achieve capability-driven optimal allocation. Furthermore, it comprehensively considers resource scheduling in heterogeneous clusters, enhancing the system's versatility and practicality.

[0025] 3. Divide the system architecture into a scheduling layer, an optimization layer, and an execution layer to decouple the system structure, reduce computational overhead, and improve the real-time response capability of the scheduling system. Attached Figure Description

[0026] Figure 1 This is a diagram illustrating the overall architecture of a drone swarm scheduling system. Figure 2 Flowchart for scheduling and coordinating startup; Figure 3 To optimize the candidate cluster selection process in the layer; Figure 4 The flowchart for iterative optimization of weights in the optimization layer is shown below; Figure 5This is a flowchart of the scheduling process at the scheduling layer. Detailed Implementation

[0027] The present invention will be further explained below with reference to the accompanying drawings; like Figure 1 As shown, a UAV swarm scheduling system based on multi-objective dynamic optimization includes a scheduling layer, an optimization layer, and an execution layer.

[0028] A multi-objective dynamic optimization-based UAV swarm scheduling system includes a scheduling layer, an optimization layer, and an execution layer.

[0029] The scheduling layer schedules tasks based on the optimization results of the optimization layer and receives monitoring data returned by the execution layer. When a task is completed, the task status ends, and the system returns to the optimization layer for a new task auction. If a task execution error occurs, the system returns to the optimization layer to initiate a second auction.

[0030] The execution layer adds the tasks to be executed to the UAV's task queue according to the scheduling result of the scheduling layer, monitors the task execution results and the status of each UAV, and returns the monitoring data to the scheduling layer and the optimization layer.

[0031] The optimization layer defines a set of optimization objectives based on the given task. Based on the monitoring data returned by the execution layer, a task auction is conducted. Specifically, the optimization algorithm parameters are initialized, and the initial weighted sum of the total scores of each drone in the cluster for the given task is calculated. Each drone in the cluster publishes its initial weighted sum of total scores to a commonly subscribed topic. Each drone then aims to maximize the overall score of the cluster, providing an optimization scheme based on simulated annealing combined with a dual-branch strategy. Finally, the scheme with the highest total score is transmitted to the scheduling layer to determine the winning drone in the auction.

[0032] A method for scheduling UAV swarms based on multi-objective dynamic optimization, which realizes UAV swarm scheduling under multi-objective constraints based on the above system, specifically includes the following steps: Step 1: Distributed UAV swarm collaborative startup like Figure 2 As shown, the drone with the smallest ID is selected as the initial coordinator. Every ms, the coordinator broadcasts its survival information, including a timestamp and its own ID, to other drones in the cluster via a heartbeat topic. Considering network latency, if no survival information is received within 1.5 ms, the coordinator is considered to have failed, triggering a coordinator re-election.

[0033] Only the coordinator responds to the global START command, sends a PREPARE request, waits for all other drones in the cluster to respond READY, and sends SYNC_START after timeout or when all drones respond, triggering the task auction.

[0034] Step 2: Optimization layer initialization definition s2.1. For a given task, define the optimization objective set G: G={ , , , } in, Indicates the shortest flight time. Indicates the shortest flight distance. This indicates minimal power consumption. This indicates the most balanced load.

[0035] These four indicators not only cover the main performance dimensions in drone swarm scheduling, but also effectively reflect key factors such as system efficiency, energy consumption, resource utilization, and stability. For example, the shortest delivery time and lowest operating cost involved in prior art 1 can be equivalent to the shortest flight time. and shortest flight distance Therefore, almost all UAV scheduling optimization problems in practical applications can be decomposed and reduced to one or more of these four objectives. The set of optimization objectives G has good versatility and scalability, and can provide a unified optimization framework for diverse scheduling tasks.

[0036] s2.2, For the j-th drone U in the cluster j Define its multidimensional score vector for a given task. : =[ , , , ] in ∈[0,1], representing the unmanned aerial vehicle U j The i-th target The standardized scores on the scale, i=1,2,3,4.

[0037] ① Representing the time score vector: in, U-shaped drone j The planned task execution time, , These represent the longest and shortest planned task execution times for all drones in the cluster, respectively.

[0038] The time score measures the execution time required for a drone to complete a specified task. The shorter the task execution time, the more efficient the drone is, and therefore the higher the score should be. By linearly normalizing the planned task execution time of all candidate drones, the shortest time is scored as 1, the longest time is scored as 0, and the rest are linearly mapped to the median value.

[0039] ② Representing the distance score vector: in, U-shaped drone j The weighted distance, U-shaped drone j The straight-line distance to the target The actual flight distance of the planned path is represented; α∈[0,1] represents the weight of the adjustment path planning result and the deviation factor. Represents the path deviation factor, if This indicates that the planned route is almost direct. This indicates that the planned route requires a significant detour. , These represent the longest weighted distance and the shortest weighted distance among all drones in the cluster, respectively.

[0040] The distance score takes into account both the straight-line distance between the UAV and the target and the actual flight distance. It measures the directness of the path by introducing a path deviation factor and sets a weight factor α for weighted fusion. This ensures that the standardized score reflects the advantage of the shortest path and avoids the adverse effects of large detours caused by complex environments on scheduling.

[0041] ③ Representing the energy score vector: in, U-shaped drone j The consumption ratio This indicates the power required to execute the task. U-shaped drone j The current remaining battery power. , These represent the maximum and minimum consumption ratios of all drones in the cluster, respectively.

[0042] A lower energy consumption ratio indicates that the drone has more energy and is more suitable for the task. Therefore, by calculating the energy consumption ratio of all candidate drones and performing linear normalization, the resulting energy score vector can dynamically reflect the energy status of different drones in the current scheduling round, helping to achieve efficient and energy-saving task allocation.

[0043] ④ Represents the load score vector: re = CPU, GPU, MEM Where re represents the resource type, including CPU resources, GPU resources, and storage resources. U-shaped drone j Load score in resource re. U-shaped drone j The amount of resources used (re) on the resource list. This indicates the estimated resource requirement (re) when executing the task. U-shaped drone j The maximum available amount of resource re. This indicates the average load ratio of all drones in the cluster.

[0044] The load score considers the current resource usage of the drones, as well as the resources required to execute the task and the maximum available system resources. By comparing the actual usage with the average load level, it measures the resource stress of each drone. The final score uses a linear standardization method, assigning higher scores to drones with lower resource pressure, which helps avoid task failures or delays caused by resource bottlenecks during scheduling.

[0045] s2.3, Introducing the target weighted vector : =[ , , , ], Initialize weights Calculate UAV U j initial total score weighted sum As a score for participating in the task auction: s2.4 Define the parameters in the dynamic optimization algorithm, including the weight learning rate η, the penalty intensity coefficient λ, the convergence threshold ϵ, and the maximum number of iterations. And the minimum threshold θ for weights.

[0046] Step 3: Cluster Data Synchronization During the initial task auction, all drones in cluster M will submit their respective multidimensional score vectors. Weighted sum of total score Publish to a topic, and obtain the scores of the other drones participating in this task auction by subscribing to the topic, thus achieving cluster data synchronization.

[0047] After the initial task auction is completed, drones performing the same task form a small cluster. During subsequent branch task auctions, the drones within the cluster will submit their respective multidimensional score vectors. Weighted sum of total score Publish to a dedicated topic in the small cluster.

[0048] Step 4: Dynamic Optimization Weight vectors are generated based on feedback data from the execution layer and monitoring results of the system status. The specific steps for dynamic adjustment and optimization are as follows: s4.1 Set the system optimization objective to find a set of optimal weights. Maximize the cluster's overall score: Set the constraints as follows: in, It is a candidate cluster. Indicates the j-th drone U j Available resource vector, This represents the sensor vectors required for the task. x represents the number of drones required for the mission, where x is a positive integer not less than 1. n represents the initial number of candidate drones. >1 is a real number, representing the proportion of candidate drones. This represents a subset of the primary optimization objective. t is an integer representing the number of iterations. This indicates the maximum number of iterations required for optimization.

[0049] s4.2, such as Figure 3 As shown, based on the multidimensional score vectors of each drone in the topic... Weighted sum of total score And the main optimization objective of this operation. Candidate cluster C is obtained through preliminary screening using Pareto optimality theory: ① When the number of primary optimization objectives is 1, assume = Then, the drones will be selected directly from those participating in the mission auction. The top n drones with the highest scores form candidate cluster C: ② When the number of primary optimization objectives is greater than 1, according to the Pareto non-dominated sorting: where represents satisfying the following domination relationship on all primary objectives: where, and respectively represent the scores of the -th and -th UAVs on the k-th primary optimization objective.

[0050] Let , representing the number of the first front solutions. If r ≥ n, directly select the first n Pareto solutions as the candidate cluster . If r < n, select n - r UAVs with the highest sum of primary objective scores from the subsequent fronts to supplement until the number of UAVs in the candidate cluster C is n.

[0051] s4.3. As Figure 4 shown, based on the simulated annealing algorithm integrating the double-branch strategy, each UAV in the candidate cluster C iterates according to the multi-dimensional score vectors of other UAVs obtained in step 3 to optimize the weight vector , and publish the optimization results to the topic. The specific steps are as follows: s4.3.1. At the beginning of the optimization, initialize two countdown timers and , and . The UAVs in the candidate cluster C start the countdown timers and according to the timestamp of the first optimization result published in the topic.

[0052] s4.3.2. In the t-th iteration, select the UAVs with the top x total score weighted sums from the candidate cluster C, denoted as the set . Calculate the average score of all UAVs in the set on each objective and the total score : s4.3.3. Update and optimize the weights, including the weights with penalty terms and the weights without penalty terms : in, This indicates that for the i-th target in the t-th iteration... The weight.

[0053] This represents the weight learning rate, used to control the adjustment range. It is a positive feedback term; during the iteration process, if the i-th target... An increase in the average score indicates that the objective may be more efficient and its weight should be increased; conversely, a decrease indicates that the objective is currently ineffective and its weight should be reduced. The value of .

[0054] λ is the penalty intensity coefficient, used to control stationarity. It is a weight fluctuation penalty item. During the iteration process, if the weight values ​​obtained from two iterations differ significantly, a certain number of points need to be deducted to avoid oscillations and instability.

[0055] Compare the updated weight values ​​with the minimum weight threshold θ. season ,when season Otherwise, it remains unchanged.

[0056] s4.3.4, Weights obtained from s4.3.3 , Perform normalization, then update the scores for each drone with and without penalties: when At that time, with As the weight update result of round t ;when At that time, the probability is calculated according to the Metropolis criterion. : when At that time, then As the weight update result of round t Otherwise As the weight update result of round t . This is the set reception probability threshold.

[0057] s4.3.5 Calculate the weights Next set Total score of all drones : use , Record the weight vector with the highest score and the corresponding maximum total score during the iteration process. ,make And let .

[0058] s4.3.6, in the countdown timer Before the countdown ends: If t < Calculate score changes : When the sum of scores over N consecutive iterations is less than the convergence threshold ,Right now If the result is positive, then the optimization is considered to have converged, and the optimization result is output. , , If the topic is not specified, then let t = t + 1 and calculate the weighted sum of the total scores of all drones in candidate cluster C. And return s4.3.2.

[0059] countdown timer When the countdown ends, or t= When, output , And the corresponding drones are grouped into the topic.

[0060] Step 5: Cluster Distributed Scheduling Scheduling is performed based on the optimization results from step 4, using the countdown timer. If there are other drones in the topic before the countdown ends... The published total score Larger than drones Total score obtained Then the drone The optimization results are updated for drones. The results were published.

[0061] countdown timer When the countdown ends, the drones in candidate cluster C are scheduled according to the optimization results, such as... Figure 5 As shown, when the task is a single-machine task, according to The data is assigned to drones to perform tasks, and the drones dynamically receive status feedback on task execution and resource detection status to identify problems such as processing timeouts, abnormal resource consumption, and abnormal task execution. If an abnormality is detected, the system returns to s4.3.3 and initiates a secondary replacement auction.

[0062] When the task is a multi-machine collaborative task, according to Data, dynamic election The drone with the most remaining computing resources acts as the leader for multi-drone collaborative tasks, periodically sending heartbeats. If a heartbeat times out, the drone with the most remaining computing resources is selected from the remaining drones to take over as the leader. After a non-leader drone in the cluster successfully completes its task, it reports a success status, immediately clears all data related to that task, returns to step 2, and participates in the auction for other task scheduling. While executing its task, the leader drone needs to monitor the cluster... Regarding the remaining drones, if a mission execution error occurs, return to s4.3.3 to initiate a second replacement auction, when the set... After all drone missions are successfully executed, report the overall mission success status, clear the data related to this mission, and return to step 2.

[0063] Step 6: Task Execution and Status Feedback Based on the scheduling results from step 5, tasks are added to the corresponding queues, and each UAV executes the tasks in the queue sequentially. Based on the actual execution status of the tasks and dynamic resource monitoring, monitoring results are reported at t ms intervals to achieve scheduling and optimization.

Claims

1. A UAV swarm scheduling system based on multi-objective dynamic optimization, characterized in that: It includes a scheduling layer, an optimization layer, and an execution layer; The scheduling layer selects the optimal result for task scheduling based on the multiple optimization results given by the UAVs in the candidate cluster in the optimization layer, and receives the monitoring data returned by the execution layer. When the task is completed, the task status ends and the process returns to the optimization layer for a new task auction. When a task execution error occurs, return to the optimization layer to initiate a second auction; The execution layer adds the tasks to be executed to the UAV's task queue according to the scheduling result of the scheduling layer, monitors the task execution results and the status of each UAV, and returns the monitoring data to the scheduling layer and the optimization layer. The optimization layer defines a set of optimization objectives based on the given task; based on the monitoring data returned by the execution layer, it conducts a distributed task auction, specifically: initializing optimization algorithm parameters, calculating the initial weighted sum of the total scores of each UAV in the cluster for the given task, each UAV in the cluster publishes the initial weighted sum of the total scores to a commonly subscribed topic, and then selecting candidate clusters based on the scores of the UAVs on the main optimization objective. Each UAV in the candidate cluster aims to maximize the overall score of the cluster and provides an optimization scheme based on the simulated annealing algorithm combined with a dual-branch strategy.

2. A method for scheduling unmanned aerial vehicle (UAV) swarms based on multi-objective dynamic optimization, characterized in that: The above-mentioned UAV swarm scheduling system enables UAV swarm scheduling under multi-objective constraints, specifically including the following steps: Step 1: Define the distributed coordination rules for the drone swarm and start swarm M; Step 2: Initialize the optimization layer parameters, including defining the optimization objective set G and initializing the objective weights. UAV j Multidimensional score vector and the initial total score weighted sum , where i represents the target index to be optimized; and the optimization algorithm parameters are initialized; Step 3: During the initial task auction, all drones in cluster M will submit their respective multidimensional score vectors. Weighted sum of total score Publish to a topic, and obtain the scores of other drones participating in this task auction by subscribing to the topic, thus achieving cluster data synchronization; Step 4: The optimization layer, based on the feedback data from the execution layer and the monitoring results of the system status, optimizes the weight vector based on the goal of maximizing the overall score of the cluster. The dynamic adjustment involves the following steps: s4.1 Set system optimization objectives and constraints; s4.2, Based on the multidimensional score vectors of each drone in the topic Weighted sum of total score And the main optimization objective of this time. Based on the scores of each UAV on the main optimization objective, preliminary screening is performed using Pareto optimality theory to obtain candidate cluster C; s4.

3. Based on the simulated annealing algorithm and the dual-branch strategy, each UAV in the candidate cluster C is evaluated according to the multidimensional score vector of other UAVs obtained in step 3. Perform iterations to optimize the weight vector. And publish the optimization results to the topic; Step 5: The drones in candidate cluster C are scheduled according to the optimization results of step 4, and the status feedback is monitored. If an execution exception occurs, return to s4.3 for a second auction to select other drones from candidate cluster C. Step 6: Based on the scheduling results of Step 5, each UAV in the cluster adds the task to the corresponding queue. Each UAV executes the tasks in the queue in sequence or returns to Step 2 to participate in a new task auction. Each UAV reports the monitoring results based on the actual execution status of the task and dynamic resource monitoring, thereby achieving scheduling and optimization.

3. The UAV swarm scheduling method based on multi-objective dynamic optimization as described in claim 2, characterized in that: The drone with the smallest ID is selected as the initial coordinator. Every ms, the coordinator broadcasts its survival information, including a timestamp and its own ID, to other drones in the cluster via a heartbeat topic. Considering network latency, if no survival information is received within 1.5 ms, the coordinator is considered to have failed, triggering a coordinator re-election. Only the coordinator responds to the global START command, sends a PREPARE request, waits for all other drones in the cluster to respond READY, and sends SYNC_START after timeout or when all drones respond, triggering the task auction.

4. The UAV swarm scheduling method based on multi-objective dynamic optimization as described in claim 2, characterized in that: At the start of optimization step 4, initialize two countdown timers. and The drones in candidate cluster C start a countdown timer based on the publication timestamp of the first optimization result in the topic. countdown timer Before the countdown ends, each drone will publish its converged optimization results to the topic, during the countdown timer. When the countdown ends, output the optimal weight obtained in the current iteration. S max And the corresponding drones are grouped into the topic; countdown timer Before the countdown ends, if there are other drones in the topic U... j′ The published total score S max Larger than U drones j The total score S obtained max Then the U drone j The optimization results in the middle are updated to UAV U j′ The published results; in the countdown timer When the countdown ends, the drones in candidate cluster C are scheduled according to the optimization results.

5. The UAV swarm scheduling method based on multi-objective dynamic optimization as described in claim 2, characterized in that: The optimization objective set G={ , , , },in Indicates the shortest flight time. Indicates the shortest flight distance. This indicates minimal power consumption. This indicates the most balanced load.

6. The UAV swarm scheduling method based on multi-objective dynamic optimization as described in claim 5, characterized in that: Multidimensional score vector =[ , , , ],in: , indicating the time score, U-shaped drone j The planned task execution time, , These represent the longest and shortest planned task execution times for all drones in the cluster, respectively. , representing the distance score; , indicating the U drone j The weighted distance; U-shaped drone j The straight-line distance to the target The actual flight distance of the planned path is represented; α∈[0,1] represents the weight of the adjustment path planning result and the deviation factor. , representing the path deviation factor; , These represent the longest weighted distance and the shortest weighted distance among all drones in the cluster, respectively. This indicates the battery level score; U-shaped drone j The consumption ratio This indicates the power required to execute the task. U-shaped drone j The current remaining battery power; , These represent the maximum and minimum consumption ratios of all drones in the cluster, respectively. , representing the load score, re = CPU, GPU, MEM, indicating resource types, including CPU resources, GPU resources, and storage resources. U-shaped drone j Load score in resource re; U-shaped drone j The amount of resources used (re) on the resource list. This indicates the estimated resource requirement (re) when executing the task. U-shaped drone j The maximum available amount of resource re. This indicates the average load ratio of all drones in the cluster.

7. The UAV swarm scheduling method based on multi-objective dynamic optimization as described in claim 5 or 6, characterized in that: The optimization objective for dynamic optimization is set as follows: The constraints are: in, It is a candidate cluster. Indicates the j-th drone U j Available resource vector, Represents the resource vector required for the task; This represents the number of drones required for the mission; n represents the initial number of candidate drones. >1 is a real number, representing the proportion of candidate drones; Let represent a subset of the primary optimization objective; t is an integer representing the number of iterations. This indicates the maximum number of iterations required for optimization.

8. The UAV swarm scheduling method based on multi-objective dynamic optimization as described in claim 4, characterized in that: Using Pareto optimality theory, n drones are selected as candidate clusters C. , Indicates the number of drones required for the mission. Indicates the proportion of candidate drones: ① When the number of primary optimization objectives |G main When |=1, assume = Then, the drones will be selected directly from those participating in the mission auction. The top n drones with the highest scores form candidate cluster C: ② When the number of primary optimization objectives |G main When | > 1, follow the Pareto non-dominated order: in This indicates that the following dominance relationship is satisfied on all principal objectives: in, , They represent the first , The score of the drone on the k-th principal optimization objective; Set , representing the number of the first front solutions. If r ≥ n, directly select the first n Pareto solutions as the candidate cluster . If r < n, select n−r drones with the highest sum of the main objective scores from the subsequent fronts to supplement until the number of drones in the candidate cluster C is n.

9. The UAV swarm scheduling method based on multi-objective dynamic optimization as described in claim 8, characterized in that: Based on the simulated annealing algorithm and the dual-branch strategy, each UAV in candidate cluster C is evaluated according to the multidimensional score vector of other UAVs obtained in step 3. Perform iterations to optimize the weight vector. The optimization results are then published to the topic. The specific steps are as follows: s4.3.

1. At the start of optimization, initialize two countdown timers. , ,and The drones in candidate cluster C start a countdown timer based on the publication timestamp of the first optimization result in the topic. , ; s4.3.2 In the t-th iteration, select the weighted sum of the total scores from the candidate clusters C. The top x-ranked drones are denoted as set. x represents the number of drones required for the mission; calculate the set Average score of all drones on each target and total score ; s4.3.3 Update and optimize the weights, including weights with penalty terms. and weights without penalty terms : in, This indicates that for the i-th target in the t-th iteration... The weights; λ represents the weight learning rate, and λ is the penalty intensity coefficient. Compare the updated weight values ​​with the minimum weight threshold θ. season ,when season Otherwise, remain unchanged; s4.3.4, Weights obtained from s4.3.3 , Perform normalization, then update the scores for each drone with and without penalties. , ; when At that time, with As the weight update result of round t ;when At that time, the probability is calculated according to the Metropolis criterion. ,when At that time, then As the weight update result of round t Otherwise As the weight update result of round t The set reception probability threshold; s4.3.5 Calculate the weights Next set Total score of all drones ,use , Record the weight vector with the highest score and the corresponding maximum total score during the iteration process. ,make And let ; s4.3.6, in the countdown timer Before the countdown ends, if t < Calculate score changes When the sum of scores over N consecutive iterations is less than the convergence threshold ,Right now If the result is positive, then the optimization is considered to have converged, and the optimization result is output. , , If the topic is not specified, then let t = t + 1 and calculate the weighted sum of the total scores of all drones in candidate cluster C. And return s4.3.2; If countdown timer The countdown ends, or t= When, output , And the corresponding drones are grouped into the topic; This indicates the maximum number of iterations.

10. The UAV swarm scheduling method based on multi-objective dynamic optimization as described in claim 2, characterized in that: When the task is a single-machine task, the drone is assigned to perform the task according to the optimization results of step 4, and the status feedback of the drone task execution and the resource detection status feedback are dynamically received to identify whether there are processing timeouts, abnormal resource consumption, or abnormal task execution. If an abnormality is detected, return to step 4 and start a second auction. When the task is a multi-drone collaborative task, based on the optimization results of step 4, a leader machine for the multi-drone collaborative task is first elected; then the task is executed: after the non-leader drone task is successfully executed, the success status is reported, and the data related to this task is immediately cleared, and the process returns to step 2 to participate in the scheduling auction of other tasks; if the leader machine needs non-leader drones while executing a task, and a task execution abnormality occurs, the process returns to step 4 to start a second substitute auction. When all drone tasks are successfully executed, the overall success status of the task is reported, and the data related to this task is cleared, and the process returns to step 2.

Citation Information

Patent Citations

  • Unmanned aerial vehicle cluster management system and control method thereof

    CN117111635A

  • Unmanned aerial vehicle distribution center site selection method based on fuzzy mathematical programming particle swarm optimization

    CN119850075A