A multi-robot collaborative task dynamic scheduling method and related equipment
Through multi-level graph structure and graph neural network model, a task allocation strategy for multi-robot system is generated, which solves the scheduling problem of multi-robot system in complex environment and realizes efficient and accurate task allocation and collaborative execution.
Patent Information
- Application Number
- CN202510174508.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-02-18
- Publication Date
- 2025-10-03
- Estimated Expiration
- 2045-02-18
AI Technical Summary
Existing multi-robot systems are difficult to effectively schedule when faced with complex environments, diverse tasks, and complex interactions between robots, resulting in low efficiency and prone to conflicts.
A multi-level graph structure is used to express the complex relationship between robots, environments and tasks. Multi-dimensional relationship expression data is extracted through a graph neural network model, and a pre-trained decision model is used to generate a task allocation strategy to avoid task allocation conflicts.
The accuracy of task allocation strategy is improved, task allocation conflicts are avoided, and the overall efficiency and collaborative execution capability of the multi-robot system are enhanced.
Smart Images

Figure CN119647914B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of robotics technology, and in particular to a multi-robot collaborative task dynamic scheduling method and related equipment. Background Art
[0002] With the rapid development of science and technology, multi-robot applications are becoming increasingly widespread in manufacturing, logistics and distribution, home services, healthcare, and other fields. In manufacturing, multi-robots can significantly improve production efficiency and reduce costs; in logistics and distribution, multi-robots can achieve fast and efficient cargo handling; and in the service industry, multi-robots can provide consumers with more convenient and intelligent services.
[0003] However, due to the high degree of autonomy and complexity of multi-robot systems, their scheduling has become a challenging research area. Traditional multi-robot scheduling solutions often struggle to make effective scheduling decisions when faced with complex environments, diverse tasks, and complex interactions between robots, resulting in overall inefficiency and even conflicts. Summary of the Invention
[0004] In view of this, an embodiment of the present application provides a method and related equipment for dynamic scheduling of tasks for multi-robot collaboration, which uses a multi-level graph structure to express the complex relationship between robots, environment and tasks, provides rich and complete relationship information for generating task allocation strategies, improves the accuracy of the generated task allocation strategies, and avoids conflicts when allocating tasks.
[0005] To achieve the above objectives, the present invention provides the following technical solutions:
[0006] A multi-robot collaborative task dynamic scheduling method, comprising:
[0007] Collecting task scheduling scenario information, wherein the task scheduling scenario information includes robot information, environment information, and task information. The robot information includes status information of each robot, and the task information includes information of each task to be executed in the task queue;
[0008] Applying the task scheduling scenario information to construct a multi-level graph structure, and obtaining multi-dimensional input information based on the multi-level graph structure, wherein the multi-level graph structure includes relationship layers of multiple dimensions, and the relationship layers include relationship information between objects in the dimensions corresponding to the relationship layers;
[0009] Determining a task allocation strategy based on the multidimensional input information;
[0010] A task execution instruction is sent to each target robot based on the task allocation strategy to control each target robot to execute the task corresponding to the task execution instruction.
[0011] In the above method, optionally, the relationship layers of multiple dimensions included in the multi-level graph structure include at least one of: a reachability layer, a task compatibility layer, a resource dependency layer, a timing dependency layer, a communication network layer, and an energy distribution layer;
[0012] The reachability layer includes execution path information of reachable paths between each robot and the execution point of each task;
[0013] The task compatibility layer includes task attribute information of executable task types of each robot;
[0014] The resource dependency layer includes resource dependency information of each task on various resources;
[0015] The timing dependency layer includes timing dependency information of the order of tasks;
[0016] The communication network layer includes communication attribute information of the communication status between each robot and the system;
[0017] The energy distribution layer includes charging path information of accessible paths between the robot requiring charging and each charging station.
[0018] Optionally, in the above method, the step of obtaining multi-dimensional input information based on the multi-level graph structure includes:
[0019] Using a pre-trained graph neural network model, multidimensional relationship expression data is extracted from the multi-level graph structure, wherein the multidimensional relationship expression data includes expression data of the relationship between each object in the multi-level graph structure; and multidimensional input information is generated based on the multidimensional relationship expression data.
[0020] Optionally, in the above method, determining the task allocation strategy based on the multi-dimensional input information includes:
[0021] The multi-dimensional input information is input into a pre-trained decision model, and a task allocation strategy output by the decision model after processing the multi-dimensional input information is obtained.
[0022] Optionally, the method described above includes inputting the multi-dimensional input information into a pre-trained decision model, and obtaining a task allocation strategy output by the decision model after processing the multi-dimensional input information, including:
[0023] The multidimensional input information is input into a pre-trained decision model, and the decision model obtains task requirement information from the multidimensional input information, wherein the task requirement information includes the requirement feature information of the task to be performed; and based on the task requirement information and the multidimensional input information, a plurality of allocation combinations are generated, wherein the allocation combinations include selecting each robot participating in the execution of the task and the tasks assigned to each robot participating in the execution of the task; the decision model evaluates the expected return value of each allocation combination, and obtains the task allocation strategy generated by the decision model based on the allocation combination with the highest expected return value.
[0024] In the above method, optionally, the decision model is optimized in the following manner:
[0025] Collect feedback data of the task allocation strategy generated by the decision model, and use the feedback data to train the decision model to adjust the weight values of various influencing factors of the reward function in the decision model, until the decision model meets the preset end training conditions, thereby completing the optimization of the decision model.
[0026] Optionally, in the above method, sending a task execution instruction to each target robot based on the task allocation strategy includes:
[0027] Determining each target robot based on the task allocation strategy, and determining a task to be performed by each target robot;
[0028] Obtaining a global environment map, and using the global environment map to plan a motion path for each of the target robots;
[0029] generating a task execution instruction for each target robot based on the motion path and task of each target robot;
[0030] Each of the task execution instructions is sent to the target robot corresponding thereto.
[0031] A multi-robot collaborative task dynamic scheduling system, comprising:
[0032] A collection unit, configured to collect task scheduling scenario information, wherein the scenario information includes robot information, environment information, and task information. The robot information includes status information of each robot, and the task information includes information of each task to be assigned.
[0033] a construction unit, configured to construct a multi-level graph structure using the task scheduling scenario information, and obtain multi-dimensional input information based on the multi-level graph structure, wherein the multi-level graph structure includes relationship layers of multiple dimensions, and the relationship layers include relationship information between objects in the dimensions corresponding to the relationship layers, where the object is one of the environment, the task, and the robot;
[0034] A decision-making unit, configured to determine a task allocation strategy based on the multi-dimensional input information;
[0035] The execution unit is used to send a task execution instruction to each target robot based on the task allocation strategy, so as to control each target robot to execute the task corresponding to the task execution instruction.
[0036] In the above system, optionally, the relationship layers of multiple dimensions included in the multi-level graph structure include at least one of: a reachability layer, a task compatibility layer, a resource dependency layer, a timing dependency layer, a communication network layer, and an energy distribution layer;
[0037] The reachability layer includes execution path information of reachable paths between each robot and the execution point of each task;
[0038] The task compatibility layer includes task attribute information of executable task types of each robot;
[0039] The resource dependency layer includes resource dependency information of each task on various resources;
[0040] The timing dependency layer includes timing dependency information of the order of tasks;
[0041] The communication network layer includes communication attribute information of the communication status between each robot and the system;
[0042] The energy distribution layer includes charging path information of accessible paths between the robot requiring charging and each charging station.
[0043] In the above system, optionally, the construction unit executes a process of acquiring multi-dimensional input information based on the multi-level graph structure, including:
[0044] Using a pre-trained graph neural network model, multidimensional relationship expression data is extracted from the multi-level graph structure, wherein the multidimensional relationship expression data includes expression data of the relationship between each object in the multi-level graph structure; and multidimensional input information is generated based on the multidimensional relationship expression data.
[0045] In the above system, optionally, the decision unit performs a process of determining a task allocation strategy based on the multi-dimensional input information, including:
[0046] The multi-dimensional input information is input into a pre-trained decision model, and a task allocation strategy output by the decision model after processing the multi-dimensional input information is obtained.
[0047] In the above system, optionally, the decision unit executes a process of inputting the multi-dimensional input information into a pre-trained decision model to obtain a task allocation strategy output by the decision model after processing the multi-dimensional input information, including:
[0048] The multidimensional input information is input into a pre-trained decision model, and the decision model obtains task requirement information from the multidimensional input information, and generates multiple allocation combinations based on the task requirement information and the multidimensional input information. The allocation combinations include selecting each robot participating in the task and assigning tasks to each robot participating in the task; the decision model evaluates the expected return value of each allocation combination, and obtains the task allocation strategy generated by the decision model based on the allocation combination with the highest expected return value.
[0049] In the above system, optionally, the decision model is optimized in the following manner:
[0050] Collect feedback data after the decision model generates a task allocation strategy, and use the feedback data to train the decision model to adjust the weight values of various influencing factors of the reward function in the decision model, until the decision model meets the preset end training conditions, thereby completing the optimization of the decision model.
[0051] In the above system, optionally, the execution unit executes a process of sending task execution instructions to each target robot based on the task allocation strategy, including:
[0052] Determining each target robot based on the task allocation strategy, and determining a task to be performed by each target robot;
[0053] Obtaining a global environment map, and using the global environment map to plan a motion path for each of the target robots;
[0054] generating a task execution instruction for each target robot based on the motion path and task of each target robot;
[0055] Each of the task execution instructions is sent to the target robot corresponding thereto.
[0056] A storage medium includes a stored program, wherein when the program is run, the device where the storage medium is located is controlled to execute the above-mentioned multi-robot collaborative task dynamic scheduling method.
[0057] An electronic device, comprising:
[0058] one or more processors;
[0059] a memory having one or more programs thereon;
[0060] When the one or more programs are executed by the one or more processors, the one or more processors implement the above-mentioned method for dynamic task scheduling of multi-robot collaboration.
[0061] Compared with the prior art, this application has the following advantages:
[0062] The present application provides a method and related equipment for dynamic scheduling of tasks for multi-robot collaboration, which uses a multi-level graph structure to express the complex relationship between robots, environment and tasks, provides rich and complete relationship information for generating task allocation strategies, improves the accuracy of the generated task allocation strategies, and avoids conflicts when allocating tasks. BRIEF DESCRIPTION OF THE DRAWINGS
[0063] In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the following briefly introduces the drawings required for use in the embodiments or the description of the prior art. Obviously, the drawings described below are merely embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on the provided drawings without paying any creative work.
[0064] Figure 1 A flowchart of a multi-robot collaborative task dynamic scheduling method provided in an embodiment of the present application;
[0065] Figure 2 A flowchart of sending task execution instructions to each target robot based on the task allocation strategy provided in an embodiment of the present application;
[0066] Figure 3 A schematic diagram of the structure of a multi-robot collaborative task dynamic scheduling system provided in an embodiment of the present application;
[0067] Figure 4 A schematic diagram of the structure of another multi-robot collaborative task dynamic scheduling system provided in an embodiment of the present application;
[0068] Figure 5 A schematic diagram of the structure of an electronic device provided in an embodiment of the present application. DETAILED DESCRIPTION
[0069] The following will clearly and completely describe the technical solutions in the embodiments of the present invention in conjunction with the accompanying drawings. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without making creative efforts are within the scope of protection of the present invention.
[0070] In this application, the terms "comprises," "comprising," or any other variations thereof are intended to encompass non-exclusive inclusion, such that a process, method, article, or apparatus that includes a list of elements includes not only those elements but also other elements not explicitly listed, or elements inherent to such process, method, article, or apparatus. In the absence of further limitations, an element defined by the phrase "comprising a ..." does not preclude the presence of additional identical elements in the process, method, article, or apparatus that includes the element.
[0071] Currently, for distributed multi-task execution scenarios involving multiple robots (such as large-scale industrial assembly line operations), robots are not only diverse in type but also vary greatly in functionality and performance. Existing task scheduling systems still suffer from the following shortcomings when faced with complex, dynamic, and large-scale environments:
[0072] 1. Lack of adaptability: Predefined rules and static algorithms are difficult to cope with the complex and changing actual operating environment;
[0073] 2. Poor scalability: The computational complexity of centralized algorithms increases dramatically as the number of robots and task scale increase, making it difficult to respond quickly.
[0074] 3. Insufficient modeling of complex relationships: Existing methods have difficulty fully expressing and utilizing the complex relationships between robots, tasks, and environments, resulting in poor decision-making results;
[0075] 4. Insufficient long-term planning capabilities: Most methods focus on short-term (one-time) task allocation and lack consideration of long-term benefits;
[0076] 5. Insufficient multi-dimensional collaborative optimization: It is difficult to take into account multiple optimization goals such as efficiency, energy consumption, and load balancing at the same time.
[0077] To address the aforementioned issues and those in the background art, the present application provides a method for dynamic task scheduling for multi-robot collaboration, which can be used in a variety of general-purpose or specialized computing device environments or configurations, such as personal computers, server computers, handheld or portable devices, tablet devices, multi-processor devices, and distributed computing environments that include any of the above.
[0078] Reference Figure 1 , which is a flow chart of a multi-robot collaborative task dynamic scheduling method provided in an embodiment of the present application, and is specifically described as follows:
[0079] S101. Collect task scheduling scenario information, where the task scheduling scenario information includes robot information, environment information, and task information. The robot information includes status information of each robot, and the task information includes information of each task to be executed in the task queue.
[0080] In the method provided in the embodiment of the present application, task scheduling scenario information can be collected in real time, wherein: the robot's status information includes but is not limited to whether the robot is currently performing a task, whether it is in a schedulable state, whether it is charging, whether there is a fault, battery power, location information, load conditions and other information.
[0081] Task information includes but is not limited to task type, whether it has been assigned, task content, task priority, estimated execution time, resource requirements, and other information.
[0082] Environmental information includes but is not limited to information on the execution point of the task, obstacle distribution, network communication status, etc.
[0083] S102. Apply task scheduling scenario information to construct a multi-level graph structure, and obtain multi-dimensional input information based on the multi-level graph structure. The multi-level graph structure includes relationship layers of multiple dimensions, and the relationship layers include relationship information between various objects in the dimensions corresponding to the relationship layers.
[0084] The multi-level graph structure is used to represent the complex relationships between various objects in the task scheduling scenario, such as tasks, robots, resources, and task execution points.
[0085] The multi-level structure includes relationship layers of multiple dimensions. Different relationship layers correspond to different dimensions and different relationship layers correspond to different objects.
[0086] Preferably, each relationship layer includes at least one relationship layer selected from the group consisting of a reachability layer, a task compatibility layer, a resource dependency layer, a timing dependency layer, a communication network layer, and an energy distribution layer, wherein:
[0087] The objects corresponding to the reachability layer are the robots and the execution points of the tasks; the reachability layer includes the execution path information of the reachable paths between each robot and the execution point of each task; the execution path information includes the path length and the estimated travel time of the reachable path; preferably, the end point of the reachable path here is the execution point of the task, the starting point is the current position of the robot, and the estimated travel time is the time required for the robot to start from the current position, travel along the reachable path, and reach the end point of the reachable path.
[0088] The objects corresponding to the task compatibility layer are robots and tasks; the task compatibility layer includes the task attribute information of the executable task types of each robot; the task attribute information includes the execution efficiency of the robot when executing tasks of the executable task types.
[0089] The objects corresponding to the resource dependency layer are tasks and resources; the resource dependency layer includes the resource dependency information of each task on various resources; the resource dependency information includes information on various resources required for the execution of each task, specifically including the various resources required for task execution, the quantity of each resource required, etc.; further, various resources include but are not limited to CPU and memory space.
[0090] The object corresponding to the timing dependency layer is the task; the timing dependency layer includes the timing dependency information of the sequence between each task; the timing dependency information includes the sequence between each task, as well as information such as the critical path mark of each task.
[0091] The objects corresponding to the communication network layer are robots and task dynamic scheduling systems; the communication network layer includes communication attribute information of the communication status between each robot and the system; the communication attribute information includes the robot's signal strength and bandwidth, the system's signal strength and bandwidth, and the signal strength and bandwidth of each robot's communication with the system; the system here can be understood as a task dynamic scheduling system for multi-robot collaboration.
[0092] The objects corresponding to the energy distribution layer are robots and charging stations; the energy distribution layer includes charging path information of the reachable paths between the robots that need to be charged and each charging station; the charging path information includes the reachable paths between each robot that needs to be charged and each charging station, as well as information such as charging efficiency.
[0093] The multi-level graph structure can represent the complex relationships between objects and effectively realize the deep reasoning and representation of multiple graph relationships. After obtaining the content of each relationship layer in the multi-level graph structure, it can be updated according to the information collected subsequently.
[0094] In the solution provided in the embodiment of the present application, a pre-trained graph neural network model can be used to extract multidimensional relationship expression data from a multi-level graph structure, and generate multidimensional input information based on the multidimensional relationship expression data.
[0095] Preferably, the relationship feature information of multiple dimensions is first extracted, and then the relationship feature information of multiple dimensions is converted into multidimensional relationship expression data, wherein the multidimensional relationship expression data includes the complex relationship between the robot, the environment and the task in the multi-level graph structure, and the multidimensional relationship expression data can be a multidimensional array. The multidimensional relationship expression data includes the expression data of the relationship between each object in the multi-level graph structure. In other words, the multidimensional relationship expression data includes data mined from the multi-level graph structure for expressing the relationship between each object. The multidimensional relationship expression data includes, but is not limited to, data for expressing the relationship between the resources that the task depends on when executing, data for expressing the execution order between each task, data for expressing the type of task that the robot can execute, data for expressing the relationship between the robot's power and each task that the robot can execute, etc., which will not be explained here.
[0096] For example, for data used to express the relationship between the robot's power and the tasks that the robot can perform, when expressing the relationship between the robot's power and the time it takes to perform each task, whether the robot can perform the task can be determined by judging whether the robot's power is sufficient to support the robot's operation to the execution point of a certain task, thereby expressing the tasks that the robot can and cannot perform based on the power of the robot.
[0097] The generated multidimensional input information includes multidimensional relationship expression data, a task status list, a robot list, and time information. The task status list includes the status information of each pending task and can be represented as an array. The robot list includes all currently available robots. The data type of the multidimensional input information can be used and recognized by the decision model.
[0098] S103: Determine a task allocation strategy based on the multi-dimensional input information.
[0099] In the solution provided in the embodiment of the present application, multi-dimensional input information can be input into a pre-trained decision model to obtain a task allocation strategy output by the decision model after processing the multi-dimensional input information.
[0100] The decision model is built using an agent-based reinforcement learning algorithm.
[0101] Multidimensional input information can be used as the state space of the decision model; the multidimensional input information is input into the pre-trained decision model, and the decision model processes the multidimensional input information to output a task allocation strategy. The task allocation strategy includes task execution information of the robots participating in the task execution, and the task execution information includes the execution point of the task assigned to the robot and the task performed at the execution point.
[0102] Furthermore, the process of inputting multidimensional input information into a pre-trained decision model and obtaining a task allocation strategy output by the decision model after processing the multidimensional input information is as follows: inputting multidimensional input information into a pre-trained decision model, the decision model obtains task requirement information from the multidimensional input information, and the task requirement information includes the requirement feature information of the task to be performed; the decision model generates multiple allocation combinations based on the task requirement information and the multi-dimensional input information, and the allocation combination includes selecting each robot participating in the task and assigning tasks to each robot participating in the task; the decision model evaluates the expected return value of each allocation combination, and generates a task allocation strategy based on the allocation combination with the highest expected return value. Furthermore, the pairing schemes of robots and tasks in different allocation combinations are different; illustratively, different robots participating in the execution of tasks form different allocation combinations, for example, allocation combination 1 includes robots A, B, and C, and allocation combination 2 includes robots A, B, and D; for allocation combinations with exactly the same robots participating in the execution of tasks, the tasks assigned to the robots participating in the execution of tasks are different, for example, the robots participating in the execution of tasks in allocation combination 1 and allocation combination 3 are both A, B, and C, wherein the task assigned to robot A participating in the execution of tasks in allocation combination 1 is a, the task assigned to robot B participating in the execution of tasks is b, and the task assigned to robot C participating in the execution of tasks is c; the task assigned to robot A participating in the execution of tasks in allocation combination 3 is b, the task assigned to robot B participating in the execution of tasks is c, and the task assigned to robot C participating in the execution of tasks is a.
[0103] Furthermore, the task requirement information includes requirement feature information of each task to be executed, and the requirement feature information includes the type of task, resources and time required for task execution, and other contents.
[0104] The expected return value can be understood as the score of the allocation combination. When the expected return value is larger, it indicates that the allocation combination is more reasonable, the task allocation strategy obtained based on the allocation combination can better meet the needs, and the task allocation strategy obtained based on the allocation combination is more reasonable and efficient.
[0105] When evaluating the expected return value of each allocation combination, we can evaluate various aspects such as the working performance of each robot in the allocation combination, the degree of coordination between the robots, the matching degree between each robot and its assigned task, and the efficiency of each robot in performing its assigned task, so as to comprehensively evaluate the allocation combination and subsequently select a more reasonable allocation combination based on the expected return value.
[0106] S104: Sending a task execution instruction to each target robot based on the task allocation strategy to control each target robot to execute the task corresponding to the task execution instruction.
[0107] Based on the task allocation strategy, target robots are identified. Target robots are robots that participate in task execution. Task execution instructions are sent to each target robot, controlling it to move to the target location and execute the task. The target location here refers to the execution point of the task to be performed by the robot.
[0108] In the method provided in the embodiment of the present application, a multi-level graph structure is used to express the complex relationship between the robot, the environment and the task, and multi-dimensional feature information is extracted from the multi-level graph structure to generate multi-dimensional input information, thereby improving the accuracy of the task allocation strategy, thereby avoiding conflicts when allocating tasks and improving the efficiency of system scheduling.
[0109] In another embodiment provided in the present application, the process of sending task execution instructions to each target robot based on the task allocation strategy is described. For the specific process, refer to Figure 2 , the relevant content is as follows:
[0110] S201. Based on the task allocation strategy, determine each target robot and determine the task to be performed by each target robot.
[0111] The task allocation strategy includes at least one identity of the robots participating in the task execution, and determines target robots based on each identity. The task allocation strategy also includes a task corresponding to each identity, and the task corresponding to the identity is determined as a task to be executed by the target robot corresponding to the identity.
[0112] S202: Acquire a global environment map, and use the global environment map to plan a motion path for each target robot.
[0113] The global environment map includes obstacle information. Based on factors such as the target robot's position, the positions of other robots, the execution point of the target robot's task to be performed, the robot's power level, and obstacle information, a motion path is planned for the target robot in the global environment map.
[0114] When planning a motion path for the target robot, many aspects need to be considered, such as the length of the path that the target robot can travel with its own power, to avoid the planned motion path being too long, resulting in the target robot's power being unable to support the target robot's movement to the task execution point; considering whether the estimated time for the target robot to travel from its current position to the task execution point meets the task's time conditions, to avoid the situation where the target robot's time to reach the execution point exceeds the task execution time and cannot effectively execute the task; considering the obstacles that the target robot needs to avoid; considering whether the target robot needs to be charged, and if it needs to be charged, the charging time and other factors need to be considered.
[0115] In the embodiments provided in the present application, when planning the motion path of the target robot, multiple aspects are taken into consideration, and the generated motion path can meet the needs of multiple aspects, so that the target robot can smoothly perform the task, avoiding the situation where the generated motion path cannot meet the needs of multiple aspects due to too single consideration, resulting in the target robot being unable to smoothly perform the task.
[0116] S203 : Generate a task execution instruction for each target robot based on the motion path and task of each target robot.
[0117] The task execution instruction includes the motion path and task of the target robot. Furthermore, the task instruction also includes a command for controlling the target robot to move along the motion path and a command for controlling the target robot to execute the task when the target robot reaches the execution point.
[0118] S204: Send each task execution instruction to its corresponding target robot.
[0119] S205 : For each target robot, control the target robot to move according to the motion path in the task execution instruction, and execute the task in the task execution instruction when the target robot reaches the execution point in the task execution instruction.
[0120] In the method provided in the embodiment of the present application, after obtaining the task allocation strategy, a motion path is planned for each target robot. When planning the motion path for each target robot, multiple aspects are considered so that the planned motion path can meet multiple needs, take into account the optimization directions of multiple plans, effectively optimize resource utilization, improve the safety of the robot's task execution, and promote multiple robots to collaborate to complete multiple tasks, thereby improving the overall task execution performance.
[0121] In another embodiment provided herein, the decision model provided herein can be optimized after training. The optimization process includes collecting feedback data from the decision model to generate a task allocation strategy, and using the feedback data to train the decision model to adjust the weights of various influencing factors of the reward function in the decision model. The optimization of the decision model is completed when the decision model meets a preset training termination condition. Preferably, the feedback data includes empirical data used to generate the task allocation strategy and feedback information after using the task allocation strategy to control the robot to perform a task.
[0122] Preferably, each evaluation factor in the reward function can be understood as the various directions that the decision model focuses on when generating a task allocation strategy. Different influencing factors correspond to different directions, and the weight value can be understood as priority or attention. The larger the weight value of the influencing factor, the higher its priority or the greater the attention. When generating a task allocation strategy, the focus is on the direction of the influencing factor, so that the generated task allocation strategy better meets the requirements of the evaluation factor. The various influencing factors are task completion, operational feasibility, scheduling stability, energy efficiency, and load balancing. For example, when the weight value of task completion is the largest, when generating a task allocation strategy, the focus is on task completion, so that when the robot is controlled to perform the task according to the generated task allocation strategy, the final task completion can reach the expected value. For another example, when the weight value of load balancing is larger, the load balancing is more considered when generating a task allocation strategy, so that when the robot is controlled to perform the task according to the generated task allocation strategy, the system load balancing can reach the expected value.
[0123] When optimizing the decision model, the weight values of various evaluation factors in the reward function of the decision model are adjusted so that when the decision model faces various evaluation factors such as task completion, operational feasibility, scheduling stability, energy efficiency and load balancing, it generates a task allocation strategy based on the weight values of various evaluation factors, so that the generated task allocation strategy fully considers various evaluation factors to meet different task requirements and environmental conditions, making the task allocation strategy generated by the decision model more targeted, the generation process more efficient and accurate, reducing unnecessary waste of resources and time consumption, and can better adapt to changes in the environment and needs, and can generate reliable and accurate task allocation strategies in various environments.
[0124] This application also provides a multi-robot collaborative task dynamic scheduling system, referring to Figure 3 , is a structural diagram of a multi-robot collaborative task dynamic scheduling system provided in an embodiment of the present application, and the relevant description is as follows:
[0125] The acquisition unit 301 is used to acquire task scheduling scenario information, where the scenario information includes robot information, environment information, and task information. The robot information includes status information of each robot, and the task information includes information of each task to be assigned.
[0126] A construction unit 302 is configured to construct a multi-level graph structure using the task scheduling scenario information and obtain multi-dimensional input information based on the multi-level graph structure. The multi-level graph structure includes relationship layers of multiple dimensions. The relationship layers include relationship information between objects in the dimensions corresponding to the relationship layers. The objects are one of the environment, the task, and the robot.
[0127] A decision unit 303 is configured to determine a task allocation strategy based on multi-dimensional input information;
[0128] The execution unit 304 is used to send a task execution instruction to each target robot based on the task allocation strategy, so as to control each target robot to execute the task corresponding to the task execution instruction.
[0129] In another embodiment provided by the present application, the relationship layers of multiple dimensions included in the multi-level graph structure of the system include at least one of: a reachability layer, a task compatibility layer, a resource dependency layer, a timing dependency layer, a communication network layer, and an energy distribution layer;
[0130] The reachability layer includes the execution path information of the reachable paths between each robot and the execution point of each task;
[0131] The task compatibility layer includes task attribute information of executable task types of each robot;
[0132] The resource dependency layer includes the resource dependency information of each task on various resources;
[0133] The timing dependency layer includes the timing dependency information of the order of tasks;
[0134] The communication network layer includes the communication attribute information of the communication status between each robot and the system;
[0135] The energy distribution layer includes the charging path information of the reachable paths between the robots that need to be charged and each charging station.
[0136] In another embodiment provided by the present application, the construction unit 302 of the system performs a process of acquiring multi-dimensional input information based on a multi-level graph structure, including:
[0137] Using a pre-trained graph neural network model, multidimensional relationship expression data is extracted from the multi-level graph structure. The multidimensional relationship expression data includes the expression data of the relationship between each object in the multi-level graph structure; and multidimensional input information is generated based on the multidimensional relationship expression data.
[0138] In another embodiment provided by the present application, the decision unit 303 of the system performs a process of determining a task allocation strategy based on multi-dimensional input information, including:
[0139] The multi-dimensional input information is input into a pre-trained decision model, and the task allocation strategy output by the decision model after processing the multi-dimensional input information is obtained.
[0140] In another embodiment provided by the present application, the decision unit 303 of the system executes a process of inputting multi-dimensional input information into a pre-trained decision model and obtaining a task allocation strategy output by the decision model after processing the multi-dimensional input information, including:
[0141] The multi-dimensional input information is input into a pre-trained decision model, and the decision model obtains task requirement information from the multi-dimensional input information, and generates multiple allocation combinations based on the task requirement information and the multi-dimensional input information. The allocation combination includes the selected robots participating in the task and the tasks assigned to each robot participating in the task; the decision model evaluates the expected return value of each allocation combination, and obtains the task allocation strategy generated by the decision model based on the allocation combination with the highest expected return value.
[0142] In another embodiment provided in this application, the decision model is optimized in the following manner:
[0143] Collect feedback data after the decision model generates a task allocation strategy, and use the feedback data to train the decision model to adjust the weight values of various influencing factors of the reward function in the decision model until the decision model meets the preset end training conditions, completing the optimization of the decision model.
[0144] In another embodiment provided by the present application, the execution unit 304 of the system executes a process of sending task execution instructions to each target robot based on the task allocation strategy, including:
[0145] Based on the task allocation strategy, determine each target robot and determine the task to be performed by each target robot;
[0146] Obtain a global environment map and use it to plan a motion path for each target robot;
[0147] Based on the motion path and task of each target robot, generate task execution instructions for each target robot;
[0148] Each task execution instruction is sent to the corresponding target robot.
[0149] The relevant descriptions of the steps performed by each unit provided in this application can be referred to the Figure 1 The description will not be repeated here.
[0150] Further, refer to Figure 4 This is a schematic diagram of the structure of another multi-robot collaborative task dynamic scheduling system provided by an embodiment of the present application. As shown in the figure, the system can include a support layer, a presentation layer, a planning layer, and an execution layer. The aforementioned acquisition unit is located in the support layer, the construction unit is located in the presentation layer, the decision unit is located in the planning layer, and the execution unit is located in the execution layer. The specific functions implemented by each layer are described in detail below.
[0151] The support layer has the ability to provide the necessary relevant context data foundation and management tasks for upper-level decision-making, specifically including acquisition units and task management modules.
[0152] The collection unit is used to collect task scheduling scenario information, including robot information, task information, and environmental information. Furthermore, during the data collection process, the collected task scheduling scenario information is reported to the construction unit so that the construction unit can construct a multi-level graph structure. The collection unit can adaptively adjust the data reporting frequency based on the degree of dynamic environmental changes (i.e., fluctuations in the collected data). Specifically, the collection unit can collect and report data in real time or periodically. For example, the collection unit can collect data in real time and report data at a dynamic frequency, with the frequency adjusted based on data fluctuations. When data fluctuations are large, the frequency is increased, thereby increasing the number of data uploads and timely updating the multi-level graph structure. When data fluctuations are small, the frequency is decreased, reducing the number of data reports and avoiding frequent adjustments to the allocation strategy, which can affect the stability of the overall system operation. Furthermore, the collection unit can provide a higher sampling frequency for key nodes (e.g., robots nearing the completion of a task) to ensure timely data updates. The unit can also detect and process outliers in the collected data to ensure data validity.
[0153] The task management module is used to evaluate the priority of tasks waiting to be queued and insert them into the task queue based on their priority. When a task in the task queue is completed, the completed task is deregistered. Furthermore, the task management module is primarily responsible for task lifecycle management and priority scheduling. Specific functions include task deployment, task queue management, priority assessment, and task deregistration. Task priority is assessed based on information such as the task's execution time and type. The earlier the execution time, the higher the priority. By assessing task priorities, tasks can be inserted into the task queue based on their priority, allowing high-priority tasks to be executed first. Tasks in the task queue are arranged in descending order of priority. This restricts high-priority tasks. If a task in the task queue has not been executed for a long period of time, the priority of that task will be updated. This adjusts the order of tasks in the task queue, preventing long-term inactivity and resulting in task failure. Furthermore, the task management module accepts task instructions and configurations from the user and performs corresponding task deployment and management in the system. When a task is successfully executed, it is deregistered.
[0154] The representation layer is responsible for modeling and representing complex environments. It uses graph neural network models to infer relationships within the environment, providing richer context for task allocation decisions. The representation layer specifically includes construction units and graph network training modules. The construction units include graph neural network models.
[0155] The graph network training module is used to train and optimize the graph neural network model in the construction unit. The main functions of this module include: collecting and preprocessing training data, performing model training, and evaluating model performance. Through regular training and fine-tuning of the graph neural network model, it ensures that the graph neural network module can accurately represent and analyze the current environmental status, thereby providing reliable input for the decision-making model.
[0156] The construction unit is used to construct a multi-level relational graph structure, which is used to represent the complex relationships between objects in the environment. It uses a graph neural network for feature extraction and relational reasoning, thereby obtaining multi-dimensional input information. This multi-dimensional input information includes multi-dimensional relational expressions, which can fully express the multi-dimensional relationship between robots, tasks, and environments. At the same time, the graph neural network model is a graph neural network architecture with a shared backbone network and multiple task-specific heads, which will effectively realize the deep reasoning and representation of multiple graph relationships. The multi-level relational graph structure constructed by this unit is updated based on the data uploaded by the acquisition unit of the support layer.
[0157] Furthermore, each relationship layer in the multi-level relationship graph structure can refer to the above description and will not be described in detail here.
[0158] The planning layer is the decision-making center of the system. It dynamically generates corresponding task allocation strategies through a decision model built using a reinforcement learning algorithm. The planning layer specifically includes a decision unit and an optimization module.
[0159] The decision-making unit includes a decision-making model. The decision-making unit generates a task allocation strategy for the system based on multi-dimensional input information and the decision-making model constructed by the application intelligent agent reinforcement learning algorithm.
[0160] Preferably, the state space in the decision model consists of four parts: a multidimensional relationship expression generated by a graph neural network model, a task state list, a robot list, and time information. The action space in the decision model is represented by a two-dimensional matrix of length K, where K is the number of robots participating in the task execution in the scenario. For each robot, the execution point of the task to be assigned and the task to be performed at that point are specified in the decision action. The reward function in the decision model will comprehensively consider factors such as task completion, operational feasibility, scheduling stability, energy efficiency, and load balancing, and dynamically adjust the weights of each evaluation factor to adapt to different task requirements and environmental conditions, making this solution more flexible and applicable to various scenarios.
[0161] The optimization module is responsible for training, optimizing, and updating the decision models used in the system. Its main functions include collecting and processing empirical data from the interaction between the decision model and the environment. This empirical data can also be understood as feedback data for generating task allocation strategies. Based on this collected empirical information, the decision model is trained using a reinforcement learning algorithm. Through continuous training and iteration, the decision model can gradually improve its decision-making capabilities and adapt to complex and changing task environments. Furthermore, feedback data includes feedback information from controlling each robot using the task allocation strategy to perform tasks. This module is also responsible for managing the experience pool, which is used to store empirical data, adjust the reward function, and balance exploration and exploitation, thereby improving learning efficiency and model performance.
[0162] The execution layer is responsible for translating the planning layer's decisions into actual actions. It is responsible for issuing specific task strategies, planning the dispatch paths for each robot, and tracking and evaluating task execution. The execution layer includes execution units and a monitoring module. Furthermore, the execution unit includes a task execution module, a path planning module, and a communication module.
[0163] The task execution module first converts the abstract task allocation strategy output by reinforcement learning into specific task allocation instructions through action mapping. Then, by calling the path planning module, it performs unified global path planning for all robots that need to move in the current task allocation strategy, and sends motion instructions to each robot through the communication module to start coordinating task execution.
[0164] The path planning module plans the robot's optimal motion path, taking into account factors such as environmental obstacles and the positions of other robots. The environment map builder within the path planning module can directly generate a global map by importing a CAD model or other environmental model file, or dynamically construct an environmental map using sensors deployed in the environment (such as depth cameras and radar). Dynamic path planning predictively enables dynamic obstacle avoidance as the robot moves between mission execution points.
[0165] The monitoring module is used to obtain monitoring data in real time. The monitoring data includes various system performance indicators and status information of each executed task. The various system performance indicators include system resource utilization, load balancing, response time, network throughput, etc.; the status information of each executed task includes but is not limited to the progress of task execution, resources occupied by execution, and other information. The monitoring module is responsible for tracking the execution status of tasks in real time. The module identifies system bottlenecks and performance shortcomings through monitoring data, thereby triggering necessary adjustments. For example, when the preset task reallocation conditions are met, each task in the task queue is reallocated. The specific process of the reallocation operation can be referred to in this application. Figure 1The process shown. In terms of real-time task tracking, visual data can be used to identify anomalies. At the same time, through analysis and regression of historical data on task execution status, task anomaly identification and bottleneck process analysis can also be achieved. In addition to tracking task execution status in real time, the monitoring module can also perform execution quality assessment, that is, assess the execution quality of tasks. This can be done by comprehensively analyzing multiple indicators such as task completion efficiency and execution anomaly rate to evaluate the current task allocation strategy. The results are then promptly fed back to the planning layer, which can use the results to optimize the decision-making model.
[0166] Preferably, the communication module is responsible for managing the communication between robots and between robots and the scheduling system, and also supports real-time monitoring of the status of the communication link.
[0167] In another embodiment provided by the present application, the above system implements a multi-robot collaborative task dynamic scheduling process such as:
[0168] 1. System initialization: Load the pre-trained graph neural network model and decision model, and initialize the parameters and data structure of each module;
[0169] 2. Real-time data collection: The collection unit continuously collects task scheduling scenario information containing data such as the environment, robot, and task status, and provides this task scheduling scenario information as the context data of the scenario to the construction unit. Furthermore, the collection unit can use an adaptive sampling strategy to dynamically adjust the sampling frequency of the task scheduling scenario information according to the environment;
[0170] 3. Graph model update: The construction unit updates the multi-level graph structure based on the latest task scheduling scenario information and obtains a multidimensional relationship expression through reasoning. The multidimensional relationship expression is an embedded representation that reflects the current scenario relationship state.
[0171] 4. Strategy Generation: The decision model generates a task allocation strategy based on the multidimensional relationship expression provided by the building blocks;
[0172] 5. Task allocation and execution: The task execution module converts the abstract task allocation strategy into a specific task allocation plan, and issues task execution instructions to the corresponding robots to control the robots to perform the assigned tasks.
[0173] After controlling the robot to perform a task, the system also includes at least one of the following steps: Step a, Execution Monitoring: The monitoring module tracks task execution progress and system performance indicators in real time; Step b, Dynamic Optimization: Based on monitoring results, it identifies system bottlenecks and anomalies and triggers necessary adjustments, such as task reallocation; Step c, Experience Accumulation and Learning: Feedback data from task execution is stored in the agent's reinforcement learning experience pool, thereby regularly updating the reinforcement learning model. It should be noted that Steps c and c are independent of each other.
[0174] This application implements a general, scalable, intelligent dynamic task scheduling system for multi-robot collaboration. This system can effectively solve task scheduling problems under conditions of multiple robots, multiple tasks, and dynamically changing scenarios, and can be quickly migrated and applied in similar scenarios.
[0175] By constructing a multi-level graph relationship structure, the system in this application can more comprehensively model complex working environments, thereby adapting to various different task scenarios; at the same time, the adaptive information sampling strategy enables the system to respond more quickly to changes in the task environment, improve scheduling flexibility, and effectively overcome the problem of insufficient adaptability of the rule-based static allocation method in the existing technology; and the multi-level graph structure fully expresses the complex relationship between robots, tasks, and environments, and uses graph neural networks to further deeply explore the potential relationship between various factors, which enables the system to fully express and utilize the complex relationships in the environment, providing a rich contextual information basis for task allocation decisions, thereby effectively solving the shortcomings of existing methods in insufficient modeling of complex relationships; in addition, the system can take into account multiple optimization goals such as efficiency, energy consumption, and load balancing through the design of multi-objective reward functions in the decision-making process, thereby maximizing system efficiency.
[0176] An embodiment of the present application further provides a storage medium, comprising a stored program, wherein when the program is running, the device where the storage medium is located is controlled to execute the above-mentioned multi-robot collaborative task dynamic scheduling method.
[0177] The present application also provides an electronic device, the structure of which is shown in FIG. Figure 5 As shown, one or more processors 503; a memory 501, on which one or more programs 502 are stored; when the one or more programs 502 are executed by one or more processors 503, the one or more processors 503 implement the dynamic task scheduling method for multi-robot collaboration as described above.
[0178] Although the present invention depicts operations in a particular order, this should not be understood as requiring that the operations be performed in the particular order shown or in a sequential order. Multitasking and parallel processing may be advantageous under certain circumstances.
[0179] It should be understood that the various steps described in the method embodiments of the present disclosure may be performed in different orders and / or in parallel. In addition, the method embodiments may include additional steps and / or omit the steps shown. The scope of the present disclosure is not limited in this respect.
[0180] It should be noted that the information (including but not limited to user device information, user personal information, etc.) and data (including but not limited to data used for analysis, stored data, displayed data, etc.) involved in this application are all information and data authorized by the user or fully authorized by all parties, and the collection, use and processing of relevant data must comply with relevant laws, regulations and standards of the relevant regions.
[0181] The specific implementation processes and derivative methods of the above embodiments are all within the protection scope of the present invention.
[0182] Each embodiment in this specification is described in a progressive manner. The same or similar parts between the embodiments can be referred to each other. Each embodiment focuses on the differences from other embodiments. In particular, for system or system embodiments, since they are basically similar to method embodiments, the description is relatively simple. For relevant parts, refer to the partial description of the method embodiment. The system and system embodiments described above are merely schematic, wherein the units described as separate components may or may not be physically separated, and the components displayed as units may or may not be physical units, that is, they may be located in one place, or they may be distributed on multiple network units. Some or all of the modules can be selected according to actual needs to achieve the purpose of the solution of this embodiment. A person of ordinary skill in the art can understand and implement it without expending creative work.
[0183] Professionals may further appreciate that the units and algorithm steps of each example described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, computer software, or a combination of the two. In order to clearly illustrate the interchangeability of hardware and software, the above description has generally described the components and steps of each example according to their functions. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. Professionals and technicians may use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of the present invention.
[0184] The above description of the disclosed embodiments is intended to enable one skilled in the art to implement or use the present invention. Various modifications to these embodiments will be readily apparent to one skilled in the art, and the general principles defined herein may be implemented in other embodiments without departing from the spirit or scope of the present invention. Therefore, the present invention is not limited to the embodiments shown herein but is intended to conform to the widest scope consistent with the principles and novel features disclosed herein.
Claims
1. A method for dynamic scheduling of tasks for multi-robot collaboration, characterized in that: include: Collecting task scheduling scenario information, wherein the task scheduling scenario information includes robot information, environment information, and task information. The robot information includes status information of each robot, and the task information includes information of each task to be executed in the task queue; Applying the task scheduling scenario information to construct a multi-level graph structure, and obtaining multi-dimensional input information based on the multi-level graph structure, wherein the multi-level graph structure includes relationship layers of multiple dimensions, and the relationship layers include relationship information between objects in the dimensions corresponding to the relationship layers; The multi-level graph structure includes multiple dimensional relationship layers including at least two of a reachability layer, a task compatibility layer, a resource dependency layer, a timing dependency layer, a communication network layer, and an energy distribution layer. The multi-level graph structure is used to at least represent relationship information between tasks, robots, resources, and task execution points in a task scheduling scenario. Determining a task allocation strategy based on the multidimensional input information; Sending a task execution instruction to each target robot based on the task allocation strategy to control each target robot to perform the task corresponding to the task execution instruction; The determining of the task allocation strategy based on the multi-dimensional input information includes: The multidimensional input information is input into a pre-trained decision model, and the decision model obtains task requirement information from the multidimensional input information, and generates multiple allocation combinations based on the task requirement information and the multidimensional input information. The allocation combinations include selecting each robot participating in the task and assigning tasks to each robot participating in the task; the decision model evaluates the expected return value of each allocation combination, and obtains the task allocation strategy generated by the decision model based on the allocation combination with the highest expected return value.
2. The method according to claim 1, characterized in that The reachability layer includes execution path information of reachable paths between each robot and the execution point of each task; The task compatibility layer includes task attribute information of executable task types of each robot; The resource dependency layer includes resource dependency information of each task on various resources; The timing dependency layer includes timing dependency information of the order of tasks; The communication network layer includes communication attribute information of the communication status between each robot and the system; The energy distribution layer includes charging path information of accessible paths between the robot requiring charging and each charging station.
3. The method according to claim 1, characterized in that The acquiring of multi-dimensional input information based on the multi-level graph structure includes: Using a pre-trained graph neural network model, multidimensional relationship expression data is extracted from the multi-level graph structure, wherein the multidimensional relationship expression data includes expression data of the relationship between each object in the multi-level graph structure; and multidimensional input information is generated based on the multidimensional relationship expression data.
4. The method according to claim 3, characterized in that The decision model is optimized in the following way: Collect feedback data after the decision module generates a task allocation strategy, and use the feedback data to train the decision model to adjust the weight values of various influencing factors of the reward function in the decision model until the decision model meets the preset end training conditions, thereby completing the optimization of the decision model.
5. The method according to any one of claims 1 to 4, characterized in that The sending of task execution instructions to each target robot based on the task allocation strategy includes: Determining each target robot based on the task allocation strategy, and determining a task to be performed by each target robot; Obtaining a global environment map, and using the global environment map to plan a motion path for each of the target robots; generating a task execution instruction for each target robot based on the motion path and task of each target robot; Each of the task execution instructions is sent to the target robot corresponding thereto.
6. A multi-robot collaborative task dynamic scheduling system, characterized in that: include: A collection unit, configured to collect task scheduling scenario information, wherein the scenario information includes robot information, environment information, and task information. The robot information includes status information of each robot, and the task information includes information of each task to be assigned. a construction unit, configured to construct a multi-level graph structure using the task scheduling scenario information, and obtain multi-dimensional input information based on the multi-level graph structure, wherein the multi-level graph structure includes relationship layers of multiple dimensions, and the relationship layers include relationship information between objects in the dimensions corresponding to the relationship layers, where the object is one of the environment, the task, and the robot; The multi-level graph structure includes multiple dimensional relationship layers including at least two of a reachability layer, a task compatibility layer, a resource dependency layer, a timing dependency layer, a communication network layer, and an energy distribution layer. The multi-level graph structure is used to at least represent relationship information between tasks, robots, resources, and task execution points in a task scheduling scenario. A decision-making unit, configured to determine a task allocation strategy based on the multi-dimensional input information; an execution unit, configured to send a task execution instruction to each target robot based on the task allocation strategy, so as to control each target robot to execute a task corresponding to the task execution instruction; The decision unit is specifically used to input the multidimensional input information into a pre-trained decision model, the decision model obtains task requirement information from the multidimensional input information, and generates multiple allocation combinations based on the task requirement information and the multidimensional input information, the allocation combinations including selecting each robot participating in the task and the tasks assigned to each robot participating in the task; the decision model evaluates the expected return value of each allocation combination, and obtains the task allocation strategy generated by the decision model based on the allocation combination with the highest expected return value.
7. A storage medium, characterized in that: The storage medium includes a stored program, wherein when the program is running, the device where the storage medium is located is controlled to execute the multi-robot collaborative task dynamic scheduling method according to any one of claims 1 to 5.
8. An electronic device, characterized in that: include: one or more processors; a memory having one or more programs thereon; When the one or more programs are executed by the one or more processors, the one or more processors implement the multi-robot collaborative task dynamic scheduling method according to any one of claims 1 to 5.
Citation Information
Patent Citations
Multi-layer dynamic cost map construction method and device, medium and robot
CN118429466A
Industrial robot cooperative control method, system and device and storage medium
CN119115954A
Robot agent reinforcement learning training method and system in complex scene
CN119129642A