Algorithm verification system for cluster robot

Through the algorithm verification system for robot clusters, the simulation environment and modular design are used to solve the complex and time-consuming problem of robot cluster algorithm verification, and achieve fast and safe algorithm verification and performance evaluation.

CN119336613APending Publication Date: 2025-01-21杭州智元研究院有限公司
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411301627.0
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-09-18
Publication Date
2025-01-21

AI Technical Summary

Technical Problem

In the process of robot cluster research and development, designing and verifying new algorithms is complex and time-consuming, especially large-scale cluster entity experiments require a lot of hardware and time, and are prone to damage to robots and loss of manpower and material resources.

Method used

Provides an open -oriented algorithm verification system, including the simulation environment setting module, cluster robot module, data transmission module and algorithm verification module, which can test and verify the cluster robot algorithm in the simulation environment.

Benefits of technology

Through the simulation verification system, it can quickly and safely test and verify the cluster robot algorithm, reduce human and material losses, and improve algorithm design and verification efficiency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119336613A_ABST
    Figure CN119336613A_ABST
Patent Text Reader

Abstract

The invention discloses an algorithm verification system for cluster robots, and the system comprises a simulation environment setting module which is used for selecting different test scenes, setting the number and initial positions of robots, and the positions of some static and dynamic props, and selecting an algorithm to be verified; the cluster robot module is used for generating a virtual robot and providing robot behaviors and data in a simulation environment for the algorithm to be verified; the data transmission module is used for realizing two functions in the operation process of the to-be-verified algorithm: one function is to transmit an algorithm result to a front-end monitoring end through a communication link in real time, and the other function is to store a result generated by the to-be-verified algorithm into a database; and the algorithm verification module is used for comprehensively performing algorithm performance and effect evaluation on algorithm results generated after the operation of the three modules is finished. According to the method, multiple common algorithms such as positioning, mapping, planning and recognition of the cluster robot can be tested in a simulation environment, and the performance effects of different algorithms on the cluster robot are effectively verified.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The invention belongs to the technical field of robots, and in particular to an algorithm verification system for cluster robots. Background Art

[0002] At present, swarm robots have become one of the hottest research areas in robotics, and a variety of swarm robot algorithms have emerged. However, in the process of robot cluster research and development, designing and verifying new algorithms is a complex task that requires relevant personnel to conduct continuous experiments and analysis. Especially for large-scale clusters, the physical test method not only requires a lot of actual hardware and time, but also inevitably causes problems of damaging robots during the algorithm development and testing process, resulting in a lot of manpower and material losses. Therefore, in order to speed up the process of relevant personnel designing, testing and verifying different algorithms in robot clusters, it is necessary to propose an algorithm verification system for robot clusters. Summary of the invention

[0003] The purpose of the present invention is to address the deficiencies in the above-mentioned prior art and to provide an open algorithm verification system for robot clusters. The system has a simulation environment setting module, a cluster robot module, a data transmission module and an algorithm verification module. It can test various algorithms common to cluster robots, such as positioning, mapping, planning and recognition, in a simulation environment, and verify the performance of different algorithms on cluster robots.

[0004] The technical solution to achieve the purpose of the present invention is: an algorithm verification system for cluster robots, the system comprising a simulation environment setting module, a cluster robot module, a data transmission module and an algorithm verification module;

[0005] The simulation environment setting module is used to select different test scenarios, set the number and initial positions of robots, the positions of some static and dynamic props, and select the algorithm to be verified;

[0006] The cluster robot module is used to generate a virtual robot and provide robot behavior and data in a simulation environment for the algorithm to be verified;

[0007] The data transmission module is used to realize two functions during the operation of the algorithm to be verified: one is to transmit the algorithm result to the front-end monitoring end through the communication link in real time, and the other is to store the result generated by the algorithm to be verified in the database;

[0008] The algorithm verification module is used to comprehensively evaluate the algorithm performance and effect based on the algorithm results generated after the above three modules are completed.

[0009] Furthermore, the simulation environment setting module is specifically implemented as an interactive interface and backend logic developed based on QT, including:

[0010] The environment library is used to provide a virtual environment. The environment library includes different types of environment scenarios to meet different verification requirements.

[0011] Prop library, which provides a variety of common items;

[0012] The user interaction interface is used to provide three functions: one is for the user to select an environment from the environment library, the second is for the user to select a prop from the prop library, and the third is for the user to combine the environment, props, and robot cluster;

[0013] The setting and configuration module is used for users to select the algorithm to be verified and the simulation termination conditions.

[0014] Furthermore, after the simulation environment setting module completes the setting, the cluster robot module imports the robot into the simulation environment loaded by the system to form a test scene with the robot; wherein the robots are equipped with pre-set sensors, and the sensors are used to generate data required for the algorithm to be verified;

[0015] The cluster robot module comprises:

[0016] A robot attribute simulation module is used to generate a virtual robot based on the attributes and characteristics of a real robot;

[0017] The environment simulation interface, which is connected to the external simulation virtual environment interface, is used to simulate physical characteristics to ensure that the robot is subjected to appropriate physical influences in the virtual environment; at the same time, the position information of the real robot is obtained and processed through the external simulation virtual environment interface to obtain the position information of the virtual robot and calculate the motion properties of the virtual robot;

[0018] The sensor simulation module is used to simulate the sensor data of the virtual robot. These sensor data are used to verify the performance of the robot's perception and recognition algorithms. It also has interactive functions, allowing the cluster robot module to perform different actions according to external instructions, simulating the robot's behavior in a simulation environment.

[0019] Furthermore, the cluster robot module reads and encapsulates the virtual environment information according to the virtual environment information and the input of the external algorithm, and converts the virtual environment information into the data format required by the algorithm to be verified.

[0020] Furthermore, the data transmission module is a distributed communication middleware based on two protocols, DDS and ProtoBuf, and is used for stably and quickly transmitting data between multiple machines.

[0021] Furthermore, the data transmission module allows different computer nodes to send and receive messages, and implements event-driven based on publishers and subscribers.

[0022] Furthermore, the algorithm verification system includes a plurality of data transfer modules, each of which is regarded as a participant in the entire system, and there are two types of data transfer modules:

[0023] Server: The server is regarded as the control center of the algorithm verification system, which is integrated with the simulation environment setting module and the algorithm verification module;

[0024] Client: The client corresponds to each individual in the swarm robot and is integrated with the algorithm to be verified.

[0025] Furthermore, the server or client includes a subscription module and a publishing module;

[0026] The subscription module of the server completes and summarizes the messages it subscribes to from different clients, and the publishing module of the server sends corresponding control instructions to different clients respectively; the subscription module of the client subscribes to obtain instructions from the server, and the publishing module of the client publishes the corresponding status of the local machine to the server.

[0027] Furthermore, the specific process of the data transfer module realizing communication includes:

[0028] Step 1, read the address of the data transfer module, i.e., the DDS module. If the reading is successful, proceed to the next step, otherwise the whole process ends;

[0029] Step 2: Create a DDS participant. If the creation is successful, proceed to the next step, otherwise the whole process ends;

[0030] Step 3, create subscribers and publishers, and create monitors for both; wherein the subscriber subscribes to messages from the communication network, configures the subscription channel when created, and provides an information reading interface; the subscriber's monitor listens to status changes related to the subscriber, and listens to events that the subscriber receives new data; the publisher is used to publish messages to the communication network, configures the publication name and related properties of the message, and provides a data writing interface; the publisher's listener listens to status changes related to the publisher, and listens to data writing events on the publisher.

[0031] Furthermore, the algorithm verification module evaluates different types of algorithms to be verified by different methods and generates corresponding result files, including:

[0032] A positioning algorithm evaluation module is used to evaluate the performance of the positioning algorithm by obtaining the real distances between different objects in the simulation environment and the distances generated by the positioning algorithm;

[0033] The planning algorithm evaluation module is used to evaluate the performance of local planning and global planning algorithms by obtaining the real state information of the robot and detecting whether a collision occurs;

[0034] The recognition algorithm evaluation module is used to evaluate the performance of the recognition algorithm through the real object types provided by the simulation environment;

[0035] The evaluation file generation module is used to automatically generate an evaluation file after the evaluation algorithm results are completed.

[0036] Compared with the prior art, the present invention has the following significant advantages:

[0037] (1) The simulation environment setting module of the present invention provides clear simulation settings in a progressive manner, and through this module, the simulation system can be openly adapted to various robot cluster algorithms.

[0038] (2) The present invention can set the environment type, number of props, prop type, number of robots, robot type, robot parameters, etc. to improve adaptability.

[0039] (3) The present invention can flexibly simulate and output physical characteristics and sensor data according to the set environment and sensor type.

[0040] (4) The present invention has a flexible distributed communication interface, which can realize stable and fast data transmission between modules.

[0041] (5) The present invention has complete algorithm performance evaluation capabilities and can openly evaluate the performance results of different algorithms.

[0042] The present invention is further described in detail below in conjunction with the accompanying drawings. BRIEF DESCRIPTION OF THE DRAWINGS

[0043] Figure 1 The figure is a workflow diagram of an algorithm verification system for cluster robots in one embodiment.

[0044] Figure 2 The figure is a workflow diagram of a simulation environment setting module in an embodiment.

[0045] Figure 3 The diagram is a diagram of the interaction mechanism between the server and the client of the data transmission module in an embodiment.

[0046] Figure 4 It is a basic logic diagram of a data transmission module in one embodiment. DETAILED DESCRIPTION

[0047] In order to make the purpose, technical solution and advantages of the present application more clearly understood, the present application is further described in detail below in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are only used to explain the present application and are not used to limit the present application.

[0048] In one embodiment, an algorithm verification system for a cluster robot is provided, the system comprising a simulation environment setting module, a cluster robot module, a data transmission module and an algorithm verification module;

[0049] The simulation environment setting module is used to select different test scenarios, set the number and initial positions of robots, the positions of some static and dynamic props, and select the algorithm to be verified;

[0050] The cluster robot module is used to generate a virtual robot and provide the robot behavior and data in the simulation environment for the algorithm to be verified, so as to achieve a high degree of consistency between the simulation environment and the real scene;

[0051] The data transmission module is used to realize two functions during the operation of the algorithm to be verified: one is to transmit the algorithm result to the front-end monitoring end through the communication link in real time, and the other is to store the result generated by the algorithm to be verified in the database;

[0052] The algorithm verification module is used to comprehensively evaluate the algorithm performance and effect based on the algorithm results generated after the above three modules are completed.

[0053] Combination Figure 1 The overall process of the system of the present invention includes: first, according to the simulation environment setting module, different test scenarios are selected, and the number and initial position of robots, the positions of some static and dynamic props, and the algorithm to be verified are set. After the setting is completed, the system loads the simulation environment and cluster robot modules respectively to generate a test scenario with robots. After that, the algorithm verification begins. During the operation of the algorithm, the data transmission module transmits the algorithm results to the monitoring interface through the communication link in real time, and stores the results in the database. After the algorithm runs, the algorithm results are transmitted to the algorithm verification module to evaluate the algorithm performance.

[0054] Furthermore, in one embodiment, the simulation environment setting module is specifically implemented as an interactive interface and backend logic developed based on QT, which is designed to help users easily configure and control the verification environment of the robot cluster algorithm. The module provides a wealth of options, allowing users to customize various environment properties for efficient verification. The module includes:

[0055] The environment library is used to provide a virtual environment; the environment library includes different types of environmental scenes to meet different verification needs. Specifically, users can choose typical verification scenes (such as cities, jungles, mountains and other types of concrete background environmental scenes, and specific scenes have a general meaning), and users can choose the weather conditions of the virtual environment, which includes common types of weather (such as sunny days, rainy days, snowy days, hail, etc., and specific weather has a general meaning), to simulate the impact of different weather on robot behavior.

[0056] The prop library is used to provide a variety of common items (such as cars, people, trees, etc., and specific items have general meanings);

[0057] The user interaction interface is used to provide three functions: one is for the user to select an environment from the environment library, the second is for the user to select a prop from the prop library, and the third is for the user to combine the environment, props, and robot cluster;

[0058] The setup and configuration module is used for users to select the algorithm to be verified and the simulation termination conditions. These settings will determine how the verification system runs and when to terminate the simulation.

[0059] Combination Figure 2 , the workflow of the simulation environment setting module of the present invention is as follows: first, the user selects a virtual environment from the environment library of the verification system. The user can also select the weather conditions of the virtual environment to simulate the impact of different weather on the robot behavior. Once the environment selection is completed, the system will present an overhead view so that the user can better understand the layout of the entire environment. On the overhead view, the user can easily add static or dynamic obstacles, which come from the prop library of the verification system. This allows the user to simulate various real-world scenarios during the verification process to more comprehensively evaluate the performance of the verification algorithm. Next, the user needs to define the number of robot clusters and their initial positions in the environment. This is a key step in the module because the number and position of the robot clusters will directly affect the verification results. The user can easily complete these settings on the interactive interface. Finally, the user needs to select the algorithm to be verified and the simulation termination conditions. These settings will determine how the verification system runs and when to terminate the simulation. Here, the simulation environment setting module will record all these user-selected properties in a JSON file in a specific format for the user to view and check the configuration at any time. Once all properties are set, the user can start the corresponding simulation environment, cluster robot and verification algorithm according to the generated JSON file.

[0060] This process enables users to easily configure and start verification tasks, saving a lot of time and effort and improving the efficiency of verification work.

[0061] Further, in one embodiment, after the simulation environment setting module completes the setting, the cluster robot module imports the robot into the simulation environment loaded by the system to form a test scene with the robot; wherein the robots are equipped with pre-set sensors, and the sensors are used to generate data required for the algorithm to be verified;

[0062] The cluster robot module comprises:

[0063] The robot attribute simulation module is used to generate a virtual robot based on the attributes and characteristics of a real robot. The simulated parameters include the robot's size, dynamic characteristics, sensor configuration, etc. The attributes of the virtual robot should be as similar as possible to the real robot and are actually input by the user to ensure that the results produced by the verification algorithm in the simulation environment are almost the same as those in the real scene.

[0064] The environment simulation interface, which is connected to the virtual environment simulation interface, is used to simulate physical properties, such as gravity, air resistance and friction, to ensure that the robot is subjected to appropriate physical influences in the virtual environment. At the same time, the position information of the real robot is obtained and processed through the external virtual environment simulation interface to obtain the position information of the virtual robot, and the motion properties of the virtual robot, such as speed and acceleration, are calculated.

[0065] The sensor simulation module is used to simulate the sensor data of the virtual robot using methods such as ray tracing technology. These sensor data are used to verify the performance of the robot's perception and recognition algorithms. It also has interactive functions, allowing the cluster robot module to perform different actions according to external instructions and simulate the robot's behavior in a simulation environment (including movement, rotation, and task execution, etc.).

[0066] The cluster robot module reads, packages, and converts the virtual environment information into the data format required by the algorithm to be verified based on the virtual environment information and the input of the external algorithm. This ensures that the verification algorithm can correctly process the robot behavior and sensor data in the virtual environment.

[0067] Here, the sensor selection range includes one or more of lidar, RGB camera, depth camera, combined inertial navigation, and GPS, which can generate the data required for the algorithm to be verified.

[0068] Furthermore, in one embodiment, the data transmission module is a distributed communication middleware based on two protocols, DDS and ProtoBuf, for stable and fast data transmission between multiple machines. The data transmission module allows different computer nodes to send and receive messages, implements event-driven based on publishers and subscribers, and can process a large number of message streams and multiple nodes at the same time while ensuring safe and reliable message transmission.

[0069] Specifically, there are multiple data transfer modules in the entire algorithm verification system, and each data transfer module is regarded as a participant in the entire system, which exists in two types:

[0070] Server: The server is regarded as the control center of the algorithm verification system, which is integrated with the simulation environment setting module and the algorithm verification module;

[0071] Client: The client corresponds to each individual in the swarm robot and is integrated with the algorithm to be verified.

[0072] Here, in some embodiments, combined Figure 3 , the server or client both include a subscription module and a publishing module. The communication mode between the server and the client is:

[0073] The subscription module of the server completes and summarizes the messages it subscribes to from different clients, and the publishing module of the server sends corresponding control instructions to different clients respectively; the subscription module of the client subscribes to obtain instructions from the server, and the publishing module of the client publishes the corresponding status of the local machine to the server.

[0074] Here, in some embodiments, the basic implementation idea of ​​the publishing module is: first, the message to be transmitted is serialized into a binary format using the Protobuf protocol, which is efficient and more compact than text formats (such as JSON and XML), and then the serialized message is further encoded using the DDS protocol and transmitted to the corresponding subscription module through the network. The implementation of the subscription module is similar to that of the publisher. After receiving the message, it is first decoded according to the DDS protocol, and then deserialized according to the Protobuf protocol, and finally the transmitted message is restored to its original state for use by other modules.

[0075] Here, in some embodiments, combined Figure 4 The specific process of the data transmission module realizing communication includes:

[0076] Step 1, read the address of the data transfer module, i.e., the DDS module. If the reading is successful, proceed to the next step, otherwise the whole process ends;

[0077] Step 2: Create a DDS participant. If the creation is successful, proceed to the next step, otherwise end the whole process. Here, the participant is the starting point of communication, responsible for common and management communication domains, corresponding to a node in the communication network, and can register the message type to be transmitted through the participant, so that DDS can correctly serialize and deserialize the message type.

[0078] Step 3, create the subscriber and publisher, and create monitors for both.

[0079] Among them, the subscriber subscribes to messages from the communication network, configures the subscription channel when it is created, and provides an information reading interface. The call of the reading interface is in the message decoding module of the basic communication module; the subscriber's monitor listens to the status changes related to the subscriber, and listens to the event that the subscriber receives new data; when the subscriber receives a new message, it can trigger the corresponding callback function, allowing the received message data to be processed, and provide related error handling.

[0080] The publisher is used to publish messages to the communication network so that subscribers of other nodes can receive these messages, configure the publication name and related attributes of the message, and provide a data writing interface, which is called in the message publishing module in the basic communication module. The publisher's listener monitors state changes related to the publisher, such as changes in the matching state between the publisher and the subscriber. When the publisher establishes or loses a connection with the subscriber, the publisher monitor can trigger a corresponding callback function so that appropriate actions can be taken, and data write events on the publisher can be monitored. This can be used to record or process messages sent by the publisher, and can be used to handle errors that occur on the publisher.

[0081] The data transmission module is the foundation of the entire algorithm verification system. The configuration file generated by the simulation environment setting module requires the data transmission module as the communication middleware to start the corresponding configuration. At the same time, the data transmission module also needs to be configured in the cluster robot module to pass various types of messages such as robot status, sensor information, and the results of running the algorithm to the algorithm verification module.

[0082] Furthermore, in one embodiment, the algorithm verification module evaluates different types of algorithms to be verified by different methods and generates corresponding result files, including:

[0083] The positioning algorithm evaluation module is used to evaluate the performance of the positioning algorithm by obtaining the real distances between different objects in the simulation environment and the distances generated by the positioning algorithm.

[0084] Here, the positioning algorithm is the basis of robot navigation, and accurate positioning can improve the safety and reliability of the robot. The performance evaluation of the positioning algorithm is mainly carried out by comparing the deviation between the actual position of the robot and the position output by the algorithm. The specific process of the evaluation is as follows: After starting the simulation environment and running the positioning algorithm to be evaluated, the algorithm verification system will record the output results of the positioning algorithm and the actual position of the robot in the simulation environment during the movement of the robot. During the evaluation process, the algorithm positioning result is first converted from the coordinate system corresponding to the robot's starting posture to the coordinate system corresponding to the simulation environment, and then the algorithm result is compared with the actual position, and the position error and direction error are statistically calculated. In addition, the algorithm verification system can test the environmental adaptability of the positioning algorithm in a variety of environments and record the computing resources consumed by the algorithm operation.

[0085] The planning algorithm evaluation module is used to evaluate the performance of local planning and global planning algorithms by obtaining the real state information of the robot and detecting whether a collision occurs.

[0086] Here, the planning algorithm is the core of the robot's autonomy, which determines how the robot reaches the target point from the starting point, including obstacle avoidance and path optimization. A good planning algorithm can improve the robot's efficiency and ability to perform tasks, and perform well in various complex environments. The specific process of the evaluation is as follows: set up simulation environments with different obstacles and maps to simulate the real environment, run the algorithm to be evaluated, including local path planning and global path planning, control the movement of the robot, and detect the robot's status information in real time during the movement, including position, speed, etc. At the same time, detect whether the robot collides with obstacles, and record the number of collisions and collision positions. Finally, calculate the length of the planned path, the planning computing resource consumption, the driving time, and the collision detection indicators.

[0087] The recognition algorithm evaluation module is used to evaluate the performance of the recognition algorithm through real object types provided by the simulation environment.

[0088] Here, the recognition algorithm enables the robot to understand and identify the surrounding objects and environment, which is of great significance for the robot to perform related tasks. The evaluation process of the recognition algorithm is as follows: after setting different targets to be identified, start the simulation environment and run the algorithm to be evaluated, obtain the object type identified by the algorithm, and at the same time obtain the real object type in the simulation environment for comparison, calculate the recognition accuracy, and record the type and number of recognition errors for subsequent analysis of the error source of the recognition algorithm.

[0089] The evaluation file generation module is used to automatically generate evaluation files after the evaluation algorithm results are completed. These evaluation files contain detailed evaluation results, error analysis, and performance indicator statistics, which are convenient for subsequent review, comparison, and improvement. The evaluation files have a unified format and detailed content, providing valuable data support for developers and researchers, which helps to further optimize and improve algorithm performance.

[0090] The above shows and describes the basic principles, main features and advantages of the present invention. Those skilled in the art should understand that the present invention is not limited by the above embodiments, and the above embodiments and descriptions are only for explaining the principles of the present invention. Without departing from the spirit and scope of the present invention, any modification, equivalent replacement, improvement, etc. made within the spirit and principle of the present invention should be included in the protection scope of the present invention.

Claims

1. An algorithm verification system for cluster robots, characterized in that: The system includes a simulation environment setting module, a cluster robot module, a data transmission module and an algorithm verification module; The simulation environment setting module is used to select different test scenarios, set the number and initial positions of robots, the positions of some static and dynamic props, and select the algorithm to be verified; The cluster robot module is used to generate a virtual robot and provide robot behavior and data in a simulation environment for the algorithm to be verified; The data transmission module is used to realize two functions during the operation of the algorithm to be verified: one is to transmit the algorithm result to the front-end monitoring end through the communication link in real time, and the other is to store the result generated by the algorithm to be verified in the database; The algorithm verification module is used to comprehensively evaluate the algorithm performance and effect based on the algorithm results generated after the above three modules are completed.

2. The algorithm verification system for cluster robots according to claim 1, characterized in that: The simulation environment setting module is specifically implemented as an interactive interface and backend logic developed based on QT, including: The environment library is used to provide a virtual environment. The environment library includes different types of environment scenarios to meet different verification requirements. Prop library, which provides a variety of common items; The user interaction interface is used to provide three functions: one is for the user to select an environment from the environment library, the second is for the user to select a prop from the prop library, and the third is for the user to combine the environment, props, and robot cluster; The setting and configuration module is used for users to select the algorithm to be verified and the simulation termination conditions.

3. The algorithm verification system for cluster robots according to claim 1, characterized in that: After the simulation environment setting module completes the setting, the cluster robot module imports the robot into the simulation environment loaded by the system to form a test scene with the robot; The robots are equipped with pre-set sensors, which are used to generate data required for the algorithm to be verified; The cluster robot module comprises: A robot attribute simulation module is used to generate a virtual robot based on the attributes and characteristics of a real robot; The environment simulation interface, which is connected to the external simulation virtual environment interface, is used to simulate physical characteristics to ensure that the robot is subjected to appropriate physical influences in the virtual environment; at the same time, the position information of the real robot is obtained and processed through the external simulation virtual environment interface to obtain the position information of the virtual robot and calculate the motion properties of the virtual robot; The sensor simulation module is used to simulate the sensor data of the virtual robot. These sensor data are used to verify the performance of the robot's perception and recognition algorithms. It also has interactive functions, allowing the cluster robot module to perform different actions according to external instructions, simulating the robot's behavior in a simulation environment.

4. The algorithm verification system for cluster robots according to claim 3, characterized in that: The cluster robot module reads and encapsulates the virtual environment information according to the virtual environment information and the input of the external algorithm, and converts it into the data format required by the algorithm to be verified.

5. The algorithm verification system for cluster robots according to claim 1, characterized in that: The data transmission module is a distributed communication middleware based on two protocols, DDS and ProtoBuf, and is used for stably and quickly transmitting data between multiple machines.

6. The algorithm verification system for cluster robots according to claim 5, characterized in that: The data transmission module allows different computer nodes to send and receive messages, and implements event-driven based on publishers and subscribers.

7. The algorithm verification system for cluster robots according to claim 6, characterized in that: The algorithm verification system includes a plurality of data transmission modules, each of which is regarded as a participant in the entire system, and there are two types of data transmission modules: Server: The server is regarded as the control center of the algorithm verification system, which is integrated with the simulation environment setting module and the algorithm verification module; Client: The client corresponds to each individual in the swarm robot and is integrated with the algorithm to be verified.

8. The algorithm verification system for cluster robots according to claim 7, characterized in that: The server or client both include a subscription module and a publishing module; The subscription module of the server completes and summarizes the messages it subscribes to from different clients, and the publishing module of the server sends corresponding control instructions to different clients respectively; the subscription module of the client subscribes to obtain instructions from the server, and the publishing module of the client publishes the corresponding status of the local machine to the server.

9. The algorithm verification system for cluster robots according to claim 7, characterized in that: The specific process of the data transfer module realizing communication includes: Step 1, read the address of the data transfer module, i.e., the DDS module. If the reading is successful, proceed to the next step, otherwise the whole process ends; Step 2: Create a DDS participant. If the creation is successful, proceed to the next step, otherwise the whole process ends; Step 3, create subscribers and publishers, and create monitors for both; wherein the subscriber subscribes to messages from the communication network, configures the subscription channel when created, and provides an information reading interface; the subscriber's monitor listens to status changes related to the subscriber, and listens to events that the subscriber receives new data; the publisher is used to publish messages to the communication network, configures the publication name and related properties of the message, and provides a data writing interface; the publisher's listener listens to status changes related to the publisher, and listens to data writing events on the publisher.

10. The algorithm verification system for cluster robots according to claim 1, characterized in that: The algorithm verification module evaluates different types of algorithms to be verified by different methods and generates corresponding result files, including: A positioning algorithm evaluation module is used to evaluate the performance of the positioning algorithm by obtaining the real distances between different objects in the simulation environment and the distances generated by the positioning algorithm; The planning algorithm evaluation module is used to evaluate the performance of local planning and global planning algorithms by obtaining the real state information of the robot and detecting whether a collision occurs; The recognition algorithm evaluation module is used to evaluate the performance of the recognition algorithm through the real object types provided by the simulation environment; The evaluation file generation module is used to automatically generate an evaluation file after the evaluation algorithm results are completed.