A distributed multi-agent cluster task collaborative management system based on layered encapsulation mechanism
By adopting a distributed task collaborative management system based on a hierarchical encapsulation mechanism in the multi-agent cluster system, the existing system has solved the problems of poor intuitiveness, insufficient flexibility and limited scalability in task collaboration and management, and achieved higher system flexibility and functional scalability.
Patent Information
- Application Number
- CN202411933065.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-01-06
- Publication Date
- 2025-04-04
AI Technical Summary
The existing multi-agent cluster system has problems such as poor intuitiveness, insufficient flexibility and limited scalability in task coordination and management, especially in large systems, which are difficult to maintain and adjust.
A distributed multi-agent cluster task collaborative management system based on a hierarchical encapsulation mechanism is adopted to achieve flexible construction and collaborative execution of tasks through the combination of task scheduling modules, data management modules, task construction modules and task collaboration modules. The system uses functional units and logical units to perform task encapsulation and logical judgment, and supports task execution of hierarchical structures and graphical topology structures.
It improves the intuitiveness and flexibility of the system, makes functional reuse and combination more convenient, enhances the flexibility in system function construction and execution, and solves the problems of maintenance and adjustment in large systems.
Smart Images

Figure CN119761466A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technical field of multi-agent systems, and in particular to a distributed multi-agent cluster task collaborative management system based on a layered encapsulation mechanism Background Art
[0002] With the development of technology, intelligent robots such as drones, unmanned vehicles, and robot dogs have been widely used. With the improvement of the performance of individual robots, a multi-agent system composed of a group of robots to complete more complex tasks has become the next development direction. A multi-agent system is a system composed of multiple autonomous agents that can achieve common goals through interaction and cooperation. Each agent can be a robot, software, or other entity with certain intelligence. The multi-agent system can generate the characteristics of group intelligence in a collaborative way, and can complete tasks with strong coupling and high complexity in time and space under diverse demand scenarios. At the same time, the entire system has the characteristics of flexibility, robustness, and scalability.
[0003] The task coordination and management mechanism of multi-agent systems is one of the core issues in the field of multi-agent system technology. This problem refers to converting the tasks that the multi-agent system needs to complete into functional requirements, defining them in a suitable framework and splitting them into individual members, establishing behavior patterns among the members, and enabling each individual to cooperate in completing the overall functional requirements and tasks during operation.
[0004] A good multi-agent cluster task collaborative management mechanism needs to be easy to understand, modular, combinable, easy to adjust, and flexible and collaborative.
[0005] The design patterns of task coordination and management mechanism of multi-agent system include top-down and bottom-up. The bottom-up design pattern refers to starting from the behavior mechanism of individual members to design the underlying behavior pattern, and then combining the behavior patterns to meet the overall functional requirements of the system; the top-down design pattern refers to starting from the overall functional requirements of the system, gradually generating a hierarchical system structure and functional modules, and finally decomposing the definition of the behavior pattern of each member in the preset scenario and state. The task coordination and management mechanism of multi-agent system will eventually be reflected in the logical relationship between the underlying functions of the members and the functions, usually expressed in the form of a state machine or behavior tree and executed.
[0006] A state machine is a model used to manage and control the state of a system and its transitions. By defining states, events, and state transition rules, it helps the system perform specific behaviors under different conditions. When the system scale and state are small, it has the advantages of being simple and intuitive, having a clear logical structure, flexible state transitions, and being easy to debug and maintain. When used in a multi-agent cluster system, the behavior patterns, functions, or specific actions of the members are represented as states in the state machine. In the application of a multi-agent cluster system, it has the following disadvantages:
[0007] (1) The complete response complexity is O(n 2 ), n is the number of system states. The number of system states is positively correlated with factors such as member size and number of tasks. Therefore, in large-scale systems with high complexity, it will be difficult to maintain due to poor readability and high consumption of operating resources.
[0008] (2) The switching rules of each state and the connection relationship between states are defined by the internal variables of the state and its own functional requirements, which makes it impossible to define a unified switching condition interface and it is difficult to encapsulate a certain number of states into a fixed hierarchy or structure for reuse or combination.
[0009] (3) Since states are associated with each other through transformation rules, when adjusting the tasks and functional requirements of part of the system, the scope of the impact on the existing states and rules is not limited. Usually, the overall structure needs to be adjusted iteratively multiple times to ensure that the state transition is conflict-free while completing the task and functional requirements.
[0010] The behavior tree is a model that organizes the behavior of intelligent agents in a tree structure. It manages complex behavior logic and decision-making processes through hierarchical control nodes and execution nodes. It has the advantages of clear hierarchy, flexible scalability, and efficient dynamic adjustment capabilities. When used in multi-agent cluster systems, the behavior patterns, functions, or specific actions of members are represented as execution nodes in the behavior tree, and the logical relationship between them is represented as control nodes. The execution nodes are leaf nodes of the control nodes and run according to the logical relationship defined by the control nodes; different tasks can be composed of multiple control nodes and execution nodes, which are encapsulated in the form of subtrees. In the application of multi-agent cluster systems, it has the following disadvantages:
[0011] (1) The logical switching relationship between execution nodes and between subtrees is defined by their superior control nodes. Each control node can only define one logical relationship. If the system operation involves function switching between different tasks, it is necessary to switch execution nodes under different control nodes that are far away. For example, the conversion of a specific function between subtrees cannot be done by direct jump. Instead, it is necessary to return to the upper control node layer by layer, forming a complex logical call route, which increases the complexity of the system and makes the system operation process lack of intuitiveness.
[0012] (2) The data management of each node between behavior trees is implemented based on the blackboard mechanism, that is, a public data storage area is set up to allow each node in the behavior tree to access and modify public data. In a multi-agent cluster system, there is not only a need for data management of member local nodes, but also node data management between members, which requires a higher-dimensional data management mechanism.
[0013] In addition, state machines and behavior trees have the following common disadvantages in multi-agent cluster system applications:
[0014] (1) There is a lack of universal function encapsulation and task scheduling mechanisms. When there are multiple task stages in the system task requirements and each task stage requires different members to perform different functions for heterogeneous collaboration, it is difficult to achieve synchronous execution of functions among members based on the decision-making of each member based on its own behavior tree or state machine.
[0015] (2) Human-machine collaboration is a basic functional requirement of multi-agent clusters. The operator's control behavior is random in type, timing, and sending timing. It is difficult to fully incorporate the human-machine interaction process into the model when using state machines and behavior trees. Therefore, the operator's control may produce unexpected effects, causing the overall operation of the entire system to enter an unstable and uncontrollable state.
[0016] (3) State machines and behavior trees are predefined behavior models. If different tasks require system members to work together based on different behavior models, such as various bionic mechanisms that imitate biological behaviors, other models need to be split in an appropriate way and converted into a state machine or behavior tree framework for design to avoid behavior conflicts caused by incomplete logic checks, which limits the scalability of system functions. Summary of the invention
[0017] In view of the shortcomings of the prior art, the present invention proposes a distributed multi-agent cluster task collaborative management system based on a layered encapsulation mechanism, which is used for task management of large-scale multi-agent cluster systems to improve its intuitiveness, flexibility and operability.
[0018] The technical scheme of the present invention is as follows:
[0019] (1) A distributed multi-agent cluster task collaborative management system based on a layered encapsulation mechanism, which consists of a task scheduling module, a data management module, a task construction module, and a task collaboration module. The task scheduling module is used to judge and execute the current running status of the agent and perform real-time function switching. The data management module is used to store and share the information generated by the agent of the publishing system, as well as the status information of all other cluster members that can be obtained by the agent. The task construction module is used to establish and store an executable task system. The task collaboration module performs collaborative status judgment and collaborative action execution based on the functional requirements of the tactical unit and the information in the data management space.
[0020] (2) The system has a distributed architecture and runs simultaneously on the onboard computers of each member agent in the multi-agent cluster.
[0021] (3) The task construction module in the system constructs the task execution system at four levels: plan (P), task chain (C), task (M), and task unit (F). The task unit includes two types: functional unit (FA) and logical unit (FL).
[0022] (4) Scheme planning, task chain, tasks are represented by control nodes, forming a tree topology structure; tasks encapsulate multiple task units, each task unit itself has a limited number of logical branches, which are used to realize the connection between any task units, forming a graphical topology structure.
[0023] (5) The functional unit is a standardized functional encapsulation module. By abstracting limited interfaces and functional modules, it can realize the effective combination of the required basic algorithms, load scheduling, operation logic and timing when completing specific functions, including but not limited to initialization, data input processing, data output processing, action execution, performance evaluation, target allocation, task coordination and other functional modules. Its parameters can be configured through configuration files. The functional modules of the task unit can be implemented in the form of behavior trees, state machines, bionic mechanisms, etc., to nest behavioral patterns.
[0024] (6) The system is controllable. The operator can change the task units being performed by one or more members through instructions to achieve the switching of their behavior mode or function.
[0025] (7) The logic unit is a standardized logic encapsulation module that processes the information in the data management space to implement logical judgment of yes or no on the set logical conditional statements. The parameters can be configured through the configuration file.
[0026] (8) The task coordination module in the system coordinates based on the sequence number (FUID) of the task unit, that is, task coordination is only performed between members who execute the task unit with the same sequence number at the same time.
[0027] (9) The data samples stored in the data management module are stored in a multi-key value format, where the key includes the member ID, functional unit ID and data type.
[0028] The beneficial effects of the present invention are:
[0029] (1) The hierarchical encapsulation mechanism is adopted. The tree-like topological structure of the program plan, task chain, and task composition has clear levels and is intuitive, which is conducive to functional reuse and combination.
[0030] (2) Task units can be connected arbitrarily through their own logical branches or through logical units, unifying the system functions and state transition interfaces and enhancing the flexibility of system function construction and execution.
[0031] (3) Using functional units as the basic units for encapsulating the underlying functions of the system helps to flexibly customize functions, so that a system can be compatible with multiple behavior modes; functional units are the basic units for human-computer interaction. The operation of human-computer interaction simplifies the instructions of the functional units to switch an operation, making the effect of the instructions of human-computer interaction predictable within the preset task architecture; functional units are the basic units for task collaboration. From the architectural point of view, dynamic horizontal collaborative connection paths between machines are established, making the functional synchronization execution status between different members controllable and predictable.
[0032] (4) The data in the data management module uses multiple key values to solve the data management problems of different members, different tasks and different behavior modes. BRIEF DESCRIPTION OF THE DRAWINGS
[0033] Figure 1 The overall structure of the system.
[0034] Figure 2 Build a system for the task.
[0035] Figure 3 It is a multi-machine system architecture.
[0036] Figure 4 It is a functional unit structure.
[0037] Figure 5 It is a logical unit structure.
[0038] Figure 6 Connect the functional units to the logical units.
[0039] Figure 7 It is a function switch based on the control node.
[0040] Figure 8 It is a function switching based on functional units.
[0041] Fig. 9 Toggle the function based on the instruction.
[0042] Fig.10 To coordinate tasks based on the sequence number of task units.
[0043] Fig.11 Data storage method.
[0044] Fig.12 A sea rescue scene.
[0045] Fig.13 Plan implementation plans for surface rescue scenarios.
[0046] Fig.14 This is an example of a thermal imaging fixed-wing task chain.
[0047] Fig.15 An implementation example of a comb-shaped route collaborative search task unit.
[0048] Fig.16 This is an example of a visible light fixed-wing mission chain.
[0049] Fig.17 Confirm the implementation task unit implementation for the collaborative goal.
[0050] Fig.18 This is an implementation example of a visible light airdrop rotor mission chain. DETAILED DESCRIPTION
[0051] In order to make the purpose, technical solution and advantages of the embodiments of the present invention clearer, the technical solution in the embodiments of the present invention will be clearly and completely described below in conjunction with the drawings in the embodiments of the present invention. Obviously, the described embodiments are part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of the present invention.
[0052] like Figure 1 As shown in the figure, a distributed multi-agent cluster task collaboration management system based on a hierarchical encapsulation mechanism is composed of a task scheduling module, a data management module, a task construction module, and a task collaboration module. Each module in the system runs in parallel. The system is a distributed architecture that runs simultaneously on the onboard computer of each member agent in the multi-agent cluster and exchanges shared data in real time through a communication network.
[0053] like Figure 2As shown in the figure, the task construction module in the system constructs the task execution system in four levels: program plan (P), task chain (C), task (M), and task unit (F), where the task unit includes two types: functional unit and logical unit. The program plan, task chain, and task are represented by control nodes to form a tree topology; the task encapsulates multiple task units, and each task unit itself has a limited number of logical branches to realize the connection between any task units, forming a graphical topology.
[0054] Among them, control nodes usually do not directly execute specific functions but are used to determine the execution logic and order of child nodes. Common control nodes include sequential running nodes, parallel running nodes and graph running nodes. Sequential running nodes refer to executing all child nodes in sequence until a child node fails or all child nodes succeed; parallel running nodes refer to executing all child nodes at the same time and determining the overall success or failure based on the set conditions; graph running nodes refer to the execution order of their child nodes determined by the logical connections and structural relationships defined when they are encapsulated.
[0055] exist Figure 2 In the example, the plan node P1 is a parallel control node, which executes the three task chain nodes encapsulated under it in parallel. The plan node is the collection of all task chains of cluster members. Generally speaking, Figure 3 As shown, each member contains only one task chain, so there will be no behavioral conflicts caused by different behavioral pattern requirements for a single member.
[0056] The task chain node C1 is a sequential control node, which encapsulates three task nodes (M1, M2, M3). According to the order of M1~M3, it sequentially executes the three task nodes encapsulated thereunder, that is, executes the M1 node first, until the C1 node returns True, stops executing the M1 node and starts executing the M2 node, and so on executes the M3 node. When each node returns True, the corresponding node execution is stopped and the execution of the next node is started. When the three task nodes (M1, M2, M3) return True at the same time, the task chain node returns True. In the present invention, unlike the behavior tree, the order of sequentially running nodes can be dynamic, that is, the execution priority of each child node under it is calculated in real time by using a scoring mechanism in the node, and the sequentially running node selects the child node with the highest priority to execute at each execution cycle.
[0057] Task nodes (M1, M2, M3) are graph running nodes, each encapsulating functional units and logic units of different types and structures. When all functional units return True, the task node returns True.
[0058] Unlike behavior trees, function units, as execution nodes, have a limited number of logic branches. They can be combined with logic units or directly connected to other function units to define the execution order of different function units. The execution logic and order of the function units encapsulated in each task node are determined by the structural relationship formed when they are encapsulated. The task node also selects the currently executed function unit based on the system operation status and structural relationship.
[0059] like Figure 4 As shown in the figure, the functional unit is a standardized functional encapsulation module. By abstracting limited interfaces and functional modules, it can realize the effective combination of the required basic algorithms, load scheduling, operation logic and timing when completing specific functions, including initialization, data input / output, action execution, algorithm execution, target allocation, task coordination, jump judgment and other functional modules, and its parameters can be configured through the configuration file. The functional modules of the functional unit can be implemented in the form of behavior trees, state machines, bionic mechanisms, etc., to nest the behavior patterns.
[0060] The jump judgment module in the functional unit performs jump switching between functional units based on preset logical conditions. It includes two types of switching branches: functional unit jump branch and logic unit jump branch. The functional unit jump branch is directly connected to the next functional unit. When the logic judgment result is True, the next functional unit will be executed directly. When the result is False, no switching will be performed. The logic unit jump branch is connected to the logic unit. When the functional unit is running, it will continuously check all the logic units connected after the logic unit jump branch. When a certain logic unit outputs True, the functional unit connected to the True branch of the logic unit that outputs True will be executed.
[0061] like Figure 5 As shown, the logic unit is a standardized logic encapsulation module, including data input and jump judgment functions. By processing the information in the data management space, it realizes the logical judgment of True or False for the set logical conditional statement. The parameters can be configured through the configuration file.
[0062] The logic unit includes two switching branches, namely the True branch and the False branch, and one entry branch, wherein the entry branch is connected to the logic unit jump branch of the functional unit or the False branch of the previous logic unit. The True branch is usually connected to the next functional unit, indicating that if the judgment result of this logic unit is True, the corresponding functional unit will be executed. The False branch is usually connected to the entry branch of the next logic unit, indicating that if the judgment result of this logic unit is False, the next logic judgment will be performed. If the False branch is not connected to any other logic unit, it will automatically return to the currently executing functional unit.
[0063] Figure 6 This is a typical embodiment of the combined encapsulation of functional units and logic units in the task unit layer. When executing, functional unit 1 will periodically check the logic unit 1 and logic unit 2 connected in series after the logic unit jump branch. When the jump judgment module of logic unit 1 outputs True, it switches to functional unit 3. When its output is False, it enters logic unit 2 for judgment; when the jump judgment module of logic unit 2 outputs True, it switches to functional unit 2. When its output is False, since its False branch is not connected to a logic unit, it returns to functional unit 1. The functional unit jump branch of functional unit 1 is connected to functional unit 5. When the jump judgment module of functional unit 1 outputs True in the judgment condition of this branch, it directly jumps and switches to functional unit 5 for execution.
[0064] [The task scheduling module is used to determine the current running status of the intelligent agent, and to perform real-time function scheduling based on the task organization architecture system, specifically including: based on the execution status of the sub-nodes under the control node, according to the type of control node, determine whether the sub-node should run and execute at the current moment; based on the running status and connection topology of the functional unit and the logical unit, determine the functional unit that should be executed at present and execute it; based on the operator's instructions, force the switching of the functional unit currently executed by the intelligent agent.
[0065] Figure 7 This is an embodiment of a task scheduling module that switches functions based on control node definitions. The system initially calls a function unit (FU1) to run. When each function unit is in a completed state, it returns True to the upper node, otherwise it returns False. When all function units (FU1, FU3) encapsulated under a task node (M1) are executed, when the task node (M1) returns True to a task chain node (C1), the task chain node schedules task node M2 to execute, and task node M2 schedules function unit FU4 to execute based on its encapsulated function unit structure.
[0066] Figure 8 The present invention is an embodiment of a task scheduling module that switches functions based on the logic of the function unit itself. The system initially calls the function unit (FU1) to run, and the function unit jump branch of the function unit (FU1) is connected to the function unit (FU4). When the function unit FU1 meets the jump condition of the function unit jump branch during the running process, the system directly schedules the task node M2 and the function unit FU4 to start execution. At this time, the task node M1, the function unit FU1, and the FU3 are still in an unfinished waiting state.
[0067] Fig. 9This is an implementation example of a task scheduling module that switches functions based on operator instructions. The system initially calls the function unit (FU1) to run, and the operator sends a function switching instruction. The system directly schedules task node M2 and function unit FU5 to start execution. At this time, task node M1, function units FU1 and FU3 are still in an unfinished waiting state.
[0068] Fig.10 This is an implementation example of a task collaboration module that collaborates based on the serial number (FUID) of the task unit. The system has a total of 3 members. The program plan node P1 encapsulates three task chains (C1, C3, C5), and each task chain is assigned to one of the members. At the current moment, member 1 executes task chain node C1-task node M1-functional unit FU1; member 2 executes task chain node C3-task node M2-functional unit FU1; member 3 executes task chain node C5-task node M3-functional unit FU6, and the functional unit FU1 encapsulated by its task node M3 is in a completed state. At this time, since member 1 and member 2 are executing functional unit FU1 with the same ID number, the two will perform task collaboration based on the collaboration mode defined by the task collaboration module in the functional unit. Member 3 executes functional unit FU6 differently from members 1 and 2, so it does not participate in the collaboration.
[0069] Fig.11 This is an embodiment of storing data in a data management module. The data samples stored in the data management module are stored in a multi-key value format. The key includes a member ID, a task unit ID, and a data type. Each member obtains relevant information from the communication network in real time and saves it according to the key type. Other functional modules extract relevant information from the database based on demand.
[0070] Fig.12 A more specific surface search and rescue scenario is provided to further describe the implementation method of the present invention in practical applications. The scenario specifically includes:
[0071] It is known that 6 people fell into the water due to the capsizing of the ship in offshore waters. The people who fell into the water were drifting on the sea wearing life jackets. After the search and rescue personnel calculated the possible waters where the people who fell into the water might appear based on the time the ship disappeared and the weather conditions, they needed to use a heterogeneous drone cluster through multi-agent collaboration to quickly locate the trapped people and provide them with necessary supplies so that they can hold on until the rescuers arrive.
[0072] The mission function requirements and member configuration of the drone intelligent swarm formed by the search and rescue team are as follows:
[0073] Three fixed-wing drones equipped with thermal imagers, numbered AFT1, AFT2, and AFT3, are used to search for suspicious targets in a larger area.
[0074] Two fixed-wing drones equipped with illuminators and visible light cameras, numbered AFC1 and AFC2, are used to conduct close-in confirmation of suspicious targets.
[0075] Six multi-rotor drones equipped with visible light cameras and suspended airdrop devices, numbered ACD1~ACD6, are used to track, locate and airdrop rescue supplies to trapped people.
[0076] The search and rescue plan is as follows:
[0077] The search and rescue team first dispatched fixed-wing drones AFT1, AFT2, and AFT3 equipped with thermal imagers, and fixed-wing drones AFC1 and AFC2 equipped with illuminators and visible light cameras. AFC1 and AFC2 first hovered in the standby area, and AFT1, AFT2, and AFT3 conducted a joint traversal search of the preset sea area in a comb-shaped route. During the search, the location of the suspicious target was broadcast to AFC1 and AFC2 in real time. After receiving the suspicious target information, AFC1 and AFC2 performed real-time online distributed target allocation, and based on the target sequence assigned to the aircraft, they went to the suspicious target point area in turn for approach confirmation, and sent the target image and coordinate information to the ground command and control system in real time for confirmation by the search and rescue personnel. After the search and rescue personnel confirm the valid target, they will send a multi-rotor drone carrying rescue supplies to each confirmed target, and at the same time send people to the target's coordinate area for rescue. After the multi-rotor drone finds the target in the target's coordinate area, it will track the target and send back the target coordinates and image information to guide the rescue personnel, and the search and rescue personnel will confirm the release of the rescue supplies at the appropriate time.
[0078] Based on the scenario's tasks and functional requirements, establish Fig.13 The task execution system shown:
[0079] The plan node P1 is a parallel running node, which encapsulates 11 task chain nodes C1-C11. All task chain nodes run in parallel. The sub-nodes encapsulated by the C1-C3 task chain nodes are exactly the same, and are respectively executed by the fixed-wing UAVs AFT1, AFT2, and AFT3 equipped with thermal imagers; the sub-nodes encapsulated by the C4-C5 task chain nodes are exactly the same, and are respectively executed by the fixed-wing UAVs AFC1 and AFC2 equipped with illuminators and visible light cameras; the sub-nodes encapsulated by the C6-C11 task chain nodes are exactly the same, and are respectively executed by the fixed-wing UAVs ACD1-ACD6 equipped with illuminators and visible light cameras.
[0080] Fig.14The task chain executed by the fixed-wing drone with thermal imager. Since the C1-C3 task chains are the same, only the C1 task chain is described. The C1 task chain is a sequential operation node, which encapsulates the three task nodes M4, M5, and M6 and executes them in sequence. The rescue team operator first executes the taxi takeoff function unit under the M4 node. The aircraft takes off from the runway according to the function and behavior mode defined by the function unit. After completing the relevant actions, it returns True. Since the M4 node only encapsulates one function unit, after the current function unit returns True, the condition that all the function units under it return True is met, so the M4 node also returns True, and the C1 node calls the node M5 to run. M5 is a graph operation node. After it starts running, based on the function unit structure encapsulated inside it, it first calls the function unit FU6 to execute. The comb route collaborative search function unit can be implemented in the form of a software plug-in. It defines a set of behavior patterns for multiple aircraft to collaboratively traverse and search the specified area in the form of comb routes, and splits the behavior pattern into the internal modules of the function unit for joint implementation.
[0081] like Fig.15 As shown, in the comb-shaped route collaborative search functional unit, the initialization module needs to initialize the parameters of the algorithms and functions that need to be called based on the center point of the search area, the search method and the range, and request the onboard computer operating system to start the thread to enable the function to run continuously and independently; the data input / output module needs to continuously read the state of the aircraft, the state of the neighboring aircraft and the load state from the data management module, and write the data generated by this functional unit into the data management module; the algorithm execution module calls the algorithm to calculate and generate the comb-shaped route for regional traversal based on the current state data and initialization parameters, and generates the expected flight trajectory for a period of time in the future, so as to make the actual flight route as consistent as possible with the route; the action execution module needs to call The thermal imager driver interface acquires data and controls the thermal imager in real time based on shooting requirements. It also needs to send instructions to the flight control to control the aircraft to fly according to the desired trajectory. In addition, it needs to process the acquired image data in real time, identify suspicious targets, calculate their coordinates, and broadcast the coordinates to other members; the task coordination module needs to obtain the position and speed of other members that are executing the comb route collaborative search function unit (FU6), and combine relevant algorithms to calculate the optimal expected position and speed of the aircraft in real time, so that all aircraft participating in the coordination can be evenly distributed on the comb search route and complete the overall traversal in the shortest possible time; the functional unit jump module defines the jump condition as the aircraft completely traverses the entire route.
[0082] The logic unit jump branch of the comb-shaped route collaborative search function unit (FU6) is connected to the logic unit (FL4) whose judgment condition is insufficient cruising range. When the judgment condition is met and the output is True, it directly jumps to execute the return landing function unit (FU7).
[0083] When the comb-shaped route collaborative search function unit (FU6) meets the internally defined end condition and outputs True, it will trigger the task node (M5) to output True, thereby causing the system to call the task node M6 and execute the return and landing function unit (FU7).
[0084] Fig.16 This is a task chain for a fixed-wing UAV equipped with an illuminator and a visible light camera. Since the C4-C5 task chains are the same, only the C4 task chain is described. The C4 task chain is a sequential running node that encapsulates the three task nodes M1, M2, and M3 and executes them in sequence. The rescue team operator first executes the taxiing takeoff functional unit under the M1 node. The aircraft takes off from the runway according to the functions and behavior patterns defined by the functional unit. After the taxiing takeoff functional unit is completed, the system schedules the task node M2 to run. Based on its encapsulated functional unit structure, M2 first executes the fixed-point hovering functional unit (FU2) to make the aircraft wait for instructions or target information at the preset standby assembly point; the logic unit jump branch of the fixed-point hovering functional unit (FU2) connects a logic unit (FL2) for receiving target information and a logic unit for insufficient cruising range (FL1). During the fixed-point hovering process, if the target information is received, the conditional statement of FL2 is established, and the collaborative target confirmation (FU3) logic unit is executed. Otherwise, the logic unit for insufficient cruising range (FL1) is checked. If the FL1 condition is established, it directly switches to the return landing (FU4) functional unit, otherwise, the fixed-point hovering functional unit (FU2) is continued to be executed.
[0085] The collaborative target confirmation functional unit (FU3) defines a set of behavior patterns for multiple aircraft to autonomously allocate and approach a series of target points, and splits the behavior patterns into various internal modules of the functional unit for joint implementation. Fig.17 As shown in the figure, the initialization module first initializes the target state, solver configuration and other parameters, and then starts the algorithm function threads such as target allocation, target identification and positioning; the data input / output module needs to continuously read the local machine state, neighboring machine state and load state from the data management module, and write the data generated by this functional unit into the data management module; the algorithm execution module generates the expected trajectory to the current target point based on the current state data and initialization parameters, and performs target identification and positioning in real time after approaching the target; the target allocation function calls the distributed auction algorithm to generate a target sequence that the local machine needs to approach and observe based on the known target set.
[0086] The action execution module encapsulates a set of behavior patterns represented by a state machine, which is used to realize the sequential approach observation and confirmation of the target sequence. According to the state transition relationship of the state machine, the UAV first obtains the first target of the assigned target sequence from the result of the current target allocation, and then goes to the target; after the UAV reaches the target area, it turns on the lighting equipment and visible light camera, and hovers over the target area for search; when the number of circling circles of the UAV reaches the threshold, the UAV will re-read the target sequence and go to the current first target; if the UAV recognizes the target information during the circling process, its image and positioning information will be broadcast to the ground command and control system. The task coordination module defines the following coordination mode: call the target allocation function, distribute the current known target set among all aircraft executing the same functional unit, generate the target sequence to be approached and confirmed by the aircraft, and ensure that each aircraft confirms different targets. The jump rule defined by the functional unit jump judgment module is: if there is no unconfirmed target in the result of the current target allocation, it can jump from the functional unit jump branch to the next functional unit connected to it. The execution mode and logical order of the internal module functions of all functional units are defined by the software program code written during the specific implementation, and the functions within the module can run in parallel in the computer background.
[0087] The functional unit jump branch of collaborative target confirmation (FU3) is connected to the fixed-point hovering (FU2) functional unit. When there is no unconfirmed target in the target allocation result in collaborative target confirmation (FU3), FU3 will jump to the fixed-point hovering (FU2) functional unit; the logical unit jump branch of collaborative target confirmation (FU3) is connected to another insufficient range (FL3) logical unit. When the FL3 conditional statement is established, the UAV directly enters the return landing mode.
[0088] Fig.18This is a multi-rotor drone task chain with a visible light camera and a suspended airdrop device. Since the C6-C11 task chains are the same, only the C6 task chain is described. The C6 task chain is a sequential operation node, which encapsulates the three task nodes M7, M8, and M9 and executes them in sequence. The drone first executes the standby function unit. The jump branch of the standby function unit is not connected to any other function unit, so it can only be jumped by the operator sending a command. After receiving the target image and coordinate information, the rescue personnel use the command and control system to set relevant parameters for each functional unit, and instruct the current execution functional unit to take off from the spot (FU8). After the drone takes off, the M7 node returns True, the system calls the M8 node to run, and calls the fixed target point flight (FU9) functional unit to go to the designated target point. After the aircraft arrives near the target point (FL5), it enters the spiral route search function (FU10). If the target is identified (FL7), it enters the target tracking mode. At this time, the operator can send a command to make the drone execute the airdrop function (FU12) to release the rescue supplies by airdrop. After the airdrop is completed, the drone returns to the target tracking mode (FU11). If the target is lost during the tracking process, it switches back to the fixed target point flight mode (FU9) and returns to the preset target point. If the range is insufficient during the execution of the functional unit (FL6, FL8, FL10), it switches to the return landing mode (FU13).
Claims
1. A distributed multi-agent cluster task collaborative management system based on a layered encapsulation mechanism, characterized by :(1) A distributed multi-agent cluster task coordination management system based on a hierarchical encapsulation mechanism, which consists of a task scheduling module, an information sharing module, a task construction module, and a task coordination module. The task scheduling module is used to determine and execute the current running state of the agent and perform real-time function switching. The information sharing module is used to store the status information of all other cluster members that can be obtained by the agent belonging to the system. The task construction module is used to establish and store the executable task system. The task coordination module performs coordination status judgment and coordinated action execution based on the functional requirements of the tactical unit and the information in the information sharing space. (2) The system is a distributed architecture and runs simultaneously on the onboard computer of each member agent in the multi-agent cluster. (3) The task construction module in the system constructs a task execution system at four levels: plan (P), task chain (C), task (M), and task unit (F). The task unit includes two types: functional unit (FA) and logical unit (FL). (4) The scheme plans, task chains, and tasks are control nodes, forming a tree topology structure. Each control node constrains the execution logic relationship of its child nodes; multiple task units are encapsulated under the task node, and each task unit itself has a limited number of logical branches and can be connected to any other task unit under different or the same task node to form a graphical topology. (5) The task coordination module in the system coordinates based on the serial number (FUID) of the tactical unit, that is, task coordination is only carried out between member machines that execute the tactical unit with the same serial number at the same time.
2. The multi-agent cluster according to claim 1, characterized in that: It includes drones with onboard computers, unmanned vehicles, unmanned boats, robot dogs, and heterogeneous clusters formed by their combination.
3. The task unit according to claim 1, characterized in that: It is a standardized functional encapsulation module. By abstracting limited interfaces and functional modules, it can realize the effective combination of the required basic algorithms, load scheduling, operation logic and timing when completing specific functions, including initialization, data input processing, data output processing, action execution, performance evaluation, target allocation, task coordination and other internal functional modules, and its parameters can be configured through configuration files. The functional modules of the task unit can be implemented in the form of behavior trees, state machines, bionic mechanisms, etc., to achieve the nesting and coexistence of behavior patterns.
4. The logic unit according to claim 1, characterized in that: It is a standardized logic encapsulation module that processes the information in the information sharing space to judge the preset multiple logical conditional statements, and the final output result is a Boolean logic value. The logic unit parameters can be configured through the configuration file.
5. The information sharing space according to claim 1, characterized in that: The data is stored in a multi-key value format, where the key includes the member ID, task unit ID and data type.
6. The distributed multi-agent cluster task collaborative management system according to claim 1, characterized in that: It is controllable, and the operator can change the task unit being performed by one or more members through instructions to achieve the switching of their behavior mode or function.