Task allocation method and device for unmanned aerial vehicle, equipment and storage medium

By dynamically adjusting the task allocation of UAVs through a multi-objective particle swarm optimization algorithm, the accuracy and stability issues of UAVs in the face of emergencies are solved, and the accuracy and stability of task allocation are improved.

CN121660145APending Publication Date: 2026-03-13NANCHANG NORMAL UNIV
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-10-22
Publication Date
2026-03-13

AI Technical Summary

Technical Problem

When faced with emergencies, the static task list of drones cannot respond effectively, resulting in low deployment accuracy and poor stability.

Method used

A multi-objective particle swarm optimization algorithm is used to optimize the mission capability parameters of the UAV, dynamically adjust the mission allocation sequence, including total mission completion time, battery capacity, total mission energy consumption and mission priority, and generate the optimal mission allocation sequence.

Benefits of technology

It improves the accuracy and robustness of drone mission deployment, enabling timely response to mission changes and ensuring the accuracy and stability of mission allocation.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121660145A_ABST
    Figure CN121660145A_ABST
Patent Text Reader

Abstract

The invention provides a task allocation method and device for an unmanned aerial vehicle, equipment and a storage medium. According to the specific implementation scheme, the method comprises the steps of obtaining a dynamic task set of to-be-launched tasks; wherein the dynamic task set comprises task execution information of a to-be-released task; under the condition that the tasks in the dynamic task set are changed, randomly distributing the tasks in the changed dynamic task set to each unmanned aerial vehicle, and generating a to-be-executed task list of each unmanned aerial vehicle; according to the to-be-executed task list of each unmanned aerial vehicle, task capability parameters of each unmanned aerial vehicle are determined; wherein the task capability parameters comprise at least two of the total task completion time, the battery capacity, the total task energy consumption and the priority of tasks executed by the unmanned aerial vehicle; and performing multi-target optimization on the task capability parameters by using a multi-target particle swarm optimization algorithm, and determining a task allocation sequence of the unmanned aerial vehicle. According to the technical scheme of the invention, the accuracy and stability of unmanned aerial vehicle launching can be effectively improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of data processing technology, and in particular to a method, apparatus, device and storage medium for task allocation of unmanned aerial vehicles (UAVs). Background Technology

[0002] When drones deliver supplies, the execution order is typically determined by a static task list. However, in real-world applications, drone missions are highly dynamic and unpredictable. Static task lists cannot effectively respond to unexpected situations, resulting in poor stability and low delivery accuracy when faced with unforeseen circumstances. Summary of the Invention

[0003] To address the aforementioned issues, this application proposes a task allocation method, apparatus, device, and storage medium for unmanned aerial vehicles (UAVs), which can effectively improve the accuracy and stability of UAV deployment.

[0004] According to a first aspect of the embodiments of this application, a task allocation method for a drone is provided, including: Obtain a dynamic task set of tasks to be deployed; wherein, the dynamic task set includes task execution information of the tasks to be deployed; In the event of a task change in the dynamic task set, the tasks in the changed dynamic task set are randomly assigned to each UAV, generating a list of tasks to be executed for each UAV. Based on the list of tasks to be performed by each drone, the task capability parameters of each drone are determined; wherein, the task capability parameters include at least two of the following: total task completion time, battery capacity, total task energy consumption, and the priority of the task performed by the drone. The task capability parameters are optimized using a multi-objective particle swarm optimization algorithm to determine the task allocation sequence for the UAV.

[0005] Preferably, the step of using a multi-objective particle swarm optimization algorithm to perform multi-objective optimization on the task capability parameters to determine the UAV's task allocation sequence includes: The task capability parameters are optimized using a multi-objective particle swarm optimization algorithm to determine the candidate task allocation sequence; If the candidate task allocation sequence passes the verification under the preset constraints, the candidate task allocation sequence is determined as the task allocation sequence for the UAV.

[0006] Preferably, the step of optimizing the task capability parameters using a multi-objective particle swarm optimization algorithm to determine the candidate task allocation sequence includes: Construct the fitness function of each UAV based on its mission capability parameters; The fitness function of the UAV is solved using the multi-objective particle swarm optimization algorithm to obtain the candidate task allocation sequence.

[0007] Preferably, determining the alternative task allocation sequence as the task allocation sequence of the UAV when the preset constraints verify the alternative task allocation sequence includes: if the fitness of the alternative task allocation sequence is less than a preset fitness threshold when the preset constraints verify the alternative task allocation sequence, determining the alternative task allocation sequence as the task allocation sequence.

[0008] Preferably, the step of constructing the fitness function of the UAV based on the mission capability parameters of each UAV includes: The mission capability parameters of each UAV are normalized to obtain the normalized mission capability parameters of each UAV. The fitness function of each UAV is constructed by using the normalized mission capability parameters of each UAV.

[0009] Preferably, the preset constraint conditions include at least one of the following: Each drone needs to execute each task in its corresponding list of pending tasks; In addition, the deployment time of each task in the drone's pending task list meets the latest deployment time for each task; In addition, the total payload of each task in the drone's task list is less than the maximum payload of the corresponding drone. In addition, the flight distance of each task in the drone's task list is less than the maximum flight distance of its corresponding drone; Furthermore, the access order of the deployment points corresponding to each task in the drone's pending task list satisfies the preset access order.

[0010] Preferably, the task allocation sequence may experience task changes, including: changes in task requirements, the addition of new tasks, or tasks that cannot be completed.

[0011] According to a second aspect of the embodiments of this application, a task allocation device for a drone is provided, comprising: The acquisition module is used to acquire a dynamic task set of tasks to be deployed; wherein, the dynamic task set includes task execution information of the tasks to be deployed; The response module is used to randomly assign tasks in the changed dynamic task set to each UAV when the task set changes, and generate a list of tasks to be executed for each UAV. The processing module is used to determine the task capability parameters of each UAV based on the list of tasks to be executed by each UAV; wherein the task capability parameters include at least two of the following: total task completion time, battery capacity, total task energy consumption, and the priority of the task executed by the UAV. The allocation module is used to perform multi-objective optimization on the task capability parameters using a multi-objective particle swarm optimization algorithm to determine the task allocation sequence of the UAV.

[0012] A third aspect of this application provides an electronic device, comprising: Memory and processor; The memory is connected to the processor and is used to store programs; The processor implements the above-described task allocation method for the UAV by running the program in the memory.

[0013] The fourth aspect of this application provides a storage medium storing a computer program, which, when executed by a processor, implements the above-described task allocation method for unmanned aerial vehicles.

[0014] One embodiment of the above application has the following advantages or beneficial effects: A dynamic task set for deployment tasks is obtained, including task execution information. If tasks in the dynamic task set change, the tasks in the changed set are randomly assigned to various drones, generating a task list for each drone. Based on each drone's task list, task capability parameters are determined for each drone. These parameters include at least two of the following: total task completion time, battery capacity, total task energy consumption, and the priority of the task executed by the drone. A multi-objective particle swarm optimization algorithm is used to optimize these parameters to determine the drone's task allocation sequence. This approach, by setting a dynamic task set to respond promptly to task changes and by using multi-objective particle swarm optimization to optimize multiple task capability parameters, allows for the determination of the drone's task allocation sequence from multiple dimensions, resulting in a more accurate sequence and improved accuracy and robustness of drone deployment. Attached Figure Description

[0015] To more clearly illustrate the technical solutions in the embodiments of this application 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 only embodiments of this application. For those skilled in the art, other drawings can be obtained based on the provided drawings without creative effort.

[0016] Figure 1A flowchart illustrating a task allocation method for a drone provided in an embodiment of this application; Figure 2 This is a schematic diagram of the specific process of step S140 in a task allocation method for a drone provided in an embodiment of this application; Figure 3 This is a schematic diagram of the structure of a text data recognition device provided in an embodiment of this application; Figure 4 This is a schematic diagram of the structure of an electronic device provided in an embodiment of this application. Detailed Implementation

[0017] The technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, and not all embodiments. Based on the embodiments of this application, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this application.

[0018] Exemplary methods Figure 1 This is a flowchart of a task allocation method for a drone according to an embodiment of this application. In one exemplary embodiment, a task allocation method for a drone is provided, including: S110. Obtain a dynamic task set of tasks to be deployed; wherein, the dynamic task set includes task execution information of the tasks to be deployed; S120. In the event of a task change in the dynamic task set, the tasks in the changed dynamic task set are randomly assigned to each UAV, and a list of tasks to be executed for each UAV is generated. S130. Based on the list of tasks to be executed by each UAV, determine the task capability parameters of each UAV; wherein, the task capability parameters include at least two of the following: total task completion time, battery capacity, total task energy consumption, and the priority of the task executed by the UAV. S140. The multi-objective particle swarm optimization algorithm is used to optimize the mission capability parameters to determine the mission allocation sequence of the UAV.

[0019] In step S110, exemplarily, the task to be delivered represents the supplies that the drone needs to deliver. In this embodiment, the task to be delivered may be pre-stored in a dynamic task set, such as... Each task has a resource drop point, which can be represented by coordinates. Each task also has a corresponding resource requirement; it's understood that the resource requirement for a drone performing a task should be less than the drone's maximum payload. Each task also has a pre-set priority, which is set according to actual needs and is not limited here. In this embodiment, the dynamic task set includes task priority, latest delivery time, resource drop point, and resource requirement. The dynamic task set is updated every preset time interval, which is set according to actual needs and is not limited here. For example, 5 minutes.

[0020] For example, ;in, Let p represent the set of dynamic tasks at time t. i Let d represent the supply drop point for the i-th task. i (t) represents the material requirements for the i-th task at time t. (t) represents the priority of the i-th task at time t. This represents the latest delivery time of the i-th task at time t. This represents the set of tasks to be deployed at time t.

[0021] Furthermore, corresponding drone groups are set up according to the needs of the drones to be flown, for example, That is, the set U includes m drones with autonomous flight capabilities, each drone having an initial position, maximum payload, battery capacity, unit consumption, and maximum flight distance.

[0022] In step S120, exemplarily, a task change indicates a change in the tasks within the dynamic task set. Preferably, a task change includes a change in task requirements, the addition of a new task, or the inability to complete a task. Specifically, a change in task requirements refers to a change in the quantity of materials, the delivery time, or the delivery point of the task. Adding a new task refers to the creation of a new material delivery task. The inability to complete a task refers to a malfunction of the drone (e.g., unexpected battery depletion, mechanical failure, positioning deviation, or communication interruption) or a significant change in the environment for material delivery (e.g., severe weather, escalating on-site risks), preventing the drone from continuing to deliver materials.

[0023] For example, the drone's task list is used to record assigned but unexecuted tasks, ensuring that incomplete tasks continue to be executed and preventing task loss. Specifically, if the task allocation sequence is affected by changes in task requirements, the addition of new tasks, or tasks that cannot be completed, the previous task allocation may no longer meet the execution requirements. To enable multiple drones to work together effectively, minimizing the total time (i.e., the fastest response speed), the total energy consumption (i.e., the most power-efficient), and the total flight distance, the optimal task allocation sequence is determined by initializing the tasks in the modified dynamic task set. That is, the tasks in the modified dynamic task set are randomly assigned to each drone to generate a task list for each drone.

[0024] Furthermore, if there are no changes to the dynamic task set, the UAV continues to execute tasks according to the original list of tasks to be executed.

[0025] In step S130, for example, the task capability parameters include total task completion time, battery capacity, total task energy consumption, and the priority and completion rate of the tasks executed by the drone. Since the task list of the j-th drone may contain some tasks that are currently being executed but not yet completed, the priority and completion rate of the currently executing tasks must also be considered when task changes occur to more effectively allocate tasks. The completion rate indicates the current task completion status of the drone. Specifically, the completion time of each task is determined based on the task list of the j-th drone, and then the total task completion time of the j-th drone is determined based on the completion time of each task. The required energy consumption of each task is determined based on the task list of the j-th drone, and then the total task energy consumption of the j-th drone is determined based on the required energy consumption of each task. The priority and completion rate of each task are determined in the task list of the j-th drone, and the battery capacity of the j-th drone is also determined.

[0026] In step S140, for example, the Multi-Objective Particle Swarm Optimization (MOPSO) algorithm is a swarm intelligence-based optimization algorithm used to solve multi-objective optimization problems. The task allocation sequence includes the execution order of the tasks to be deployed and the corresponding UAVs executing the tasks. It should be noted that when multiple tasks to be executed are initially obtained, they are added to a dynamic task set. An initial task allocation sequence can be generated based on task priority. Alternatively, the initial task allocation sequence can be generated by combining task priority with the UAV deployment environment. Thus, when the dynamic task set changes, the obtained task allocation sequence replaces the initial task allocation sequence as the new initial task allocation sequence. Specifically, an objective function can be set according to task capability parameters, and the objective function can be solved using the MOPSO algorithm to obtain a set of optimal solutions, which are then used as the task allocation sequence.

[0027] In the technical solution of this application, a dynamic task set of tasks to be deployed is obtained; wherein, the dynamic task set includes task execution information of the tasks to be deployed; in the event of a change in the dynamic task set, the tasks in the changed dynamic task set are randomly assigned to various drones, generating a task list to be executed for each drone; based on the task list to be executed for each drone, the task capability parameters of each drone are determined; wherein, the task capability parameters include at least two of the following: total task completion time, battery capacity, total task energy consumption, and the priority of the task executed by the drone; the task capability parameters are optimized using a multi-objective particle swarm optimization algorithm to determine the task allocation sequence of the drones. In this way, by setting a dynamic task set, timely responses to changes in tasks (i.e., unexpected situations) can be made, and by using a multi-objective particle swarm optimization algorithm to optimize multiple task capability parameters, the task allocation sequence of the drones can be determined from multiple dimensions, making the determined task allocation sequence more accurate, thereby improving the accuracy and robustness of drone deployment.

[0028] In one implementation, such as Figure 2 As shown, the multi-objective particle swarm optimization algorithm is used to optimize the task capability parameters to determine the UAV's task allocation sequence, including: S1410. Optimize the task capability parameters using a multi-objective particle swarm optimization algorithm to determine the candidate task allocation sequence; S1420. If the candidate task allocation sequence passes the verification under the preset constraints, the candidate task allocation sequence is determined as the task allocation sequence of the UAV.

[0029] Preferably, step S1410 includes: constructing a fitness function for each UAV based on its mission capability parameters; and solving the fitness function of the UAV using the multi-objective particle swarm optimization algorithm to obtain the candidate task allocation sequence.

[0030] Specifically, the goal is to achieve the minimum total time (i.e., fastest response speed), minimum total energy consumption (i.e., lowest power efficiency), minimum total flight distance, and to consider the priority of the UAV performing the task. Therefore, four parameters are used: total task completion time, total task energy consumption, total flight distance, and the priority of the task performed by the UAV. A corresponding weight coefficient is assigned to each parameter; the weight coefficients are set according to actual needs and are not limited here. It should be noted that the weight coefficients of the four parameters are summed to 1. A fitness function is then generated based on these four parameters and their corresponding weight coefficients.

[0031] Furthermore, since the four parameters have inconsistent dimensions, it is necessary to normalize each task capability parameter. Preferably, constructing the fitness function of the UAV based on the task capability parameters of each UAV includes: The mission capability parameters of each UAV are normalized to obtain normalized mission capability parameters for each UAV. A fitness function for each UAV is then constructed using these normalized mission capability parameters. The priority normalization is determined by the completion rate of each task.

[0032] Specifically, taking the j-th drone as an example, task simulation can be performed using a computer to determine the maximum and minimum completion times for each task in the task list to be executed by the j-th drone. Alternatively, the maximum and minimum completion times for each task in the task list to be executed by the j-th drone can be set based on experience. The total task completion time is determined by the preset completion time for each task. The total task completion time is then normalized based on the maximum and minimum completion times for each task, using the following formula:

[0033] in, This represents the normalized total task completion time. Indicates the total task completion time. Indicates the minimum completion time. Indicates the maximum completion time.

[0034] The total task energy consumption is determined by the energy consumption of each task in the task list of the j-th drone. The energy consumption specified by the j-th drone at the time of manufacture is the maximum energy consumption, and the minimum energy consumption is set based on experience. The normalized formula for the total task energy consumption is as follows:

[0035] in, This represents the normalized total task energy consumption. Indicates the total task completion time. Indicates minimum energy consumption. This indicates the maximum energy consumption.

[0036] The total flight distance is determined by the preset routes of each task in the task list of the j-th drone. The maximum and minimum flight distances can be determined by simulating the patrol route and the take-off and landing points of the drones. The normalized formula for the total flight distance is as follows:

[0037] in, This represents the normalized total flight distance. Indicates the total flight distance. Indicates the minimum flight distance. This indicates the maximum flight distance.

[0038] Determine the priority and completion degree of each task in the task list to be executed by the j-th drone, and then determine the maximum and minimum completion degrees among the completion degrees of each task. The normalization formula for the task priority executed by the drone is as follows:

[0039] in, This indicates the normalized task priority. This represents the collection of tasks in the list of tasks to be executed. This indicates the priority of the k-th task. Indicates minimum completion level. This indicates the maximum completion rate.

[0040] Furthermore, after obtaining the normalized total task completion time, normalized total flight distance, normalized task priority, and normalized total task energy consumption, the fitness function is constructed as follows:

[0041] Where m represents the number of drones. , , , These are the weighting coefficients. .

[0042] Preferably, step S1420 includes: if the preset constraints verify the candidate task allocation sequence, and the fitness of the candidate task allocation sequence is less than a preset fitness threshold, then the candidate task allocation sequence is determined as the task allocation sequence. The fitness threshold is set according to the actual situation.

[0043] The preset constraints include at least one of the following: each drone must execute each task in its corresponding list of tasks to be executed.

[0044] Specifically, the state continuation constraint means that for each task still in the pending task list, the drone is forced to serve it.

[0045]

[0046] in, This represents a list of tasks to be executed. This indicates whether the drone obeys the deployment point p.

[0047] The preset constraints also include: the deployment time of each task in the drone's pending task list must meet the latest deployment time for each task.

[0048] Specifically, time window constraints:

[0049] in, This indicates the latest delivery time.

[0050] The preset constraints also include: the total payload of each task in the drone's task list is less than the maximum payload of the corresponding drone.

[0051] Specifically, load constraints: in, Indicates the maximum payload of the drone. This represents the material requirements of the delivery point in the i-th task.

[0052] The preset constraints also include: the distance of each task in the drone's task list is less than the maximum flight distance of its corresponding drone.

[0053] Specifically, flight distance constraints:

[0054] in, Indicates from the material distribution point to the supply distribution point distance, Indicate whether the drone departed from the supply drop point Fly to the supply drop point , This represents the maximum flight distance of the drone, and v is the set of resource drop points.

[0055] The preset constraints also include the access order of the drop points corresponding to each task in the drone's task list, which must satisfy the preset access order.

[0056] Specifically, the preset access order is the access order of the material delivery points so that it does not form an isolated loop. In this embodiment, an auxiliary variable is introduced to represent the access order (number) of the material delivery points, and the loop constraint is:

[0057] in, This indicates the order in which resource drop points are visited, where W is the total number of resource drop points. It should be noted that... And it is an integer.

[0058] Furthermore, if all tasks in the candidate task allocation sequence meet the above constraints, the verification is successful. If not, repairs are performed. If the load constraint is not met (i.e., the load exceeds the limit), the overloaded task is reassigned to another UAV or removed. If the flight distance constraint is not met (i.e., the flight range exceeds the limit), the path is replanned or a different UAV is used. If the loop constraint is not met, the path is optimized using 2-opt or interpolation. If the time window constraint is not met, the execution order is adjusted or the tasks are reassigned.

[0059] In this embodiment, an example is given to illustrate how the multi-objective particle swarm optimization algorithm solves for the optimal task allocation sequence.

[0060] If the number of tasks is N=5 and the number of drones is M=3, the task allocation and execution order can be represented by an integer vector of length N:

[0061] in, It refers to the order in which tasks are executed. This indicates which drone performs the f-th task.

[0062] Alternatively, a two-segment encoding can be used, which includes both the task execution order and the drone execution order within a single sequence. For example, X=([3,1,4,2,5],[1,1,2,3,2]), which indicates that task 3 is executed first and assigned to drone 1; then task 1 is executed and assigned to drone 1; task 4 is executed for drone 2; task 2 is executed for drone 3; and task 5 is executed for drone 2. It should be noted that in practical applications, the dynamic task set and the list of drones to be executed exist in the form of constraints.

[0063] Then, initialize the particle swarm. Number of particles: K=50, each particle l It has position and velocity vectors, which represent the sets of all integers and real numbers, respectively. , N indicates the number of tasks; therefore, both the position and velocity vectors represent integer vectors of length 2N, the length of which depends on the number of real-time tasks. The individual optimality is... .

[0064] The tasks are initialized by randomly generating a task order (which can be done by random shuffling) and then randomly assigning tasks to the drones. It should be noted that the randomly assigned tasks must meet the drone's payload and range requirements.

[0065] The total mission completion time, total mission energy consumption, total flight distance, and mission priority of each UAV are determined. These parameters are then normalized, and a fitness function is generated based on the normalized parameters. Next, the particle velocity and position are updated using the standard PSO formula to obtain candidate positions. Then, it is determined whether the candidate positions satisfy the constraints of state continuation, time window, payload, flight distance, and loop constraints. If all are satisfied, the fitness of the candidate position is compared with the fitness of the individual optimal position and the fitness of the globally optimal particle position. If the fitness of the candidate position is less than the fitness of the individual optimal position, the candidate position is updated to the individual optimal position. If the fitness of the candidate position is less than the fitness of the globally optimal particle position, the candidate position is updated to the globally optimal particle position. At this point, particle updates can be terminated.

[0066] If the fitness of a candidate position is not less than the fitness of the individual's optimal position and not less than the fitness of the position of the globally optimal particle, then the particle continues to be updated until the maximum number of iterations is reached, or the fitness of a candidate position is less than the fitness of the individual's optimal position, or the fitness of a candidate position is less than the fitness of the position of the globally optimal particle, then the particle update terminates. The maximum number of iterations is set according to actual needs and is not limited here. It is understood that each time a task change occurs, PSO will be re-run to obtain the optimal solution of the fitness function, resulting in a new task allocation sequence. Thus, by designing a normalized multi-objective function, different dimensional indicators such as time, energy consumption, range, and priority are unified into the [0,1] interval. Target preferences are flexibly adjusted through weight coefficients, and then solved using a multi-objective particle swarm optimization algorithm. This determines the UAV's task allocation sequence from multiple dimensions, making the determined task allocation sequence more accurate and thus improving the robustness of task deployment.

[0067] Exemplary device Correspondingly, Figure 3 This is a schematic diagram of a task allocation device for a drone according to an embodiment of this application. In one exemplary embodiment, a task allocation device for a drone is provided, comprising: The acquisition module 310 is used to acquire a dynamic task set of tasks to be deployed; wherein, the dynamic task set includes task execution information of the tasks to be deployed; The response module 320 is used to randomly assign tasks in the changed dynamic task set to each UAV when the task set changes, and generate a list of tasks to be executed for each UAV. The processing module 330 is used to determine the task capability parameters of each UAV according to the list of tasks to be executed by each UAV; wherein, the task capability parameters include at least two of the following: total task completion time, battery capacity, total task energy consumption, and task priority executed by the UAV. The allocation module 340 is used to perform multi-objective optimization on the task capability parameters using a multi-objective particle swarm optimization algorithm to determine the task allocation sequence of the UAV.

[0068] The drone task allocation device provided in this embodiment belongs to the same concept as the drone task allocation method provided in the above embodiments of this application. It can execute the drone task allocation method provided in any of the above embodiments of this application and has the corresponding functional modules and beneficial effects for executing the drone task allocation method. Technical details not described in detail in this embodiment can be found in the specific processing content of the drone task allocation method provided in the above embodiments of this application, and will not be repeated here. Exemplary electronic devices Another embodiment of this application also provides an electronic device, see [link to relevant documentation] Figure 4 As shown, the device includes: Memory 450 and processor 410; The memory 450 is connected to the processor 410 and is used to store programs; The processor 410 is used to implement the task allocation method for unmanned aerial vehicles disclosed in any of the above embodiments by running the program stored in the memory 450.

[0070] Specifically, the aforementioned electronic device may also include: a bus, a communication interface 420, an input device 430, and an output device 440.

[0071] The processor 410, memory 450, communication interface 420, input device 430, and output device 440 are interconnected via a bus. Among them: A bus can include a pathway for transmitting information between various components of a computer system.

[0072] The processor 410 can be a general-purpose processor, such as a general-purpose central processing unit (CPU), a microprocessor, etc., or an application-specific integrated circuit (ASIC), or one or more integrated circuits used to control the execution of the program of the present invention. It can also be a digital signal processor (DSP), an application-specific integrated circuit (ASIC), an off-the-shelf programmable gate array (FPGA), or other programmable logic devices, discrete gate or transistor logic devices, or discrete hardware components.

[0073] Processor 410 may include a main processor, as well as a baseband chip, modem, etc.

[0074] The memory 450 stores a program that executes the technical solution of the present invention, and may also store an operating system and other key business functions. Specifically, the program may include program code, which includes computer operation instructions. More specifically, the memory 450 may include read-only memory (ROM), other types of static storage devices capable of storing static information and instructions, random access memory (RAM), other types of dynamic storage devices capable of storing information and instructions, disk storage, flash memory, etc.

[0075] Input device 430 may include a device for receiving user input data and information, such as a keyboard, mouse, camera, scanner, light pen, voice input device, touch screen, pedometer, or gravity sensor.

[0076] Output device 440 may include devices that allow information to be output to a user, such as a display screen, printer, speaker, etc.

[0077] The communication interface 420 may include a device that uses any transceiver to communicate with other devices or communication networks, such as Ethernet, Radio Access Network (RAN), Wireless Local Area Network (WLAN), etc.

[0078] The processor 410 executes the program stored in the memory 450 and calls other devices, which can be used to implement the various steps of any of the drone task allocation methods provided in the above embodiments of this application.

[0079] Exemplary computer program products and storage media In addition to the methods and devices described above, embodiments of this application may also be computer program products, which include computer program instructions that, when executed by a processor, cause the processor to perform the steps in the drone task allocation methods according to various embodiments of this application as described in the "Exemplary Methods" section of this specification.

[0080] The computer program product can be written in any combination of one or more programming languages ​​to perform the operations of the embodiments of this application. The programming languages ​​include object-oriented programming languages ​​such as Java and C++, as well as conventional procedural programming languages ​​such as C or similar languages. The program code can be executed entirely on the user's computing device, partially on the user's computing device, as a standalone software package, partially on the user's computing device and partially on a remote computing device, or entirely on a remote computing device or server.

[0081] Furthermore, embodiments of this application may also be storage media storing a computer program, which is executed by a processor in the steps of the drone task allocation method according to various embodiments of this application described in the "Exemplary Methods" section above.

[0082] The specific working content of the aforementioned electronic device, as well as the specific working content of the aforementioned computer program product and the computer program on the storage medium being run by the processor, can all be found in the content of the aforementioned method embodiments, and will not be repeated here.

[0083] For the foregoing method embodiments, in order to simplify the description, they are all described as a series of actions. However, those skilled in the art should understand that this application is not limited to the described order of actions, because according to this application, some steps can be performed in other orders or simultaneously. Furthermore, those skilled in the art should also understand that the embodiments described in the specification are all preferred embodiments, and the actions and modules involved are not necessarily essential to this application.

[0084] It should be noted that the various embodiments in this specification are described in a progressive manner, with each embodiment focusing on the differences from other embodiments. Similar or identical parts between embodiments can be referred to interchangeably. For apparatus embodiments, since they are basically similar to method embodiments, the description is relatively simple; relevant parts can be referred to the descriptions in the method embodiments.

[0085] The steps in the methods of the various embodiments of this application can be adjusted, merged, or deleted in order according to actual needs, and the technical features described in each embodiment can be replaced or combined.

[0086] The modules and sub-modules in the various embodiments of the present application's devices and terminals can be merged, divided, and deleted according to actual needs.

[0087] It should be understood that the disclosed terminals, devices, and methods can be implemented in other ways, given the several embodiments provided in this application. For example, the terminal embodiments described above are merely illustrative. For instance, the division of modules or sub-modules is only a logical functional division, and in actual implementation, there may be other division methods. For example, multiple sub-modules or modules may be combined or integrated into another module, or some features may be ignored or not executed. Furthermore, the coupling or direct coupling or communication connection shown or discussed may be indirect coupling or communication connection through some interfaces, devices, or modules, and may be electrical, mechanical, or other forms.

[0088] The modules or submodules described as separate components may or may not be physically separate. The components that constitute a module or submodule may or may not be physical modules or submodules; that is, they may be located in one place or distributed across multiple network modules or submodules. Some or all of the modules or submodules can be selected to achieve the purpose of this embodiment's solution, depending on actual needs.

[0089] Furthermore, the functional modules or sub-modules in the various embodiments of this application can be integrated into one processing module, or each module or sub-module can exist physically separately, or two or more modules or sub-modules can be integrated into one module. The integrated modules or sub-modules described above can be implemented in hardware or in the form of software functional modules or sub-modules.

[0090] Those skilled in the art will further recognize that the units and algorithm steps of the various examples described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, computer software, or a combination of both. To clearly illustrate the interchangeability of hardware and software, the components and steps of the various examples have been generally described in terms of functionality in the foregoing description. Whether these functions are implemented in hardware or software depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of this application.

[0091] The steps of the methods or algorithms described in conjunction with the embodiments disclosed herein can be implemented directly by hardware, a software unit executed by a processor, or a combination of both. The software unit can be located in random access memory (RAM), main memory, read-only memory (ROM), electrically programmable ROM, electrically erasable programmable ROM, registers, hard disk, removable disk, CD-ROM, or any other form of storage medium known in the art.

[0092] Finally, it should be noted that in this document, relational terms such as "first" and "second" are used only to distinguish one entity or operation from another, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Furthermore, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. Without further limitations, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the process, method, article, or apparatus that includes said element.

[0093] The above description of the disclosed embodiments enables those skilled in the art to make or use this application. Various modifications to these embodiments will be readily apparent to those skilled in the art, and the general principles defined herein may be implemented in other embodiments without departing from the spirit or scope of this application. Therefore, this application is not to be limited to the embodiments shown herein, but is to be accorded the widest scope consistent with the principles and novel features disclosed herein.

Claims

1. A method for task allocation for unmanned aerial vehicles (UAVs), characterized in that, include: Obtain a dynamic task set of tasks to be deployed; wherein, the dynamic task set includes task execution information of the tasks to be deployed; In the event of a task change in the dynamic task set, the tasks in the changed dynamic task set are randomly assigned to each UAV, generating a list of tasks to be executed for each UAV. Based on the list of tasks to be performed by each drone, the task capability parameters of each drone are determined; wherein, the task capability parameters include at least two of the following: total task completion time, battery capacity, total task energy consumption, and the priority of the task performed by the drone. The task capability parameters are optimized using a multi-objective particle swarm optimization algorithm to determine the task allocation sequence for the UAV.

2. The method according to claim 1, characterized in that, The process of using a multi-objective particle swarm optimization algorithm to perform multi-objective optimization on the task capability parameters to determine the UAV's task allocation sequence includes: The task capability parameters are optimized using a multi-objective particle swarm optimization algorithm to determine the candidate task allocation sequence; If the candidate task allocation sequence passes the verification under the preset constraints, the candidate task allocation sequence is determined as the task allocation sequence for the UAV.

3. The method according to claim 2, characterized in that, The step of optimizing the task capability parameters using a multi-objective particle swarm optimization algorithm to determine the candidate task allocation sequence includes: Construct the fitness function of each UAV based on its mission capability parameters; The fitness function of the UAV is solved using the multi-objective particle swarm optimization algorithm to obtain the candidate task allocation sequence.

4. The method according to claim 3, characterized in that, The step of determining the candidate task allocation sequence as the task allocation sequence for the UAV when the preset constraints verify the candidate task allocation sequence, includes: If the preset constraints pass the verification of the candidate task allocation sequence, and the fitness of the candidate task allocation sequence is less than the preset fitness threshold, then the candidate task allocation sequence is determined as the task allocation sequence.

5. The method according to claim 3, characterized in that, The process of constructing the fitness function for each UAV based on its mission capability parameters includes: The mission capability parameters of each UAV are normalized to obtain the normalized mission capability parameters of each UAV. The fitness function of each UAV is constructed by normalizing its mission capability parameters.

6. The method according to claim 2, characterized in that, The preset constraints include at least one of the following: Each drone needs to execute each task in its corresponding list of pending tasks; In addition, the deployment time of each task in the drone's pending task list meets the latest deployment time for each task; In addition, the total payload of each task in the drone's task list is less than the maximum payload of the corresponding drone. In addition, the flight distance of each task in the drone's pending task list is less than the maximum flight distance of its corresponding drone; Furthermore, the access order of the deployment points corresponding to each task in the drone's pending task list satisfies the preset access order.

7. The method according to any one of claims 1-6, characterized in that, The task allocation sequence may experience task changes, including: Task requirements changed, new tasks were added, or the task could not be completed.

8. A task allocation device for a drone, characterized in that, include: The acquisition module is used to acquire a dynamic task set of tasks to be deployed; wherein, the dynamic task set includes task execution information of the tasks to be deployed; The response module is used to randomly assign tasks in the changed dynamic task set to each UAV when the task set changes, and generate a list of tasks to be executed for each UAV. The processing module is used to determine the task capability parameters of each UAV based on the list of tasks to be executed by each UAV; wherein the task capability parameters include at least two of the following: total task completion time, battery capacity, total task energy consumption, and the priority of the task executed by the UAV. The allocation module is used to perform multi-objective optimization on the task capability parameters using a multi-objective particle swarm optimization algorithm to determine the task allocation sequence of the UAV.

9. An electronic device, characterized in that, include: Memory and processor; The memory is connected to the processor and is used to store programs; The processor, by running the program in the memory, implements the task allocation method for the UAV as described in any one of claims 1 to 7.

10. A storage medium, characterized in that, The storage medium stores a computer program, which, when executed by a processor, implements the task allocation method for a UAV as described in any one of claims 1 to 7.