Message transmission path selection method and device, electronic equipment and computer readable storage medium

By acquiring and analyzing the current status information of multiple robots in the robot communication system and determining the optimal message transmission path, the problems of low communication efficiency and insufficient real-time performance in the robot communication system are solved, and more efficient and real-time message transmission is achieved.

CN119815456APending Publication Date: 2025-04-11UBTECH ROBOTICS CORP LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411930285.9
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-12-23
Publication Date
2025-04-11

AI Technical Summary

Technical Problem

Robot communication systems have problems such as inefficient communication efficiency and insufficient real-time performance in multi-robot collaboration, which affects the overall collaboration efficiency.

Method used

By obtaining the current status information of N robots, including network delay, bandwidth utilization and device load, feature extraction and feature mapping are performed, the optimal message transmission path is determined, and communication efficiency and real-time performance are improved.

Benefits of technology

With comprehensive consideration of the current status information of multiple robots, the optimal message transmission path is determined to improve the message transmission efficiency and real-timeness of the robot communication system.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119815456A_ABST
    Figure CN119815456A_ABST
Patent Text Reader

Abstract

The invention provides a message transmission path selection method and device, electronic equipment and a computer readable storage medium. The method comprises the following steps: acquiring current state information of N robots in a robot communication system to obtain a current state information set; performing feature extraction on the current state information in the current state information set to obtain a feature vector of the current state information; performing feature mapping on the feature vector of the current state information to obtain respective path scores of M message transmission paths; determining the message transmission path with the highest path score as a current message transmission path of the to-be-controlled robot; wherein the current message transmission path is used for realizing message transmission between the to-be-controlled robot and the control equipment at the current moment. According to the message transmission method and device, the optimal message transmission path can be determined under the condition that the current state information of the N robots is comprehensively considered, and the message transmission efficiency and real-time performance of the robot communication system are improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of robot communication technology, and in particular to a method, device, electronic device and computer-readable storage medium for selecting a message transmission path. Background Art

[0002] In modern society, robotics technology is developing and popularizing rapidly, and is widely used in various fields such as industry, service, education, and medical care. The demand for communication between robots and between robots and users is increasing, but the communication efficiency is low, which affects the overall collaboration efficiency of robots. Summary of the invention

[0003] The embodiments of the present application provide a method, device, electronic device and computer-readable storage medium for selecting a message transmission path, which can determine the optimal message transmission path while comprehensively considering the current status information of N robots, thereby improving the efficiency and real-time performance of message transmission in the robot communication system.

[0004] The technical solution of the embodiment of the present application is implemented as follows:

[0005] An embodiment of the present application provides a method for selecting a message transmission path, the method comprising: acquiring current state information of N robots in a robot communication system to obtain a current state information set; wherein the current state information includes at least one of network delay, bandwidth utilization and device load; performing feature extraction on the current state information in the current state information set to obtain a feature vector of the current state information; performing feature mapping on the feature vector of the current state information to obtain a path score for each of M message transmission paths; wherein the message transmission path is a message transmission path between a robot to be controlled among the N robots and a control device of the robot communication system; N and M are both integers greater than 1; determining the message transmission path with the highest path score as the current message transmission path of the robot to be controlled; wherein the current message transmission path is used to realize message transmission between the robot to be controlled and the control device at the current moment.

[0006] An embodiment of the present application provides a device for selecting a message transmission path, comprising: an information acquisition module, used to acquire current state information of N robots in a robot communication system to obtain a current state information set; wherein the current state information includes at least one of network delay, bandwidth utilization and device load; a feature extraction module, used to extract features of the current state information in the current state information set to obtain a feature vector of the current state information; a path scoring module, used to perform feature mapping on the feature vector of the current state information to obtain a path score of each of M message transmission paths; wherein the message transmission path is a message transmission path between a robot to be controlled among the N robots and a control device of the robot communication system; N and M are both integers greater than 1; a path determination module, used to determine the message transmission path with the highest path score as the current message transmission path of the robot to be controlled; wherein the current message transmission path is used to realize message transmission between the robot to be controlled and the control device at the current moment.

[0007] An embodiment of the present application provides an electronic device, which includes: a memory for storing computer-executable instructions or computer programs; and a processor for implementing the message transmission path selection method provided in the embodiment of the present application when executing the computer-executable instructions or computer programs stored in the memory.

[0008] An embodiment of the present application provides a computer-readable storage medium storing a computer program or computer-executable instructions for implementing a method for selecting a message transmission path provided in an embodiment of the present application when executed by a processor.

[0009] An embodiment of the present application provides a computer program product, including a computer program or computer executable instructions. When the computer program or computer executable instructions are executed by a processor, the method for selecting a message transmission path provided in the embodiment of the present application is implemented.

[0010] The embodiments of the present application have the following beneficial effects:

[0011] The current state information of N robots in the robot communication system is obtained to obtain a current state information set, wherein the current state information includes at least one of network delay, bandwidth utilization and device load, then feature extraction is performed on the current state information to obtain a feature vector, and then feature mapping is performed on the feature vector of the current state information to obtain the path score of each of M message transmission paths between the robot to be controlled among the N robots and the control device of the robot communication system. The path score can quantitatively reflect the effectiveness and reliability of the message transmission path under the current situation; finally, the message transmission path with the highest path score is determined as the current message transmission path of the robot to be controlled; wherein the current message transmission path is used to realize the message transmission between the robot to be controlled and the control device at the current moment, so that the optimal message transmission path can be determined under the condition of comprehensively considering the current state information of the N robots, thereby improving the efficiency and real-time performance of the message transmission of the robot communication system. BRIEF DESCRIPTION OF THE DRAWINGS

[0012] Figure 1 This is a schematic diagram of an optional architecture of a system for selecting a message transmission path provided in an embodiment of the present application;

[0013] Figure 2 is a schematic diagram of the structure of an electronic device provided in an embodiment of the present application;

[0014] Figure 3 This is an optional flowchart of a method for selecting a message transmission path provided in an embodiment of the present application;

[0015] Figure 4 It is a schematic diagram of the implementation process of obtaining the current state information set provided by the embodiment of the present application;

[0016] Figure 5 This is another implementation flow diagram of determining a path score provided in an embodiment of the present application;

[0017] Figure 6 It is a schematic diagram of the implementation process of switching the message transmission path provided in an embodiment of the present application;

[0018] Figure 7 It is a schematic diagram of the principle of the method for selecting a message transmission path provided in an embodiment of the present application. DETAILED DESCRIPTION

[0019] In order to make the purpose, technical solutions and advantages of the present application clearer, the present application will be further described in detail below in conjunction with the accompanying drawings. The described embodiments should not be regarded as limiting the present application. All other embodiments obtained by ordinary technicians in the field without making creative work are within the scope of protection of this application.

[0020] In the following description, reference is made to “some embodiments”, which describe a subset of all possible embodiments, but it will be understood that “some embodiments” may be the same subset or different subsets of all possible embodiments and may be combined with each other without conflict.

[0021] In the following description, the terms "first\second\third" involved are merely used to distinguish similar objects and do not represent a specific ordering of the objects. It can be understood that "first\second\third" can be interchanged with a specific order or sequence where permitted, so that the embodiments of the present application described herein can be implemented in an order other than that illustrated or described herein.

[0022] In the embodiments of the present application, the term "module" or "unit" refers to a computer program or a part of a computer program with a predetermined function, and works together with other related parts to achieve a predetermined goal, and can be implemented in whole or in part by using software, hardware (such as processing circuits or memories) or a combination thereof. Similarly, a processor (or multiple processors or memories) can be used to implement one or more modules or units. In addition, each module or unit can be part of an overall module or unit that includes the function of the module or unit.

[0023] Unless otherwise defined, all technical and scientific terms used in the embodiments of the present application have the same meanings as those commonly understood by those skilled in the art. The terms used in the embodiments of the present application are only for the purpose of describing the embodiments of the present application and are not intended to limit the present application.

[0024] The relevant data collection and processing in the embodiments of this application should be strictly in accordance with the requirements of relevant laws and regulations when applied in examples, obtain the informed consent or separate consent of the personal information subject, and carry out subsequent data use and processing within the scope of authorization of laws and regulations and the personal information subject.

[0025] Before further describing the embodiments of the present application in detail, the nouns and terms involved in the embodiments of the present application are explained. The nouns and terms involved in the embodiments of the present application are subject to the following interpretations.

[0026] 1) In response to: used to indicate the conditions or states on which the executed operations depend. When the dependent conditions or states are met, one or more operations executed may be in real time or have a set delay. Unless otherwise specified, there is no restriction on the order in which the multiple operations executed may be executed.

[0027] As the interaction between robots and between robots and users increases, the demand for communication is increasing. However, the robot communication system has obvious defects in dealing with multi-robot collaboration, ensuring information security, and ensuring real-time communication. This leads to delays in message transmission in multi-robot systems, which seriously restricts the overall collaboration efficiency.

[0028] In order to solve at least one of the above-mentioned problems existing in the related technology, the embodiments of the present application provide a method, device, electronic device and computer-readable storage medium for selecting a message transmission path, which can determine the optimal message transmission path while comprehensively considering the current status information of N robots, thereby improving the efficiency and real-time performance of message transmission in the robot communication system.

[0029] See also Figure 1 , Figure 1 This is an optional architecture diagram of the message transmission path selection system provided in the embodiment of the present application. In order to realize an application (such as a message transmission path selection platform) that supports the efficiency and real-time performance of message transmission in a robot communication system, in the system 100 (i.e., the message transmission path selection system), terminal 400-1 and terminal 400-2 are exemplarily shown. Terminal 400-1 and terminal 400-2 are connected to server 200 through network 300, respectively. Network 300 can be a wide area network or a local area network, or a combination of the two. Server 200 can be a system server of the message transmission path selection system, or a background server of the message transmission path selection platform.

[0030] Server 200 is used to obtain current state information of N robots (equivalent to terminal 400-1 and terminal 400-2) in the robot communication system to obtain a current state information set; wherein the current state information includes at least one of network delay, bandwidth utilization and device load; feature extraction is performed on the current state information in the current state information set to obtain a feature vector of the current state information; feature mapping is performed on the feature vector of the current state information to obtain path scores of M message transmission paths; wherein the message transmission path is a message transmission path between a robot to be controlled among the N robots and a control device of the robot communication system; N and M are both integers greater than 1; the message transmission path with the highest path score is determined as the current message transmission path of the robot to be controlled; wherein the current message transmission path is used to realize message transmission between the robot to be controlled and the control device at the current moment.

[0031] In some embodiments, the server 200 may be an independent physical server, or a server cluster or distributed system composed of multiple physical servers, or a cloud server that provides basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communications, middleware services, domain name services, security services, content delivery networks (CDN), and big data and artificial intelligence platforms. The terminal and the server may be directly or indirectly connected via wired or wireless communication, which is not limited in the embodiments of the present application.

[0032] See also Figure 2 , Figure 2 is a schematic diagram of the structure of an electronic device provided in an embodiment of the present application, Figure 2 The electronic device 500 shown can be implemented as a control device of a robot communication system. The electronic device 500 includes: at least one processor 510, a memory 550, at least one network interface 520 and a user interface 530. The various components in the electronic device 500 are coupled together through a bus system 540. It can be understood that the bus system 540 is used to achieve connection and communication between these components. In addition to the data bus, the bus system 540 also includes a power bus, a control bus and a status signal bus. However, for the sake of clarity, the bus system 540 is not described in detail. Figure 2 Various buses are labeled as bus system 540 .

[0033] The processor 510 can be an integrated circuit chip with signal processing capabilities, such as a general-purpose processor, a digital signal processor (DSP), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc., where the general-purpose processor can be a microprocessor or any conventional processor, etc.

[0034] The user interface 530 includes one or more output devices 531 that enable presentation of media content, including one or more speakers and / or one or more visual display screens. The user interface 530 also includes one or more input devices 532, including user interface components that facilitate user input, such as a keyboard, mouse, microphone, touch screen display, camera, other input buttons and controls.

[0035] The memory 550 may be removable, non-removable, or a combination thereof. Exemplary hardware devices include solid-state memory, hard disk drives, optical disk drives, etc. The memory 550 may optionally include one or more storage devices that are physically remote from the processor 510.

[0036] The memory 550 includes a volatile memory or a non-volatile memory, and may also include both volatile and non-volatile memories. The non-volatile memory may be a read-only memory (RM), and the volatile memory may be a random access memory (RAM). The memory 550 described in the embodiments of the present application is intended to include any suitable type of memory.

[0037] In some embodiments, the memory 550 can store data to support various operations, examples of which include programs, modules, and data structures, or a subset or superset thereof, as exemplarily described below.

[0038] An operating system 551 includes system programs for processing various basic system services and performing hardware-related tasks, such as a framework layer, a core library layer, a driver layer, etc., for implementing various basic businesses and processing hardware-based tasks; a network communication module 552, for reaching other electronic devices via one or more (wired or wireless) network interfaces 520, exemplary network interfaces 520 include: Bluetooth, Wireless Compatibility Certification (WiFi), and Universal Serial Bus (USB), etc.; a presentation module 553, for enabling information to be presented (for example, a user interface for operating peripheral devices and displaying content and information) via one or more output devices 531 (for example, display screens, speakers, etc.) associated with a user interface 530; an input processing module 554, for detecting one or more user inputs or interactions from one of the one or more input devices 532 and translating the detected inputs or interactions.

[0039] In some embodiments, the message transmission path selection device provided in the embodiments of the present application can be implemented in a software manner. Figure 2 The message transmission path selection device 555 stored in the memory 550 is shown, which can be software in the form of a program and a plug-in, etc., including the following software modules: an information acquisition module 5551, a feature extraction module 5552, a path scoring module 5553 and a path determination module 5554. These modules are logical, so they can be arbitrarily combined or further split according to the functions implemented. The functions of each module will be explained below.

[0040] In other embodiments, the message transmission path selection device provided in the embodiments of the present application can be implemented in hardware. As an example, the message transmission path selection device provided in the embodiments of the present application can be a processor in the form of a hardware decoding processor, which is programmed to execute the message transmission path selection method provided in the embodiments of the present application. For example, the processor in the form of a hardware decoding processor can adopt one or more application-specific integrated circuits (ASIC), digital signal processors (DSP), programmable logic devices (PLD), complex programmable logic devices (CPLD), field-programmable gate arrays (FPGA) or other electronic components.

[0041] The method for selecting a message transmission path provided by the embodiment of the present application will be described in combination with the exemplary application and implementation of the electronic device provided by the embodiment of the present application. Taking the execution subject as a server as an example, the method for selecting a message transmission path provided by the embodiment of the present application will be described.

[0042] See also Figure 3 , Figure 3 is an optional flow chart of the method for selecting a message transmission path provided in an embodiment of the present application, which will be combined with Figure 3 Steps 101 to 104 are shown for explanation.

[0043] In step 101, current state information of N robots in a robot communication system is obtained to obtain a current state information set.

[0044] Here, the current status information includes at least one of network delay, bandwidth utilization, and device load.

[0045] In some embodiments, see Figure 4 , Figure 4 is a schematic diagram of an implementation flow of obtaining a current state information set provided in an embodiment of the present application, Figure 3 The illustrated step 101 can be implemented by following the steps 1011 to 1015, which are described in detail below.

[0046] In step 1011, the current original state information of N robots is obtained.

[0047] In some embodiments, the above step 1011 can be implemented in the following manner: first, in response to any robot currently being online, any robot is determined to be one of the N robots; then, the current original state information of all robots that are online is obtained.

[0048] As an example, the robots in the robot communication system can be in an online state, a shutdown state, or an offline state. When any robot in the robot communication system is in an online state, the robot is determined to be one of N robots, and then the current original state information of all the robots in the online state (i.e., N robots) is obtained.

[0049] For example, there are five robots in the robot communication system, among which robot A, robot B and robot C are online, robot D is off, and robot E is offline. Then, robot A, robot B and robot C can be determined as robots among N robots (N=3 at this time), and then the current original state information of all robots in the online state (i.e., robot A, robot B and robot C) is obtained. The current original state information can be at least one of network delay, bandwidth utilization and device load.

[0050] Network latency refers to the time it takes for data to travel from source to destination, and typically includes propagation delay, processing delay, queuing delay, and transmission delay. Network latency can range from a few milliseconds to hundreds of milliseconds, depending on the quality of the network and the distance from source to destination. For example, local network latency may be between 1-10 milliseconds, while cross-border network latency may be between 100-200 milliseconds. Suppose an industrial robot needs to receive instructions from a central control system. If the network latency is 50 milliseconds, there will be a 50 millisecond delay between when the instruction is issued and when the robot begins to execute the instruction.

[0051] Bandwidth utilization refers to the degree to which network bandwidth is used, usually expressed as a percentage. Bandwidth utilization values ​​range from 0% to 100%, with 0% meaning that the bandwidth is not being used and 100% meaning that the bandwidth is fully loaded. For example, if the bandwidth utilization of a robot connection is 70%, it means that the current bandwidth usage is already quite tight, and if more data transmission needs arise, it may cause network congestion.

[0052] Device load usually refers to the workload and usage of devices (such as central processing unit (CPU), memory, etc.). CPU usage is usually 0% to 100%, indicating the percentage of CPU workload to the maximum processing capacity of the CPU. Memory usage is usually 0% to 100%, indicating the percentage of memory usage to the total capacity of the memory. For example, if the CPU usage of a robot is 85%, it means that the CPU is close to the limit of its processing capacity. If the memory usage also reaches 80%, you may need to optimize memory management or increase memory capacity to prevent the system from crashing.

[0053] Through the above scheme, only the current original state information of the robot in the online state can be obtained, so that the message transmission path subsequently selected according to the current original state information of the robot is more reliable and real-time.

[0054] In step 1012, for each robot, the current original state information of the robot is denoised to obtain denoised state information.

[0055] As an example, in actual situations, the current original state information obtained may contain noise. Through denoising, the noise and abnormal values ​​in the current original state information can be removed to ensure the accuracy and reliability of the current original state information.

[0056] For example, the current raw status information is the CPU usage in the device load. Assume that the CPU usage record of robot A contains some abnormal high peaks caused by sensor failure, which are much higher than the CPU usage during normal operation. De-noising can identify the abnormal high peaks and exclude them.

[0057] In step 1013, the denoising state information is normalized to obtain normalized state information.

[0058] As an example, the denoised state information is normalized so that the state information of different dimensions is converted to the same scale for subsequent analysis and comparison. For example, the CPU usage of robot A may be between 0% and 100%, while the memory usage may be between 0MB and 8GB. Normalization converts the CPU usage and memory usage to values ​​between 0 and 1. For example, a CPU usage of 85% can be normalized to 0.85, and a memory usage of 4GB (assuming a total capacity of 8GB) can be normalized to 0.5.

[0059] In step 1014, the normalized state information is determined as the current state information of the robot.

[0060] As an example, the normalized state information of each robot is determined as the current state information of the robot. For example, the CPU usage of robot A is normalized to 0.85, and the memory usage is normalized to 0.5. The values ​​0.85 and 0.5 are used as the current state information of robot A.

[0061] In step 1015, the current state information of the N robots is aggregated to obtain a current state information set.

[0062] As an example, the current state information of all N robots in the online state is summarized to form a state information set. For example, after obtaining the current state information of robot A, robot B and robot C, the current state information of robot A, robot B and robot C is summarized to obtain the current state information set (the current state information of robot A is: CPU usage 0.85, memory usage 0.5, network delay 0.03 seconds, bandwidth utilization 0.7; the current state information of robot B is: CPU usage 0.60, memory usage 0.4, network delay 0.1 seconds, bandwidth utilization 0.6; the current state information of robot C is: CPU usage 0.75, memory usage 0.6, network delay 0.04 seconds, bandwidth utilization 0.65).

[0063] Through steps 1011 to 1015, only the original state information of the robot in the online state is obtained, and the original state information is denoised and normalized. In this way, the accuracy of the original state information data can be improved. Then, the state information of all online robots is summarized, so that the message transmission path selected based on the summarized state information is more reliable and real-time.

[0064] In step 102, feature extraction is performed on the current state information in the current state information set to obtain a feature vector of the current state information.

[0065] In some embodiments, feature extraction is performed on the current state information of each robot in the current state information set to obtain a feature vector of the current state information.

[0066] Feature extraction can extract useful information from the current state information set, converting the current state information of each robot into a series of eigenvalues, which are combined to form a feature vector. Feature extraction methods include: direct feature extraction (used to select and extract features directly from raw data), statistical feature extraction (used to extract features by calculating statistical indicators of data, such as mean, variance, maximum, minimum, etc.), principal component analysis (used to project data into a lower dimensional space through linear transformation while retaining the variance of the data as much as possible), deep learning feature extraction (using deep learning models (such as convolutional neural networks, recurrent neural networks, and autoencoders, etc.) to automatically learn data features) and feature selection (selecting a portion of the most useful features from the original features to reduce the feature dimension and improve model performance).

[0067] For example, the current state information of robot A is: CPU usage is 0.85, memory usage is 0.5, network delay is 0.03 seconds, and bandwidth utilization is 0.7. Converting the above state information into a feature vector, we can get the following feature vector: [0.85, 0.5, 0.03, 0.7]. The feature vector [0.85, 0.5, 0.03, 0.7] represents the current state of robot A. The same feature extraction process can also be applied to robots B and C, which will not be repeated here.

[0068] In step 103, feature mapping is performed on the feature vector of the current state information to obtain the path scores of the M message transmission paths.

[0069] Here, the message transmission path is the message transmission path between the robot to be controlled among the N robots and the control device of the robot communication system; N and M are both integers greater than 1. It should be noted that the number of robots to be controlled can be one or more; the control device (i.e., electronic device) can be any robot among the N robots except the robot to be controlled, or can be other control terminals independent of the N robots, which is not limited in the embodiments of the present application.

[0070] In some embodiments, each message transmission path corresponds to a communication protocol; the above step 103 can be implemented in the following manner: feature mapping is performed on the feature vector of the current state information through the scheduling model to obtain the path score of the message transmission path under each communication protocol.

[0071] As an example, the communication protocols may include: Transmission Control Protocol (TCP) and Hypertext Transfer Protocol (HTTP), Bluetooth and cloud, etc. Each message transmission path corresponds to a communication protocol. For example, the robot to be controlled is robot A, and the control device is robot B. The message transmission path may include: path (1), robot A--TCP--robot B; path (2), robot A--HTTP--robot B; path (3), robot A--Bluetooth--robot B; path (4), robot A--cloud--robot B, etc. By mapping the feature vector of the current state information obtained by the scheduling model, the path score of each message transmission path under each communication protocol can be obtained.

[0072] For example, the scheduling model can be a machine learning model. The feature vector of the current state information can be input into the machine learning model for feature mapping, and the path score of each message transmission path under each communication protocol can be obtained.

[0073] Through the above technical solution, the message transmission paths corresponding to different communication protocols can be intelligently selected through the scheduling model to improve the efficiency and reliability of message transmission.

[0074] Furthermore, before feature mapping is performed on the feature vector of the acquired current state information through the scheduling model, the scheduling model may be trained first, and feature mapping is performed on the feature vector of the acquired current state information through the trained scheduling model. When training the scheduling model, sample data can be obtained first, wherein the sample data includes a first sample state information set and a first label pre-labeled for each first sample state information in the first sample state information set; then, the first sample state information in the first sample state information set is input into the scheduling model to be trained, and the first sample state information is extracted through the scheduling model to be trained to obtain a feature vector of the first sample state information, where the scheduling model to be trained can be an initialized machine learning model; then, the feature vector of the first sample state information is feature mapped using the scheduling model to be trained to obtain a sample path score of the sample message transmission path; then, the error between the sample path score and the first label is determined, that is, the loss of the scheduling model to be trained is calculated based on the sample path score and the first label to obtain a loss result; back propagation is performed based on the loss result, and the parameters of the scheduling model to be trained are updated during the back propagation process to obtain a scheduling model after parameter update; the parameters after parameter update are determined as the trained scheduling model.

[0075] For example, take the sample data from robot A and robot B as an example, (the sample status information of robot A is: CPU usage 0.85, memory usage 0.5, network delay 0.03 seconds, bandwidth utilization 0.7; the sample status information of robot B is: CPU usage 0.60, memory usage 0.4, network delay 0.1 seconds, bandwidth utilization 0.6 control device); the communication protocols include: TCP and Bluetooth. The communication protocol corresponding to the sample message transmission path between robot A and the control device is TCP, and the first label pre-marked for the sample status information of robot A is [TCP, 1]. The communication protocol corresponding to the sample message transmission path between robot B and the control device is Bluetooth, and the first label pre-marked for the sample status information of robot B is [Bluetooth, 1]. Then, feature extraction is performed on the sample state information of robot A and robot B respectively to obtain feature vectors, and feature mapping is performed on the feature vectors using the scheduling model to be trained to obtain the sample path score of each sample message transmission path (i.e., the prediction result output by the machine learning model and the corresponding probability value). For example, the sample path score of the sample state information of robot A is [TCP, 0.7] and [Bluetooth, 0.3]. Then, the mean square error can be used as the loss function to calculate the loss result between the sample path score and the first label, and back propagation is performed based on the loss result. In the process of back propagation, the parameters of the scheduling model to be trained are updated to obtain the scheduling model after parameter update; the parameters after parameter update are determined as the scheduling model after training.

[0076] Through the above technical solution, a scheduling model can be obtained that can effectively learn the relationship between the sample state information of the robot and the path score of the sample message transmission path, thereby improving the accuracy of path selection.

[0077] In some embodiments, M message transmission paths include K sub-paths, and each message transmission path is composed of at least one sub-path; a sub-path is a message transmission path between any two robots in the robot communication system or between any robot and a control device, and each sub-path corresponds to a communication protocol; K is an integer greater than M. Figure 5 , Figure 5 is another implementation flow diagram of determining a path score provided in an embodiment of the present application. Figure 3 The illustrated step 103 may be implemented by following steps 1031 to 1033, which are described in detail below.

[0078] As an example, taking the robots to be controlled include robot A and robot B, the control device is robot C, and the communication protocols include TCP and Bluetooth, the message transmission path between robot A and robot C may include path (1), robot A--TCP--robot C; path (2), robot A--Bluetooth--robot C; path (3), robot A--TCP--robot B--TCP--robot C; path (4), robot A--TCP--robot B--Bluetooth--robot C; path (5), robot A--Bluetooth--robot B--Bluetooth--robot C; path (6), robot A--Bluetooth--robot B--TCP--robot C. The subpaths may include: subpath (1), robot A--TCP--robot C; subpath (2), robot A--Bluetooth--robot C; subpath (3), robot A--TCP--robot B; subpath (4), robot A--Bluetooth--robot B; subpath (5), robot B--Bluetooth--robot C; subpath (6), robot B--TCP--robot C.

[0079] In step 1031, feature mapping is performed on the feature vector of the current state information through the scheduling model to obtain the path sub-scores of the K sub-paths.

[0080] In some embodiments, the feature vector of the current state information is feature mapped by the scheduling model to obtain the path sub-scores of the K sub-paths under each communication protocol. The implementation method of obtaining the path sub-score by the scheduling model can refer to the implementation method of obtaining the path score by the scheduling model mentioned above, which will not be repeated here.

[0081] In step 1032, for each message transmission path, the path sub-scores of all sub-paths included in the message transmission path are obtained.

[0082] In some embodiments, the path sub-scores of all sub-paths included in each message transmission path can be determined based on the path sub-scores of the K sub-paths. For example, still taking the example that the robots to be controlled include robot A and robot B, the control device is robot C, and the communication protocols include TCP and Bluetooth, the path sub-scores of the sub-paths are respectively sub-path (1), robot A--TCP--robot C has a path score of 0.7; sub-path (2), robot A--Bluetooth--robot C has a path score of 0.3; sub-path (3), robot A--TCP--robot B has a path score of 0.4; sub-path (4), robot A--Bluetooth--robot B has a path score of 0.6; sub-path (5), robot B--Bluetooth--robot C has a path score of 0.8; sub-path (6), robot B--TCP--robot C has a path score of 0.2.

[0083] Therefore, the path sub-scores of all sub-paths of path (6), robot A--Bluetooth--robot B--TCP--robot C can be obtained: the path score of sub-path (4), robot A--Bluetooth--robot B is 0.6; the path score of sub-path (6), robot B--TCP--robot C is 0.2. The method for determining the path sub-scores of all sub-paths of other paths is the same as the above method, which will not be repeated here.

[0084] In step 1033, the path sub-scores are score-fused to obtain a path score for the message transmission path.

[0085] In some embodiments, for each message transmission path, the path sub-scores of all sub-paths included are fractionally fused to obtain the path score of the message transmission path. A weight can be set in advance for each sub-path, for example, the weight of the sub-path close to the robot to be controlled is set higher than the weight of the sub-path close to the control device, or vice versa; the path sub-scores of each path in the message transmission path can also be directly added, and the result of the addition is normalized (for example, the sub-scores of each path are added, and the result of the addition is divided by the number of sub-paths to obtain a normalized result) to obtain the path score. The embodiment of the present application does not limit this, and it can be set according to actual conditions.

[0086] As an example, for example, the path sub-scores of all sub-paths of path (6) robot A--Bluetooth--robot B--TCP--robot C are: the path score of sub-path (4) robot A--Bluetooth--robot B is 0.6 and the path score of sub-path (6) robot B--TCP--robot C is 0.2. If the score fusion is performed by directly adding the path sub-scores and then performing normalization, the path score of path (6) can be obtained to be 0.4; if the score fusion is performed by setting the weight of the sub-path close to the robot to be controlled (for example, set to 0.6) higher than the weight of the sub-path close to the control device (for example, set to 0.4), the path score of path (6) can be obtained to be 0.44.

[0087] For example, by directly adding the path sub-scores and then performing normalization processing to perform score fusion, the path score of each message transmission path between robot A and robot C can be obtained, which is 0.7 for path (1), 0.3 for path (2), 0.55 for path (3), 0.6 for path (4), 0.7 for path (5), and 0.4 for path (6).

[0088] Through steps 1031 to 1033, each sub-path of the message transmission path can be scored through the scheduling model, and then the path sub-scores are merged to obtain the path score, thereby improving the accuracy and reliability of the path score, thereby improving the accuracy and reliability of the selection of the message transmission path.

[0089] In step 104, the message transmission path with the highest path score is determined as the current message transmission path of the robot to be controlled.

[0090] Here, the current message transmission path is used to implement message transmission between the robot to be controlled and the control device at the current moment.

[0091] In some embodiments, the message transmission path with the highest path score is determined as the current message transmission path of the robot to be controlled, and the determined current message transmission path is used as the path for message transmission between the robot to be controlled and the control device at the current moment.

[0092] As an example, for example, by directly adding the path sub-scores and then performing normalization processing to perform score fusion, the path score of each message transmission path between robot A and robot C can be obtained, which is 0.7 for path (1), 0.3 for path (2), 0.55 for path (3), 0.6 for path (4), 0.7 for path (5), and 0.4 for path (6). Among them, the path scores of path (1) and path (5) are the same and the highest. At this time, the message transmission path with the least number of sub-paths can be selected as the current message transmission path of the robot to be controlled; or any path can be selected as the current message transmission path of the robot to be controlled. The embodiment of the present application does not limit this and can be set according to actual conditions.

[0093] In some embodiments, the message to be transmitted between the robot to be controlled and the control device can be an encrypted message, which can be achieved in the following way: first, the message to be transmitted between the robot to be controlled and the control device is encrypted using a first key to obtain an encrypted message; and the first key is encrypted using a first public key to obtain an encrypted first key; then, the encrypted message is sent to the message receiver in the robot to be controlled and the control device through the message sender in the robot to be controlled and the control device; then, the encrypted first key is decrypted through the message receiver using the first private key of the message receiver to obtain the first key; finally, the encrypted message is decrypted through the message receiver using the first key obtained after decryption to obtain the message to be transmitted.

[0094] As an example, first generate an Advanced Encryption Standard (AES) key to encrypt and decrypt the symmetric key (i.e., the first key) of the message to be transmitted, and then generate a pair of asymmetric encryption algorithm (Rivest Shamir Adleman, RSA) keys for the robot to be controlled and the control device, including a private key (i.e., the first private key) and a public key (i.e., the first public key). The AES key is used to encrypt the message to be transmitted between the robot to be controlled and the control device to obtain an encrypted message, and the AES key is encrypted using the RSA public key to obtain an encrypted AES key. Then, the encrypted message is sent to the message receiver in the robot to be controlled and the control device through the message sender in the robot to be controlled and the control device, and the message receiver can use the RSA private key to decrypt the encrypted AES key to obtain the AES key. The message receiver can use the decrypted AES key to decrypt the encrypted message to obtain the original message to be transmitted.

[0095] Through the above technical solution, the security of communication can be improved by encrypting the message to be transmitted before transmitting it, ensuring that only the recipient with the corresponding private key can decrypt the message, thereby improving the confidentiality and integrity of the message to be transmitted.

[0096] In some embodiments, see Figure 6 , Figure 6 is a schematic diagram of the implementation flow of the switching message transmission path provided in the embodiment of the present application, which will be combined with Figure 6 Steps 201 to 203 are shown for explanation.

[0097] In step 201, based on the path scores of the M message transmission paths, the M message transmission paths are sorted to form a message transmission path sequence.

[0098] In some embodiments, the M message transmission paths may be sorted from high to low according to their respective path scores to form a message transmission path sequence.

[0099] As an example, the path score of each message transmission path between robot A and robot C is obtained, and the path score of path (1) is 0.7, the path score of path (2) is 0.3, the path score of path (3) is 0.55, the path score of path (4) is 0.6, the path score of path (5) is 0.7, and the path score of path (6) is 0.4. Sorting the paths from high to low according to the path scores, the message transmission path sequence [path (1), path (5), path (4), path (3), path (6), path (2)] is obtained.

[0100] In step 202, the state feedback data of the robot to be controlled at the next moment after the current moment is obtained.

[0101] In some embodiments, when the message is transmitted according to the current message transmission path, the state feedback data of the robot to be controlled at the next moment after the current moment is obtained. The state feedback data may be at least one of network delay, bandwidth utilization, device load and packet loss rate.

[0102] As an example, for example, path (1) is used as the message transmission path between robot A and robot C. During the message transmission process, the state feedback data of robot A at the next moment is obtained. For example, the packet loss rate of robot A is 7%.

[0103] In step 203, in response to the state feedback data not satisfying the message transmission condition, the message transmission path following the message transmission path with the highest path score in the message transmission path sequence is determined as the message transmission path of the robot to be controlled at the next moment.

[0104] In some embodiments, message transmission conditions can be pre-set, such as a packet loss rate not higher than 0.5%, a network delay not exceeding 50 milliseconds, a bandwidth utilization rate not exceeding 70%, a CPU utilization rate of a device load not exceeding 70%, and a memory utilization rate not exceeding 80%. It should be noted that the message transmission conditions are set according to actual conditions, and the embodiments of the present application do not limit this. When the state feedback data does not meet the message transmission conditions, the message transmission path in the message transmission path sequence that is located after the message transmission path with the highest path score can be determined as the message transmission path of the robot to be controlled at the next moment.

[0105] As an example, path (1) has been selected as the current message transmission path. Since the packet loss rate of robot A at the next moment is 7%, which is higher than 0.5%, the message transmission condition is not met. At this time, path (5) located after the message transmission path with the highest path score (i.e., the current message transmission path) in the message transmission path sequence [path (1), path (5), path (4), path (3), path (6), path (2)] is selected as the message transmission path of the robot to be controlled at the next moment.

[0106] Through step 201 to step 203, the process of real-time message transmission can be realized. When the currently selected message transmission path does not meet the transmission conditions, the alternative path can be quickly switched to ensure the continuity and stability of communication.

[0107] In some embodiments, the scheduling model can also be updated through the following steps: first, the feedback status information and the current message transmission path of the robot to be controlled at each moment are obtained; then, the feedback status information within the update cycle is determined as the second sample status information, and the path score corresponding to the current message transmission path is assigned to "1", and "1" is determined as the second label; if the set update cycle arrives, the scheduling model is updated based on the second sample status information and the second label to obtain an updated scheduling model.

[0108] As an example, the feedback state information and current message transmission path of the robot to be controlled at each moment can be saved. An update cycle is pre-set, and the feedback state information within the update cycle is determined as the second sample state information and the current message transmission path is determined as the second label. For the specific implementation method, please refer to the implementation method of "obtaining the first sample state information and the first label pre-marked for the state information", which will not be repeated here. When the set update cycle arrives, the scheduling model is updated using the second sample state information and the second label to obtain an updated scheduling model. For the specific implementation method, please refer to the implementation method of "training the scheduling model", which will not be repeated here. If within the update cycle, the message transmission path selected by the path score predicted by the scheduling model for multiple consecutive times (the number of times can be set according to actual conditions) cannot transmit messages normally or in a timely manner, the scheduling model can also be updated according to the above-mentioned model update scheme.

[0109] Through the above scheme, the scheduling model can be updated regularly according to the feedback status information, so that the scheduling model can dynamically adjust the path selection strategy, thereby improving the efficiency, reliability and real-time performance of communication. At the same time, when the prediction of the scheduling model fails continuously, timely updating the model can avoid the continuous selection of inefficient paths, further optimizing the communication process.

[0110] Through the embodiment of the present application, the current state information of N robots in the robot communication system is obtained to obtain a current state information set, wherein the current state information includes at least one of network delay, bandwidth utilization and device load, and then the current state information is feature extracted to obtain a feature vector, and then the feature vector of the current state information is feature mapped to obtain the path score of each of the M message transmission paths between the robot to be controlled among the N robots and the control device of the robot communication system. The path score can quantitatively reflect the effectiveness and reliability of the message transmission path under the current situation; finally, the message transmission path with the highest path score is determined as the current message transmission path of the robot to be controlled; wherein the current message transmission path is used to realize the message transmission between the robot to be controlled and the control device at the current moment, so that the optimal message transmission path can be determined while comprehensively considering the current state information of the N robots, thereby improving the efficiency and real-time performance of the message transmission of the robot communication system.

[0111] The following is an explanation of an exemplary application of the embodiments of the present application in a practical application scenario.

[0112] The message transmission path selection method provided in the embodiment of the present application can be used to optimize the robot message communication system, thereby improving the overall communication efficiency and reliability of the robot message communication system.

[0113] In order to cope with different application scenarios and network conditions, the robot message communication system (hereinafter referred to as the system) can support multiple communication protocols, such as Wireless Fidelity (Wi-Fi), Bluetooth and the fifth generation mobile communication network (Fifth Generatin Mbile Netwrk, 5G network). The system can flexibly select the most suitable communication method in different environments to ensure the stability and efficiency of communication. The following is a detailed description of the communication protocols that can be supported by the embodiments of the present application: Wi-Fi: suitable for most indoor environments, providing high-bandwidth and medium-range communication capabilities; Bluetooth: suitable for short-range, low-power communication needs, especially very useful in close-range data exchange between devices; 5G network: provides support for applications that require high bandwidth and low latency, such as real-time video transmission or remote control; Edge gateway: connects the device layer and the cloud layer, responsible for aggregating data and performing preliminary processing; Message Queuing Telemetry Transport (MQTT): a lightweight message protocol suitable for message transmission between devices and between devices and the cloud; Zigbee: used for low-power sensor networks, data is collected at the edge gateway, and then transmitted to the cloud by the edge gateway; Long Range Radio (LoRa): used for long-distance low-power transmission, connected to the cloud via a LoRa gateway.

[0114] Bluetooth devices (such as robots and sensor nodes) collect data and transmit it to the edge gateway via Bluetooth Low Energy (BLE). The edge gateway is located near the Bluetooth device and receives the BLE data. The edge gateway usually has multiple communication capabilities, such as Wi-Fi, Ethernet or 5G. The edge gateway receives data from multiple Bluetooth devices, aggregates it and performs preliminary processing. The edge gateway then transmits the aggregated data to the cloud using high-bandwidth protocols such as Wi-Fi or 5G. The cloud receives the data transmitted from the edge gateway for further processing and storage.

[0115] In order to ensure the security of messages during transmission, prevent data leakage, eavesdropping and tampering, and ensure the confidentiality and integrity of the system, before each communication, the system first generates a random AES key (i.e., the first key), then encrypts the key with the RSA public key (i.e., the first public key) and sends it to the recipient. The recipient can only decrypt the message content (i.e., the message to be transmitted) after decrypting the AES key with the RSA private key (i.e., the first private key). This double encryption method ensures that even if the encrypted data is intercepted, unauthorized persons cannot decrypt it.

[0116] In addition, the system also introduces a two-factor authentication mechanism, which requires devices accessing the network to provide a device identity document (ID) and password, and to be verified by the authentication module of the central controller, further improving the security of the system and preventing unauthorized device access.

[0117] It should be explained that for the RSA public key encryption algorithm: it is used to encrypt the symmetric key to protect the key security during transmission. The RSA algorithm has high security and wide application. For the AES symmetric encryption algorithm: it is used to encrypt the actual message content. AES has become the standard symmetric encryption algorithm due to its efficiency and security.

[0118] Based on the message transmission path selection method provided in the embodiment of the present application, the system can optimize the message transmission path, reduce communication delays, and improve the overall efficiency of the system.

[0119] See also Figure 7 , Figure 7 This is a schematic diagram of the principle of the message transmission path selection method provided in the embodiment of the present application. The intelligent scheduling function in the system can be implemented by the following main modules:

[0120] Data collection module 701: collects the status information of each robot and user terminal (i.e., control device) in real time, including network delay, bandwidth utilization, device load and other data. That is, when the system is running, the data collection module 701 will collect the following data in real time: network delay (the delay time between each robot and user terminal and the central controller), bandwidth utilization (the current network bandwidth usage, used to detect whether the network is congested) and device load (CPU and memory usage of each device (i.e., robot and user terminal), used to evaluate the processing capacity and workload of the device).

[0121] Preprocessing module 702: cleans and preprocesses the collected data to remove noise and abnormal data to ensure the accuracy and consistency of the input data.

[0122] The preprocessing module 702 first cleans the collected data (i.e., the current raw state information) (removes noise and outliers to ensure data accuracy). Then it normalizes the data (normalizes data of different dimensions to facilitate subsequent algorithm processing). Finally, it extracts features from the normalized data (i.e., normalized state information) (extracts features useful for scheduling decisions (including network delay, bandwidth utilization, and device load) from the raw data to form feature vectors that are input into the machine learning model).

[0123] The scheduling model module 703 uses a machine learning model to analyze and predict the input feature vector and generate a score for each transmission path. First, the machine learning model is trained using historical data to obtain a scheduling model. The machine learning model can be a supervised learning model (such as a decision tree or a random forest), an unsupervised learning model (such as K-means clustering), or a reinforcement learning model (such as Q-learning).

[0124] During the operation of the system, the scheduling model module 703 performs online prediction on the feature vector of the currently collected state information input in real time, and outputs the score of each path (ie, the path score).

[0125] Based on real-time feedback data, the system can dynamically adjust the parameters and scheduling strategies of the scheduling model to adapt to changes in network conditions (for example, the scheduling model dynamically determines whether the scheduling strategy needs to be adjusted based on the characteristics of real-time feedback from the device (network latency, bandwidth utilization, device load)).

[0126] Path selection module 704: Dynamically select the transmission path for each message based on the output of the scheduling model. Path selection module 704 selects the best transmission path for each message (i.e., the message transmission path with the highest path score) based on the output of the scheduling model. For example, the transmission paths include TCP, HTTP, Bluetooth, and cloud. Select the best path (e.g., device A--cloud--device B) for transmission.

[0127] The path selection module 704 obtains the transmission path score of each message output by the scheduling model, and selects the path with the highest score as the transmission path of the current message. In addition, during the message transmission process, the path status is monitored in real time. If a problem is found in the transmission path of the current message (such as increased network delay, insufficient bandwidth, etc.), the alternative path (i.e., the message transmission path after the message transmission path with the highest path score in the message transmission path sequence) is immediately switched.

[0128] Monitoring and feedback module 705: monitors the message transmission process in real time, and continuously adjusts and optimizes the scheduling strategy based on feedback data.

[0129] The monitoring and feedback module 705 monitors key indicators such as network delay, packet loss rate, device load, etc. during the message transmission process, and updates the collected feedback data (ie, status feedback data) to the data acquisition module 701 to form a closed loop.

[0130] The scheduling model module 703 adjusts the scheduling model parameters (ie, updates the scheduling model) according to the feedback data, optimizes the model, and improves the overall performance of the system.

[0131] In order to achieve a flexible and scalable system architecture, the system can adapt to changing needs and technological updates. A modular design can be adopted, mainly including: communication protocol module (plug-in module that supports multiple communication protocols, users can add or remove as needed), encryption algorithm module (module that supports different encryption algorithms, users can choose the appropriate algorithm according to security requirements) and interface module (used for integration with robots and terminal devices of different brands and models to ensure system compatibility and interoperability). The modular design allows users to flexibly adjust system functions according to actual needs, supports hot-swap technology, and realizes module updates or replacements without interrupting system operation.

[0132] In order to ensure that the system is compatible with devices of different manufacturers and models and supports a wide range of hardware and software platforms, the system supports a variety of hardware devices and software platforms through standardized interfaces and protocol conversion modules. Including: device access interface (unified device access interface, supporting the access of multiple robots and user terminals) and protocol conversion module (capable of processing the conversion between different communication protocols to ensure the interoperability between different devices), so that the system has a high degree of compatibility and versatility, suitable for various complex application scenarios.

[0133] The embodiments of the present application have at least the following beneficial effects:

[0134] (1) Improve the adaptability and flexibility of the communication system. Multi-protocol support: The system is designed to support multiple communication protocols including Wi-Fi, Bluetooth, and 5G networks. This flexible protocol support enables the system to automatically select the optimal communication method based on the actual application scenario and network environment to ensure the stability and efficiency of communication. For example, in industrial environments, Wi-Fi can provide high-speed data transmission, while Bluetooth is more suitable in short-distance and low-power scenarios. 5G networks provide a reliable solution for applications that require high bandwidth and low latency.

[0135] (2) Enhance the security of information transmission. Double encryption and two-factor authentication: The system uses a double encryption mechanism that combines the RSA public key encryption algorithm and the AES symmetric encryption algorithm to ensure that messages will not be eavesdropped or tampered with during transmission. The RSA algorithm is used to encrypt the symmetric key, while the AES algorithm is used to encrypt the actual message content. Double encryption ensures the confidentiality of the data. In addition, the two-factor authentication mechanism requires the device to provide multiple authentications when accessing the network to further prevent unauthorized access. This high-intensity security measure effectively protects the system from various network attacks and ensures the security of data transmission.

[0136] (3) Optimize the collaborative efficiency of multi-robot systems. Intelligent scheduling algorithm: The central controller uses a machine learning algorithm to analyze communication data in real time and dynamically selects the optimal message delivery path based on factors such as the current network status, device load, and message priority. The intelligent scheduling algorithm can significantly reduce communication delays and improve the real-time performance of the system. For example, in a multi-robot collaborative intelligent manufacturing system, the intelligent scheduling algorithm can ensure that key instructions and data are delivered to the designated robot in the shortest time, thereby improving overall work efficiency and collaborative effects.

[0137] (4) Improve the compatibility and scalability of the system. Modular design: The system adopts a modular design that supports the free addition, reduction and upgrade of each functional module. For example, users can add new communication protocol modules or upgrade encryption algorithm modules as needed without stopping the system. This design greatly enhances the flexibility and maintainability of the system, enabling it to adapt to changing technical and business needs and extend the life cycle of the system.

[0138] (5) Provide highly reliable and robust communication services. Dynamic path selection and real-time monitoring: The system has dynamic path selection and real-time monitoring functions, which can adjust the message delivery path in real time according to changes in network conditions and fluctuations in device status. For example, when problems such as increased latency or insufficient bandwidth are detected on the current path, the system will automatically switch to an alternative path to ensure the continuity and reliability of communication. This dynamic adjustment mechanism improves the robustness of the system, enabling it to operate stably in complex and changing environments.

[0139] (6) Improve user experience and system efficiency. Efficient message delivery and management: Through optimized message delivery mechanisms and intelligent scheduling algorithms, the system can efficiently manage and deliver large numbers of messages, reduce latency, and improve response speed. This is especially important for application scenarios that require real-time feedback and rapid response (such as remote control, real-time monitoring, etc.). Users will experience faster and more reliable system services, improving overall satisfaction and usage efficiency.

[0140] In general, the robot message communication system has significantly improved the system's adaptability, security, real-time performance, compatibility and scalability through innovative multi-protocol support, dual encryption and two-factor authentication, intelligent scheduling algorithms, modular design and dynamic path selection, ensuring the efficient operation of the system in a variety of application scenarios.

[0141] The following further describes an exemplary structure of the message transmission path selection device 555 provided in the embodiment of the present application implemented as a software module. In some embodiments, for example Figure 2As shown, the software modules in the message transmission path selection device 555 stored in the memory 550 may include: an information acquisition module 5551, used to obtain the current state information of N robots in the robot communication system to obtain a current state information set; wherein the current state information includes at least one of network delay, bandwidth utilization and device load; a feature extraction module 5552, used to extract features from the current state information in the current state information set to obtain a feature vector of the current state information; a path scoring module 5553, used to perform feature mapping on the feature vector of the current state information to obtain a path score for each of the M message transmission paths; wherein the message transmission path is a message transmission path between a robot to be controlled among the N robots and a control device of the robot communication system; N and M are both integers greater than 1; a path determination module 5554, used to determine the message transmission path with the highest path score as the current message transmission path of the robot to be controlled; wherein the current message transmission path is used to realize message transmission between the robot to be controlled and the control device at the current moment.

[0142] In some embodiments, the information acquisition module 5551 is also used to obtain the current original state information of N robots; for each robot, the current original state information of the robot is denoised to obtain denoised state information; the denoised state information is normalized to obtain normalized state information; the normalized state information is determined as the current state information of the robot; the current state information of the N robots is summarized to obtain a current state information set.

[0143] In some embodiments, the information acquisition module 5551 is also used to determine any robot as one of N robots in response to any robot currently being in an online state; and obtain the current original state information of all robots that are in an online state.

[0144] In some embodiments, each message transmission path corresponds to a communication protocol; the path scoring module 5553 is also used to perform feature mapping on the feature vector of the current state information through the scheduling model to obtain the path score of the message transmission path under each communication protocol.

[0145] In some embodiments, M message transmission paths include K sub-paths, and each message transmission path is composed of at least one sub-path; a sub-path is a message transmission path between any two robots in the robot communication system or between any robot and a control device, and each sub-path corresponds to a communication protocol; K is an integer greater than M; each message transmission path corresponds to a communication protocol; the path scoring module 5553 is also used to perform feature mapping on the feature vector of the current state information through the scheduling model to obtain the path sub-scores of the K sub-paths; for each message transmission path, obtain the path sub-scores of all sub-paths included in the message transmission path; and perform score fusion on the path sub-scores to obtain the path score of the message transmission path.

[0146] In some embodiments, the path determination module 5554 is also used to sort the M message transmission paths based on their respective path scores to form a message transmission path sequence; obtain state feedback data of the robot to be controlled at the next moment after the current moment; in response to the state feedback data not satisfying the message transmission condition, determine the message transmission path that is located after the message transmission path with the highest path score in the message transmission path sequence as the message transmission path of the robot to be controlled at the next moment.

[0147] In some embodiments, the device also includes: an encryption module, used to use a first key to encrypt the message to be transmitted between the robot to be controlled and the control device to obtain an encrypted message; use a first public key to encrypt the first key to obtain an encrypted first key; send the encrypted message to the robot to be controlled and the message receiver in the control device through the message sender in the control device; use the first private key of the message receiver to decrypt the encrypted first key through the message receiver to obtain the first key; use the message receiver to decrypt the encrypted message using the first key obtained after decryption to obtain the message to be transmitted.

[0148] The embodiment of the present application provides a computer program product, which includes a computer program or a computer executable instruction, and the computer program or the computer executable instruction is stored in a computer-readable storage medium. The processor of the electronic device reads the computer executable instruction from the computer-readable storage medium, and the processor executes the computer executable instruction, so that the electronic device executes the message transmission path selection method described in the embodiment of the present application.

[0149] The embodiment of the present application provides a computer-readable storage medium, in which computer executable instructions or computer programs are stored. When the computer executable instructions or computer programs are executed by a processor, the processor will execute the message transmission path selection method provided in the embodiment of the present application, for example, Figure 3A method for selecting a message transmission path is shown.

[0150] In some embodiments, the computer-readable storage medium may be a memory such as RAM, RM, flash memory, magnetic surface memory, optical disk, or CD-RM; or may be various devices including one or any combination of the above memories.

[0151] In some embodiments, computer executable instructions may be in the form of a program, software, software module, script or code, written in any form of programming language (including compiled or interpreted languages, or declarative or procedural languages), and may be deployed in any form, including as a stand-alone program or as a module, component, subroutine or other unit suitable for use in a computing environment.

[0152] As an example, computer-executable instructions may, but need not, correspond to a file in a file system, may be stored as part of a file that stores other programs or data, such as in one or more scripts in a HyperText Markup Language (HTML) document, in a single file dedicated to the program in question, or in multiple coordinated files (e.g., files storing one or more modules, subroutines, or code portions).

[0153] As an example, computer executable instructions may be deployed to be executed on one electronic device, or on multiple electronic devices located at one site, or on multiple electronic devices distributed at multiple sites and interconnected by a communication network.

[0154] In summary, the current state information of N robots in the robot communication system is obtained through the embodiment of the present application, and a current state information set is obtained, wherein the current state information includes at least one of network delay, bandwidth utilization and device load; then, the current state information is feature extracted to obtain a feature vector, and then the feature vector of the current state information is feature mapped to obtain the path score of each of the M message transmission paths between the robot to be controlled among the N robots and the control device of the robot communication system, and the path score can quantitatively reflect the effectiveness and reliability of the message transmission path under the current situation; finally, the message transmission path with the highest path score is determined as the current message transmission path of the robot to be controlled; wherein the current message transmission path is used to realize the message transmission between the robot to be controlled and the control device at the current moment. In this way, the optimal message transmission path can be determined by comprehensively considering the current state information of the N robots, thereby improving the efficiency and real-time performance of the message transmission of the robot communication system. In addition, the embodiments of the present application can only obtain the current original state information of the robot in the online state, so that the message transmission path subsequently selected according to the current original state information of the robot is more reliable and real-time; the accuracy of the original state information data can be improved by only obtaining the original state information of the robot in the online state, and denoising and normalizing the original state information, and then summarizing the state information of all online robots, so that the message transmission path selected based on the summarized state information is more reliable and real-time; the message transmission path corresponding to the communication protocol can be intelligently selected through the scheduling model, thereby improving the efficiency and reliability of message transmission; a scheduling model that can effectively learn the relationship between the sample state information of the robot and the path score of the sample message transmission path can be obtained, thereby improving the path selection. The accuracy of selection can be improved; the scheduling model can be used to score each sub-path of the message transmission path, and then the path sub-scores can be integrated to obtain the path score, which improves the accuracy and reliability of the path score, and thus the accuracy and reliability of the message transmission path selection; the security of communication can be improved by encrypting the message to be transmitted before transmission, ensuring that only the receiver with the corresponding private key can decrypt the message, and improving the confidentiality and integrity of the message to be transmitted; the process of real-time message transmission can be realized, and when the current message transmission path selected does not meet the transmission conditions, it can quickly switch to the alternative path to ensure the continuity and stability of communication; the scheduling model can be updated regularly according to the feedback status information, so that the scheduling model can dynamically adjust the path selection strategy, thereby improving the efficiency, reliability and real-time performance of communication. At the same time, when the prediction of the scheduling model fails continuously, timely updating the model can avoid the continuous selection of inefficient paths and further optimize the communication process.

[0155] The above is only an embodiment of the present application and is not intended to limit the protection scope of the present application. Any modifications, equivalent substitutions and improvements made within the spirit and scope of the present application are included in the protection scope of the present application.

Claims

1. A method for selecting a message transmission path, characterized in that: The method comprises: Acquire current state information of N robots in the robot communication system to obtain a current state information set; wherein the current state information includes at least one of network delay, bandwidth utilization and device load; Extracting features of the current state information in the current state information set to obtain a feature vector of the current state information; Performing feature mapping on the feature vector of the current state information to obtain path scores of respective M message transmission paths; wherein the message transmission path is a message transmission path between a robot to be controlled among the N robots and a control device of the robot communication system; N and M are both integers greater than 1; The message transmission path with the highest path score is determined as the current message transmission path of the robot to be controlled; wherein the current message transmission path is used to realize message transmission between the robot to be controlled and the control device at the current moment.

2. The method according to claim 1, characterized in that The obtaining of the current state information of the N robots in the robot communication system to obtain a current state information set includes: Obtaining current original state information of the N robots; For each robot, denoising the current original state information of the robot to obtain denoised state information; Normalizing the denoising state information to obtain normalized state information; Determining the normalized state information as the current state information of the robot; The current state information of the N robots is aggregated to obtain the current state information set.

3. The method according to claim 2, characterized in that The obtaining of the current original state information of the N robots includes: In response to any robot currently being in an online state, determining the any robot as one of the N robots; The current original state information of all robots in the online state is obtained.

4. The method according to claim 1, characterized in that Each message transmission path corresponds to a communication protocol; the feature vector of the current state information is feature mapped to obtain the path scores of the M message transmission paths, including: The feature vector of the current state information is feature mapped through a scheduling model to obtain a path score of the message transmission path under each communication protocol.

5. The method according to claim 1, characterized in that The M message transmission paths include K sub-paths, and each message transmission path is composed of at least one sub-path; the sub-path is a message transmission path between any two robots in the robot communication system or between any robot and the control device, and each sub-path corresponds to a communication protocol; K is an integer greater than M; The feature mapping of the feature vector of the current state information to obtain the path scores of the M message transmission paths includes: Performing feature mapping on the feature vector of the current state information through a scheduling model to obtain path sub-scores of the K sub-paths; For each message transmission path, obtaining path sub-scores of all sub-paths included in the message transmission path; The path sub-scores are score-fused to obtain a path score for the message transmission path.

6. The method according to claim 1, characterized in that The method further comprises: sorting the M message transmission paths based on the path scores of the respective M message transmission paths to form a message transmission path sequence; Obtaining state feedback data of the robot to be controlled at a next moment after the current moment; In response to the state feedback data not satisfying the message transmission condition, a message transmission path in the message transmission path sequence that is located after the message transmission path with the highest path score is determined as the message transmission path of the robot to be controlled at the next moment.

7. The method according to any one of claims 1 to 6, characterized in that: The implementing of message transmission between the robot to be controlled and the control device at the current moment includes: Using a first key to encrypt a message to be transmitted between the robot to be controlled and the control device to obtain an encrypted message; Encrypting the first key using a first public key to obtain an encrypted first key; The encrypted message is sent to the robot to be controlled and the message receiver in the control device through the message sender in the robot to be controlled and the control device; Decrypting the encrypted first key by the message recipient using the first private key of the message recipient to obtain the first key; The message receiver uses the first key obtained after decryption to decrypt the encrypted message to obtain the message to be transmitted.

8. A device for selecting a message transmission path, characterized in that: The device comprises: An information acquisition module, used to acquire current state information of N robots in the robot communication system to obtain a current state information set; wherein the current state information includes at least one of network delay, bandwidth utilization and device load; A feature extraction module, used to extract features from the current state information in the current state information set to obtain a feature vector of the current state information; a path scoring module, used to perform feature mapping on the feature vector of the current state information to obtain path scores for each of the M message transmission paths; wherein the message transmission path is a message transmission path between a robot to be controlled among the N robots and a control device of the robot communication system; and N and M are both integers greater than 1; The path determination module is used to determine the message transmission path with the highest path score as the current message transmission path of the robot to be controlled; wherein the current message transmission path is used to realize the message transmission between the robot to be controlled and the control device at the current moment.

9. An electronic device, characterized in that: The electronic device comprises: A memory for storing computer executable instructions or computer programs; A processor, used to implement the method for selecting a message transmission path as described in any one of claims 1 to 7 when executing the computer executable instructions or computer programs stored in the memory.

10. A computer-readable storage medium storing computer-executable instructions or a computer program, characterized in that: When the computer executable instructions or computer program are executed by a processor, the method for selecting a message transmission path according to any one of claims 1 to 7 is implemented.