Multi-robot collaborative operation control method, device, equipment and medium
Through the multi-robot collaborative operation control method and the use of formation reconstruction and task allocation algorithms, the real-time and adaptability problems of aerial robot formations in complex mission environments are solved, achieving efficient and flexible task execution and improving system stability.
Patent Information
- Application Number
- CN202411678100.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-11-22
- Publication Date
- 2025-09-23
- Estimated Expiration
- 2044-11-22
AI Technical Summary
In the existing technology, when aerial robot formations perform complex tasks, the task allocation complexity and computational effort are high, and the real-time and adaptability of the optimization algorithm are poor in a changing task environment.
A multi-robot collaborative operation control method is adopted. By obtaining formation control parameters and reconstruction trigger parameters, a speed control model and a robot state model are constructed. The auction algorithm and the Hungarian algorithm are combined for task allocation to achieve formation reconstruction and task allocation, thereby improving the flexibility and adaptability of the system.
The execution efficiency and environmental adaptability of aerial robot formations are improved, system costs are reduced, and the stability and scalability of the system are enhanced.
Smart Images

Figure CN119596774B_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of drone control, and in particular to a multi-robot collaborative operation control method, corresponding device, electronic device and computer-readable storage medium. Background Art
[0002] For robots that need to perform complex tasks, the load capacity and power supply of a single robot are limited, making it difficult to equip them with multiple functional components simultaneously. Furthermore, for some highly dynamic tasks, developing a single robot is more difficult and costly than developing a team of robots. Even any problem that can be handled by a multifunctional individual robot can benefit from being replaced by a multi-robot system. This is because the robustness and reliability of a system can be increased by combining several robots with less robustness and reliability. Based on these considerations, multi-robot systems (MRS) have emerged and have become one of the most important research areas in robotics, with diverse potential applications in areas such as surveillance, search and rescue, collaborative operations, and mapping and exploration. MRS aims to improve the efficiency and quality of tasks by combining multiple robots into a collaborative team and leveraging the characteristics and capabilities of each robot, allowing them to complete complex tasks together.
[0003] Based on the number of robots and the interaction patterns between them, MRS can be categorized into three types: team, formation, and swarm. In a team, robots compete or collaborate with each other, depending on the situation, to maximize their local objectives or minimize local costs. However, this competition can lead to conflict between robots, hindering the discovery of a system solution. On the other hand, it can also lead the system to an optimal or suboptimal solution. In contrast to a team, robots in a formation always collaborate to complete specific tasks and maintain consistency of partial state information through communication links. In a swarm, each individual robot follows Reynolds' rule to achieve the overall goal, generating emergent behaviors through local interactions between individuals. Generally speaking, the number of robots in a team and formation is small, typically no more than 10. This small team size makes coordination and control easier. A swarm, on the other hand, consists of many similar robots forming a group. As long as the system load is not saturated, the number of robots can be increased as needed. This swarm structure makes the system more scalable and adaptable, enabling it to handle larger-scale tasks and environments. However, in traditional technologies, when aerial robot formations perform complex tasks, the task allocation complexity and computational effort are high, and the real-time and adaptability of the optimization algorithm are poor in changing task environments.
[0004] To sum up, in order to adapt to the problems of the existing technology in which aerial robot formations perform complex tasks, task allocation complexity and computational complexity are large, and the real-time and adaptability of the optimization algorithm are poor in a changing task environment, the applicant has made corresponding explorations to solve these problems. Summary of the Invention
[0005] The purpose of this application is to solve the above problems and provide a multi-robot collaborative operation control method, corresponding device, electronic device and computer-readable storage medium.
[0006] In order to meet the various objectives of this application, this application adopts the following technical solutions:
[0007] A multi-robot collaborative operation control method proposed to meet one of the purposes of this application includes:
[0008] In response to an instruction to perform formation control on the robots, obtaining corresponding formation control parameters and formation reconstruction trigger parameters of the robots, wherein the formation control parameters include a position error vector, a velocity error vector, a position weight, and a velocity weight; and the formation reconstruction trigger parameters include a communication matrix, a task execution list, a faulty robot list, a list of robots that have left the formation, the total number of robots, and an adjacency matrix;
[0009] constructing a speed control model according to the position weight, the speed weight, the position error vector, and the speed error vector; constructing a robot state model according to the position error vector and the speed error vector; and triggering robot formation reconstruction according to the formation reconstruction trigger parameter using the speed control model and the robot state model to perform task allocation;
[0010] In response to an instruction to assign tasks to robots, obtain multiple robots in a robot type set, multiple tasks to be assigned in a task type set, a robot-task matching matrix, a maximum benefit matrix, a bid matrix, and a maximum bid vector;
[0011] Using a preset auction algorithm to allocate the to-be-allocated tasks in the task type set to the robots in the robot type set according to the robot task matching matrix, the maximum payoff matrix, the bid matrix, and the maximum bid vector, so as to determine the optimal allocation relationship between the to-be-allocated tasks and the robots;
[0012] The robot position set, expected position set and distance between the robot and the target position corresponding to the unassigned task robot are obtained, and the preset Hungarian algorithm is used to determine the optimal target position corresponding to the unassigned task robot based on the robot position set, expected position set and distance between the robot and the target position to complete the control of multi-robot collaborative operation.
[0013] Optionally, the speed control model is expressed as:
[0014]
[0015] Among them, u i It represents the speed control input signal of the i-th robot at time t, α1 and α2 represent the position weight and speed weight respectively. The larger α1 is, the faster the robot can reach the desired position; the larger α2 is, the faster the robot reaches the desired position. Respectively represent the position error vectors of robot i and robot j in the desired formation, They represent the velocity error vectors of robot i and robot j in the desired formation, respectively, and a ij It refers to the corresponding matrix element in the adjacency matrix A. If it is not 0, it means that there is a graph connection between robots i and j.
[0016] Optionally, the robot state model is expressed as:
[0017]
[0018] Optionally, the step of using a preset auction algorithm to allocate the to-be-allocated tasks in the task type set to robots in the robot type set based on the robot task matching matrix, the maximum benefit matrix, the bid matrix, and the maximum bid vector to determine the optimal allocation relationship between the to-be-allocated tasks and the robots includes:
[0019] Obtain the robot position set, robot type set, task position set, task type set, robot task matching matrix O, maximum profit matrix V, bid matrix P, and maximum bid vector b;
[0020] Based on the robot task matching matrix O, for each robot i and each task to be assigned j, the benefit of the robot i for the task to be assigned j is calculated and determined. The calculation formula is expressed as:
[0021] 0j=(-today)
[0022] Among them, α ij represents the benefit of robot i for the assigned task j, o ij Indicates the matching degree of robot i to the assigned task j, v ij represents the maximum benefit of robot i for the assigned task j, b j represents the maximum bid for task j to be assigned;
[0023] Find the task j with the highest payoff *The next highest reward task k, according to the task j * And the task k to be assigned is quoted to determine whether robot i should assign task j * Quote The calculation formula is expressed as:
[0024]
[0025] in, Represents robot i's attitude towards assigned task j * The quote, represents the task j to be assigned * The maximum offer, Indicates that robot i has a task to be assigned to j * The income, α ik The benefit of robot i for the assigned task k, b k represents the maximum bid for the task k to be assigned, ∈ is a constant used to avoid extreme fluctuations in bids;
[0026] Start assigning tasks based on the robot's quote. For each task j to be assigned, find the robot i that has the highest quote for the task j. * , update the maximum bid b of the task j to be assigned j Update the optimal allocation list for the robot's quotation and record the optimal allocation relationship between tasks and robots;
[0027] After each iteration, check whether all tasks have been assigned. If so, end the loop and return the optimal assignment list; otherwise, continue iterating until all tasks have been assigned.
[0028] Optionally, the step of obtaining a robot position set, an expected position set, and a distance between the robot and a target position corresponding to an unassigned task robot, and using a preset Hungarian algorithm to determine an optimal target position corresponding to the unassigned task robot based on the robot position set, the expected position set, and the distance between the robot and the target position includes:
[0029] Obtaining a robot position in the robot position set and a target position in the desired position set;
[0030] The edge weight matrix W is calculated and determined according to the robot position and the target position, wherein each element w in the edge weight matrix W is ij represents the cost or distance between robot i and goal position j;
[0031] Initialize the left top label X and the right top label Y, where X = {x i =max(w ij)},Y={y i =0}, x i Is the top mark of the robot position, indicating the offset of the robot, x i =max(w ij ) is the maximum cost for robot i to reach target position j, y j It is the top mark of the target position, indicating the offset of the target position;
[0032] For each robot i, determine whether the edge weight between robot i and target position j satisfies: i +y j ==w ij , if satisfied, robot i matches target position j, and the optimal matching array is updated;
[0033] If not satisfied, calculate and determine the adjustment amount d and modify the top mark value x i and y j , x i Adjust to x i =x i -d, change y j Adjust to y j =y j +d;
[0034] Repeat the above steps until all robots are assigned to target positions in the desired position set to determine the optimal target position corresponding to the unassigned task robot.
[0035] Optionally, the task execution list is used to store the numbers of follower robots that execute tasks, the fault robot list is used to store the numbers of follower robots that have left the formation due to faults, and the robot list that has left the formation is used to store the numbers of all follower robots that want to leave the formation; the adjacency matrix represents the relative position error between robots in the formation.
[0036] Optionally, the robot includes an aerial robot or a drone; the robot-task matching matrix is used to record the preliminary matching status between the robot and the task; the maximum benefit matrix is used to record the maximum benefit when the robot performs the task; the quotation matrix is used for the robot's quotation for each task; and the maximum quotation vector is used to record the current maximum quotation for each task.
[0037] A multi-robot collaborative operation control device provided for another purpose of the present application includes:
[0038] a first data acquisition module configured to respond to an instruction to perform formation control on the robots and acquire corresponding formation control parameters and formation reconstruction trigger parameters of the robots, wherein the formation control parameters include a position error vector, a velocity error vector, a position weight, and a velocity weight; and the formation reconstruction trigger parameters include a communication matrix, a task execution list, a list of faulty robots, a list of robots that have left the formation, a total number of robots, and an adjacency matrix;
[0039] a formation reconstruction triggering module, configured to construct a speed control model based on the position weight, the speed weight, the position error vector, and the speed error vector, construct a robot state model based on the position error vector and the speed error vector, and trigger robot formation reconstruction according to the formation reconstruction triggering parameter using the speed control model and the robot state model to perform task allocation;
[0040] a second data acquisition module configured to respond to an instruction to assign tasks to robots and acquire a plurality of robots in a robot type set, a plurality of tasks to be assigned in a task type set, a robot-task matching matrix, a maximum benefit matrix, a bid matrix, and a maximum bid vector;
[0041] a first task assignment module, configured to assign the to-be-assigned tasks in the task type set to the robots in the robot type set using a preset auction algorithm according to the robot task matching matrix, the maximum payoff matrix, the bid matrix, and the maximum bid vector, so as to determine an optimal assignment relationship between the to-be-assigned tasks and the robots;
[0042] The second task assignment module is configured to obtain the robot position set, expected position set and distance between the robot and the target position corresponding to the unassigned task robot, and use the preset Hungarian algorithm to determine the optimal target position corresponding to the unassigned task robot based on the robot position set, expected position set and distance between the robot and the target position to complete the control of multi-robot collaborative operation.
[0043] An electronic device provided to meet another purpose of the present application includes a central processing unit and a memory, wherein the central processing unit is used to call and run a computer program stored in the memory to execute the steps of the multi-robot collaborative operation control method described in the present application.
[0044] A computer-readable storage medium is provided to meet another purpose of the present application, which stores a computer program implemented according to the multi-robot collaborative operation control method in the form of computer-readable instructions. When the computer program is called and executed by a computer, the steps included in the corresponding method are executed.
[0045] Compared with the existing technology, this application addresses the problems of large task allocation complexity and computational complexity when aerial robot formations perform complex tasks, as well as poor real-time and adaptability of optimization algorithms under changing task environments. This application includes but is not limited to the following beneficial effects:
[0046] First, this application is a multi-robot formation system. By giving different aerial robots basic intelligence and configuring different equipment suitable for different tasks, compared with the solution of equipping all functional modules on a single aerial robot, this application makes each robot in the formation lightweight, and completes complex tasks through multi-robot collaboration, thereby improving the flexibility of the system.
[0047] Secondly, this application uses task allocation algorithms such as auction algorithms and Hungarian algorithms to assign tasks of different types and requirements to appropriate drones, ensuring that the assigned aerial robots can efficiently complete the tasks through the equipment they carry, thereby improving the efficiency of task execution;
[0048] Third, this application ensures that the remaining aerial robots in the formation can change their formation according to actual needs through an adaptive formation reconstruction strategy, thereby improving the environmental adaptability of the multi-robot formation system.
[0049] In summary, this application, through the design of a multi-robot formation system, employs task allocation algorithms such as the auction algorithm and the Hungarian algorithm, as well as technologies such as adaptive formation reconstruction strategies, to not only improve the system's execution efficiency, flexibility, and adaptability, but also enhance its stability, scalability, and maintainability. By distributing the burden across multiple lightweight robots, it can effectively reduce costs and improve task execution efficiency, ultimately providing an efficient and reliable solution for complex and ever-changing tasks. BRIEF DESCRIPTION OF THE DRAWINGS
[0050] The above and / or additional aspects and advantages of the present application will become apparent and easily understood from the following description of the embodiments in conjunction with the accompanying drawings, in which:
[0051] Figure 1 Schematic diagram of the flow of the multi-robot collaborative operation control method in an embodiment of the present application;
[0052] Figure 2 This is a flowchart of a multi-robot collaborative operation control system in an embodiment of the present application;
[0053] Figure 3 This is a conceptual diagram of each module of the multi-robot collaborative operation control system in an embodiment of the present application;
[0054] Figure 4 This is a principle block diagram of a multi-robot collaborative operation control device in an embodiment of the present application;
[0055] Figure 5 Schematic diagram of the structure of the computer device in the embodiment of the present application. DETAILED DESCRIPTION
[0056] The following describes in detail embodiments of the present application, examples of which are shown in the accompanying drawings, wherein the same or similar reference numerals throughout represent the same or similar elements or elements having the same or similar functions. The embodiments described below with reference to the accompanying drawings are exemplary and are only used to explain the present application, and are not to be construed as limiting the present application.
[0057] It will be understood by those skilled in the art that, unless expressly stated otherwise, the singular forms "a", "an", "said" and "the" used herein may also include the plural forms. It should be further understood that the term "comprising" used in the specification of the present application refers to the presence of the features, integers, steps, operations, elements and / or components, but does not exclude the presence or addition of one or more other features, integers, steps, operations, elements, components and / or groups thereof. It should be understood that when we refer to an element as being "connected" or "coupled" to another element, it may be directly connected or coupled to the other element, or there may be intermediate elements. In addition, "connected" or "coupled" as used herein may include wireless connections or wireless couplings. The term "and / or" used herein includes all or any units and all combinations of one or more associated listed items.
[0058] It will be understood by those skilled in the art that, unless otherwise defined, all terms (including technical and scientific terms) used herein have the same meaning as commonly understood by those skilled in the art to which this application belongs. It should also be understood that terms such as those defined in common dictionaries should be understood to have meanings consistent with their meanings in the context of the prior art and will not be interpreted in an idealized or overly formal sense unless specifically defined as herein.
[0059] It will be understood by those skilled in the art that the terms "client," "terminal," and "terminal device" as used herein include both devices that are wireless signal receivers, i.e., devices that only have wireless signal receivers without transmission capabilities, and devices that have receiving and transmitting hardware capable of two-way communication over a two-way communication link. Such devices may include: cellular or other communication devices such as personal computers and tablet computers, which have single-line displays, multi-line displays, or cellular or other communication devices without multi-line displays; PCS (Personal Communications Service), which may combine voice, data processing, fax, and / or data communication capabilities; PDA (Personal Digital Assistant), which may include a radio frequency receiver, a pager, Internet / Intranet access, a web browser, a notepad, a calendar, and / or a GPS (Global Positioning System) receiver; and conventional laptop and / or palmtop computers or other devices, which have and / or include a radio frequency receiver. As used herein, the terms "client," "terminal," or "terminal device" may be portable, transportable, or installed in a vehicle (air, sea, and / or land), or may be adapted and / or configured to operate locally and / or in a distributed manner at any other location on Earth and / or in space. As used herein, the terms "client," "terminal," or "terminal device" may also refer to a communication terminal, an Internet terminal, or a music / video playback terminal, such as a PDA, an MID (Mobile Internet Device), and / or a mobile phone with music / video playback capabilities, or may include a smart TV, a set-top box, or other device.
[0060] The hardware referred to by names such as "server", "client", and "service node" in this application is essentially an electronic device with capabilities equivalent to those of a personal computer. It is a hardware device that has the necessary components revealed by the von Neumann principle, such as a central processing unit (including an arithmetic unit and a controller), a memory, an input device, and an output device. Computer programs are stored in its memory, and the central processing unit loads the program stored in the external memory into the internal memory for execution, executes the instructions in the program, and interacts with the input and output devices to complete specific functions.
[0061] It should be noted that the concept of "server" referred to in this application can also be extended to server clusters. Based on the network deployment principles understood by those skilled in the art, the servers described should be logically divided. In physical space, these servers can be independent of each other but callable through interfaces, or integrated into a single physical computer or a computer cluster. Those skilled in the art should understand this flexibility and should not use it to constrain the implementation of the network deployment method of this application.
[0062] Unless expressly specified, one or more technical features of the present application can be deployed on a server for implementation and accessed by a client through a remote call to obtain an online service interface provided by the server, or can be directly deployed and run on a client for implementation.
[0063] Unless expressly specified otherwise, the neural network models referenced or may be referenced in this application may be deployed on a remote server and remotely called on the client, or may be deployed and directly called on a client with sufficient device capabilities. In some embodiments, when it runs on the client, its corresponding intelligence may be obtained through transfer learning to reduce the requirements for the client's hardware operating resources and avoid excessive occupation of the client's hardware operating resources.
[0064] Unless explicitly specified, the various data involved in this application can be stored remotely on a server or on a local terminal device, as long as they are suitable for being called by the technical solution of this application.
[0065] Those skilled in the art should be aware that although the various methods of this application are described based on the same concept and thus exhibit commonality, unless otherwise specified, these methods can be independently executed. Similarly, the various embodiments disclosed in this application are all based on the same inventive concept. Therefore, concepts with the same expression, as well as concepts that are appropriately transformed for convenience despite different expression, should be understood as equivalent.
[0066] Unless expressly stated to be mutually exclusive, the various embodiments disclosed in this application may be cross-combined with the relevant technical features of the various embodiments to flexibly construct new embodiments, as long as such combination does not deviate from the creative spirit of this application and can meet the needs of the prior art or resolve certain deficiencies in the prior art. Those skilled in the art should be aware of such flexibility.
[0067] The multi-robot collaborative operation control method of the present application can be implemented based on a multi-robot collaborative operation control system, which is composed of aerial robots, communication and control strategies. The aerial robots are divided into leader (L-UAV) robots and follower (F-UAV) robots, which are equipped with an onboard computer, flight controller, power system, and a series of positioning and mapping sensors. Their functional modules are divided into positioning and mapping module, task allocation module, formation control module, motion planning module, motion control module and special task module.
[0068] In some embodiments, the positioning and mapping module is used to obtain information from a series of positioning and mapping sensors such as IMU, GPS, and lidar, and output the point cloud map and positioning information to the motion planning module, output the positioning information of the aerial robot in the world coordinate system, and send it to the formation control module and the motion planning module via the wireless network communication module; the task allocation module is a leader-only module, which is used to receive the point cloud maps and positioning information of all aerial robot positioning and mapping modules and the task information released by the system, and assign tasks according to the type of aerial robot, the type of task, and the distance cost from the aerial robot to the task through the aerial robot onboard computer, obtain the task allocation information, and transmit the status information to the formation control module and the motion planning module via the wireless network communication module; the formation control module is a leader-only module, which is used to receive the point cloud maps and positioning information of all aerial robot positioning and mapping modules, and calculate the position, speed, acceleration of the F-UAV at the next moment online through the aerial robot onboard computer according to the preset expected formation and expected state information. The motion planning module receives status information such as the speed and altitude of the aerial robot and transmits the status information to the motion planning module via the wireless network communication module; the motion planning module is used to receive the status information released by the L-UAV and use it as the following target. If the aerial robot is performing a special task and is not in the formation, the task being performed or the position information of the L-UAV is used as the tracking target. Combined with the dynamic model of the aerial robot, the motion trajectory that meets the dynamics and obstacle avoidance requirements is obtained through online processing by the aerial robot's onboard computer, and the trajectory information is transmitted to the motion control module via the wireless network communication module; the motion control module is used to receive the positioning information from the positioning and mapping module and the final aerial robot speed control instruction calculated by the motion planning module, and process it through the flight controller to output a PWM signal to control the motor speed of the power system; it is used to send control command signals to control the operation of the special task module; the special task module is used to receive instructions from the motion control module to run special functions and is responsible for executing special tasks; the wireless network communication module is responsible for signal transmission between aerial robots.
[0069] In some embodiments, as a further optimization solution for the multi-robot collaborative operation control system described in this application, the special task module is a sensor or actuator mounted on the aerial robot, such as an infrared detector or a robotic arm;
[0070] In some embodiments, as a further optimization solution for the multi-robot collaborative operation control system described in this application, the motion control module obtains top-level control instructions and positioning information from the onboard computer by the flight controller, and collects and analyzes the robot's motion state information based on sensors such as the gyroscope, accelerometer, and barometer on the flight controller, generates a control signal to adjust the motor speed of the power system, and thus controls the robot's spatial posture; in addition, the motion control module is responsible for information exchange with the special task module, sending information to the special task module through the onboard computer or the flight controller, and receiving information collected by the special task module;
[0071] In some embodiments, as a further optimization of the multi-robot collaborative control system described herein, the positioning and mapping module utilizes a series of positioning and mapping sensors that run a simultaneous positioning and mapping algorithm. This algorithm calculates a 3D point cloud map, the robot's 3D positioning coordinates, and the robot's quaternion pose information.
[0072] Based on the above example scenario, please refer to Figure 1 as well as Figure 2 In one embodiment, the multi-robot collaborative operation control method of the present application includes:
[0073] Step S10: In response to an instruction to perform formation control on the robots, obtain corresponding formation control parameters and formation reconstruction trigger parameters of the robots, wherein the formation control parameters include a position error vector, a velocity error vector, a position weight, and a velocity weight; and the formation reconstruction trigger parameters include a communication matrix, a task execution list, a faulty robot list, a list of robots that have left the formation, the total number of robots, and an adjacency matrix.
[0074] The formation control module in the multi-robot collaborative operation control system can respond to instructions for formation control of robots, obtain the corresponding formation control parameters and formation reconstruction trigger parameters of the robots, wherein the formation control parameters include position error vector, velocity error vector, position weight and velocity weight, and the formation reconstruction trigger parameters include communication matrix, task execution list, faulty robot list, robot list out of formation, total number of robots, and adjacency matrix; wherein the task execution list is used to number follower robots that perform tasks, the faulty robot list is used to store the numbers of follower robots that have left the formation due to faults, and the robot list out of formation is used to store the numbers of all follower robots that want to leave the formation; the adjacency matrix represents the relative position error between robots in the formation, and the robots include aerial robots or drones.
[0075] Step S20: constructing a speed control model based on the position weight, the speed weight, the position error vector, and the speed error vector; constructing a robot state model based on the position error vector and the speed error vector; and triggering robot formation reconstruction according to the formation reconstruction trigger parameter using the speed control model and the robot state model to perform task allocation.
[0076] After obtaining the corresponding formation control parameters and formation reconstruction trigger parameters of the robots, a speed control model is constructed according to the position weight, the speed weight, the position error vector, and the speed error vector; a robot state model is constructed according to the position error vector and the speed error vector; and the speed control model and the robot state model are used to trigger the robot formation reconstruction according to the formation reconstruction trigger parameters to perform task allocation;
[0077] In some embodiments, the speed control model is expressed as:
[0078]
[0079] Among them, u i It represents the speed control input signal of the i-th robot at time t, α1 and α2 represent the position weight and speed weight respectively. The larger α1 is, the faster the robot can reach the desired position; the larger α2 is, the faster the robot reaches the desired position. Respectively represent the position error vectors of robot i and robot j in the desired formation, They represent the velocity error vectors of robot i and robot j in the desired formation respectively.
[0080] The expression of the robot state model is expressed as:
[0081]
[0082] Specifically, the leader's formation control module receives the point cloud map and positioning information from all aerial robots' positioning and mapping modules, and calculates the speed control input signal of each aerial robot according to the consistency-based formation control strategy. The speed control model is expressed as:
[0083]
[0084] Among them, u i It represents the speed control input signal of the i-th robot at time t, α1 and α2 represent the position weight and speed weight respectively. The larger α1 is, the faster the robot can reach the desired position; the larger α2 is, the faster the robot reaches the desired position. Respectively represent the position error vectors of robot i and robot j in the desired formation, They represent the velocity error vectors of robot i and robot j in the desired formation, respectively, and a ij Refers to the corresponding matrix element in the adjacency matrix A. If a ij If it is not 0, it means that there is a graph connection between robots i and j. Otherwise, it means that there is no graph connection between robots i and j.
[0085] To achieve formation control of a multi-robot formation, the states of all aerial robots should satisfy the expression of the robot state model, which is expressed as:
[0086]
[0087] Due to the need for task execution, the number of aerial robots in the formation will change according to the execution progress of the aerial robots assigned to the task. Therefore, the communication matrix C∈R is introduced. n×n , represents the communication relationship between aerial robots within the communication range (formation range): If aerial robot i and aerial robot j can communicate, then c ij =1; otherwise, c ij =0; introduce the task execution list executionList∈R n , store the follower number of the task execution; introduce the fault robot list faultList∈R n , store the follower number that leaves the formation due to a fault; introduce the robot list that leaves the formation list = executionList∪
[0088] faultList stores the numbers of all followers who want to leave the formation. Then, the formation structure is redefined through graph theory, so that the multi-robot formation changes accordingly at different stages. The specific principles are as follows:
[0089] In the formation flight stage, when the number of aerial robots within the formation is equal to the total number of aerial robots num and no follower is performing a task, that is, when C.rows() == num && list.empty(), the system is in the formation flight stage, and the aerial robots within the formation maintain the initial formation until the conditions change.
[0090] In the task execution stage, when several followers are assigned tasks and gradually leave the formation range, that is, when C.rows() ≤ num && C.rows() > num - list.size() &&!list.empty(), the system is in the task execution stage. The followers assigned tasks are gradually leaving the formation, while the remaining aerial robots still maintain the original formation until all the followers assigned tasks leave the formation. At this time, the adjacency matrix A ∈ R between the aerial robots within the formation n×n Recalculate, set all the row and column elements corresponding to the F-UAVs performing tasks in A to zero, so as to keep the formation unchanged.
[0091] When all the followers assigned tasks have left the formation range, the remaining aerial robots trigger formation reconstruction to form a new formation. That is, when C.rows() == num - list.size() &&!list.empty(), the system is in the task execution stage, but the followers performing tasks have left the formation range. At this time, the number of aerial robots within the formation range changes, and the condition for maintaining the initial formation is not met, triggering formation reconstruction to form a new formation. Therefore, recalculate the adjacency matrix A ∈ R between the aerial robots within the formation n×n , delete the corresponding rows and columns of the followers performing tasks in A.
[0092] In the stage of returning to the formation:
[0093] (1) Several followers assigned tasks have completed the tasks but have not entered the formation range. That is, when C.rows() < num - list.size() &&!list.empty(), several followers are returning to the formation but have not entered the formation range. At this time, the aerial robots within the formation range still maintain the original formation.
[0094] (2) On the premise that there are still tasks unfinished, some of the followers that have completed the tasks have entered the formation range, that is, when C.rows() ≤ num - list.size() &&!list.empty(). At this time, the followers that have completed the tasks within the formation range and the original aerial robots trigger formation reconstruction together. (The followers that have completed the tasks within the formation range need to meet certain conditions to trigger formation reconstruction with the original aerial robots to form a new formation; otherwise, when the conditions are not met, the original aerial robots within the formation range maintain the original formation.)
[0095] (3) On the premise that all tasks are completed, there are still followers that have not entered the formation range, that is, when C.rows() < num && list.empty(), the aerial robots within the formation range maintain the original formation.
[0096] (4) On the premise that all tasks are completed, all the followers assigned tasks have entered the formation range, that is, when C.rows() == num && list.empty(), then all the aerial robots in the formation trigger formation reconstruction to form a new formation.
[0097] In some embodiments, referring to Figure 3 , after a group of aerial robots randomly assigned in the workspace are officially started, they will gather around the leader, and then form and maintain the desired formation through a consensus-based formation control strategy. The aerial robot formation flies according to a preset formation (regular polygon) and executes preset tasks. Among them, the L-UAV uses the artificial potential field method for autonomous navigation; while the F-UAV achieves leader following through consensus formation control.
[0098] During the cruise, when the system receives a task, the F-UAV transitions from the formation following stage to the task execution stage. First, target assignment: obtain the position of the target point, and select a suitable F-UAV to break away from the aerial robot formation to execute the task through a task assignment algorithm (hard constraint: whether the condition is met; soft constraint: minimize the cost function); then, target tracking: the selected F-UAV breaks away from the aerial robot formation (judgment condition: greater than the communication distance / leaving the specified range), the aerial robot formation triggers formation reconstruction, and uses the Kuhn-Munkres algorithm (Hungarian algorithm) to re-form a new formation. The detached F-UAV generates a path to the task target point through the artificial potential field method, autonomously navigates to the target point, and executes the preset task. After completing the assigned task, the F-UAV enters the return stage, generates a path to return to the formation (targeting the L-UAV) through the artificial potential field method, and autonomously navigates. When the F-UAV enters a certain range of the formation, it triggers formation reconstruction to form a new formation.
[0099] Step S30: Respond to the instruction for task assignment to the robot, and obtain multiple robots in the robot type set, multiple tasks to be assigned in the task type set, the robot-task matching matrix, the maximum benefit matrix, the quotation matrix, and the maximum quotation vector;
[0100] After the speed control model and the robot state model are used to trigger the robot formation reconstruction according to the formation reconstruction trigger parameters, the task allocation module in the multi-robot collaborative operation control system can respond to the instruction to assign tasks to the robots, obtain multiple robots in the robot type set, multiple tasks to be assigned in the task type set, the robot task matching matrix, the maximum benefit matrix, the quotation matrix and the maximum quotation vector; wherein, the robot includes an aerial robot or a drone; the robot task matching matrix is used to record the preliminary matching status between the robot and the task; the maximum benefit matrix is used to record the maximum benefit when the robot performs the task; the quotation matrix is used for the robot's quotation for each task; the maximum quotation vector is used to record the current maximum quotation for each task.
[0101] Specifically, to achieve efficient performance in multi-robot teams and formations, the application of multi-robot task allocation (MRTA) in the system is crucial. MRTA involves assigning tasks to different robots in the system to achieve collaborative task completion and maximize resource utilization. In a multi-robot team, the goal of task allocation is to ensure that each robot receives a suitable task to fully utilize its capabilities and improve overall efficiency, allowing the system to achieve a globally optimal or suboptimal solution without conflict. Furthermore, task allocation plays a crucial role in multi-robot formations. A formation is a group of robots organized into a coordinated effort according to specific rules and strategies to complete a task. Within a formation, task allocation is primarily used during formation reconfiguration, assigning tasks based on the robot's state and proximity to the desired position to ensure efficient formation reconfiguration. During formation reconfiguration, multi-robot task allocation typically assigns the desired formation's position set to the robots within the formation. This task allocation aims to enable the formation to adapt to changing environmental conditions and achieve an ideal configuration.
[0102] Step S40: using a preset auction algorithm to allocate the to-be-allocated tasks in the task type set to the robots in the robot type set according to the robot task matching matrix, the maximum payoff matrix, the bid matrix, and the maximum bid vector, so as to determine the optimal allocation relationship between the to-be-allocated tasks and the robots;
[0103] After obtaining a plurality of robots in a robot type set, a plurality of to-be-assigned tasks in a task type set, a robot-task matching matrix, a maximum benefit matrix, a bid matrix, and a maximum bid vector, a preset auction algorithm is used to assign the to-be-assigned tasks in the task type set to the robots in the robot type set according to the robot-task matching matrix, the maximum benefit matrix, the bid matrix, and the maximum bid vector, so as to determine an optimal allocation relationship between the to-be-assigned tasks and the robots;
[0104] In a specific embodiment, a preset auction algorithm is used to allocate the to-be-allocated tasks in the task type set to robots in the robot type set according to the robot task matching matrix, the maximum benefit matrix, the bid matrix, and the maximum bid vector, so as to determine the optimal allocation relationship between the to-be-allocated tasks and the robots, including:
[0105] Step S401: Obtain a robot position set, a robot type set, a task position set, a task type set, a robot task matching matrix O, a maximum benefit matrix V, a bid matrix P, and a maximum bid vector b;
[0106] Step S402: Based on the robot task matching matrix O, for each robot i and each task to be assigned j, calculate and determine the benefit of the robot i for the task to be assigned j. The calculation formula is expressed as:
[0107] 0t j =(-present)
[0108] Among them, α ij represents the benefit of robot i for the assigned task j, o ij Indicates the matching degree of robot i to the assigned task j, v ij represents the maximum benefit of robot i for the assigned task j, b j represents the maximum bid for task j to be assigned;
[0109] Step S403: Find the task j with the highest profit * The next highest reward task k, according to the task j * And the task k to be assigned is quoted to determine whether robot i should assign task j * Quote , and its calculation formula is expressed as:
[0110]
[0111] in, Represents robot i's attitude towards assigned task j * The quote, represents the task j to be assigned * The maximum offer, Indicates that robot i has a task to be assigned to j * The income, α ik The benefit of robot i for the assigned task k, b k represents the maximum bid for the task k to be assigned, ∈ is a constant used to avoid extreme fluctuations in bids;
[0112] Step S404: Start assigning tasks based on the robot's bid. For each task j to be assigned, find the robot i with the highest bid for the task j. * , update the maximum bid b of the task j to be assigned j Update the optimal allocation list for the robot's quotation and record the optimal allocation relationship between tasks and robots;
[0113] Step S405: After each iteration, check whether all tasks have been assigned. If so, end the loop and return the optimal assignment list; otherwise, continue iterating until all tasks have been assigned.
[0114] Step S50: Obtain the robot position set, expected position set, and distance between the robot and the target position corresponding to the unassigned task robot, and use the preset Hungarian algorithm to determine the optimal target position corresponding to the unassigned task robot based on the robot position set, expected position set, and distance between the robot and the target position to complete the control of multi-robot collaborative operation.
[0115] The to-be-assigned tasks in the task type set are assigned to the robots in the robot type set to determine the optimal allocation relationship between the to-be-assigned tasks and the robots, and then the robot position set, expected position set and distance between the robot and the target position corresponding to the unassigned task robots are obtained. The preset Hungarian algorithm is used to determine the optimal target position corresponding to the unassigned task robots based on the robot position set, expected position set and distance between the robot and the target position to complete the control of multi-robot collaborative operation.
[0116] In a specific embodiment, the steps of obtaining a robot position set, an expected position set, and a distance between the robot and a target position corresponding to an unassigned task robot, and using a preset Hungarian algorithm to determine an optimal target position corresponding to the unassigned task robot based on the robot position set, the expected position set, and the distance between the robot and the target position include:
[0117] Step S501: obtaining a robot position in a robot position set and a target position in the desired position set;
[0118] Step S502: Calculate and determine an edge weight matrix W based on the robot position and the target position, wherein each element wij in the edge weight matrix W represents the cost or distance between the robot i and the target position j;
[0119] Step S503: Initialize the left top mark X and the right top mark Y, where X={x i =max(w ij )},Y={y j =0}, x i Is the top mark of the robot position, indicating the offset of the robot, x i =max(w ij ) is the maximum cost for robot i to reach target position j, y j It is the top mark of the target position, indicating the offset of the target position;
[0120] Step S504: For each robot i, determine whether the edge weight between robot i and target position j satisfies: i +y j ==w ij , if satisfied, robot i matches target position j, and the optimal matching array is updated;
[0121] Step S505: If not satisfied, calculate and determine the adjustment amount d, and modify the top mark value x i and y j , x i Adjust to x i =x i -d, change y j Adjust to y j =y j +d;
[0122] Step S506: Repeat the above steps until all robots are assigned to target positions in the desired position set, so as to determine the optimal target position corresponding to the unassigned task robot.
[0123] As can be seen from the above embodiments, compared with the prior art, the present application addresses the problems of the complexity and computational complexity of task allocation when aerial robot formations perform complex tasks, and the poor real-time and adaptability of optimization algorithms in changing task environments. The present application includes but is not limited to the following beneficial effects:
[0124] First, this application is a multi-robot formation system. By giving different aerial robots basic intelligence and configuring different equipment suitable for different tasks, compared with the solution of equipping all functional modules on a single aerial robot, this application makes each robot in the formation lightweight, and completes complex tasks through multi-robot collaboration, thereby improving the flexibility of the system.
[0125] Secondly, this application uses task allocation algorithms such as auction algorithms and Hungarian algorithms to assign tasks of different types and requirements to appropriate drones, ensuring that the assigned aerial robots can efficiently complete the tasks through the equipment they carry, thereby improving the efficiency of task execution;
[0126] Third, this application ensures that the remaining aerial robots in the formation can change their formation according to actual needs through an adaptive formation reconstruction strategy, thereby improving the environmental adaptability of the multi-robot formation system.
[0127] In summary, this application, through the design of a multi-robot formation system, employs task allocation algorithms such as the auction algorithm and the Hungarian algorithm, as well as technologies such as adaptive formation reconstruction strategies, to not only improve the system's execution efficiency, flexibility, and adaptability, but also enhance its stability, scalability, and maintainability. By distributing the burden across multiple lightweight robots, it can effectively reduce costs and improve task execution efficiency, ultimately providing an efficient and reliable solution for complex and ever-changing tasks.
[0128] See also Figure 4A multi-robot collaborative operation control device provided to meet one of the purposes of this application includes a first data acquisition module 1100, a formation reconstruction trigger module 1200, a second data acquisition module 1300, a first task allocation module 1400 and a second task allocation module 1500. Among them, the first data acquisition module 1100 is configured to respond to the instruction of performing formation control on the robots, obtain the corresponding formation control parameters and formation reconstruction trigger parameters of the robots, wherein the formation control parameters include position error vector, speed error vector, position weight and speed weight, and the formation reconstruction trigger parameters include communication matrix, task execution list, fault robot list, robot list out of formation, total number of robots, and adjacency matrix; the formation reconstruction trigger module 1200 is configured to construct a speed control model according to the position weight, the speed weight, the position error vector and the speed error vector, construct a robot state model according to the position error vector and the speed error vector, and use the speed control model and the robot state model to trigger the robot formation reconstruction according to the formation reconstruction trigger parameters to perform task allocation; the second data acquisition module 1300 is configured to respond to the instruction of performing task allocation on the robots, obtain the machine Multiple robots in a human type set, multiple tasks to be assigned in a task type set, a robot task matching matrix, a maximum benefit matrix, a bid matrix and a maximum bid vector; a first task assignment module 1400 is configured to use a preset auction algorithm to assign the tasks to be assigned in the task type set to the robots in the robot type set according to the robot task matching matrix, the maximum benefit matrix, the bid matrix and the maximum bid vector, so as to determine the optimal assignment relationship between the tasks to be assigned and the robots; a second task assignment module 1500 is configured to obtain a robot position set, an expected position set and a distance between the robot and the target position corresponding to the unassigned task robot, and use a preset Hungarian algorithm to determine the optimal target position corresponding to the unassigned task robot according to the robot position set, the expected position set and the distance between the robot and the target position, so as to complete the control of multi-robot collaborative operation.
[0129] Based on any embodiment of this application, please refer to Figure 5 Another embodiment of the present application further provides an electronic device, which can be implemented by a computer device, such as Figure 5As shown, a schematic diagram of the internal structure of a computer device. The computer device includes a processor, a computer-readable storage medium, a memory, and a network interface connected via a system bus. Among them, the computer-readable storage medium of the computer device stores an operating system, a database, and computer-readable instructions, and the database may store a control information sequence, and when the computer-readable instructions are executed by the processor, the processor may implement a multi-robot collaborative operation control method. The processor of the computer device is used to provide computing and control capabilities to support the operation of the entire computer device. The memory of the computer device may store computer-readable instructions, and when the computer-readable instructions are executed by the processor, the processor may execute the multi-robot collaborative operation control method of the present application. The network interface of the computer device is used to connect and communicate with the terminal. Those skilled in the art will understand that Figure 5 The structure shown in the figure is only a block diagram of a part of the structure related to the solution of the present application, and does not constitute a limitation on the computer device to which the solution of the present application is applied. The specific computer device may include more or fewer components than shown in the figure, or combine certain components, or have a different component arrangement.
[0130] In this embodiment, the processor is used to execute Figure 4 The memory stores the program code and various data required to execute the specific functions of each module in the multi-robot collaborative operation control device. The network interface is used to transmit data between user terminals or servers. The memory in this embodiment stores the program code and data required to execute all modules / submodules in the multi-robot collaborative operation control device of the present application. The server can call the server's program code and data to execute the functions of all submodules.
[0131] The present application also provides a storage medium storing computer-readable instructions. When the computer-readable instructions are executed by one or more processors, the one or more processors execute the steps of the multi-robot collaborative operation control method described in any embodiment of the present application.
[0132] The present application also provides a computer program product, including a computer program / instruction, which, when executed by one or more processors, implements the steps of the multi-robot collaborative operation control method described in any embodiment of the present application.
[0133] Those skilled in the art will appreciate that all or part of the processes in the above-mentioned embodiments of the present application can be implemented by instructing the relevant hardware through a computer program. The computer program can be stored in a computer-readable storage medium. When the program is executed, it can include the processes of the above-mentioned embodiments of the method. The aforementioned storage medium can be a computer-readable storage medium such as a magnetic disk, an optical disk, a read-only memory (ROM), or a random access memory (RAM).
[0134] The above description is only part of the implementation methods of the present application. It should be pointed out that for ordinary technicians in this technical field, several improvements and modifications can be made without departing from the principles of the present application. These improvements and modifications should also be regarded as the scope of protection of the present application.
Claims
1. A multi-robot collaborative operation control method, characterized in that: include: In response to an instruction to perform formation control on the robots, obtaining corresponding formation control parameters and formation reconstruction trigger parameters of the robots, wherein the formation control parameters include a position error vector, a velocity error vector, a position weight, and a velocity weight; and the formation reconstruction trigger parameters include a communication matrix, a task execution list, a faulty robot list, a list of robots that have left the formation, the total number of robots, and an adjacency matrix; constructing a speed control model according to the position weight, the speed weight, the position error vector, and the speed error vector; constructing a robot state model according to the position error vector and the speed error vector; and triggering robot formation reconstruction according to the formation reconstruction trigger parameter using the speed control model and the robot state model to perform task allocation; In response to an instruction to assign tasks to robots, obtain multiple robots in a robot type set, multiple tasks to be assigned in a task type set, a robot-task matching matrix, a maximum benefit matrix, a bid matrix, and a maximum bid vector; Using a preset auction algorithm to allocate the to-be-allocated tasks in the task type set to the robots in the robot type set according to the robot task matching matrix, the maximum payoff matrix, the bid matrix, and the maximum bid vector, so as to determine the optimal allocation relationship between the to-be-allocated tasks and the robots; The robot position set, expected position set and distance between the robot and the target position corresponding to the unassigned task robot are obtained, and the preset Hungarian algorithm is used to determine the optimal target position corresponding to the unassigned task robot based on the robot position set, expected position set and distance between the robot and the target position to complete the control of multi-robot collaborative operation.
2. The multi-robot collaborative operation control method according to claim 1, characterized in that: The expression of the speed control model is: Among them, u i It represents the speed control input signal of the i-th robot at time t, α1 and α2 represent the position weight and speed weight respectively. The larger α1 is, the faster the robot can reach the desired position; the larger α2 is, the faster the robot reaches the desired position. Respectively represent the position error vectors of robot i and robot j in the desired formation, They represent the velocity error vectors of robot i and robot j in the desired formation, respectively, and a ij It refers to the corresponding matrix element in the adjacency matrix A. If it is not 0, it means that there is a graph connection between robots i and j.
3. The multi-robot collaborative operation control method according to claim 1, characterized in that: The robot state model is expressed as:
4. The multi-robot collaborative operation control method according to claim 1, characterized in that: The step of using a preset auction algorithm to allocate the to-be-allocated tasks in the task type set to robots in the robot type set according to the robot task matching matrix, the maximum benefit matrix, the bid matrix, and the maximum bid vector to determine the optimal allocation relationship between the to-be-allocated tasks and the robots includes: Obtain the robot position set, robot type set, task position set, task type set, robot task matching matrix O, maximum profit matrix V, bid matrix P, and maximum bid vector b; Based on the robot task matching matrix O, for each robot i and each task to be assigned j, the benefit of the robot i for the task to be assigned j is calculated and determined. The calculation formula is expressed as: a ij =o ij ·(v ij -b j ); Among them, α ij represents the benefit of robot i for the assigned task j, o ij Indicates the matching degree of robot i to the assigned task j, v ij represents the maximum benefit of robot i for the assigned task j, b j represents the maximum bid for task j to be assigned; Find the task j with the highest payoff * The next highest reward task k, according to the task j * And the task k to be assigned is quoted to determine whether robot i should assign task j * Quote The calculation formula is expressed as: in, Represents robot i's attitude towards assigned task j * The quote, Represents the task j to be assigned * The maximum offer, Indicates that robot i has a task to be assigned to j * The income, α ik The benefit of robot i for the assigned task k, b k represents the maximum bid for the task k to be assigned, ∈ is a constant used to avoid extreme fluctuations in bids; Start assigning tasks based on the robot's quote. For each task j to be assigned, find the robot i that has the highest quote for the task j. * , update the maximum bid b of the task j to be assigned j Update the optimal allocation list for the robot's quotation and record the optimal allocation relationship between tasks and robots; After each iteration, check whether all tasks have been assigned. If so, end the loop and return the optimal assignment list; otherwise, continue iterating until all tasks have been assigned.
5. The multi-robot collaborative operation control method according to claim 1, characterized in that: The steps of obtaining a robot position set, an expected position set, and a distance between the robot and a target position corresponding to an unassigned task robot, and using a preset Hungarian algorithm to determine an optimal target position corresponding to the unassigned task robot based on the robot position set, the expected position set, and the distance between the robot and the target position include: Obtaining a robot position in the robot position set and a target position in the desired position set; The edge weight matrix W is calculated and determined according to the robot position and the target position, wherein each element w in the edge weight matrix W is ij represents the cost or distance between robot i and goal position j; Initialize the left top label X and the right top label Y, where X = {x i =max(w ij )},Y={y j =0}, x i Is the top mark of the robot position, indicating the offset of the robot, x i =max(w ij ) is the maximum cost for robot i to reach target position j, y j It is the top mark of the target position, indicating the offset of the target position; For each robot i, determine whether the edge weight between robot i and target position j satisfies: i +y j = = w ij , if satisfied, robot i matches target position j, and the optimal matching array is updated; If not satisfied, calculate and determine the adjustment amount d and modify the top mark value x i and y j , change x i Adjust to x i =x i -d, change y j Adjust to y j =y j +d; Repeat the above steps until all robots are assigned to target positions in the desired position set to determine the optimal target position corresponding to the unassigned task robot.
6. The multi-robot collaborative operation control method according to claim 1, characterized in that: The task execution list is used to store the numbers of follower robots that execute tasks, the fault robot list is used to store the numbers of follower robots that have left the formation due to faults, and the robot list that has left the formation is used to store the numbers of all follower robots that want to leave the formation; the adjacency matrix represents the relative position error between robots in the formation.
7. The multi-robot collaborative operation control method according to any one of claims 1 to 6, characterized in that: The robot includes an aerial robot or a drone; the robot-task matching matrix is used to record the preliminary matching status between the robot and the task; the maximum benefit matrix is used to record the maximum benefit when the robot performs the task; the quotation matrix is used for the robot's quotation for each task; and the maximum quotation vector is used to record the current maximum quotation for each task.
8. A multi-robot collaborative operation control device, characterized in that: include: a first data acquisition module configured to respond to an instruction to perform formation control on the robots and acquire corresponding formation control parameters and formation reconstruction trigger parameters of the robots, wherein the formation control parameters include a position error vector, a velocity error vector, a position weight, and a velocity weight; and the formation reconstruction trigger parameters include a communication matrix, a task execution list, a list of faulty robots, a list of robots that have left the formation, a total number of robots, and an adjacency matrix; a formation reconstruction triggering module, configured to construct a speed control model based on the position weight, the speed weight, the position error vector, and the speed error vector, construct a robot state model based on the position error vector and the speed error vector, and trigger robot formation reconstruction according to the formation reconstruction triggering parameter using the speed control model and the robot state model to perform task allocation; a second data acquisition module configured to respond to an instruction to assign tasks to robots and acquire a plurality of robots in a robot type set, a plurality of tasks to be assigned in a task type set, a robot-task matching matrix, a maximum benefit matrix, a bid matrix, and a maximum bid vector; a first task assignment module, configured to assign the to-be-assigned tasks in the task type set to the robots in the robot type set using a preset auction algorithm according to the robot task matching matrix, the maximum payoff matrix, the bid matrix, and the maximum bid vector, so as to determine an optimal assignment relationship between the to-be-assigned tasks and the robots; The second task assignment module is configured to obtain the robot position set, expected position set and distance between the robot and the target position corresponding to the unassigned task robot, and use the preset Hungarian algorithm to determine the optimal target position corresponding to the unassigned task robot based on the robot position set, expected position set and distance between the robot and the target position to complete the control of multi-robot collaborative operation.
9. An electronic device comprising a central processing unit and a memory, characterized in that: The central processing unit is configured to call and run a computer program stored in the memory to execute the steps of the method according to any one of claims 1 to 7.
10. A computer-readable storage medium, characterized in that It stores a computer program implemented according to the method described in any one of claims 1 to 7 in the form of computer-readable instructions, and when the computer program is called and executed by a computer, the steps included in the corresponding method are executed.
Citation Information
Patent Citations
A heterogeneous multi-robot task allocation method based on an auction algorithm
CN109919431A
Unmanned aerial vehicle swarm task allocation algorithm based on distributed collaborative auction
CN111222764A