A dynamic task allocation method and device based on dispatching and grabbing orders

Through the dynamic task allocation method of order assignment and order grabbing, the task allocation method is adjusted according to the task type and network communication delay, the task execution problem of the drone cluster in the environment of poor communication quality is solved, and efficient and flexible task allocation and execution are achieved.

CN120297704BActive Publication Date: 2025-09-05XIAN LINGKONG ELECTRONICS TECH CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202510787021.0
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2025-06-13
Publication Date
2025-09-05
Estimated Expiration
2045-06-13

AI Technical Summary

Technical Problem

In actual flight environments with poor network communication quality, the allocation of swarm drone tasks cannot be accurately and promptly, resulting in obstruction of task execution and affecting task execution efficiency.

Method used

The dynamic task allocation method of order assignment and order grabbing is adopted to determine the task allocation method according to the task type and network communication delay, and the task allocation path is dynamically adjusted to ensure efficient task execution.

Benefits of technology

In a complex network environment, the efficiency of drone cluster task execution is improved, the task completion time is shortened, the flexibility and fault tolerance of task allocation are enhanced, and the task is effectively executed under various conditions.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120297704B_ABST
    Figure CN120297704B_ABST
Patent Text Reader

Abstract

This application discloses a dynamic task allocation method and device based on dispatching and grabbing orders, relating to the field of unmanned aerial vehicle technology. The method comprises: determining the network communication delay of the target node within the cluster based on the task type; determining the task allocation method based on the task type and network communication delay; wherein the task allocation method includes dispatching and grabbing; determining the number of nodes required to execute the task, and reporting to the command node to redefine the task allocation method when the number of nodes allocated within the cluster group does not meet the task requirement. This method solves the problem of ensuring that cluster tasks can still be executed efficiently in actual flight environments with poor network communication quality.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of drone technology, and in particular to a method and device for dynamic task allocation based on dispatching and grabbing orders. Background Art

[0002] When swarm drones perform complex missions, efficient task allocation is crucial for ensuring their coordinated operation and successful completion. This process relies primarily on information such as the number and attributes of tasks, combined with constraints such as drone type, execution capabilities, and mission coverage. Using a task allocation algorithm, the system seeks local or global optimal solutions within these constraints, precisely matching drones to tasks. During mission execution, the drones are controlled by a central node. This central node is responsible for invoking the task allocation algorithm, performing calculations, and then wirelessly transmitting instructions to each drone. Each drone then executes its corresponding task accordingly. This centralized task allocation model, under ideal conditions with good communication conditions, effectively achieves efficient task allocation and execution.

[0003] However, the actual flight environment is complex and volatile, presenting numerous unfavorable factors. For one thing, wireless communication networks are susceptible to interruption or interference due to limitations such as electromagnetic interference and terrain obstruction. Furthermore, the flight area's diverse topography, including mountainous areas and urban buildings, can obstruct wireless signals and hinder proper signal transmission. These factors significantly reduce the stability of the wireless communication network during actual flight, making communication quality difficult to guarantee. The task allocation results calculated by the central node cannot be accurately and promptly distributed to each drone as expected, hindering the task allocation process.

[0004] Therefore, how to ensure that cluster missions can still be performed efficiently in an actual flight environment with poor network communication quality has become an urgent problem to be solved in the current field of drone technology. Summary of the Invention

[0005] In an embodiment of the present application, a dynamic task allocation method based on dispatching and grabbing orders is provided to solve the problem of how to ensure that cluster tasks can still be efficiently executed in an actual flight environment with poor network communication quality.

[0006] In the first aspect, an embodiment of the present application provides a dynamic task allocation method based on dispatching and grabbing orders, the method comprising: determining the network communication delay of the target node in the cluster according to the task type; determining the task allocation method according to the task type and the network communication delay; wherein the task allocation method includes a dispatching allocation method and a grabbing allocation method; determining the number of nodes required to perform the task, and reporting to the command node to redetermine the task allocation method when the internal allocation of the cluster group does not meet the number of nodes required for the task.

[0007] In one possible implementation, the network communication delay of the target node in the cluster is determined according to the task type, including: determining a node in the cluster that can execute the task as the target node according to the task type; periodically sending a detection data packet to the target node in the cluster, and using the feedback delay of the detection data packet as the network communication delay.

[0008] In a possible implementation, the periodically sending a probe data packet to a target node in the cluster includes: determining a size of the probe data packet based on a task type; and periodically sending the probe data packet to the target node in the cluster according to the determined probe data packet size.

[0009] In a possible implementation, determining the task allocation method according to the task type and the network communication delay includes: determining a task allocation rule according to the task type; and determining the task allocation method according to the task allocation rule and the network communication delay.

[0010] In one possible implementation, task allocation rules are determined based on task types, including: the task types include at least one of strike tasks, reconnaissance tasks, formation tasks, and patrol tasks; for strike tasks and reconnaissance tasks, the task allocation rules include: evaluating the network communication delay time to obtain the time when the node starts to perform the task when the order is dispatched, and using it as the estimated dispatch time; dynamically defining the order grabbing range according to the task type and the current position, and for each node within the order grabbing range, obtaining the time when the node starts to perform the task based on its communication delay time, flight speed, and distance from the task execution point, and using it as the estimated order grabbing time; if the estimated order grabbing time of at least one node within the order grabbing range is less than the estimated dispatching time, the order grabbing allocation method is adopted, otherwise the order grabbing allocation method is adopted. The task allocation method is used; for formation tasks, the task allocation rules include: determining the maximum yaw distance based on the formation accuracy requirement, and determining the allowable communication delay time as the first delay threshold in combination with the flight speed of the node; if the actual communication delay time is greater than the first delay threshold, the grab order allocation method is adopted, otherwise the dispatch allocation method is adopted; for patrol tasks, the task allocation rules include: determining the node whose flight time meets the task requirements based on the patrol task, and determining the first time based on the distance between the node and the task execution point and the flight speed of the node; taking the difference between the patrol task situation information update period and the first time as the second delay threshold; if the actual communication delay time is greater than the second delay threshold, the grab order allocation method is adopted, otherwise the dispatch allocation method is adopted.

[0011] In one possible implementation, determining the number of nodes required to execute the task includes: when the internal allocation result of the cluster group meets the number of nodes required for the task, directly issuing the task allocation result; when the internal allocation of the cluster group does not meet the number of nodes required for the task, reporting the task instruction to the command node, the command node obtains the nodes in the entire cluster that can participate in the task, redetermines the task allocation method, and generates a new task allocation result.

[0012] In one possible implementation, it also includes: business classification based on different task types; wherein the business classification includes communication within the cluster group, communication between cluster groups, and communication between the cluster group and the command node; based on the task type, business classification and network communication quality, determining the role of each member within the cluster, and assigning permissions to perform tasks according to the role.

[0013] In one possible implementation, the role of each member within the cluster is determined based on the task type, business classification and network communication quality, and task allocation authority is assigned according to the role, including: the cluster adaptively adjusts the network topology and member roles within the cluster according to the task type and business classification; the member roles within the cluster include the command node, the cluster leader node and the cluster member nodes; the command node assigns tasks to the entire cluster according to the task type and network communication quality; when the command node loses connection with the cluster, it is replaced by the cluster leader node; the cluster leader node assigns tasks to members within the cluster group; the task allocation method is determined according to the task type and network communication quality, with priority given to allocation within the cluster group, and when the allocation within the cluster group does not meet the number of nodes required for the task, it is reported to the command node to redetermine the task allocation method; when the cluster leader node fails or loses connection, it is replaced by other members within the cluster group; the cluster member nodes determine the received task allocation method according to the task type and network communication quality; if it is an order dispatching allocation method, the order dispatching task is passively received, and if it is an order grabbing allocation method, the order grabbing task is actively executed.

[0014] In a possible implementation, a task execution process is also included, specifically including the allocation of node quantity and type and task execution steps; in the task execution steps, when any node is destroyed or fails during the execution of the task, the task allocation method is re-determined.

[0015] On the second aspect, an embodiment of the present application provides a dynamic task allocation device based on dispatching and grabbing orders, which includes: a judgment module for determining the network communication delay of the target node in the cluster according to the task type; a determination module for determining the task allocation method according to the task type and the network communication delay; wherein the task allocation method includes a dispatching allocation method and a grabbing allocation method; a reporting module for determining the number of nodes required to perform the task, and reporting to the command node to redetermine the task allocation method when the internal allocation of the cluster group does not meet the number of nodes required for the task.

[0016] In the third aspect, an embodiment of the present application provides a dynamic task allocation server based on dispatching and grabbing orders, comprising a memory and a processor; the memory is used to store computer-executable instructions; the processor is used to execute the computer-executable instructions to implement the method described in the first aspect or any possible implementation method of the first aspect.

[0017] In a fourth aspect, an embodiment of the present application provides a computer-readable storage medium, which stores executable instructions. When a computer executes the executable instructions, it can implement the method described in the first aspect or any possible implementation method of the first aspect.

[0018] One or more technical solutions provided in the embodiments of this application have at least the following technical effects: The embodiments of this application provide a dynamic task allocation method based on dispatching and preempting tasks, which determines the network communication delay of the target node within the cluster based on the task type. The decision to use dispatching or preempting tasks is based on the task type and network communication delay. The dispatching method allows tasks to be quickly and accurately assigned to designated drones, ensuring efficient task initiation. The preempting method provides greater flexibility and fault tolerance for task execution, avoiding the problem of task assignment failure due to single-node communication failures, thereby ensuring the feasibility of the task allocation solution under various network conditions. During task execution, the present application also determines the number of nodes required to execute the task in real time. If the number of nodes allocated within the cluster group cannot meet the required number of nodes, the command node can be promptly reported to re-determine the task allocation method. This dynamic adjustment mechanism enables real-time optimization of task allocation based on actual conditions, ensuring that tasks are optimally assigned to the most appropriate drones in various complex environments, significantly improving the task execution efficiency of the entire drone cluster and shortening task completion time. This method solves the problem of ensuring efficient cluster task execution even in actual flight environments with poor network communication quality. BRIEF DESCRIPTION OF THE DRAWINGS

[0019] In order to more clearly illustrate the embodiments of the present application or the technical solutions in the prior art, the following briefly introduces the drawings required for use in the embodiments of the present application or the description of the prior art. Obviously, the drawings described below are some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying any creative work.

[0020] Figure 1 A flowchart of a dynamic task allocation method based on dispatching and grabbing orders provided in an embodiment of the present application;

[0021] Figure 2 A schematic diagram of the logical architecture for adaptively adjusting network topology and task allocation in a cluster provided in an embodiment of the present application;

[0022] Figure 3 A schematic diagram of a hypothetical scenario provided for an embodiment of the present application;

[0023] Figure 4 A schematic diagram of the task allocation results provided in an embodiment of the present application;

[0024] Figure 5 A schematic diagram of the allocation logic provided in an embodiment of the present application;

[0025] Figure 6 A schematic diagram of a dynamic task allocation device based on dispatching and grabbing orders provided in an embodiment of the present application;

[0026] Figure 7 A schematic diagram of a dynamic task allocation server based on dispatching and grabbing orders provided in an embodiment of the present application. DETAILED DESCRIPTION

[0027] The following will be combined with the accompanying drawings in the embodiments of this application to clearly and completely describe the technical solutions in the embodiments of this application. Obviously, the described embodiments are part of the embodiments of this application, not all of the embodiments. Based on the embodiments in this application, all other embodiments obtained by ordinary technicians in this field without making creative efforts are within the scope of protection of this application.

[0028] The following description of some of the technologies involved in the embodiments of this application is provided to facilitate understanding and should be considered merely exemplary. Therefore, those skilled in the art will recognize that various changes and modifications may be made to the embodiments described herein without departing from the scope and spirit of this application. Similarly, for the sake of clarity and conciseness, some descriptions of well-known functions and structures are omitted from the following description.

[0029] The embodiment of the present application provides a dynamic task allocation method based on dispatching and grabbing orders, such as Figure 1As shown, the method includes steps S101 to S103. Figure 1 This is only an execution order shown in the embodiment of the present application, and does not represent the only execution order of a dynamic task allocation method based on dispatching and grabbing orders. Figure 1 The steps shown may be performed in parallel or reversed.

[0030] S101: Determine the network communication delay of the target node in the cluster according to the task type.

[0031] Determining a network communication delay of a target node in the cluster based on a task type includes: determining a node in the cluster that can execute the task as the target node based on the task type; periodically sending a probe data packet to the target node in the cluster, and using a feedback delay of the probe data packet as the network communication delay.

[0032] It should be noted that the cluster in this application is a drone cluster and the node is a drone node.

[0033] Periodically sending a probe data packet to a target node in the cluster includes: determining a size of the probe data packet based on a task type; and periodically sending the probe data packet to the target node in the cluster according to the determined probe data packet size.

[0034] Specifically, probe packets can be sent to target nodes within the cluster at a preset interval (e.g., once every second). For example, during a reconnaissance mission, drone nodes within the reconnaissance area that need to receive mission instructions are identified as target nodes. During a strike mission, drone nodes participating in the strike are identified as target nodes, and network communication quality is then specifically probed for these target nodes. After receiving the probe packet, the target node must return a heartbeat frame within a specified timeframe. The feedback cycle is the time interval between sending the probe packet and receiving the heartbeat frame, reflecting the network response speed. Based on a comprehensive evaluation of the feedback cycle and latency, network communication quality is quantified as a percentage from 0% to 100%, with 100% representing the highest network communication quality and 0% indicating loss of connection.

[0035] Furthermore, the present application can flexibly detect the size of data packets. The amount of information contained and transmitted by different task types varies significantly. Traditional heartbeat detection uses broadcast messages of fixed size and frequency, which will cause the message load to grow exponentially as the number of cluster nodes increases, and cannot adapt to different task requirements. The present application determines the size of the detection data packet based on different task types to accurately judge the quality of network communication. Taking reconnaissance missions and strike missions as examples, reconnaissance missions require the transmission of large amounts of data such as images and terrain of the target area. The corresponding detection data packet will increase accordingly to ensure that the quality of the communication link that carries such large amounts of data can be fully detected. Strike missions pay more attention to the accurate transmission of key instructions such as target coordinates and strike time. The detection data packet is adjusted to an appropriate size based on these requirements, while ensuring the accuracy of communication quality detection and avoiding unnecessary waste of network resources.

[0036] S102: Determine a task allocation method based on the task type and network communication delay, wherein the task allocation method includes a dispatch allocation method and a grab order allocation method.

[0037] Specifically, the dispatch-based task allocation method is used when network communication quality is good. The central node of the drone cluster automatically invokes the dynamic task allocation algorithm and distributes the allocation results to other drone nodes. Other drone nodes passively receive the dispatched tasks. This is a designated dispatch-based allocation logic. Dynamic task allocation algorithms can include auction algorithms, greedy algorithms, Hungarian algorithms, etc. The preemptive task allocation method is used when network communication quality is poor. The central node of the drone cluster automatically invokes the dynamic task allocation algorithm and publishes tasks. Other drone nodes, based on the published task information, proactively execute preemptive tasks to ensure that no tasks are missed.

[0038] Determining a task allocation method based on task types and network communication delays includes: determining a task allocation rule based on the task type, and determining a task allocation method based on the task allocation rule and network communication delays.

[0039] Determine the task assignment rules based on the task type, including the following:

[0040] The mission type includes at least one of a strike mission, a reconnaissance mission, a formation mission, and a patrol mission.

[0041] For strike and reconnaissance missions, the task allocation rules include evaluating network communication delays to determine the time a node will start executing the task at the time of dispatch, which is used as the estimated dispatch time. A dynamic range is defined based on the mission type and current location. For each node within the range, the estimated dispatch time is calculated based on its communication delay, flight speed, and distance from the mission execution point. If the estimated dispatch time for at least one node within the range is less than the dispatch time, the dispatch method is used; otherwise, the dispatch method is used.

[0042] Specifically, for strike and reconnaissance missions, the estimated dispatch time is determined by adding the network communication delay to the node response preparation time. The estimated time to seize an order is determined by calculating the distance between the node and the mission execution point, dividing that distance by the node's flight speed, and then adding the node communication delay to determine the estimated time to seize the order.

[0043] For formation missions, the task allocation rules include determining a maximum yaw distance based on formation accuracy requirements and, combined with the node's flight speed, determining the allowable communication delay as a first delay threshold. If the actual communication delay exceeds the first delay threshold, the task is assigned using a preemptive order method; otherwise, the task is assigned using a dispatched order method.

[0044] Specifically, for the formation mission, when determining the first delay threshold, a specific method is as follows: dividing the maximum yaw distance by the flight speed of the node to determine the first delay threshold.

[0045] For patrol missions, the task allocation rules include: determining nodes whose flight duration meets the mission requirements based on the patrol mission, determining the first time based on the distance between the node and the mission execution point and the node's flight speed, and using the difference between the patrol mission situation information update period and the first time as the second delay threshold. If the actual communication delay time exceeds the second delay threshold, the preemptive order allocation method is used; otherwise, the dispatch order allocation method is used.

[0046] Specifically, for a patrol mission, when determining the first time, a specific method is: dividing the distance between the node and the mission execution point by the flight speed of the node to determine the first time.

[0047] Specifically, strike missions require extremely high timeliness. During cluster execution, the target must be struck and destroyed as quickly as possible. For these missions, minimizing time is the core principle when determining task allocation. Reconnaissance missions also require high timeliness, requiring rapid acquisition of relevant information. Similar to strike missions, their allocation is also based on minimizing time. Both strike and reconnaissance missions involve communication and interaction between and within clusters.

[0048] Specifically, formation tasks prioritize rationality. Task allocation requires comprehensive consideration of multiple factors to select the most suitable node for execution. While dispatching tasks is typically used, specific conditions may also trigger a preemptive approach. Formation tasks primarily involve internal communication and task allocation within the cluster.

[0049] Specifically, patrol missions also emphasize rationality. They require long-term reconnaissance and search within a fixed area, placing high demands on the rationality of task allocation. While dispatching tasks is typically used, specific conditions can also trigger a preemptive task allocation approach. Patrol missions involve communication interactions between and within clusters.

[0050] S103: Determine the number of nodes required to execute the task. When the number of nodes allocated within the cluster group does not meet the number of nodes required for the task, report to the command node to redefine the task allocation method.

[0051] Determine the number of nodes required to execute the task, including: When the cluster team's internal allocation results meet the required number of nodes, directly issue the task allocation results. If the cluster team's internal allocation does not meet the required number of nodes, the task instructions are reported to the command node. The command node obtains the nodes in the entire cluster that can participate in the task, re-determines the task allocation method, and generates a new task allocation result.

[0052] Specifically, when executing task allocation using both dispatch and grab orders, the node quantity requirements of the task type must be considered simultaneously. For example, assuming a formation task requires the collaborative completion of multiple drone nodes and that all must meet the task conditions, if the network communication quality of one drone node within the cluster group is good, while the network communication quality of three drone nodes is poor, and the formation task cannot be completed by a single drone, then the most reasonable task allocation logic will be triggered only when multiple drones must meet the task conditions. For another example, executing a task to strike a target in a certain area requires at least three drone nodes. The cluster leader node will perform network communication quality checks on the drone nodes participating in the strike, obtain the communication status value of each node, and execute the task allocation logic for the strike task accordingly.

[0053] Furthermore, to reduce unnecessary bandwidth usage, the scope of order grabbing can be constrained. Order grabbing is prioritized within the cluster group where the task is being executed. Because nodes within a cluster group are geographically close, and the communication links between them are relatively stable and have low latency, they can quickly respond to order grabbing requests and execute tasks. Furthermore, prioritizing order grabbing within the group also helps reduce the complexity and overhead of cross-group communication, improving the efficiency of task allocation. When the ratio of the number of drone nodes within a cluster group that meet the task execution requirements to the number of required drone nodes is less than a preset threshold, the order grabbing scope is expanded to include adjacent cluster groups.

[0054] This application also includes: Classifying services based on different task types. This service classification includes communication within cluster groups, communication between cluster groups, and communication between cluster groups and the command node. Based on task type, service classification, and network communication quality, each member within the cluster is assigned a role and task execution permissions are assigned based on their role.

[0055] The traditional network communication status detection method regards all nodes as the same role, adopts broadcast coverage with fixed message size and frequency, and has the problem of non-scalability. This application is based on cluster business, comprehensively judges the communication status of the entire network, and performs detailed business classification. The internal communication of the cluster group involves the information interaction between nodes in the same group. The communication between cluster groups involves the need for information sharing, collaborative operations and other operations between different groups. The communication between the cluster group and the command node is the key link for the efficient operation of the cluster. The command node needs to grasp the task progress of each group in real time and issue global task instructions.

[0056] Based on the task type, business classification, and network communication quality, determine the role of each member within the cluster and assign permissions to perform tasks according to the role, including the following.

[0057] The cluster adaptively adjusts the network topology and member roles within the cluster based on task type and business classification.

[0058] The member roles within the cluster include the command node, cluster leader node, and cluster member nodes.

[0059] The command node allocates tasks to the entire cluster based on the task type and network communication quality. If the command node loses connection with the cluster, the cluster leader node will take over.

[0060] Specifically, the command node is generally served by the ground command center, which has the highest authority in the entire cluster.

[0061] The cluster leader node assigns tasks to members within the cluster group. Task allocation is determined based on task type and network communication quality, prioritizing allocation within the cluster group. If the number of nodes allocated within the cluster group does not meet the required number of nodes for a task, the task is reported to the command node for re-allocation. If the cluster leader node fails or loses connection, another member of the cluster group will take over.

[0062] Cluster member nodes determine the task allocation method based on the task type and network communication quality. If the task allocation method is dispatching, the node passively receives the task, while if the task allocation method is grabbing, the node actively executes the task.

[0063] The present application also includes a task execution process, specifically including node quantity and type allocation and task execution steps. In the task execution step, when any node is destroyed or fails during the task execution process, the task allocation method is re-determined.

[0064] Figure 2 A schematic diagram of the logical architecture for adaptively adjusting the network topology and task allocation in a cluster provided in an embodiment of the present application. In a cluster, the network state is not static, but is adaptively and flexibly adjusted according to the task type and business classification. The figure shows a hierarchical structure of nodes from top to bottom, with the node levels arranged from high to low. The top layer is the highest-level node ③, which is the command node. It is in a core position and is responsible for coordinating the overall situation. There are multiple nodes distributed below it, node ② is the cluster leader node, and node ① is the cluster member node. Some nodes in the figure are marked with an "X", which means that the node is currently in an unavailable or faulty state, and the green arrows intuitively show the relationship between nodes and the flow of task allocation. By adaptively adjusting the network topology and member roles in this way, the task allocation path can be dynamically optimized according to the actual situation, thereby obtaining the optimal task allocation result and ensuring the efficient and stable operation of the system.

[0065] An embodiment is listed below to further illustrate the present application. Of course, other embodiments are also possible, and the present application is not limited to this embodiment.

[0066] Figure 3 This is a schematic diagram of a scenario envisioned by an embodiment of the present application. Figure 3 As shown in the figure, a 5×5 km area is set. Within this area, there are two key mission areas, Key Area 1 and Key Area 2, where suspected enemy targets may be located. The swarm needs to perform reconnaissance and strike missions, respectively. The swarm consists of eight drones: four reconnaissance drones, numbered A1, A2, A3, and A4; and four strike drones, numbered B1, B2, B3, and B4.

[0067] Figure 4This is a schematic diagram of the task allocation results provided in the embodiment of the present application. Figure 4 As shown in the figure, before the eight drones took off, they were assigned to two key areas using a single-route mission allocation system. During the reconnaissance mission, two reconnaissance drones were assigned to Key Area 1, and two to Key Area 2. During the strike mission, two strike drones were assigned to Key Area 1, and two to Key Area 2.

[0068] Figure 5 This is a schematic diagram of the allocation logic provided by an embodiment of the present application. During a mission, a reconnaissance drone detects an enemy target within key area 1, and the target's location is close to strike drone B1, triggering real-time strike mission allocation. Network communication delay is evaluated to obtain an estimated dispatch time, and a designated dispatch range is defined. This dispatch range can be narrowed to a specific area centered on the target. For each strike drone node (B1, B2, B3, B4) within the dispatch range, the system determines the time when the node will begin executing the mission based on its current communication delay, flight speed, and distance to the target, and uses this as the estimated dispatch time. If the estimated dispatch time for at least one node within the dispatch range is less than the estimated dispatch time, the dispatch allocation method is used. All strike drones that meet the conditions can participate in the dispatch, and the drone that receives the mission will execute it. If, on the other hand, the estimated dispatch time for each strike drone within the dispatch range is not less than the estimated dispatch time, the dispatch allocation method is used. For example, the mission may be assigned to strike drone B1, which is closest to the target.

[0069] Specifically, if any of the four reconnaissance drones are destroyed or malfunction during a mission, the reconnaissance mission allocation method will be redefined. The reconnaissance mission allocation strategy also uses both dispatch and grab orders. For example, if reconnaissance drone A1 is destroyed or malfunctions during flight, the reconnaissance mission allocation method will be redefined. If dispatch is used, the mission will be assigned to drone A2, who will take over the mission. If grab orders are used, the mission will be grabbed by the remaining drones A2, A3, and A4.

[0070] It should be noted that when using the preemptive allocation method, reconnaissance drones can only preempt reconnaissance missions, and strike drones can only preempt strike missions. Furthermore, during the swarm's flight, any changes in the number of drones, the number of targets, or the geographic information of the mission area will trigger real-time task allocation, re-determining the task allocation method to ensure the highest efficiency of the entire swarm's missions.

[0071] The embodiment of the present application also provides a dynamic task allocation device 600 based on dispatching and grabbing orders, such as Figure 6As shown, the device includes: a judgment module 601, a determination module 602 and a reporting module 603.

[0072] The determination module 601 is used to determine the network communication delay of the target node in the cluster according to the task type.

[0073] The determination module 602 is used to determine the task allocation method according to the task type and the network communication delay. The task allocation method includes the dispatch allocation method and the grab order allocation method.

[0074] The reporting module 603 is used to determine the number of nodes required to perform the task, and to report to the command node to redefine the task allocation method when the number of nodes allocated within the cluster group does not meet the required number of nodes for the task.

[0075] Some modules in the apparatus described herein may be described in the general context of computer-executable instructions executed by a computer, such as program modules. Generally, program modules include routines, programs, objects, components, data structures, classes, etc. that perform specific tasks or implement specific abstract data types. The present application may also be practiced in distributed computing environments where tasks are performed by remote processing devices connected via a communications network. In a distributed computing environment, program modules may be located in local and remote computer storage media, including storage devices.

[0076] The devices or modules described in the above application embodiments can be implemented by computer chips or physical devices, or by products with certain functions. For ease of description, the above devices are described separately by function in various modules. When implementing the embodiments of this application, the functions of each module can be implemented in the same or multiple software and / or hardware. Of course, a module that implements a certain function can also be implemented by combining multiple sub-modules or sub-units.

[0077] The methods, devices, or modules described herein can be implemented in the form of computer-readable program code. The controller can be implemented in any suitable manner. For example, the controller can take the form of a microprocessor or processor and a computer-readable medium storing computer-readable program code (e.g., software or firmware) executable by the (micro)processor, logic gates, switches, an application-specific integrated circuit (ASIC), a programmable logic controller, and an embedded microcontroller. Examples of controllers include, but are not limited to, the following microcontrollers: ARC 625D, Atmel AT91SAM, Microchip PIC18F26K20, and Silicone Labs C8051F320. The memory controller can also be implemented as part of the control logic of the memory. Those skilled in the art will also appreciate that, in addition to implementing the controller in the form of pure computer-readable program code, the controller can also be implemented in the form of logic gates, switches, an application-specific integrated circuit, a programmable logic controller, an embedded microcontroller, etc. by logically programming the method steps. Therefore, such a controller can be considered a hardware component, and the devices included therein for implementing various functions can also be considered as structures within the hardware component. Or even, the means for realizing various functions may be considered to be both a software module for realizing the method and a structure within a hardware component.

[0078] like Figure 7 As shown, an embodiment of the present application also provides a dynamic task allocation server based on dispatching and grabbing orders, including a memory 701 and a processor 702; the memory 701 is used to store computer-executable instructions; the processor 702 is used to execute computer-executable instructions to implement a dynamic task allocation method based on dispatching and grabbing orders described above in an embodiment of the present application.

[0079] An embodiment of the present application also provides a computer-readable storage medium, which stores executable instructions. When a computer executes the executable instructions, it can implement the dynamic task allocation method based on dispatching and grabbing orders described above in the embodiment of the present application.

[0080] Through the description of the above implementation methods, it can be seen that those skilled in the art can clearly understand that the present application can be implemented by means of software plus necessary hardware. Based on this understanding, the technical solution of the present application, or the part that contributes to the prior art, can be embodied in the form of a software product, or can be embodied through the implementation process of data migration. The computer software product can be stored in a storage medium, such as ROM / RAM, a magnetic disk, an optical disk, etc., and includes a number of instructions for enabling a computer device (which can be a personal computer, a mobile terminal, a server, or a network device, etc.) to execute the method described in the embodiments of the present application.

[0081] The various embodiments in this specification are described in a progressive manner. The same or similar parts between the various embodiments can be referred to in detail. Each embodiment focuses on the differences from other embodiments. All or part of this application can be used in many general or special computer system environments or configurations.

[0082] The above embodiments are only used to illustrate the technical solutions of the present application, rather than to limit the present application. Although the present application has been described in detail with reference to the aforementioned embodiments, a person of ordinary skill in the art should understand that the technical solutions described in the aforementioned embodiments can still be modified, or some or all of the technical features therein can be replaced by equivalents. However, these modifications or replacements do not cause the essence of the corresponding technical solutions to deviate from the scope of the technical solutions of the present application.

Claims

1. A dynamic task allocation method based on dispatching and grabbing orders, characterized in that: include: Determine the network communication delay of the target node in the cluster based on the task type; The method of determining the network communication delay of the target node in the cluster according to the task type includes: determining a node in the cluster that can execute the task as the target node according to the task type; periodically sending a detection data packet to the target node in the cluster, and using the feedback delay of the detection data packet as the network communication delay; Determine the task allocation method based on the task type and network communication delay; wherein the task allocation method includes the dispatching allocation method and the grabbing allocation method; The method of determining the task allocation method based on the task type and the network communication delay includes: determining the task allocation rule based on the task type; determining the task allocation method based on the task allocation rule and the network communication delay; adopting the dispatching allocation method when the network communication quality is good, in which the central node of the cluster assigns tasks to other nodes; adopting the grabbing allocation method when the network communication quality is poor, in which the central node of the cluster issues tasks and other nodes actively execute the grabbing tasks; Determine the number of nodes required to perform the task. When the number of nodes allocated within the cluster group does not meet the number of nodes required for the task, report to the command node to redefine the task allocation method.

2. The dynamic task allocation method based on dispatching and grabbing orders according to claim 1 is characterized in that: The periodic sending of a detection data packet to a target node in the cluster includes: Determining the size of the detection data packet based on the task type; Probe packets are periodically sent to target nodes in the cluster according to the determined probe packet size.

3. The dynamic task allocation method based on dispatching and grabbing orders according to claim 1 is characterized in that: Determine task allocation rules based on task type, including: The mission type includes at least one of a strike mission, a reconnaissance mission, a formation mission, and a patrol mission; For strike and reconnaissance missions, the task allocation rules include: evaluating the network communication delay time to obtain the time when the node starts to perform the task when the order is dispatched, and using this as the estimated dispatch time; dynamically defining the order grabbing range based on the task type and current location, and for each node within the order grabbing range, obtaining the time when the node starts to perform the task based on its communication delay time, flight speed, and distance from the mission execution point, and using this as the estimated order grabbing time; if the estimated order grabbing time of at least one node within the order grabbing range is less than the estimated dispatch time, the order grabbing allocation method is used; otherwise, the order dispatching allocation method is used; For formation missions, the task allocation rules include: determining the maximum deviation distance based on the formation accuracy requirement, and determining the allowable communication delay time as the first delay threshold in combination with the node's flight speed; if the actual communication delay time is greater than the first delay threshold, the grab order allocation method is used; otherwise, the dispatch order allocation method is used; For patrol missions, the task allocation rules include: determining the nodes whose flight time meets the task requirements based on the patrol mission, determining the first time based on the distance between the node and the task execution point and the flight speed of the node; taking the difference between the patrol mission situation information update cycle and the first time as the second delay threshold; if the actual communication delay time is greater than the second delay threshold, adopting the grab order allocation method, otherwise adopting the dispatch order allocation method.

4. The dynamic task allocation method based on dispatching and grabbing orders according to claim 1 is characterized in that: Determining the number of nodes required to execute the task includes: When the internal allocation result of the cluster team meets the number of nodes required for the task, the task allocation result is directly issued; When the number of nodes allocated within the cluster group does not meet the number of nodes required for the task, the task instruction is reported to the command node. The command node obtains the nodes in the entire cluster that can participate in the task, redefines the task allocation method, and generates a new task allocation result.

5. The dynamic task allocation method based on dispatching and grabbing orders according to claim 1 is characterized in that: Also includes: Business classification based on different task types; wherein the business classification includes communication within the cluster group, communication between cluster groups, and communication between the cluster group and the command node; Based on the task type, business classification and network communication quality, the role of each member within the cluster is determined, and permissions are assigned to perform tasks according to the role.

6. The dynamic task allocation method based on dispatching and grabbing orders according to claim 5 is characterized in that: Based on the task type, business classification, and network communication quality, the roles of each member in the cluster are determined, and permissions are assigned based on the role of the task, including: The cluster adaptively adjusts the network topology and member roles within the cluster based on task type and business classification; Member roles within the cluster include command nodes, cluster leader nodes, and cluster member nodes; The command node allocates tasks to the entire cluster based on the task type and network communication quality. When the command node loses connection with the cluster, the cluster leader node takes over. The cluster leader node assigns tasks to members within the cluster group; the task allocation method is determined based on the task type and network communication quality, with priority given to allocation within the cluster group. When the number of nodes allocated within the cluster group does not meet the required number of nodes for the task, the command node is reported to redefine the task allocation method; when the cluster leader node fails or loses connection, other members within the cluster group will take over; Cluster member nodes determine the received task allocation method based on the task type and network communication quality; if the task allocation method is dispatching, they passively receive the dispatch task; if the task allocation method is grabbing, they actively execute the grabbing task.

7. The dynamic task allocation method based on dispatching and grabbing orders according to claim 1 is characterized in that: It also includes the task execution process, including the number and type of nodes allocated and the task execution steps; In the task execution step, when any node is destroyed or fails during task execution, the task allocation method is re-determined.

8. A dynamic task allocation device based on dispatching and grabbing orders, characterized in that: include: A judgment module is used to determine the network communication delay of the target node in the cluster according to the task type; The method of determining the network communication delay of the target node in the cluster according to the task type includes: determining a node in the cluster that can execute the task as the target node according to the task type; periodically sending a detection data packet to the target node in the cluster, and using the feedback delay of the detection data packet as the network communication delay; A determination module is configured to determine a task allocation method based on the task type and network communication delay; wherein the task allocation method includes a dispatch allocation method and a grab order allocation method; the determination of the task allocation method based on the task type and network communication delay includes: determining a task allocation rule based on the task type; determining the task allocation method based on the task allocation rule and network communication delay; when the network communication quality is good, the dispatch allocation method is adopted, and the central node of the cluster assigns tasks to other nodes; when the network communication quality is poor, the grab order allocation method is adopted, and the central node of the cluster issues tasks, and other nodes actively execute the grab order tasks; The reporting module is used to determine the number of nodes required to perform the task. When the number of nodes allocated within the cluster group does not meet the number of nodes required for the task, the command node is reported to redefine the task allocation method.

Citation Information

Patent Citations

  • Unmanned aerial vehicle task cooperation method and system

    CN113467511A

  • Multi-task dynamic allocation method for unmanned aerial vehicle cluster

    CN115202402A