A multi-UAV dynamic task allocation method based on tripartite constraints and CNP

Through the three-party limited contract network protocol (3L-CNP) algorithm, task priorities and bid quantity limits are set, the task reallocation process is optimized, the real-time and low efficiency problems of task allocation in multi-UAV systems are solved, and efficient and stable task execution is achieved.

CN120355129BActive Publication Date: 2025-10-03NORTHWESTERN POLYTECHNICAL UNIV
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202510303709.7
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2025-03-14
Publication Date
2025-10-03
Estimated Expiration
2045-03-14

AI Technical Summary

Technical Problem

The existing multi-UAV system has low real-time and efficiency in task allocation in dynamic and uncertain environments, high computing and communication costs, and the traditional CNP algorithm leads to disordered task allocation and resource imbalance.

Method used

The Tripartite Limited Contract Network Protocol (3L-CNP) algorithm is introduced to set task priorities, limit the number of bids and bidding time, optimize the task reallocation process, and combine task buffers and multiple contract types to improve task allocation efficiency and real-time performance.

Benefits of technology

It significantly improves the task allocation efficiency and real-time performance of multi-UAV systems, optimizes resource allocation, enhances system robustness, and ensures rapid processing of high-priority tasks and task completion rate.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120355129B_ABST
    Figure CN120355129B_ABST
Patent Text Reader

Abstract

The present invention provides a method for dynamic task allocation for multiple unmanned aerial vehicles (UAVs) based on tripartite constraints and CNP, to address the problems of long task reallocation time, high communication resource consumption, and low real-time allocation efficiency in the prior art. The method belongs to the field of multi-UAV control technology. First, based on the CNP algorithm, task priority constraints are introduced to set priorities for tasks of different importance to ensure that important tasks are processed first. Second, a task buffer is used to limit the number of bids submitted by bidders, reducing communication resource consumption. Furthermore, the maximum bidding time for bidders is limited to reduce waiting time and improve response speed. Finally, real-time task allocation for multiple UAVs is efficiently completed. The present invention can efficiently complete real-time task allocation for multiple UAVs, significantly improving the system's real-time performance and task execution efficiency.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of multi-UAV control technology, and in particular to a multi-UAV dynamic task allocation method based on tripartite restriction and CNP. Background Art

[0002] With the rapid development of science and technology, multi-UAV systems can efficiently complete complex tasks in a wider range of intelligent scenarios. In such systems, UAVs typically possess the ability to make autonomous decisions and communicate with each other, enabling dynamic allocation and execution of tasks. Task allocation is a key issue in multi-UAV systems. Efficient task allocation enables swarms of UAVs to work collaboratively in complex and uncertain environments, completing tasks that are difficult for humans to perform, such as surveillance, search and rescue, and reconnaissance and strike. These tasks are of great significance both in the military and in everyday life.

[0003] Traditional centralized task allocation methods typically rely on a ground control center. Before a drone swarm executes a mission, it collects information about the operational environment and mission requirements, calculates an appropriate task allocation plan, and then transmits the results to each drone. Drones are solely responsible for following instructions and do not make any autonomous decisions. While this approach can ensure good global optimality, it is computationally complex, requires high communication requirements, performs poorly in dynamic and uncertain environments, and suffers from low real-time and robustness.

[0004] Distributed task allocation differs from centralized problem-solving approaches. It avoids the problems of excessive computational load and communication overhead on a single central control node, making it suitable for dynamic task allocation. Typical distributed approaches, such as the Contract Net Protocol (CNP) algorithm, are based on an auction mechanism, where bidders and bidders negotiate an appropriate price to allocate tasks. In CNP, the bidder centrally publishes bidding information to all drones through a central management system. Upon receiving the information, all drones formulate and submit bids. However, the CNP algorithm only bids for one task at a time and does not impose a specific order on task allocation. This can easily lead drones to abandon already acquired tasks due to the disordered allocation, increasing computational redundancy and decision-making difficulty. Furthermore, the algorithm selects winning bidders based on bid prices, regardless of the number of tasks already assigned to a drone. This can lead to uneven resource allocation, forcing some drones to release existing tasks and bid again, increasing the time and complexity of task allocation. Consequently, as the number of drones increases, the amount of information in the communication network rapidly increases, leading to increased computational and communication costs, increasing the time required for reallocation computations, and thus reducing the efficiency of reallocation. Therefore, how to effectively allocate and control tasks in a multi-UAV system, reduce reallocation time and communication volume, and improve the real-time and efficiency of task allocation has become a technical problem that needs to be solved urgently.

[0005] To address these issues, this patent proposes a three-party constrained contract network protocol (3L-CNP) algorithm to address multi-UAV task allocation. Based on the CNP algorithm, it sets time limits for bidding based on task priority, limits the number of bids and tenders, and optimizes the task reallocation process, effectively improving task allocation efficiency in multi-UAV systems, particularly in applications with high dynamic and real-time requirements. Summary of the Invention

[0006] The present invention provides a method for dynamic task allocation for multiple unmanned aerial vehicles (UAVs) based on tripartite constraints and CNP (Concurrent Network Policies) to address existing issues such as long task reallocation time, high communication resource consumption, and low real-time allocation efficiency. The method belongs to the field of multi-UAV control technology. First, based on the CNP algorithm, task priority constraints are introduced to set priorities for tasks of varying importance, ensuring that important tasks are prioritized. Second, a task buffer is used to limit the number of bids submitted by bidders, reducing communication resource consumption. Furthermore, a maximum bidding time for bidders is limited, reducing waiting time and improving response speed. Finally, real-time task allocation for multiple UAVs is efficiently completed. The present invention can efficiently complete real-time task allocation for multiple UAVs, significantly improving the system's real-time performance and task execution efficiency.

[0007] The present invention provides a multi-UAV dynamic task allocation method based on tripartite constraints and CNP, and the multi-UAV dynamic task allocation method includes the following steps:

[0008] Step 1: Build a UAV collaborative multi-task allocation model;

[0009] Step 2: In the initial task allocation stage, the tenderer directly allocates the task;

[0010] Step 3: The external unknown environment triggers the drone to enter the real-time allocation phase;

[0011] Step 4: During the bidding phase, the 3L-CNP algorithm is used for real-time task allocation;

[0012] Step 5: During the bidding phase, determine the bidding drone's own resources;

[0013] Step 6: During the bidding phase, determine whether the drone bidding feedback has timed out;

[0014] Step 7: During the contract signing phase, the bidding drone receives the bid and signs the contract;

[0015] Step 8: Supervise the execution of the winning drone mission.

[0016] Furthermore, in step 1, the method for constructing the UAV collaborative multi-task allocation model is as follows:

[0017] Step 1.1, define the task area:

[0018] The mission area is a rectangular, two-dimensional, finite space that includes all mission targets and threat zones that affect real-time mission allocation. The threat zone includes obstacles that block the drone's normal flight path, such as buildings, mountains, and trees. The mission targets are known static targets within the mission area. Under different missions, the drone swarm must efficiently reach the mission target location.

[0019] Step 1.2, build a task allocation model:

[0020] The constraints of multi-UAV task allocation include the number of assigned tasks, the execution time constraints, and the single-machine capacity constraints. The task allocation model is represented by the set {E, V, T, M, C}; where E is the task area, V is a set of UAVs that can execute the task, and V = {V1, V2, ..., V n}, T is a set of tasks to be executed, T={T1,T2,…,T m}, M is the threat posed by a group of drones performing tasks, M={M1,M2,…,M t}, C is the constraint condition; n is the number of drones, m is the number of tasks; t represents the time when the task is completed;

[0021] Step 1.3, determine the task allocation objective function:

[0022] The purpose of the multi-UAV task allocation model is to assign tasks to each UAV to maximize the overall benefit while satisfying various constraints. The core of multi-UAV task allocation is to determine whether each UAV gets a specific task.

[0023] The task allocation objective function is as follows:

[0024]

[0025] Where R ij represents the benefit of drone i when it obtains task j; r ij The reward for the drone when it completes a mission; the reward is based on the value of the mission itself. j and attenuation factors, where r j is the task value; ε is the attenuation coefficient; c ij The cost of the drone completing the mission; ij The trajectory cost for UAV i to complete task j; p ij is the risk cost associated with the mission; α is the cost coefficient, which is adjusted according to the nature of different missions and is used to adjust the proportion of track cost and risk cost in the total cost;

[0026] Calculate the corresponding benefit R according to the task allocation objective function ij ;

[0027] In reconnaissance or search missions, the track cost is more important, while in strike missions, the risk cost is more critical; the multi-UAV task allocation model can adapt to a variety of different task requirements and assign the most suitable task to each UAV to maximize the overall benefit; in order to design a multi-UAV task allocation function, under the condition of satisfying the constraints of the task allocation model, the optimal allocation scheme with the maximum total benefit R is obtained; the optimal allocation scheme π for the maximum total benefit R * as follows:

[0028]

[0029] Where, π is all the schemes for task allocation; T a The total time spent on the assigned task; variable λ ij Indicates whether UAV i obtains the assignment result of task j;

[0030] Step 1.4, determine the task allocation constraints:

[0031] In order to maximize the benefits of multi-UAV task allocation, the benefits of task j assigned to UAV i must be obtained under certain constraints. The constraints include the number of tasks assigned, the execution time, and the capacity of each UAV.

[0032] Constraint 1 represents the allocation quantity constraint, which means that no matter the number of drones is greater, equal to, or less than the number of tasks, each drone must be guaranteed to get at least one task, and each task must be assigned to at least one drone. The allocation quantity constraint formula is as follows:

[0033]

[0034] Among them, k i represents the number of tasks obtained by UAV i; k j represents the number of drones assigned to task j; the number of drones is n and the number of tasks is m;

[0035] Constraint 2 represents the execution time constraint, which means that all assigned tasks must be completed within the specified time to ensure the timeliness of the tasks. The execution time constraint is expressed as follows:

[0036] maxt j ≤T max ,j=1,…,mFormula (5)

[0037] Among them, t j is the time when task j is completed; T max To stipulate the latest time to complete the task;

[0038] Constraint 3 represents the single-machine capability constraint, which means that when the UAV is performing a mission, the UAV's range cannot exceed the maximum range limit to adapt to the UAV's endurance and performance constraints. The single-machine capability constraint is expressed as follows:

[0039] d ij ≤D max ,i=1,…,n,j=1,…,mFormula (6)

[0040] Among them, D max is the maximum range of the UAV; by allocating quantity constraints, execution time constraints, and single-machine capacity constraints, the task allocation plan is guaranteed to meet the actual operation needs while taking into account the capabilities and time constraints of the UAV, thereby achieving an efficient and feasible task allocation strategy.

[0041] Furthermore, in step 2, the process of the tenderer directly allocating tasks is as follows:

[0042] Step 2.1: Select any one of the multiple drones as the host. The host, acting as the bidder, is responsible for collecting mission information and information about non-host drones. Mission information includes geographic coordinates, type identification, priority, expected benefits, and potential risks. UAV information includes the number of drones, current location, performance parameters, and resource status. The host, acting as the bidder, directly assigns tasks to non-host drones based on the number of drones and missions.

[0043] The number of drones and missions is as follows:

[0044] Combination method 1: When the number of drones is equal to the number of missions, that is, when n = m:

[0045] Each drone is assigned a task. The enumeration greedy method is used to fix the order of the drones. The m tasks are numbered and arranged, and the arrangement with the largest total benefit is selected as the final allocation scheme. The combination of the number of drones and tasks is shown in formula (7). The matrix on the left of formula (7) is the order of the drones, and the matrix on the right is all the arrangements of the tasks. Each column in the right vector represents an arrangement of the tasks. There are a total of When calculating the arrangement of different tasks, the total benefits of the drones performing the corresponding numbered tasks, and the benefits of all drones for all tasks are expressed by the matrix of formula (8); according to the calculated benefits, the arrangement with the largest task benefit is greedily selected, which is the final task allocation result;

[0046]

[0047] Combination method 2: When the number of drones is greater than the number of tasks, that is, when n>m:

[0048] Each task is obtained by one or more drones. The enumeration greedy method is also used to select the optimal drone combination for task allocation, that is, all permutations and combinations of m drones are selected from n drones, and the remaining nm drones do not participate in task execution; the benefits of m drones for all tasks are expressed by the matrix of formula (9). The benefit greedy method selects the distribution arrangement with the maximum task benefit, which is the final task allocation result:

[0049]

[0050] In formula (9), the left vector is the number vector of the task, and the right matrix is ​​the arrangement matrix of the drone numbers. Each column in the right matrix represents an arrangement of drones. There are a total of Case; After each task is assigned to the corresponding m UAVs, there are n - m UAVs left unassigned; For the remaining unassigned UAVs, simply greedily select the task that can maximize the benefit;

[0051] Combination method 3: When the number of UAVs is less than the number of tasks, that is, when n < m:

[0052] Each UAV undertakes one or more tasks. First, use the greedy method to assign one task to each UAV, and assign the n tasks to n UAVs respectively. The sorting of the corresponding numbers of UAVs and tasks is as shown in the following formula (10); Then use the contract net protocol to assign the remaining m - n tasks to ensure that each task can be executed;

[0053]

[0054] For the remaining m - n tasks, the host publishes tender information for each task. All UAVs calculate the task benefit and bid when their task buffers are not full. The host notifies the UAV with the maximum benefit to obtain the remaining tasks; Since the UAV already has tasks, it is necessary to calculate the benefit according to the route cost between the last task in the task queue and the tendered task. When the end of the task queue of UAV i is task j and the benefit of the tendered task k where, is the route cost from task j to the tendered task k, and r k is the task value of the tendered task k; The route cost matrix D T is expressed as shown in the following formula (11);

[0055]

[0056] When all the m - n remaining tasks are won, the initial assignment ends.

[0057] Furthermore, in step 3, the external unknown environment includes discovering new tasks, environmental changes, UAV failures, missing task executions of tendering UAVs, and remaining resources of the UAV itself;

[0058] [[ID=​​​​​3.1 Discover new tasks:

[0061] When the UAV detects a new, urgent mission requirement during the execution of the current mission, and the new, urgent mission requirement exceeds the UAV's current resources or capabilities, the host needs to re-tender the new, urgent mission;

[0062] 3.2 Environmental changes:

[0063] When a drone encounters environmental changes during a mission, such as the appearance of new obstacles or threats in the environment, which make the drone's original mission path no longer safe or less efficient, the host needs to re-tender the current mission;

[0064] 3.3 Drone failure:

[0065] When a drone detects a fault in an adjacent drone, a surviving drone will take over the faulty drone's mission and re-evaluate and reassign the faulty drone's mission based on current conditions to ensure mission continuity.

[0066] 3.4 Missing bid drone mission execution:

[0067] During the mission execution, if the bidding drone fails to receive feedback on the mission progress from the bidding drone within the scheduled time, in order to avoid mission delays, the bidding drone will regain mission control and initiate a new round of bidding process;

[0068] 3.5 When the drone has remaining resources:

[0069] After a drone completes all tasks in the task list, if it detects that it still has surplus resources, it will have the opportunity to initiate a task takeover request to other drones that are still undertaking additional tasks; after a benefit evaluation, if it is determined that taking over additional tasks can bring higher returns, the drone will proactively submit a bid to maximize the utilization of resources.

[0070] Furthermore, in step 4, the allocation process of the 3L-CNP algorithm is as follows:

[0071] When entering the real-time task allocation phase, the Tripartite Constrained Contract Network Protocol (3L-CNP) algorithm is used for real-time task allocation. This involves four phases: bidding, tendering, competitive bidding, and contract signing. Constraints are added to each phase to ensure maximum task allocation benefits while significantly improving the algorithm's real-time performance and allocation efficiency.

[0072] In the bidding phase, the bidding UAV broadcasts the mission announcement to other UAVs through the distributed communication network; the mission announcement is represented by {t d ,L,p j ,γj ,T b ,R}, where t d represents the task detection time, L represents the task geographical coordinates, p j represents the task risk cost, γ j represents the priority of task j, T b Indicates the validity period of the tender;

[0073] Step 4.1: Based on the CNP algorithm, a bidding time limit is introduced to determine whether the bidding has timed out:

[0074] In order to ensure that high-priority tasks can be processed quickly, each task is set with a specific bidding time range Δt. Only drones that receive bidding information within Δt are eligible to participate in the bidding, thereby effectively controlling the number of drones participating in the bidding and improving the efficiency of task allocation. At the same time, the priority of the task γ j It directly affects the length of the bidding time. The higher the priority, the longer the bidding time. The shorter the time, the faster the urgent tasks can be assigned.

[0075] In addition, the UAV system also limits the number of communications of the bidding UAV during the bidding period to t c The duration of one communication is the same as the communication time. The number of communications limits the scope of dissemination of bidding information and reduces the communication burden. If the number of communications is less than one, the UAV system will ensure that the task information is transmitted to at least the directly adjacent UAVs of the bidding UAV to ensure that other UAVs can participate in the bidding, thereby avoiding the situation where no one takes over the task. The bidding time limit mechanism not only accelerates the allocation of high-priority tasks, but also significantly improves the communication efficiency of the UAV system by reducing unnecessary communication round trips. Overall, this method takes into account the speed of task allocation and the effective use of communication resources, ensuring the efficient operation of the multi-UAV system when processing high-priority tasks.

[0076] Step 4.2: Based on step 4.1, introduce task priority limits:

[0077] After a task is signed by the bidding drone, the next task can be released. Therefore, in the real-time allocation stage, when the bidding drone finds that multiple tasks need to be allocated, it needs to release the tasks one by one according to the priority. Task priority γ j ∈(0,1],γ j The higher the value, the more urgent the task;

[0078] In the real-time task allocation phase, tasks with higher priority are auctioned first. When a task is auctioned, if the bidding drone finds a new task, it will evaluate the value of the new task using formula (12). If the value of the new task exceeds the current task, the current task will be interrupted, the auction order will be changed, and the new task will be auctioned first.

[0079]

[0080] Among them, R ij R represents the benefit of drone i when task j does not have priority. ij Calculate according to formula (1); γ k represents the priority of task k; when the bidding drone receives bidding information for multiple tasks, it will decide the tasks to bid for according to formula (12), bidding for tasks with high priority and high profit; when encountering tasks with the same priority and profit, the drone will randomly select tasks to bid for; once the bidding drone successfully bids for a task, it will rearrange the order of task execution according to the priority and profit of the task to ensure that the most important task is completed first.

[0081] Furthermore, in step 5, during the bidding phase, a bidding quantity limit is set to determine the bidding drone's own resources:

[0082] After receiving the task information, the bidding drone first determines whether the drone's task buffer pool is full. If so, it withdraws from the bidding. Otherwise, it continues to determine whether it has received information about multiple bidding tasks at the same time. If so, it selects the task with the highest value based on the task priority and revenue ranking. Otherwise, it directly formulates a bid based on the task's revenue and participates in the bidding. When bidding, the drone chooses to buy, sell, replace, or exchange the bidding drone contract based on its own resource situation to obtain the best revenue.

[0083] Step 5.1: Set the bidding quantity limit and check whether the bidding drone buffer pool is full:

[0084] Limit the number of drone bids and manage the bidding status of the bidding drones; each drone has a task buffer pool capacity q i , used to control the number of tasks that the drone can bid for; the buffer pool capacity q i Calculate according to the following formula (13):

[0085]

[0086] in, Indicates the number of existing tasks in the system before the current bidding, represents the number of new tasks found in the current bidding process, m0 is the number of tasks completed by drone i, and the buffer pool capacity qi The result is an integer rounded up; when the number of tasks in the buffer pool is less than q i When the buffer pool reaches its capacity limit, the drone will stop bidding for new tasks and focus on completing the tasks that have been awarded, thus avoiding task accumulation and ensuring the continuity and efficiency of task execution.

[0087] Step 5.2: Determine whether the bidding drone has sufficient resources:

[0088] The UAV system also introduces an evaluation mechanism for the remaining range of the UAV to ensure that the UAV has sufficient endurance to complete the new mission; Formula D max -d i <d ij Indicates that the remaining range of the drone is not enough to complete the new mission, and the drone will not participate in the mission bidding at this time; where D max Indicates the maximum range supported by drone i, d i The distance the drone has flown; the evaluation mechanism for the remaining range of the drone improves the rationality of task allocation and ensures that tasks are assigned to drones that can be executed smoothly.

[0089] Furthermore, in step 6, during the bidding phase, the determination of whether the drone bidding feedback has timed out is as follows:

[0090] For bidding drones that exceed the specified bidding time, the bidding drone will send a timeout message, causing the timed bidding drone to withdraw from the bidding;

[0091] For the bidding drones within the specified bidding time range, the bidding drones will leave the bid documents and sort them according to the bid prices. The drone with the highest bid price will be selected as the winner, and the winning bid information will be sent to all drones participating in the bidding.

[0092] Furthermore, in step 7, during the signing phase, the types of contracts signed include sales contracts, replacement contracts, and exchange contracts.

[0093] Furthermore, the sales contract is the most basic form, involving the transfer of a single task execution right. The sales contract is for the winning drone to obtain the task execution right. The data in the sales contract is stored in a six-tuple, which is represented by [T k ,γ k ,U i ,P ik ,Q i ,U j ], where T k Indicates the number of the assigned task, U i Indicates the winning drone number, P ik Indicates drone U i For Task Tk The quote, Q i Indicates drone U i The task queue, U j Indicates the bidding drone number;

[0094] The replacement contract allows bidders to abandon the current low-profit task and bid for a higher-profit task; the abandoned task will be reallocated by the bidding drone as the new bidder; compared to the purchase and sale contract, the replacement contract adds a set of data T i , T i Used to record the mission number abandoned by the drone; the seven-tuple data of the replacement contract is represented as [T k ,γ k ,U i ,P ik ,Q i ,U j ,T i ];

[0095] The exchange contract is a special case of the replacement contract. In the exchange contract, the task abandoned by the bidding drone is directly taken over by the bidding drone, forming a direct exchange of tasks. The exchange contract adds γ i ,P ji ,Q j , where γ i Represents task T i Priority, P ji Indicates drone U j For Task T i The quote, Q j Indicates drone U j The task queue of the replacement contract is represented by the ten-tuple data [T k ,γ k ,U i ,P ik ,Q i ,U j ,T i ,γ i ,P ji ,Q j ].

[0096] Furthermore, in step 8, the supervision process of the winning drone mission execution is as follows:

[0097] For the winning drone, in order to ensure the smooth completion of the mission and prevent the mission from being unable to be completed due to a malfunction of the winning drone, the bidding drone needs to supervise the mission execution of the winning drone:

[0098] The time when the bidding drone and the winning drone sign the contract is t a ;tl is the maximum time limit for task j to complete; t c is the maximum communication duration in a multi-UAV system; the bidding UAV needs to be in t l +t a +t c The winning drone will receive feedback on the task before t. If the bidding drone does not receive feedback, the winning drone will send a reminder first. If c If no feedback is received within the time limit, the bidding drone will believe that the winning drone has encountered a major sudden failure and cannot complete the task. The bidding drone will then take back the task, continue to have the right to allocate the task, and re-tender. Through the feedback and supervision process, the stability of the drone system's task allocation and the task completion rate have been significantly improved.

[0099] In specific applications, drones flexibly select contract types based on their resource availability: when resources are abundant, purchase and sale contracts are preferred; when resources are limited but high-return tasks are available, exchange contracts are chosen; and when the bidding drone is able to perform a task that the bidding drone has abandoned, an exchange contract is used. This flexible use of contract types enables the task allocation mechanism to dynamically adapt to changes in complex environments, optimize resource utilization efficiency, and improve task completion rates and overall system performance.

[0100] The beneficial effects of the present invention are as follows:

[0101] (1) Improved efficiency and real-time performance: The tripartite-constrained CNP algorithm significantly improves the efficiency and real-time response capability of task allocation by setting task priorities, limiting bidding time, and adopting task capacity buffer pools. This enables the CNP algorithm to quickly adapt to environmental changes and adjust task allocation strategies in a timely manner, ensuring that high-priority tasks can be processed quickly.

[0102] (2) Optimization of resource allocation and enhancement of system robustness: By limiting the number of bids and introducing multiple contract types, the tripartite-restricted CNP algorithm achieves balanced resource allocation, avoids resource waste, and improves the task completion rate. At the same time, the task supervision and reallocation mechanism in the CNP algorithm enhances the robustness of the system, ensuring that tasks can be effectively handled in the face of drone failures or other emergencies. BRIEF DESCRIPTION OF THE DRAWINGS

[0103] Figure 1 Assigning steps to multiple drone tasks;

[0104] Figure 2 This is a schematic diagram of the multi-UAV mission area;

[0105] Figure 3 Flowchart for the initial allocation phase;

[0106] Figure 4 Assigning conditional graphs for trigger implementation;

[0107] Figure 5 Assign stage flow chart for real time;

[0108] Figure 6 Comparison of the allocation performance of the two algorithms;

[0109] Figure 6 In the figure, Figure (a) is a comparison of the number of communications; Figure (b) is a comparison of the task reallocation time; Figure (c) is a comparison of the total cost of the tasks; and Figure (d) is a comparison of the normalized total cost. DETAILED DESCRIPTION

[0110] The proposed method for multi-UAV dynamic task allocation based on tripartite constraints and CNP training consists of an initial allocation phase and an implementation phase. The following provides a more detailed and comprehensive description of this technical solution, combining the accompanying drawings and specific examples of these two phases.

[0111] The present invention provides a multi-UAV dynamic task allocation method based on tripartite constraints and CNP, and the multi-UAV dynamic task allocation method includes the following steps:

[0112] like Figure 1 As shown:

[0113] Step 1: Build a UAV collaborative multi-task allocation model;

[0114] Step 2: In the initial task allocation stage, the tenderer directly allocates the task;

[0115] Step 3: The external unknown environment triggers the drone to enter the real-time allocation phase;

[0116] Step 4: During the bidding phase, the 3L-CNP algorithm is used for real-time task allocation;

[0117] Step 5: During the bidding phase, determine the bidding drone's own resources;

[0118] Step 6: During the bidding phase, determine whether the drone bidding feedback has timed out;

[0119] Step 7: During the contract signing phase, the bidding drone receives the bid and signs the contract;

[0120] Step 8: Supervise the execution of the winning drone mission.

[0121] like Figure 2 As shown:

[0122] In step 1, the method for constructing the UAV collaborative multi-task allocation model is as follows:

[0123] Step 1.1, define the task area:

[0124] The mission area is a rectangular, two-dimensional, finite space that includes all mission targets and threat zones that affect real-time mission allocation. The threat zone includes obstacles that block the drone's normal flight path, such as buildings, mountains, and trees. The mission targets are known static targets within the mission area. Under different missions, the drone swarm must efficiently reach the mission target location.

[0125] Step 1.2, build a task allocation model:

[0126] The constraints of multi-UAV task allocation include the number of assigned tasks, the execution time constraints, and the single-machine capacity constraints. The task allocation model is represented by the set {E, V, T, M, C}; where E is the task area, V is a set of UAVs that can execute the task, and V = {V1, V2, ..., V n}, T is a set of tasks to be executed, T={T1,T2,…,T m}, M is the threat posed by a group of drones performing tasks, M={M1,M2,…,M t}, C is the constraint condition; n is the number of drones, m is the number of tasks; t represents the time when the task is completed;

[0127] Step 1.3, determine the task allocation objective function:

[0128] The purpose of the multi-UAV task allocation model is to assign tasks to each UAV to maximize the overall benefit while satisfying various constraints. The core of multi-UAV task allocation is to determine whether each UAV gets a specific task.

[0129] The task allocation objective function is as follows:

[0130]

[0131] Where R ij represents the benefit of drone i when it obtains task j; r ij The reward for the drone when it completes a mission; the reward is based on the value of the mission itself. j and attenuation factors, where r j is the task value; ε is the attenuation coefficient; c ij The cost of the drone completing the mission; ij The trajectory cost for UAV i to complete task j; p ij is the risk cost associated with the mission; α is the cost coefficient, which is adjusted according to the nature of different missions and is used to adjust the proportion of track cost and risk cost in the total cost;

[0132] Calculate the corresponding benefit R according to the task allocation objective function ij ;

[0133] In reconnaissance or search missions, the track cost is more important, while in strike missions, the risk cost is more critical; the multi-UAV task allocation model can adapt to a variety of different task requirements and assign the most suitable task to each UAV to maximize the overall benefit; in order to design a multi-UAV task allocation function, under the condition of satisfying the constraints of the task allocation model, the optimal allocation scheme with the maximum total benefit R is obtained; the optimal allocation scheme π for the maximum total benefit R * as follows:

[0134]

[0135] Where π is the total time spent on task assignment; variable λ is the total time spent on task assignment. ij Indicates whether UAV i obtains the assignment result of task j;

[0136] Step 1.4, determine the task allocation constraints:

[0137] In order to maximize the benefits of multi-UAV task allocation, the benefits of task j assigned to UAV i must be obtained under certain constraints. The constraints include the number of tasks assigned, the execution time, and the capacity of each UAV.

[0138] Constraint 1 represents the allocation quantity constraint, which means that no matter the number of drones is greater, equal to, or less than the number of tasks, each drone must be guaranteed to get at least one task, and each task must be assigned to at least one drone. The allocation quantity constraint formula is as follows:

[0139]

[0140] Among them, k i represents the number of tasks obtained by UAV i; k j represents the number of drones assigned to task j; the number of drones is n and the number of tasks is m;

[0141] Constraint 2 represents the execution time constraint, which means that all assigned tasks must be completed within the specified time to ensure the timeliness of the tasks. The execution time constraint is expressed as follows:

[0142] maxt j ≤T max ,j=1,…,mFormula (5)

[0143] Among them, t j is the time when task j is completed; T max To stipulate the latest time to complete the task;

[0144] Constraint 3 represents the single-machine capability constraint, which means that when the UAV is performing a mission, the UAV's range cannot exceed the maximum range limit to adapt to the UAV's endurance and performance constraints. The single-machine capability constraint is expressed as follows:

[0145] d ij ≤D max ,i=1,…,n,j=1,…,mFormula (6)

[0146] Among them, D max is the maximum range of the UAV; by allocating quantity constraints, execution time constraints, and single-machine capacity constraints, the task allocation plan is guaranteed to meet the actual operation needs while taking into account the capabilities and time constraints of the UAV, thereby achieving an efficient and feasible task allocation strategy.

[0147] like Figure 3 As shown:

[0148] In step 2, the process of the tenderer directly allocating tasks is as follows:

[0149] Step 2.1: Select any one of the multiple drones as the host. The host, acting as the bidder, is responsible for collecting mission information and information about non-host drones. Mission information includes geographic coordinates, type identification, priority, expected benefits, and potential risks. UAV information includes the number of drones, current location, performance parameters, and resource status. The host, acting as the bidder, directly assigns tasks to non-host drones based on the number of drones and missions.

[0150] The number of drones and missions is as follows:

[0151] Combination method 1: When the number of drones is equal to the number of missions, that is, when n = m:

[0152] Each drone is assigned a task. The enumeration greedy method is used to fix the order of the drones. The m tasks are numbered and arranged, and the arrangement with the largest total benefit is selected as the final allocation scheme. The combination of the number of drones and tasks is shown in formula (7). The matrix on the left of formula (7) is the order of the drones, and the matrix on the right is all the arrangements of the tasks. Each column in the right vector represents an arrangement of the tasks. There are a total of When calculating the arrangement of different tasks, the total benefits of the drones performing the corresponding numbered tasks, and the benefits of all drones for all tasks are expressed by the matrix of formula (8); according to the calculated benefits, the arrangement with the largest task benefit is greedily selected, which is the final task allocation result;

[0153]

[0154] Combination method 2: When the number of drones is greater than the number of tasks, that is, when n > m:

[0155] Each task is obtained by one or more drones. Similarly, using the enumeration greedy method, the optimal drone combination is selected for task allocation, that is, all permutations and combinations of m drones are selected from n drones, and the remaining n - m drones do not participate in task execution; the benefits of m drones for all tasks are represented by a matrix in formula (9). The allocation permutation with the largest task benefit is greedily selected as the final task allocation result:

[0156]

[0157] In formula (9), the left vector is the task number vector, and the right matrix is the permutation matrix of drone numbers. Each column in the right matrix represents a permutation of drones. The number of permutations of drones is After each task is assigned to the corresponding m drones, the remaining n - m drones are not assigned tasks; for the remaining drones that are not assigned tasks, greedily select the task that can maximize the benefit.

[0158] Combination method 3: When the number of drones is less than the number of tasks, that is, when n < m:

[0159] Each drone undertakes one or more tasks. First, each drone is assigned a task through the enumeration greedy method, and n tasks are respectively assigned to n drones. The sorting of the corresponding numbers of drones and tasks is as shown in formula (10) below; then the contract net protocol is used to allocate the remaining m - n tasks to ensure that each task can be executed.

[0160]

[0161] For the remaining m - n tasks, the host publishes tender information for each task. All drones calculate the task benefit and bid when the task buffer is not full. The host notifies the drone with the largest benefit to obtain the remaining tasks; since the drone already has tasks, the benefit needs to be calculated according to the route cost between the last task in the task queue and the tender task. When the end of the task queue of drone i is task j and the benefit of tender task k where is the route cost from task j to tender task k, and r k is the task value of tender task k; the route cost matrix D T is represented as shown in formula (11) below;

[0162]

[0163] When all the remaining m - n tasks are won, the initial allocation ends.

[0164] like Figure 4 As shown:

[0165] In step 3, the external unknown environment includes the discovery of new tasks, environmental changes, drone failures, lack of execution of bidding drone tasks, and the remaining resources of the drone itself;

[0166] During the initial allocation phase, once the drone task allocation plan is determined, participating drones will receive detailed task allocation results and initiate their respective task execution processes accordingly. However, during the actual task execution process, drones may encounter a series of unforeseen situations due to the uncertainty and dynamic nature of the external environment.

[0167] In order to meet the foresight challenges and ensure the smooth completion of the mission, after the initial mission allocation phase, the external unknown environment triggers the drone to enter the real-time mission allocation phase. The real-time mission allocation includes:

[0168] 3.1 Discover new tasks:

[0169] When the UAV detects a new, urgent mission requirement during the execution of the current mission, and the new, urgent mission requirement exceeds the UAV's current resources or capabilities, the host needs to re-tender the new, urgent mission;

[0170] 3.2 Environmental changes:

[0171] When a drone encounters environmental changes during a mission, such as the appearance of new obstacles or threats in the environment, which make the drone's original mission path no longer safe or less efficient, the host needs to re-tender the current mission;

[0172] 3.3 Drone failure:

[0173] When a drone detects a fault in an adjacent drone, a surviving drone will take over the faulty drone's mission and re-evaluate and reassign the faulty drone's mission based on current conditions to ensure mission continuity.

[0174] 3.4 Missing bid drone mission execution:

[0175] During the mission execution, if the bidding drone fails to receive feedback on the mission progress from the bidding drone within the scheduled time, in order to avoid mission delays, the bidding drone will regain mission control and initiate a new round of bidding process;

[0176] 3.5 When the drone has remaining resources:

[0177] After a drone completes all tasks in the task list, if it detects that it still has surplus resources, it will have the opportunity to initiate a task takeover request to other drones that are still undertaking additional tasks; after a benefit evaluation, if it is determined that taking over additional tasks can bring higher returns, the drone will proactively submit a bid to maximize the utilization of resources.

[0178] like Figure 5 As shown:

[0179] In step 4, the allocation process of the 3L-CNP algorithm is as follows:

[0180] When entering the real-time task allocation phase, the Tripartite Constrained Contract Network Protocol (3L-CNP) algorithm is used for real-time task allocation. This involves four phases: bidding, tendering, competitive bidding, and contract signing. Constraints are added to each phase to ensure maximum task allocation benefits while significantly improving the algorithm's real-time performance and allocation efficiency.

[0181] In the bidding phase, the bidding UAV broadcasts the mission announcement to other UAVs through the distributed communication network; the mission announcement is represented by {t d ,L,p j ,γ j ,T b ,R}, where t d represents the task detection time, L represents the task geographical coordinates, p j represents the task risk cost, γ j represents the priority of task j, T b Indicates the validity period of the tender;

[0182] Step 4.1: Based on the CNP algorithm, a bidding time limit is introduced to determine whether the bidding has timed out:

[0183] In order to ensure that high-priority tasks can be processed quickly, each task is set with a specific bidding time range Δt. Only drones that receive bidding information within Δt are eligible to participate in the bidding, thereby effectively controlling the number of drones participating in the bidding and improving the efficiency of task allocation. At the same time, the priority of the task γ j It directly affects the length of the bidding time. The higher the priority, the longer the bidding time. The shorter the time, the faster the urgent tasks can be assigned.

[0184] In addition, the UAV system also limits the number of communications of the bidding UAV during the bidding period to t cThe duration of one communication is the same as the communication time. The number of communications limits the scope of dissemination of bidding information and reduces the communication burden. If the number of communications is less than one, the UAV system will ensure that the task information is transmitted to at least the directly adjacent UAVs of the bidding UAV to ensure that other UAVs can participate in the bidding, thereby avoiding the situation where no one takes over the task. The bidding time limit mechanism not only accelerates the allocation of high-priority tasks, but also significantly improves the communication efficiency of the UAV system by reducing unnecessary communication round trips. Overall, this method takes into account the speed of task allocation and the effective use of communication resources, ensuring the efficient operation of the multi-UAV system when processing high-priority tasks.

[0185] Step 4.2: Based on step 4.1, introduce task priority limits:

[0186] After a task is signed by the bidding drone, the next task can be released. Therefore, in the real-time allocation stage, when the bidding drone finds that multiple tasks need to be allocated, it needs to release the tasks one by one according to the priority. Task priority, γ j The higher the value, the more urgent the task;

[0187] In the real-time task allocation phase, tasks with higher priority are auctioned first. When a task is auctioned, if the bidding drone finds a new task, it will evaluate the value of the new task using formula (12). If the value of the new task exceeds the current task, the current task will be interrupted, the auction order will be changed, and the new task will be auctioned first.

[0188]

[0189] Among them, R ij R represents the benefit of drone i when task j does not have priority. ij Calculate according to formula (1); γ k represents the priority of task k; when the bidding drone receives bidding information for multiple tasks, it will decide the tasks to bid for according to formula (12), bidding for tasks with high priority and high profit; when encountering tasks with the same priority and profit, the drone will randomly select tasks to bid for; once the bidding drone successfully bids for a task, it will rearrange the order of task execution according to the priority and profit of the task to ensure that the most important task is completed first.

[0190] In step 5, during the bidding phase, set a bid quantity limit and determine the bidding drone's own resources:

[0191] After receiving the task information, the bidding drone first determines whether the drone's task buffer pool is full. If so, it withdraws from the bidding. Otherwise, it continues to determine whether it has received information about multiple bidding tasks at the same time. If so, it selects the task with the highest value based on the task priority and revenue ranking. Otherwise, it directly formulates a bid based on the task's revenue and participates in the bidding. When bidding, the drone chooses to buy, sell, replace, or exchange the bidding drone contract based on its own resource situation to obtain the best revenue.

[0192] Step 5.1: Set the bidding quantity limit and check whether the bidding drone buffer pool is full:

[0193] Limit the number of drone bids and manage the bidding status of the bidding drones; each drone has a task buffer pool capacity q i , used to control the number of tasks that the drone can bid for; the buffer pool capacity q i Calculate according to the following formula (13):

[0194]

[0195] in, Indicates the number of existing tasks in the system before the current bidding, represents the number of new tasks found in the current bidding process, m0 is the number of tasks completed by drone i, and the buffer pool capacity q i The result is an integer rounded up; when the number of tasks in the buffer pool is less than q i When the buffer pool reaches its capacity limit, the drone will stop bidding for new tasks and focus on completing the tasks that have been awarded, thus avoiding task accumulation and ensuring the continuity and efficiency of task execution.

[0196] Step 5.2: Determine whether the bidding drone has sufficient resources:

[0197] The UAV system also introduces an evaluation mechanism for the remaining range of the UAV to ensure that the UAV has sufficient endurance to complete the new mission; Formula D max -d i <d ij Indicates that the remaining range of the drone is not enough to complete the new mission, and the drone will not participate in the mission bidding at this time; where D max Indicates the maximum range supported by drone i, d i The distance the drone has flown; the evaluation mechanism for the remaining range of the drone improves the rationality of task allocation and ensures that tasks are assigned to drones that can be executed smoothly.

[0198] In step 6, during the bidding phase, whether the drone bidding feedback timeout is determined as follows:

[0199] For bidding drones that exceed the specified bidding time, the bidding drone will send a timeout message, causing the timed bidding drone to withdraw from the bidding;

[0200] For the bidding drones within the specified bidding time range, the bidding drones will leave the bid documents and sort them according to the bid prices. The drone with the highest bid price will be selected as the winner, and the winning bid information will be sent to all drones participating in the bidding.

[0201] In step 7, during the signing phase, the types of contracts signed include sales contracts, replacement contracts, and exchange contracts.

[0202] The sales contract is the most basic form, involving the transfer of a single task execution right. The sales contract is for the winning drone to obtain the task execution right. The data in the sales contract is stored in a six-tuple, which is represented by [T k ,γ k ,U i ,P ik ,Q i ,U j ], where T k Indicates the number of the assigned task, U i Indicates the winning drone number, P ik Indicates drone U i For Task T k The quote, Q i Indicates drone U i The task queue, U j Indicates the bidding drone number;

[0203] The replacement contract allows bidders to abandon the current low-profit task and bid for a higher-profit task; the abandoned task will be reallocated by the bidding drone as the new bidder; compared to the purchase and sale contract, the replacement contract adds a set of data T i , T i Used to record the mission number abandoned by the drone; the seven-tuple data of the replacement contract is represented as [T k ,γ k ,U i ,P ik ,Q i ,U j ,T i ];

[0204] The exchange contract is a special case of the replacement contract. In the exchange contract, the task abandoned by the bidding drone is directly taken over by the bidding drone, forming a direct exchange of tasks. The exchange contract adds γ i ,P ji ,Q j , where γ iRepresents task T i Priority, P ji Indicates drone U j For Task T i The quote, Q j Indicates drone U j The task queue of the replacement contract is represented by the ten-tuple data [T k ,γ k ,U i ,P ik ,Q i ,U j ,T i ,γ i ,P ji ,Q j ].

[0205] In step 8, the supervision process of the winning drone mission execution is as follows:

[0206] For the winning drone, in order to ensure the smooth completion of the mission and prevent the mission from being unable to be completed due to a malfunction of the winning drone, the bidding drone needs to supervise the mission execution of the winning drone:

[0207] The time when the bidding drone and the winning drone sign the contract is t a ;t l is the maximum time limit for task j to complete; t c is the maximum communication duration in a multi-UAV system; the bidding UAV needs to be in t l +t a +t c The winning drone will receive feedback on the task before t. If the bidding drone does not receive feedback, the winning drone will send a reminder first. If c If no feedback is received within the time limit, the bidding drone will believe that the winning drone has encountered a major sudden failure and cannot complete the task. The bidding drone will then take back the task, continue to have the right to allocate the task, and re-tender. Through the feedback and supervision process, the stability of the drone system's task allocation and the task completion rate have been significantly improved.

[0208] This paper proposes a method for dynamic multi-UAV task allocation based on tripartite constraints and CNP. During the real-time task allocation phase, distributed communication is used to reduce communication costs. Task priorities are set to accelerate the allocation of high-priority tasks. Bidding time is limited and the number of bids is set to achieve a more balanced task distribution. A task capacity buffer pool is introduced to control UAV bidding behavior and avoid resource waste. Furthermore, the algorithm provides multiple contract types, including sale, replacement, and exchange contracts, to accommodate changing task allocation requirements, increasing system flexibility and task completion efficiency. These improvements enable the tripartite constraint CNP algorithm to demonstrate improved real-time and robustness when handling complex and dynamic task allocation problems.

[0209] Finally, through simulation experiments, the task allocation efficiency of the traditional CNP algorithm and the improved CNP algorithm was compared in terms of total revenue, allocation duration, number of communications, and total flight distance. In actual training, three allocation scenarios were set, with the number of drones and tasks (N, M) being (9, 9), (9, 5), and (5, 9), respectively. The number of task buffers was calculated according to Equation (12) as 1, 1, and 2, respectively. When M = 5, the tasks were numbered (4, 5, 6, 8, 9), and when N = 5, the drones were numbered (1, 4, 5, 8, 9). Simulation results show that when using the CNP algorithm, the reallocation results are consistent with the improved CNP when the simulation step length is 4 seconds, but the bidding targets all drones, which increases unnecessary communications. When the simulation step length is 7 seconds, the released tasks are not sorted and are auctioned directly in the original order. The bidding scope is still all drones, and the number of tasks for the bidder is not restricted, which further increases the communication volume.

[0210] like Figure 6 As shown:

[0211] To evaluate the allocation performance of the two algorithms, five simulation experiments were conducted in environments with 6, 8, 10, 12, and 14 drones, respectively. Each simulation was repeated 50 times. In each experiment, the number of tasks, M, = N + 3, and the number of obstacles, M, = 4, were set. At the beginning of each experiment, the initial positions of the drones, tasks, obstacles, task priorities, and obstacle radii were randomly generated. A comparison of the allocation performance of the two algorithms is shown in Table 1. Figure 6 The evaluation index values ​​in are the average values ​​of 50 random experiments.

[0212] Table 1 Allocation index values ​​of the two algorithms for different numbers of drones

[0213]

[0214] The total mission cost is the sum of the total distance after the mission is completed and the risk cost of each simulation step, which is the weighted sum of the linear normalized values ​​of the three indicators, namely Cn =β1n n +β2t n +β3c n ,,n n ,t n ,c n The three indicators are linearly normalized, and the weights β1, β2, and β3 are 0.3, 0.4, and 0.3 respectively. The smaller the reallocation time and the number of communications, the higher the allocation efficiency, and the smaller the normalized cost, the better the overall allocation performance of the algorithm.

[0215] from Figure 5 As can be seen in the figure, in environments with varying numbers of UAVs, the average number of communications and average reallocation time of the CNP algorithm based on the tripartite agreement are 36 fewer and 69.58 ms fewer, respectively, than those of the CNP algorithm. The average normalized cost is 20.72% lower than that of the CNP algorithm, demonstrating that the CNP algorithm based on the tripartite agreement has high reallocation efficiency. As the number of UAVs increases, the number of communications and allocation time of both algorithms also increase, but the CNP algorithm's growth rate is significantly higher than that of the CNP algorithm based on the tripartite agreement. When the number of UAVs reaches 12 and 14, the number of communications of the CNP algorithm reaches 1.5 times that of the CNP algorithm based on the tripartite agreement, indicating that the CNP algorithm based on the tripartite agreement significantly outperforms the CNP algorithm in terms of realtime performance. In terms of total cost, due to the limited scope of the bidding, the total cost of the CNP algorithm based on the tripartite agreement is higher than that of the CNP algorithm, but the difference is small and remains essentially the same when N = 8. This demonstrates that the CNP algorithm based on the tripartite agreement can improve allocation speed while maintaining a good allocation cost. For the normalized total cost, the CNP based on the tripartite agreement is significantly lower than the CNP and has a slow growth rate. The comprehensive evaluation index value is better than the CNP, indicating that the allocation efficiency is higher than the CNP, which further illustrates the excellent allocation performance of the CNP based on the tripartite agreement.

[0216] The above description is only a preferred embodiment of the present invention. It should be pointed out that the embodiments of the present invention are not limited to the above-mentioned implementation methods. For ordinary technicians in the technical field to which the present invention belongs, several replacements, modifications, etc. can be made without departing from the principles of the present invention, and all of them should be regarded as falling within the scope of protection of the present invention.

Claims

1. A multi-UAV dynamic task allocation method based on tripartite constraints and CNP, characterized by: The multi-UAV dynamic task allocation method comprises the following steps: Step 1: Build a UAV collaborative multi-task allocation model; Step 2: In the initial task allocation stage, the tenderer directly allocates the task; Step 3: The external unknown environment triggers the drone to enter the real-time allocation phase; Step 4: During the bidding phase, the 3L-CNP algorithm is used for real-time task allocation; The allocation process of the 3L-CNP algorithm is as follows: After entering the real-time task allocation phase, the 3L-CNP algorithm is used for real-time task allocation, which includes four stages: bidding, tendering, competitive bidding, and contract signing. Limiting measures are added to different stages to ensure the maximum benefit of task allocation while significantly improving the algorithm's real-time performance and allocation efficiency. In the bidding phase, the bidding UAV broadcasts the mission announcement to other UAVs through the distributed communication network; the mission announcement is represented by {t d ,L,p j ,γ j ,T b ,R}, where t d represents the task detection time, L represents the task geographical coordinates, p j represents the task risk cost, γ j represents the priority of task j, T b Indicates the validity period of the tender; Step 4.1: Based on the CNP algorithm, a bidding time limit is introduced to determine whether the bidding has timed out: In order to ensure that high-priority tasks can be processed quickly, each task is set with a specific bidding time range Δt. Only drones that receive bidding information within Δt are eligible to participate in the bidding, thereby effectively controlling the number of drones participating in the bidding and improving the efficiency of task allocation. At the same time, the priority of the task γ j It directly affects the length of the bidding time. The higher the priority, the longer the bidding time. The shorter the time, the faster the urgent tasks can be assigned. In addition, the UAV system also limits the number of communications of the bidding UAV during the bidding period to t c The communication time is the duration of one communication. The number of communications limits the dissemination range of the bidding information and reduces the communication burden. If the number of communications is less than one, the UAV system will ensure that the task information is at least transmitted to the UAVs directly adjacent to the bidding UAV. Step 4.2: Based on step 4.1, introduce task priority limits: After a task is signed by the bidding drone, the next task can be released. Therefore, in the real-time allocation stage, when the bidding drone finds that multiple tasks need to be allocated, it needs to release the tasks one by one according to the priority. Task priority γ j ∈(0,1],γ j The higher the value, the more urgent the task; In the real-time task allocation phase, tasks with higher priority are auctioned first. When a task is auctioned, if the bidding drone finds a new task, it will evaluate the value of the new task using formula (12). If the value of the new task exceeds the current task, the current task will be interrupted, the auction order will be changed, and the new task will be auctioned first. Among them, R ij R represents the benefit of drone i when task j does not have priority. ij Calculate according to formula (1); γ k represents the priority of task k; when the bidding drone receives bidding information for multiple tasks, it will decide the tasks to bid for according to formula (12), bidding for tasks with high priority and high benefits; when encountering tasks with the same priority and benefits, the drone will randomly select tasks to bid for; once the bidding drone successfully bids for a task, it will rearrange the order of task execution according to the priority and benefits of the tasks to ensure that the most important tasks are completed first; Step 5: During the bidding phase, determine the bidding drone's own resources; Step 6: During the bidding phase, determine whether the drone bidding feedback has timed out; Step 7: During the contract signing phase, the bidding drone receives the bid and signs the contract; Step 8: Supervise the execution of the winning drone mission.

2. The multi-UAV dynamic task allocation method according to claim 1 is characterized in that: In step 1, the method for constructing the UAV collaborative multi-task allocation model is as follows: Step 1.1, define the task area: The mission area is a rectangular, two-dimensional, finite space that includes all mission targets and threat zones that affect real-time mission allocation. The threat zone includes obstacles that block the drone's normal flight path, such as buildings, mountains, and trees. The mission targets are known static targets within the mission area. Under different missions, the drone swarm must efficiently reach the mission target location. Step 1.2, build a task allocation model: The constraints of multi-UAV task allocation include the number of assigned tasks, the execution time constraints, and the single-machine capacity constraints. The task allocation model is represented by the set {E, V, T, M, C}; where E is the task area, V is a set of UAVs that can execute the task, and V = {V1, V2, ..., V n }, T is a set of tasks to be executed, T={T1,T2,…,T m }, M is the threat posed by a group of drones performing tasks, M={M1,M2,…,M t }, C is the constraint condition; n is the number of drones, m is the number of tasks; t represents the time when the task is completed; Step 1.3, determine the task allocation objective function: The task allocation objective function is as follows: Where R ij represents the benefit of drone i when it obtains task j; r ij The reward for the drone when it completes a mission; the reward is based on the value of the mission itself. j and attenuation factors, where r j is the task value; ε is the attenuation coefficient; c ij The cost of the drone completing the mission; ij The trajectory cost for UAV i to complete task j; p ij is the risk cost associated with the task; α is the cost coefficient, which is adjusted according to the nature of different tasks; To design the task allocation function for multiple UAVs, the optimal allocation scheme with the maximum total benefit R is obtained under the condition that the constraints of the task allocation model are met; the optimal allocation scheme with the maximum total benefit R is π * as follows: Where, π is all the schemes for task allocation; T a The total time spent on the assigned task; variable λ ij Indicates whether UAV i obtains the assignment result of task j; Step 1.4, determine the task allocation constraints: The constraints include allocation quantity constraints, execution time constraints, and single machine capacity constraints; Constraint 1 represents the allocation quantity constraint, which means that no matter the number of drones is greater, equal to, or less than the number of tasks, each drone must be guaranteed to get at least one task, and each task must be assigned to at least one drone. The allocation quantity constraint formula is as follows: Among them, k i represents the number of tasks obtained by UAV i; k j represents the number of drones assigned to task j; the number of drones is n and the number of tasks is m; Constraint 2 represents the execution time constraint, which means that all assigned tasks must be completed within the specified time to ensure the timeliness of the tasks. The execution time constraint is expressed as follows: maxt j ≤T max ,j=1,…,m Formula (5) Among them, t j is the time when task j is completed; T max To stipulate the latest time to complete the task; Constraint 3 represents the single-machine capability constraint, which means that when the UAV is performing a mission, the UAV's range cannot exceed the maximum range limit to adapt to the UAV's endurance and performance constraints. The single-machine capability constraint is expressed as follows: d ij ≤D max ,i=1,…,n,j=1,…,m Formula (6) Among them, D max The maximum range of the drone.

3. The multi-UAV dynamic task allocation method according to claim 1, characterized in that: In step 2, the process of the tenderer directly allocating tasks is as follows: Step 2.1: Arbitrarily select one of the multiple drones as the host. The host is the tenderer and is responsible for collecting task information and the information of non-host drones. The task information includes geographical coordinates, type identification, priority level, expected revenue, and potential risks. The drone information includes the number of drones, current positions, performance parameters, and resource status. The host, as the tenderer, directly assigns tasks to non-host drones according to the combination method of drones and tasks in terms of quantity. The combination methods of the drones and tasks in terms of quantity are as follows: Combination Method 1: When the number of drones is equal to the number of tasks, i.e., when n = m: Each drone is assigned a task. The enumeration greedy method is used to fix the order of the drones. The m tasks are numbered and arranged, and the arrangement with the largest total benefit is selected as the final allocation scheme. The combination of the number of drones and tasks is shown in formula (7). The matrix on the left of formula (7) is the order of the drones, and the matrix on the right is all the arrangements of the tasks. Each column in the right vector represents an arrangement of the tasks. There are a total of When calculating the arrangement of different tasks, the total benefits of the drones performing the corresponding numbered tasks, and the benefits of all drones for all tasks are expressed by the matrix of formula (8); according to the calculated benefits, the arrangement with the largest task benefit is greedily selected, which is the final task allocation result; Combination Method 2: When the number of drones is more than the number of tasks, i.e., when n > m: Each task is obtained by one or more drones. Similarly, the enumeration greedy method is used to select the optimal drone combination for task assignment, that is, all permutations and combinations of selecting m drones from n drones are selected, and the remaining n - m drones do not participate in task execution. The revenue of m drones for all tasks is represented by a matrix in formula (9). The greedy selection of the task assignment permutation with the largest task revenue is the final task assignment result: In formula (9), the left vector is the number vector of the task, and the right matrix is ​​the arrangement matrix of the drone numbers. Each column in the right matrix represents an arrangement of drones. There are a total of After assigning each task to the corresponding m drones, there are nm drones left without any tasks assigned. For the remaining drones, the reward-greedy method can select the task that maximizes the reward. Combination Method 3: When the number of drones is less than the number of tasks, i.e., when n < m: Each drone undertakes one or more tasks. First, the enumeration greedy method is used to assign one task to each drone, and the n tasks are respectively assigned to n drones. The sorting of the corresponding numbers of drones and tasks is as shown in formula (10) below. Then, the contract net protocol is used to assign the remaining m - n tasks to ensure that each task can be executed; For the remaining mn tasks, the host publishes bidding information for each task. All drones calculate the task benefits and bid when the task buffer is not full. The host notifies the drone with the largest benefit to obtain the remaining tasks. Since the drone already has tasks, the benefit needs to be calculated based on the route cost between the last task in the task queue and the bid task. When the tail of the task queue of drone i is task j, the benefit of bidding task k is in, is the route cost from task j to bidding task k, r k is the task value of bidding task k; the route cost matrix D between bidding tasks T It is expressed as follows (11): When all the remaining m - n tasks are won, the initial assignment ends.

4. The multi-UAV dynamic task allocation method according to claim 1, characterized in that: In Step 3, the external unknown environment includes discovering new tasks, environmental changes, drone failures, missing task execution of the tendering drone, and remaining resources of the drone itself; To cope with foreseeable challenges and ensure the smooth completion of tasks, after the end of the initial task assignment stage, the external unknown environment triggers the drones to enter the real-time task assignment stage. The real-time task assignment situations include: 3.1 Discovering new tasks: When a drone detects new and urgent task requirements during the execution of the current task, and the new and urgent task requirements exceed the current resources or capabilities of the drone, the host needs to re-tender for the new and urgent tasks; 3.2 Environmental changes: When a drone encounters environmental changes during task execution, the environmental changes include the emergence of new obstacles or threats in the environment, resulting in the original task path of the drone being no longer safe or the efficiency being reduced, then the host needs to re-tender for the current task; 3.3 Drone failures: When a drone monitors that an adjacent drone has failed, the non-failed drones will take over the tasks of the failed drone and re-evaluate and assign the tasks of the failed drone according to the current conditions to ensure that the tasks can continue; 3.4 Missing task execution of the tendering drone: During task execution, when the tendering drone fails to receive feedback on the task progress from the bidding drones within the scheduled time, to avoid task delays, the tendering drone will regain task control and initiate a new round of tendering process; 3.5 When the drone has remaining resources: After a drone completes all tasks in the task list, if it detects that it still has surplus resources, it will have the opportunity to initiate a task takeover request to other drones that are still undertaking additional tasks; after a benefit evaluation, if it is determined that taking over additional tasks can bring higher returns, the drone will proactively submit a bid to maximize the utilization of resources.

5. The multi-UAV dynamic task allocation method according to claim 1, characterized in that: In step 5, during the bidding phase, set a bid quantity limit and determine the bidding drone's own resources: After receiving the task information, the bidding drone first determines whether the drone's task buffer pool is full. If so, it withdraws from the bidding. Otherwise, it continues to determine whether it has received information about multiple bidding tasks at the same time. If so, it selects the task with the highest value based on the task priority and revenue ranking. Otherwise, it directly formulates a bid based on the task's revenue and participates in the bidding. When bidding, the drone chooses to buy, sell, replace, or exchange the bidding drone contract based on its own resource situation to obtain the best revenue. Step 5.1: Set the bidding quantity limit and check whether the bidding drone buffer pool is full: Limit the number of drone bids and manage the bidding status of the bidding drones; each drone has a task buffer pool capacity q i , used to control the number of tasks that the drone can bid for; the buffer pool capacity q i Calculate according to the following formula (13): in, Indicates the number of existing tasks in the system before the current bidding, represents the number of new tasks found in the current bidding process, m0 is the number of tasks completed by drone i, and the buffer pool capacity q i The result is an integer rounded up; when the number of tasks in the buffer pool is less than q i When the buffer pool reaches its capacity limit, the drone will stop bidding for new tasks and focus on completing the tasks that have been awarded, thus avoiding task accumulation and ensuring the continuity and efficiency of task execution. Step 5.2: Determine whether the bidding drone has sufficient resources: The UAV system also introduces an evaluation mechanism for the remaining range of the UAV to ensure that the UAV has sufficient endurance to complete the new mission; Formula D max -d i <d ij Indicates that the remaining range of the drone is not enough to complete the new mission, and the drone will not participate in the mission bidding at this time; where D max Indicates the maximum range supported by drone i, d i The distance the drone has flown; the evaluation mechanism for the remaining range of the drone improves the rationality of task allocation and ensures that tasks are assigned to drones that can be executed smoothly.

6. The multi-UAV dynamic task allocation method according to claim 1, characterized in that: In step 6, during the bidding phase, whether the drone bidding feedback timeout is determined as follows: For bidding drones that exceed the specified bidding time, the bidding drone will send a timeout message, causing the timed bidding drone to withdraw from the bidding; For the bidding drones within the specified bidding time range, the bidding drones will leave the bid documents and sort them according to the bid prices. The drone with the highest bid price will be selected as the winner, and the winning bid information will be sent to all drones participating in the bidding.

7. The multi-UAV dynamic task allocation method according to claim 1, characterized in that: In step 7, during the signing phase, the types of contracts signed include sales contracts, replacement contracts, and exchange contracts.

8. The multi-UAV dynamic task allocation method according to claim 7, characterized in that: The sales contract is the most basic form, involving the transfer of a single task execution right. The sales contract is for the winning drone to obtain the task execution right. The data in the sales contract is stored in a six-tuple, which is represented by [T k ,γ k ,U i ,P ik ,Q i ,U j ], where T k Indicates the number of the assigned task, U i Indicates the winning drone number, P ik Indicates drone U i For Task T k The quote, Q i Indicates drone U i The task queue, U j Indicates the bidding drone number; The replacement contract allows bidders to abandon the current low-profit task and bid for a higher-profit task; the abandoned task will be reallocated by the bidding drone as the new bidder; compared to the purchase and sale contract, the replacement contract adds a set of data T i , T i Used to record the mission number abandoned by the drone; the seven-tuple data of the replacement contract is represented as [T k ,γ k ,U i ,P ik ,Q i ,U j ,T i ]; The exchange contract is a special case of the replacement contract. In the exchange contract, the task abandoned by the bidding drone is directly taken over by the bidding drone, forming a direct exchange of tasks. The exchange contract adds γ i ,P ji ,Q j , where γ i Represents task T i Priority, P ji Indicates drone U j For Task T i The quote, Q j Indicates drone U j The task queue of the replacement contract is represented by the ten-tuple data [T k ,γ k ,U i ,P ik ,Q i ,U j ,T i ,γ i ,P ji ,Q j ].

9. The multi-UAV dynamic task allocation method according to claim 1, characterized in that: In step 8, the supervision process of the winning drone mission execution is as follows: For the winning drone, in order to ensure the smooth completion of the mission and prevent the mission from being unable to be completed due to a malfunction of the winning drone, the bidding drone shall be responsible for supervising the mission execution of the winning drone: The time when the bidding drone and the winning drone sign the contract is t a ;t l is the maximum time limit for task j to complete; t c is the maximum communication duration in a multi-UAV system; the bidding UAV needs to be in t l +t a +t c The winning drone will receive feedback on the task before t. If the bidding drone does not receive feedback, the winning drone will send a reminder first. If c If no feedback is received within the time limit, the bidding drone will believe that the winning drone has encountered a major sudden failure and cannot complete the task. The bidding drone will then take back the task, continue to have the right to allocate the task, and re-tender. Through the feedback and supervision process, the stability of the drone system's task allocation and the task completion rate have been significantly improved.

Citation Information

Patent Citations

  • Multi-machine distributed time sequence task allocation method based on non-deadlock contract net algorithm

    CN113671987A

  • Task allocation method and system based on time window constraint

    CN119026873A