Humanoid robot task scheduling method and device in humanoid robot training ground

By constructing a utility function and a particle optimization algorithm to optimize the task allocation and execution sequence of humanoid robots, the problems of inefficiency and collaborative execution failure caused by random task allocation are solved, and efficient and reliable task execution is achieved.

CN120598286AActive Publication Date: 2025-09-05人形机器人(上海)有限公司

Patent Information

Application Number
CN202510702392.4
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-05-28
Publication Date
2025-09-05
Estimated Expiration
2045-05-28

AI Technical Summary

Technical Problem

When humanoid robots perform tasks, random task allocation leads to low efficiency, and collaborative task execution may fail, which cannot meet the task sequence dependency and resource optimization requirements.

Method used

By constructing a utility function, task allocation and execution order are optimized based on task information and robot execution information, ensuring that tasks are assigned to robots with higher fitness and utility, and determining the execution order according to Nash equilibrium and particle optimization algorithm.

Benefits of technology

It improves the efficiency and reliability of task allocation, ensures that robots perform tasks in an optimized sequence, reduces system energy consumption, and improves task completion efficiency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120598286A_ABST
    Figure CN120598286A_ABST
Patent Text Reader

Abstract

The embodiment of the invention provides a humanoid robot task scheduling method and device in a humanoid robot training ground. The method comprises the following steps: acquiring task information corresponding to a plurality of tasks and task execution information of the humanoid robot; based on the task information of each task and the task execution information of the humanoid robot, constructing utility functions of each humanoid robot for different tasks; determining a corresponding target task allocated to each humanoid robot based on the utility function of each humanoid robot for different tasks; and determining a target execution sequence among the target tasks allocated by the humanoid robots based on the task information corresponding to the target tasks allocated by the humanoid robots and the task execution information of the corresponding humanoid robots. The method can be used for realizing scheduling training of the humanoid robot for different tasks in a humanoid robot training ground scene, assisting the humanoid robot to complete task scheduling in different operation scenes, and realizing efficient cooperative task completion of the humanoid robot.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the technical field of humanoid robots, and in particular to a method and device for scheduling tasks of humanoid robots in a humanoid robot training field. Background Art

[0002] Humanoid robots can be widely used in home, commercial and other scenarios to perform related tasks.

[0003] In scenarios where humanoid robots perform tasks, there are situations where multiple humanoid robots need to collaborate to perform multiple tasks. In this case, multiple tasks are generally randomly assigned to different humanoid robots, and the humanoid robots independently perform the tasks according to the assigned tasks. In this process, different humanoid robots have different task execution efficiencies. For example, randomly assigning tasks cannot improve the efficiency of task execution, and there is a certain execution order between multiple tasks that need to be performed collaboratively, such as when a task needs to rely on the execution result of another task during execution. In such scenarios, the independent execution of tasks by each humanoid robot may cause some tasks to fail. Summary of the Invention

[0004] The embodiments of the present application provide a method and apparatus for scheduling tasks of humanoid robots in a humanoid robot training field, for efficiently performing task scheduling.

[0005] In a first aspect, an embodiment of the present application provides a method for scheduling humanoid robot tasks in a humanoid robot training ground, comprising: obtaining task information corresponding to multiple tasks and task execution information of multiple humanoid robots, the task execution information being used to indicate the execution time and load resources required for each humanoid robot to perform different tasks, and the number of tasks corresponding to the task information corresponds to the number of humanoid robots; constructing a utility function of each humanoid robot for different tasks based on the task information of each task and the task execution information of the humanoid robot; determining the corresponding target tasks assigned to each humanoid robot based on the utility function of each humanoid robot for different tasks; and determining the target execution order between the target tasks assigned to each humanoid robot based on the task information corresponding to the target tasks assigned to each humanoid robot and the task execution information of the corresponding humanoid robot.

[0006] In some embodiments, the task information includes priority information corresponding to each task; the utility function is:

[0007]

[0008] Among them, U im The utility function for the i-th humanoid robot to perform the m-th task, w m is the value of the priority information of the mth task, t im The execution time of the i-th humanoid robot to perform the m-th task, rim is the value of the load resource required for the i-th humanoid robot to perform the m-th task, and λ is the adjustment parameter of the load resource.

[0009] In some embodiments, the method of determining the corresponding target task assigned to each humanoid robot based on the utility function of each humanoid robot for different tasks includes: assigning a task set to each humanoid robot, wherein the task set includes the tasks assignable to each humanoid robot; assigning assignable tasks to each humanoid robot based on the assigned task set of each humanoid robot, wherein one humanoid robot corresponds to one assignable task, and different humanoid robots are assigned different assignable tasks; determining the target task of each humanoid robot based on the task information of the assignable tasks assigned to each humanoid robot, the task execution information of the corresponding humanoid robot, and the utility function of each humanoid robot for different assignable tasks.

[0010] In some embodiments, the target task of each humanoid robot is determined based on the task information of the assignable tasks assigned to each humanoid robot, the task execution information of the corresponding humanoid robot, and the utility function of each humanoid robot for different assignable tasks, including: calculating the value of the utility function of each humanoid robot for different assignable tasks based on the task information of the assignable tasks assigned to each humanoid robot and the task execution information of the corresponding humanoid robot; adjusting the assignable tasks assigned to each humanoid robot based on maximizing the value of the utility function of each humanoid robot as a constraint condition, and determining the value of the utility function of each humanoid robot for executing different assignable tasks based on the task information of the adjusted assignable tasks of each humanoid robot and the task execution information of the corresponding humanoid robot; when the value of the utility function of each humanoid robot for different assignable tasks reaches a Nash equilibrium, determining the task corresponding to each humanoid robot as the target task corresponding to each humanoid robot.

[0011] In some embodiments, the target execution order between the tasks assigned to each humanoid robot based on the task information corresponding to the target task assigned to each humanoid robot and the task execution information of the corresponding humanoid robot is determined, including: mapping each humanoid robot into a particle, and the position corresponding to each particle is used to indicate the arrangement position of the target task of the corresponding humanoid robot in the execution order of multiple tasks; constructing a particle fitness function of each particle based on the task information corresponding to the target task of each particle and the task execution information of each particle; determining the global optimal position between each particle when a preset convergence condition is reached based on the particle fitness function of each particle, the global optimal position corresponding to the target position of each particle; and determining the arrangement position of the target task of the corresponding humanoid robot in the target execution order based on the target position between each particle.

[0012] In some embodiments, the task information further includes dependency information of the corresponding task; and constructing the particle fitness function of each particle based on the task information of each particle corresponding to the target task and the task execution information of each particle includes:

[0013] Determine the target execution time required for each particle corresponding to the humanoid robot to perform the target task; construct a first penalty function based on the load resource threshold and the load resource required for each particle corresponding to the target task; construct a second penalty function based on the dependency information between the target tasks corresponding to each particle; and construct the particle fitness function based on the target execution time, the first penalty function, and the second penalty function.

[0014] In the second aspect, an embodiment of the present application provides a humanoid robot task scheduling device in a humanoid robot training ground, including: a data acquisition module for acquiring task information corresponding to multiple tasks and task execution information of multiple humanoid robots, the task execution information being used to indicate the execution time and load resources required for each humanoid robot to perform different tasks, and the number of tasks corresponding to the task information corresponds to the number of humanoid robots; a utility function construction module for constructing the utility function of each humanoid robot for different tasks based on the task information of each task and the task execution information of the humanoid robot; a task allocation module for determining the corresponding target task assigned to each humanoid robot based on the utility function of each humanoid robot for different tasks; an execution order determination module for determining the target execution order between the target tasks assigned to each humanoid robot based on the task information corresponding to the target task assigned to each humanoid robot and the task execution information of the corresponding humanoid robot.

[0015] In a third aspect, an embodiment of the present application provides an electronic device comprising: a memory, a processor; the memory stores computer-executable instructions; the processor executes the computer-executable instructions stored in the memory, so that the processor executes the first aspect above and / or various possible implementations of the first aspect.

[0016] In a fourth aspect, an embodiment of the present application provides a computer-readable storage medium, in which computer-executable instructions are stored. When the computer-executable instructions are executed by a processor, they are used to implement the first aspect above and / or various possible implementation methods of the first aspect.

[0017] In a fifth aspect, an embodiment of the present application provides a computer program product, including a computer program, which, when executed by a processor, implements the above first aspect and / or various possible implementation methods of the first aspect.

[0018] The humanoid robot task scheduling method and device in the humanoid robot training field provided in the embodiment of the present application, when performing task assignment, constructs a utility function based on task information and task execution information, and assigns tasks through the utility function. In this assignment process, the task information of the task and the task execution information of the humanoid robot performing different tasks are referred to, and different tasks can be assigned to humanoid robots with higher fitness and utility, thereby improving the efficiency of task assignment. At the same time, after different target tasks are assigned to the humanoid robots, the target execution order of the humanoid robots performing the target tasks can also be determined according to the corresponding target tasks assigned to each humanoid robot, so that when subsequent humanoid robots perform the target tasks, they can perform the tasks in sequence according to the target execution order, thereby improving the reliability of task execution. BRIEF DESCRIPTION OF THE DRAWINGS

[0019] The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments consistent with the present application and, together with the description, serve to explain the principles of the present application.

[0020] Figure 1 A schematic diagram of a humanoid robot task scheduling system in a humanoid robot training field provided in this application;

[0021] Figure 2 Schematic diagram of the process of humanoid robot task scheduling method in the humanoid robot training field provided in this application Figure 1 ;

[0022] Figure 3 Schematic diagram of the process of humanoid robot task scheduling method in the humanoid robot training field provided in this application Figure 2 ;

[0023] Figure 4 Schematic diagram of the process of humanoid robot task scheduling method in the humanoid robot training field provided in this application Figure 3 ;

[0024] Figure 5 This is a schematic diagram of the structure of the humanoid robot task scheduling device in the humanoid robot training field provided by this application;

[0025] Figure 6 This is a schematic diagram of the structure of the electronic device provided in this application.

[0026] The above drawings illustrate specific embodiments of the present application, which will be described in more detail below. These drawings and the textual description are not intended to limit the scope of the present application in any way, but rather to illustrate the concepts of the present application to those skilled in the art by reference to specific embodiments. DETAILED DESCRIPTION

[0027] Exemplary embodiments will be described in detail herein, with examples illustrated in the accompanying drawings. In the following description, when referring to the drawings, identical numerals in different figures represent identical or similar elements, unless otherwise indicated. The embodiments described in the following exemplary embodiments are not intended to represent all embodiments consistent with the present application. Rather, they are merely examples of apparatus and methods consistent with certain aspects of the present application, as detailed in the appended claims.

[0028] The present application provides a method and device for scheduling humanoid robot tasks in a humanoid robot training field. When performing task assignment, a utility function is constructed based on task information and task execution information, and tasks are assigned through the utility function. In this assignment process, the task information of the task and the task execution information of the humanoid robot performing different tasks are referred to. Different tasks can be assigned to humanoid robots with higher fitness and utility, thereby improving the efficiency of task assignment. At the same time, after different target tasks are assigned to the humanoid robots, the target execution order of the humanoid robots performing the target tasks can also be determined according to the target tasks corresponding to the assigned target tasks of each humanoid robot, so that when subsequent humanoid robots perform the target tasks, they can perform the tasks in sequence according to the target execution order, thereby improving the reliability of task execution.

[0029] The following specific embodiments describe in detail the technical solution of the present application and how the technical solution of the present application solves the above-mentioned technical problems. The following specific embodiments can be combined with each other, and the same or similar concepts or processes may not be repeated in some embodiments. The embodiments of the present application will be described below in conjunction with the accompanying drawings.

[0030] Figure 1 A schematic diagram of a humanoid robot task scheduling system in a humanoid robot training field provided in this application, such as Figure 1 As shown, the application scenario of this application includes at least one humanoid robot 100 and a scheduling device 200.

[0031] Understandably, Figure 1 Two humanoid robots 100 are shown in the figure. In other embodiments, there may be other numbers of humanoid robots 100, which is not specifically limited here.

[0032] In some embodiments, multiple humanoid robots 100 need to perform multiple tasks. It can be understood that the number of tasks can be the same as the number of humanoid robots. That is, when there are multiple tasks, a corresponding number of humanoid robots are determined to perform task scheduling.

[0033] In some embodiments, the humanoid robot 100 may be an intelligent humanoid robot, or may be a terminal or other device, and no specific limitation is made here.

[0034] The scheduling device 200 can be a server, a server cluster, or other electronic devices capable of performing data analysis and processing, etc., and no specific limitation is made here.

[0035] In some embodiments, the humanoid robot 100 can be communicatively connected with the scheduling device 200, send information to the scheduling device 200, and the humanoid robot 100 can receive information such as scheduling instructions from the scheduling device 200. The scheduling instructions can be the target tasks assigned to each humanoid robot, or the position of the target tasks executed by each humanoid robot in the target execution order of multiple tasks.

[0036] In some embodiments, the application scenario may further include a communication device, which is connected to the humanoid robot 100 and to the scheduling device 200 to achieve communication between the humanoid robot 100 and the scheduling device 200.

[0037] During the humanoid robot task scheduling process, the humanoid robot 100 will adjust the target tasks performed by each humanoid robot according to the task information and task execution information of the task, and determine the target execution order between the target tasks performed by each humanoid robot, to ensure that the task is completed while minimizing the overall energy consumption of the system and the task execution time, thereby improving the task execution efficiency.

[0038] In some embodiments, the scheduling device 200 communicates with the communication device, receives the task execution information of the humanoid robot 100 through the communication device, and performs task scheduling of the humanoid robot according to the task execution information and task information.

[0039] The task execution information is used to indicate the execution time and load resources required for each humanoid robot to perform different tasks.

[0040] The scheduling device 200 obtains task information of multiple tasks and obtains task execution information of at least one humanoid robot 100. The obtained task execution information of the humanoid robot 100 is the task execution information of the humanoid robot 100 that needs to be assigned tasks. If there are 10 tasks, 10 humanoid robots that need to be assigned tasks are determined, and the task execution information of the 10 humanoid robots is obtained.

[0041] In some embodiments, the scheduling device 200 constructs a utility function of each humanoid robot for different tasks based on the task information of each task and the task execution information of the humanoid robot; determines the corresponding target task assigned to each humanoid robot based on the utility function of each humanoid robot for different tasks; and determines the target execution order between the tasks assigned to each humanoid robot based on the task information corresponding to the target task assigned to each humanoid robot and the task execution information of the corresponding humanoid robot.

[0042] Figure 2 Schematic diagram of the process of humanoid robot task scheduling method in the humanoid robot training field provided in this application Figure 1 ,like Figure 2 As shown, this method can be executed in Figure 1 The scheduling device 200 shown, the method includes:

[0043] S201: Acquire task information corresponding to a plurality of tasks and task execution information of a plurality of humanoid robots.

[0044] In some embodiments, task execution information is used to indicate the execution time and load resources required for each humanoid robot to perform different tasks. The number of tasks corresponding to the task information corresponds to the number of humanoid robots, that is, if there are multiple tasks, the tasks are distributed among the corresponding number of humanoid robots.

[0045] The task execution information of the humanoid robot can be sent to the scheduling device 200 through the communication device.

[0046] In some embodiments, the task execution information may include the execution time required for each humanoid robot to perform different tasks and the load resources required for each humanoid robot to perform different tasks. The task execution information may also include the efficiency of each humanoid robot in performing different tasks and the unit load resources required for the humanoid robot to perform different tasks per unit time. The execution time required for the humanoid robot to perform different tasks and the task information of each task can be determined. The execution time required for the humanoid robot to perform different tasks and the unit load resources can be determined.

[0047] For example, in one embodiment, there are two tasks, Task 1 and Task 2, which are to clean Room A and Room B respectively, and there are two corresponding humanoid robots, humanoid robot A and humanoid robot B. The task execution information of humanoid robot A is used to indicate the execution time required for humanoid robot A to perform Task 1 and the load resources required to perform Task 1, and is also used to indicate the execution time required for humanoid robot A to perform Task 2 and the load resources required to perform Task 2. The task execution information of humanoid robot B is used to indicate the execution time required for humanoid robot B to perform Task 1 and the load resources required to perform Task 1, and is also used to indicate the execution time required for humanoid robot B to perform Task 2 and the load resources required to perform Task 2.

[0048] At this time, the task execution information of humanoid robot a may include the execution time required for humanoid robot a to perform task 1, the load resources required to perform task 1, the execution time required for humanoid robot a to perform task 2, and the load resources required to perform task 2; the task execution information of humanoid robot b includes the execution time required for humanoid robot b to perform task 1, the load resources required to perform task 1, the execution time required for humanoid robot b to perform task 2, and the load resources required to perform task 2.

[0049] Alternatively, the task execution information of humanoid robot a may include the unit efficiency of humanoid robot a in executing task 1, the unit load resources required to execute task 1, the unit efficiency of humanoid robot a in executing task 2, and the unit load resources required to execute task 2; the task execution information of humanoid robot b includes the unit efficiency of humanoid robot b in executing task 1, the unit load resources required to execute task 1, the unit efficiency of humanoid robot b in executing task 2, and the unit load resources required to execute task 2.

[0050] The unit efficiency of the humanoid robot a in performing task 1 can be the area of ​​room A corresponding to task 1 that can be cleaned by humanoid robot a per unit time, the unit efficiency of the humanoid robot a in performing task 2 can be the area of ​​room B corresponding to task 2 that can be cleaned by humanoid robot a per unit time, the unit efficiency of the humanoid robot b in performing task 1 can be the area of ​​room A corresponding to task 1 that can be cleaned by humanoid robot b per unit time, and the unit efficiency of the humanoid robot b in performing task 2 can be the area of ​​room B corresponding to task 2 that can be cleaned by humanoid robot b per unit time. The execution time required for humanoid robot a to perform task 1 can be determined by dividing the area of ​​room A by the unit efficiency of the humanoid robot a in performing task 1, the execution time required for humanoid robot a to perform task 2 can be determined by dividing the area of ​​room B by the unit efficiency of the humanoid robot a in performing task 2, the execution time required for humanoid robot b to perform task 1 can be determined by dividing the area of ​​room A by the unit efficiency of the humanoid robot b in performing task 1, and the execution time required for humanoid robot b to perform task 2 can be determined by dividing the area of ​​room B by the unit efficiency of the humanoid robot b in performing task 2.

[0051] The load resources required for the humanoid robot a to perform task 1 can be determined by multiplying the unit efficiency of the humanoid robot a in performing task 1 and the unit load resources required to perform task 1 by the execution time required for the humanoid robot a to perform task 1.

[0052] The load resources required for humanoid robot a to perform task 2 can be determined by multiplying the unit efficiency of humanoid robot a in performing task 2 and the unit load resources required to perform task 2 by the execution time required for humanoid robot a to perform task 2.

[0053] The load resources required for the humanoid robot b to perform task 1 can be determined by multiplying the unit efficiency of the humanoid robot b in performing task 1 and the unit load resources required to perform task 1 by the execution time required for the humanoid robot b to perform task 1.

[0054] The load resources required for the humanoid robot b to perform task 2 can be determined by multiplying the unit efficiency of the humanoid robot b in performing task 2 and the unit load resources required to perform task 2 by the execution time required for the humanoid robot b to perform task 2.

[0055] In some embodiments, load resources may include computing resources, battery power resources, communication resources, etc.

[0056] Computing resources are the resources required for computing, which are determined by the algorithm run by the humanoid robot or the amount of data processed. For example, computing resources can usually be represented by information such as the usage rate of the central processing unit (CPU) and the graphics processing unit (GPU), as well as memory usage.

[0057] Battery power resources reflect the endurance of a humanoid robot. When the battery power is low, its task execution capability or computing power may be limited.

[0058] Communication resources represent the humanoid robot's demand for network resources (such as bandwidth).

[0059] It can be understood that the load resources required for a humanoid robot to perform different tasks are a collection of different types of load resources. For example, the load resources required for a humanoid robot to perform different tasks include battery power resources required for the humanoid robot to perform different tasks, computing resources required for the humanoid robot to perform different tasks, and communication resources required for the humanoid robot to perform different tasks.

[0060] In some embodiments, the execution time required for different humanoid robots to perform different tasks may be the same or different, and the load resources required for the humanoid robots to perform different tasks may be the same or different.

[0061] In some embodiments, after determining the target task corresponding to each humanoid robot, the humanoid robot should allocate corresponding load resources sufficient to perform the corresponding target task. For example, if a humanoid robot is determined to be assigned to perform Task 1, the load resources of the humanoid robot itself or the load resources allocated to it should be greater than or equal to the load resources required for the humanoid robot to perform Task 1. In this way, the humanoid robot can perform the corresponding Task 1 normally.

[0062] In some embodiments, the task information may include introduction information of the corresponding task. For example, the task information corresponding to Task 1 above includes cleaning Room A and the area information of Room A, etc. Of course, it may also include information such as the location of Room A, and no specific restrictions are made here.

[0063] S202 : Constructing utility functions of the humanoid robots for different tasks based on the task information of each task and the task execution information of the humanoid robots.

[0064] In some embodiments, the utility function is used to measure the utility of the corresponding humanoid robot in performing different tasks. It can be understood that the larger the value calculated by the utility function, the better the utility of the corresponding humanoid robot in performing the task. In this way, each humanoid robot can determine the target task with good utility corresponding to each humanoid robot by calculating the value of the utility function for performing different tasks.

[0065] In some embodiments, the shorter the execution time required for the humanoid robot to perform a task, the larger the value corresponding to the utility function should be, and / or, the fewer load resources required for the humanoid robot to perform a task, the larger the value corresponding to the utility function.

[0066] In some embodiments, the task information may further include priority information corresponding to the task. The higher the priority corresponding to the priority information, the higher the value of the utility function of the humanoid robot when performing the task.

[0067] In this way, in the utility function, the utility function is inversely proportional to the execution time, the utility function is inversely proportional to the load resources, and the utility function is proportional to the priority. In this way, the utility function of each humanoid robot for different tasks can be constructed.

[0068] S203 : Determine the corresponding target task assigned to each humanoid robot based on the utility function of each humanoid robot for different tasks.

[0069] In some embodiments, after obtaining the utility function, the task information of each task and the task execution information of the humanoid robot can be normalized to obtain quantized data, that is, parameters between [0,1], and then the quantized data can be input into the utility function to obtain the utility function.

[0070] In other embodiments, after obtaining the utility function, the values ​​corresponding to the task information of each task and the corresponding values ​​in the task execution information of the humanoid robot can be input into the utility function to obtain the value of the utility function. It can be understood that at this time, the units of the values ​​corresponding to the task information and the corresponding values ​​in the task execution information should be the same. For example, the value corresponding to the priority information in the task information is the numerical value of the priority, which is dimensionless. For example, the execution time in the task execution information can be in units of minutes, seconds, etc., and no specific restrictions are made here. For example, the load resources in the task execution information, when there are multiple types of load resources (computing resources, communication resources, etc.), different types of load resources should be normalized and the normalized different types of load resources should be summed to obtain the value of the load resources.

[0071] In some embodiments, a game model is constructed based on the utility function of each humanoid robot for different tasks, that is, the plan for the humanoid robot to perform different tasks is adjusted according to the values ​​of the humanoid robot's utility functions for different tasks, and finally, the value of the utility function of each humanoid robot for different tasks is determined to reach Nash equilibrium, and the task corresponding to each humanoid robot is the target task corresponding to the humanoid robot.

[0072] In some embodiments, a task set is assigned to each humanoid robot, the task set includes tasks assignable to each humanoid robot; the assignable tasks are assigned to each humanoid robot, wherein one humanoid robot corresponds to one assignable task, and different humanoid robots are assigned different assignable tasks; based on the task information of the assignable tasks assigned to each humanoid robot, the task execution information of the corresponding humanoid robot, and the utility function of each humanoid robot for different assignable tasks, the target task of each humanoid robot is determined.

[0073] It can be understood that the task set includes multiple assignable tasks, and the assignable tasks are tasks that can be assigned to each humanoid robot. By adjusting the humanoid robot to perform different tasks in the task set, the value of the utility function of the humanoid robot when performing different assignable tasks can be obtained. The adjustment direction is the direction of maximizing the utility function. However, it can be understood that when a humanoid robot performs an assignable task, when the assignable task of a humanoid robot is adjusted, the assignable task of at least another humanoid robot is also adjusted. In this way, when the value of the utility function of a humanoid robot increases, the value of the utility function of at least another humanoid robot will change. In the process of changing the value of the utility function, if the utility functions of all humanoid robots reach Nash equilibrium, the assignable tasks of the humanoid robots can no longer be adjusted at this time, and the task corresponding to the value of the utility function of each humanoid robot when reaching Nash equilibrium at this time is determined to be the target task of the humanoid robot.

[0074] In some embodiments, reaching a Nash equilibrium means that each humanoid robot cannot obtain a larger value of the utility function by changing its own task alone.

[0075] S204 : Determine a target execution order between the target tasks assigned to the humanoid robots based on task information corresponding to the target tasks assigned to the humanoid robots and task execution information of the corresponding humanoid robots.

[0076] In some embodiments, each humanoid robot may determine a corresponding target task, and after determining the target task, the target execution order between the target tasks may be calculated.

[0077] In some embodiments, the execution order of target tasks corresponding to the humanoid robots can be abstracted as a particle optimization problem, and the target execution order corresponding to each humanoid robot performing different target tasks can be determined by constructing a particle fitness function.

[0078] In some embodiments, each humanoid robot is mapped as a particle, and the position corresponding to each particle is used to indicate the arrangement position of the target task of the corresponding humanoid robot in the execution order of multiple tasks; the particle fitness function of each particle is constructed based on the task information of the target task corresponding to each particle and the task execution information of each particle; the global optimal position between each particle when the preset convergence condition is reached is determined based on the particle fitness function of each particle, and the global optimal position corresponds to the target position of each particle; based on the target position between each particle, the arrangement position of the target task of the corresponding humanoid robot in the target execution order is determined.

[0079] In some embodiments, the larger the value of the particle fitness function, the more unreasonable the particle identifying the current position is. Therefore, the update direction of the particle position in the particle optimization problem is the direction of minimizing the particle fitness function, that is, the particle fitness function is used as the objective function, and the objective function is minimized until the convergence condition is reached. At this time, the target position of each particle can be obtained, and thus the arrangement position of the corresponding humanoid robot performing the target task in the target execution order can be determined through the target position.

[0080] The humanoid robot task scheduling method in the humanoid robot training field provided in the embodiment of the present application, when performing task assignment, constructs a utility function based on task information and task execution information, and assigns tasks through the utility function. In this assignment process, the task information of the task and the task execution information of the humanoid robot performing different tasks are referred to, and different tasks can be assigned to humanoid robots with higher fitness and utility, thereby improving the efficiency of task assignment. At the same time, after different target tasks are assigned to the humanoid robots, the target execution order of the humanoid robots performing the target tasks can also be determined according to the target tasks corresponding to the assigned target tasks of each humanoid robot, so that when subsequent humanoid robots perform the target tasks, they can perform the tasks in sequence according to the target execution order, thereby improving the reliability of task execution.

[0081] At the same time, the humanoid robot task scheduling method in the humanoid robot training ground can also be applied to the humanoid robot training ground, and the humanoid robot is trained when the humanoid robot performs tasks in different scenarios, so that the trained humanoid robot can complete the task scheduling according to the humanoid robot task scheduling method in the humanoid robot training ground proposed above, thereby improving the reliability of the humanoid robot when performing different tasks.

[0082] For example, a humanoid robot is placed in a humanoid robot training ground, and is set to perform a carrying task. The humanoid robot is controlled to complete the carrying task through the humanoid robot task scheduling method in the above-mentioned humanoid robot training ground, so as to realize the training of the humanoid robot to perform the carrying task. Subsequently, in the actual completion of the carrying task, the efficiency and reliability of the humanoid robot in performing the carrying task can be improved.

[0083] The humanoid robot task scheduling method in the humanoid robot training ground can be applied to the fields of industrial manufacturing, logistics distribution, home services, etc., and the efficient execution of tasks in different fields can be achieved through the humanoid robot task scheduling method in the humanoid robot training ground.

[0084] Figure 3 Schematic diagram of the process of humanoid robot task scheduling method in the humanoid robot training field provided in this application Figure 2 ,like Figure 3 As shown, this embodiment Figure 2 Based on the embodiment, step S203 is described in detail. The method includes:

[0085] S301 : Allocate a task set to each humanoid robot, where the task set includes tasks that can be assigned to each humanoid robot.

[0086] In some embodiments, the assigned task set of each humanoid robot is a set of tasks that can be assigned to each humanoid robot. It can be understood that for a humanoid robot, all tasks can be assigned to the humanoid robot, that is, the assigned task set of the humanoid robot can include all tasks to be assigned, that is, the assigned task sets of multiple humanoid robots can be the same, but it should be noted that when a humanoid robot is assigned a task, the assigned task cannot be assigned by other humanoid robots, that is, the tasks assigned to each humanoid robot are different.

[0087] S302 : allocating allocable tasks to each humanoid robot for the assigned task set of each humanoid robot, wherein one humanoid robot corresponds to one allocable task, and different humanoid robots are assigned different allocable tasks.

[0088] It can be understood that the tasks in the assigned task set can be tasks that can be assigned to a humanoid robot. One assignable task cannot be assigned to two humanoid robots. When an assignable task in the assigned task set is assigned by other humanoid robots, the humanoid robot cannot be assigned to the assigned assignable task.

[0089] In this way, through the assigned task sets of each humanoid robot, the humanoid robots can be assigned allocable tasks to obtain different task allocation schemes. For example, there are 3 tasks, task 1, task 2 and task 3, corresponding to 3 humanoid robots, humanoid robot 1, humanoid robot 2 and humanoid robot 3, then the assigned task set of humanoid robot 1 is: {task 1, task 2, task 3}, the assigned task set of humanoid robot 2 is: {task 1, task 2, task 3}, and the assigned task set of humanoid robot 3 is: {task 1, task 2, task 3}. When assigning tasks to humanoid robots through the assigned task sets, the task allocation scheme can be: humanoid robot 1 performs task 1, humanoid robot 2 performs task 2, and humanoid robot 3 performs task 3; the task allocation scheme can also be: humanoid robot 1 performs task 1, humanoid robot 2 performs task 3, and humanoid robot 3 performs task 2. As long as one humanoid robot corresponds to one allocable task, different humanoid robots can be assigned different allocable tasks.

[0090] S303 : Determine a target task for each humanoid robot based on the task information of the assignable tasks assigned to each humanoid robot, the task execution information of the corresponding humanoid robot, and the utility function of each humanoid robot for different assignable tasks.

[0091] In some embodiments, for a task allocation scheme, the value of the corresponding utility function can be calculated through the task information of the assignable tasks assigned to each humanoid robot, the task execution information of the corresponding humanoid robot, and the utility function of each humanoid robot for different tasks. After obtaining the value of the utility function, the assignable tasks assigned to different humanoid robots can be adjusted based on the direction of maximizing the value of the utility function, that is, the task allocation scheme is updated. In this way, the value of the utility function of each humanoid robot for the corresponding assignable task in another task allocation scheme can be obtained until the Nash equilibrium is reached and the target task corresponding to each humanoid robot is obtained.

[0092] In some embodiments, the task information includes priority information corresponding to each task; the utility function is:

[0093]

[0094] Among them, U im is the utility function of the i-th humanoid robot performing the m-th task. The value of the utility function is approximately , indicating that the efficiency of the humanoid robot in performing the task is better, w m is the value of the priority information of the mth task. The larger the value of the priority information, the more important the corresponding task is. The setting range is between 10 and 20. im The execution time of the i-th humanoid robot to perform the m-th task can be in minutes, seconds, etc., r im is the value of the load resource required for the i-th humanoid robot to perform the m-th task. λ is the adjustment parameter of the load resource, which is used to control the influence of the load resource consumption in the utility function. A larger value indicates a stronger penalty for the consumption of load resources. It can be set according to empirical parameters, such as a value between 0 and 1, including 0.2, 0.5, etc., and is not specifically limited here.

[0095] In some embodiments, the value of the utility function of each humanoid robot for different assignable tasks is calculated based on the task information of the assignable tasks assigned to each humanoid robot and the task execution information of the corresponding humanoid robot; based on maximizing the value of the utility function of each humanoid robot as a constraint condition, the assignable tasks assigned to each humanoid robot are adjusted, and the value of the utility function of each humanoid robot for executing different assignable tasks is determined based on the task information of the adjusted assignable tasks of each humanoid robot and the task execution information of the corresponding humanoid robot; when the value of the utility function of each humanoid robot for different assignable tasks reaches a Nash equilibrium, the assignable tasks corresponding to each humanoid robot are determined as the target tasks corresponding to each humanoid robot.

[0096] For the assignable tasks assigned to each humanoid robot, the value of the priority information corresponding to the assignable tasks assigned to the humanoid robot, the execution time of the humanoid robot to perform the assigned tasks, and the value of the load resources of the humanoid robot to perform the assigned tasks are input into the utility function, and the value of the utility function of the humanoid robot to perform the assigned assignable tasks can be obtained.

[0097] For multiple humanoid robots, for a task allocation scheme, the value of the utility function of each humanoid robot for the assigned assignable task in the task allocation scheme can be obtained, but the task allocation scheme may not be the optimal allocation scheme. Therefore, based on the direction of maximizing the value of the utility function, the assignable task assigned to each humanoid robot can be adjusted, that is, a new task allocation scheme can be obtained, and then the value of the utility function of each humanoid robot for the assigned assignable task in the task allocation scheme can be calculated based on the new task allocation scheme. The iteration is repeated multiple times until the value of the utility function of each humanoid robot for different assignable tasks reaches Nash equilibrium. At this time, there is no need to adjust the assignable task assigned to the humanoid robot, and the assignable task assigned to the humanoid robot at this time is determined as the target task of the humanoid robot.

[0098] For example, in one embodiment, there are four humanoid robots R1, R2, R3, and R4, corresponding to four tasks T1, T2, T3, and T4. All four tasks are room cleaning. Part of the task information corresponding to the four tasks can be found in Table 1.

[0099] Task Number Room size (square meters) T1 40 T2 60 T3 100 T4 120

[0100] Table 1

[0101] The task execution information of the humanoid robot includes unit efficiency and unit load resources, unit efficiency and cleaning speed. Taking the load resource as the battery power resource as an example, some contents of the task execution information of the three humanoid robots can be referred to Table 2:

[0102]

[0103]

[0104] Table 2

[0105] Each humanoid robot hopes to minimize the task completion time while maximizing its own task benefits. The utility function constructed can refer to the representative formula of the utility function proposed above.

[0106] The set of assigned tasks for each humanoid robot is {T1, T2, T3, T4}, but each task can only be cleaned by one humanoid robot, so multiple humanoid robots cannot perform the same task at the same time.

[0107] In some embodiments, each humanoid robot is first assigned a task, and the value of the utility function of each humanoid robot for the assigned task is calculated. Then, the task assigned to the humanoid robot can be adjusted. The direction of the adjustment is to select a task that improves its own utility. The new task should make the value of the utility function of the humanoid robot for the new task larger than the value of the utility function of the old task, until no humanoid robot is willing to change its assigned task and a Nash equilibrium is reached. The target task of each humanoid robot can be determined. For example, in one embodiment, a task allocation scheme is: R1 executes T1, R2 executes T2, R3 executes T3, and R4 executes T4. The corresponding calculated execution time is: the execution time for R1 to execute T1 is 10 minutes (the same execution time in this embodiment is minutes), the execution time for R2 to execute T2 is 12 minutes, the execution time for R3 to execute T3 is 16.67 minutes (retain two decimal places), and the execution time for R4 to execute T4 is 40 minutes. The corresponding calculated load resources are: the load resources for R1 to execute T1 are 10×3=30%, the load resources for R2 to execute T2 are 12×2.1=25.2%, the load resources for R3 to execute T3 are 16.67×2.4=40.008%, and the load resources for R4 to execute T4 are 40×0.875=35%.

[0108] Set the priority information value of T1 to 10, the priority information value of T2 to 12, the priority information value of T3 to 14, the priority information value of T4 to 13, and the adjustment parameter to 0.2. Then the value of the utility function executed by R1 for T1 is calculated as: (10 / (10+0.2*30))=0.033 (keep 3 decimal places), the value of the utility function executed by R2 for T2 is calculated as: (12 / (12+0.2*25.2))=0.704 (keep 3 decimal places), the value of the utility function executed by R3 for T3 is calculated as: (14 / (16.67+0.2*40.008))=0.567 (keep 3 decimal places), and the value of the utility function executed by R4 for T4 is calculated as: (13 / (40+0.2*35))=0.277 (keep 3 decimal places).

[0109] At this time, it can be seen that the value of the utility function of R4 executing T4 is smaller. T3 is assigned to R4, and T3 executes T4. The new task allocation plan is: R1 executes T1, R2 executes T2, R4 executes T3, and R3 executes T4. The value of each humanoid robot executing different tasks is recalculated. At this time, it is found that in the adjusted task allocation plan, the new utility of R3 is reduced, indicating that the task adjustment plan still needs to be adjusted. Continue to adjust the tasks of different humanoid robots until a Nash equilibrium is reached. When the Nash equilibrium is reached, R1 executes T1, R2 executes T3, R3 executes T4, and R4 executes T2. Under this allocation, no humanoid robot can improve the value of its own utility function by unilaterally changing its strategy. Therefore, the system reaches a Nash equilibrium, that is, R1's target task is T1, R2's target task is T3, R3's target task is T4, and R4's target task is T2.

[0110] In this scenario, by adjusting the tasks assigned to the humanoid robots, the task allocation of each humanoid robot is made more reasonable and the value of the utility function is higher. By adjusting the task allocation by the value of the utility function, the system converges and avoids infinite optimization.

[0111] Figure 4 Schematic diagram of the process of humanoid robot task scheduling method in the humanoid robot training field provided in this application Figure 3 ,like Figure 4 As shown, this embodiment Figure 2 Based on the embodiment, step S204 is described in detail. The method includes:

[0112] S401. Map each humanoid robot to a particle, and the position corresponding to each particle is used to indicate the arrangement position of the target task of the corresponding humanoid robot in the execution sequence of multiple tasks.

[0113] In some embodiments, each humanoid robot is mapped to a particle, and the position corresponding to each particle is used to indicate the position of the corresponding humanoid robot in the execution order of multiple tasks, so as to determine the target execution order of the corresponding target tasks of each humanoid robot based on the particle swarm optimization algorithm PSO.

[0114] In some embodiments, PSO determines the target position corresponding to the particle by simulating the movement of the particle, thereby obtaining the execution position of the humanoid robot corresponding to the particle in the target execution sequence.

[0115] S402 : Constructing a particle fitness function of each particle based on the task information of each particle corresponding to the target task and the task execution information of each particle.

[0116] In some embodiments, the task information also includes dependency information of the corresponding task.

[0117] Task dependency information is used to indicate the task dependencies between tasks, that is, the execution order that needs to be followed between multiple tasks. For example, if there are Task 1 and Task 2, and Task 1 must be executed before Task 2, then the task dependency information includes information indicating that Task 1 must be executed before Task 2. For example, if the execution of Task 3 depends on the output result of Task 4, then the task dependency information includes information indicating that Task 4 needs to be executed before Task 3.

[0118] It can be understood that when the execution order is determined, each humanoid robot performs the task in sequence according to the execution order. If the sum of the load resources of the humanoid robots performing tasks at a certain moment is greater than the load resource threshold that the system can bear, it means that the current load resources cannot normally support multiple humanoid robots to perform tasks at the same time, and the execution order between multiple tasks needs to be re-determined.

[0119] In some embodiments, a target execution time required for each particle corresponding to a humanoid robot to perform a target task is determined; a first penalty function is constructed based on a load resource threshold and the load resources required for each particle corresponding to the target task; a second penalty function is constructed based on dependency information between the target tasks corresponding to each particle; and a particle fitness function is constructed based on the target execution time, the first penalty function, and the second penalty function.

[0120] In some embodiments, the goal of the PSO algorithm is to minimize the total execution time and resource waste of each humanoid robot's tasks, that is, to minimize the value of the particle fitness function, so as to ensure that each humanoid robot performs tasks in the most suitable execution order and improve the collaborative efficiency between tasks.

[0121] In some embodiments, the target execution time is the sum of the execution times of the humanoid robots performing the corresponding target tasks.

[0122] Under different target execution orders, at a certain moment, there may be one or more humanoid robots performing the corresponding target tasks at the same time. At this time, the sum of the task load resources required by the one or more humanoid robots to perform the corresponding target tasks should be less than or equal to the load resource threshold. If this condition is violated, the corresponding first penalty function will generate a positive value.

[0123] The load resource threshold represents the maximum load resource that a system composed of multiple humanoid robots performing a target task can bear at any moment. When the task load resources required for multiple humanoid robots to simultaneously perform the target task exceed the load resource threshold, an overload phenomenon occurs, which may cause the system to crash. For example, if the type of load resource is a communication resource, there is a communication resource threshold for the corresponding communication resource. When, at a certain moment, the communication resources in the task load resources required for multiple humanoid robots to perform the target task exceed the communication resource threshold, the system crashes and the humanoid robots cannot perform the target task normally.

[0124] It can be understood that the types of task load resources correspond to the load resources.

[0125] It can be understood that for different types of load resources, there are corresponding types of load resource thresholds. For example, for communication resources, there is a corresponding communication resource threshold, and for computing resources, there is a corresponding computing resource threshold. As long as at a certain moment there is any type of load resource required for the humanoid robot to perform the target task and the task load resources are greater than the corresponding type of load resource threshold, then the first penalty function will have a positive value. Otherwise, the first penalty function is 0.

[0126] The function of the first penalty function is to prevent the load resource consumption required to execute the target task at the same time from exceeding the upper limit of the load resources that the corresponding humanoid robot can provide. In the particle fitness function, the first violation penalty function determines whether the upper limit of the load resource threshold is exceeded by aggregating the load resources of all target tasks executed at the same time.

[0127] That is, in a certain execution sequence, each humanoid robot performs the task according to the execution sequence. At any moment, the sum of the load resources required by all humanoid robots that perform the task at the same time at that moment is determined. When the sum of the load resources required by all humanoid robots that perform the task at the same time at that moment exceeds the load resource threshold, the first penalty function will generate a positive value, indicating that the resource constraint is violated. When the sum of the load resources required by all humanoid robots that perform the task at the same time at that moment does not exceed the load resource threshold, the first penalty function will generate a zero value.

[0128] It can be understood that when each particle is located at a different position, the value corresponding to the first penalty function is different. When for a certain position of each particle, that is, for a certain execution order corresponding to each particle, if there is a positive value of the first penalty function at a certain moment, then the value of the first penalty function in the particle fitness function of the execution order corresponding to each particle is positive; if for a certain execution order corresponding to each particle, if the value of the first function is zero at all moments, then the value of the first penalty function in the particle fitness function of the execution order corresponding to each particle is zero, indicating that the resource constraint is not violated under the execution order corresponding to each particle.

[0129] In some embodiments, the first penalty function can be expressed as:

[0130]

[0131] Where k is a positive number, W is the current position of the particle corresponding to the i-th humanoid robot, X i When , the sum of the values ​​of the load resources corresponding to the humanoid robot processing the target task at the same time, Q represents the load resource threshold.

[0132] Understandably, for an X i The position of the particle corresponding to the i-th humanoid robot is determined, and the positions of the particles corresponding to other humanoid robots are also determined. Thus, the positions of the particles corresponding to all humanoid robots are determined, and the positions of the humanoid robots corresponding to all particles in the execution order are determined, so that the execution order between the corresponding humanoid robots can be determined.

[0133] In some embodiments, load resources include various types of resources such as computing resources, battery power resources, and communication resources.

[0134] When determining the first penalty function, whether the conditions are violated should be determined for different types of load resources. If the sum of the values ​​of any type of load resources is greater than the corresponding load resource threshold, the first penalty function will produce a positive value. Only when the sum of the values ​​of all types of load resources is less than or equal to the corresponding load resource threshold, the first penalty function will produce a zero value.

[0135] If the sum of the values ​​of computing resources of multiple humanoid robots performing tasks at the same moment is less than or equal to the computing resource threshold, the sum of the values ​​of battery power resources of multiple humanoid robots performing tasks at the same moment is less than or equal to the battery circuit resource threshold, and the sum of the values ​​of communication resources of multiple humanoid robots performing tasks at the same moment is less than or equal to the communication resource threshold, then the first penalty function is 0.

[0136] In some embodiments, the second penalty function indicates that if there is a task dependency that is violated in the execution order between any target tasks, the second penalty function will generate a positive value. For example, task 1 must be completed before task 2, but in the actual execution order, task 1 is located before task 2 or is executed simultaneously with task 2, that is, the position of the particle of the humanoid robot executing task 1 is located before the position of the particle of the humanoid robot executing task 2 or the position of the particle of the humanoid robot executing task 1 is the same as the position of the particle of the humanoid robot executing task 2. The second penalty function will generate a positive penalty term, that is, the second penalty function, indicating that the task dependency is violated.

[0137] In a scenario where the positions of all particles are determined, that is, in a scenario where the execution order between humanoid robots is determined, when the execution order between target tasks is the same as the task dependency relationship of the corresponding task dependency information, the second penalty function produces a zero value. Similarly, the algorithm will iteratively adjust the positions of particles to reduce defaults, so that the second penalty function D(X i ) is 0, thereby minimizing the particle fitness function.

[0138] In some embodiments, the second penalty function can be expressed as:

[0139]

[0140] Among them, H is a positive number, and the current position of the particle corresponding to the i-th humanoid robot is X i When the execution order of the positions of all particles does not conform to the dependency information between the humanoid robots, then D(X i ) is L, and the current position of the particle corresponding to the i-th humanoid robot is X i When the execution order of the positions of all particles corresponds to the dependency information between the humanoid robots, then D(X i ) has a value of 0.

[0141] In some embodiments, the particle fitness function is:

[0142]

[0143] Among them, t j is the execution time of the jth humanoid robot to perform the corresponding task, w j is the value of the priority information of the jth humanoid robot, n is the number of humanoid robots, X i is the current position of the particle, α and β are R(X i )、D(X i ) adjustment parameters.

[0144] In some embodiments, the sum of α and β is 1. α and β can be set according to empirical parameters. For example, in one embodiment, α = 0.3, β = 0.7. When R(X i ) is relatively high, the value of ɑ can be increased accordingly, and when the dependency between tasks is more important, the value of β can be increased accordingly, R(X i ) is the first penalty function, D(X i ) is the second penalty function, The target execution time.

[0145] R(X i ) value is higher, the value of the particle fitness function is larger, indicating that when all particles are in the corresponding position, the execution order of the tasks of the corresponding humanoid robots is unreasonable. The algorithm will adjust the position of the particles through iteration, that is, adjust the execution order between the humanoid robots to reduce the default, so that R(X i ) is 0.

[0146] D(X i ) indicates that in the scenario of determining the positions of each particle, that is, determining the execution order between each target task, if there is a task dependency that is violated by any target task, then D(Xi ) will produce a positive value H, indicating that the task dependency is violated. When the execution order between the target tasks is the same as the task dependency of the corresponding task dependency information, then D(X i )=0.

[0147] It is understandable that the PSO algorithm will adjust the position of particles through iteration to reduce the default so that D(X i ) is 0, so by adjusting the particle position R(X i ) is 0 and D(X i ) is 0 to minimize the particle fitness function.

[0148] S403 : Determine the global optimal position of each particle when a preset convergence condition is reached based on the particle fitness function of each particle, where the global optimal position corresponds to the target position of each particle.

[0149] In some embodiments, for a scenario where the positions of all particles are determined, the value of the particle fitness function corresponding to each particle can evaluate the effect of the corresponding humanoid robot in performing the target task in different execution orders.

[0150] The larger the value of the particle fitness function, the worse the effect of the corresponding particle at the current position. Therefore, the goal of the particle fitness function is to minimize the value of the particle fitness function. In PSO, the particle fitness function is used to evaluate the particle position X. i The quality of the system is minimized, and the optimization is equivalent to optimizing the completion time of the task and the overall system efficiency.

[0151] In some embodiments, updating the position of a particle means changing the arrangement position of the particle corresponding to the humanoid robot in the execution sequence.

[0152] It can be understood that the target execution order not only includes the order in which the tasks are executed, but also indicates the execution time of the humanoid robot when executing the target task. For example, if there are three humanoid robots, each humanoid robot corresponds to a target task, namely tasks 1, 2 and 3. The corresponding target execution order is 1, 2, 3, and also includes executing task 2 at a certain moment after the execution of task 1, and executing task 3 at a certain moment when the execution of task 2 is performed. That is, the target execution order can also represent the time distribution between tasks.

[0153] In some embodiments, the position of the particle is updated, and the individual optimal position of the corresponding particle is determined based on the numerical value of the particle fitness function of each particle at different positions. In multiple iterations, for a particle, the position of the particle with the smallest value of the particle fitness function in multiple iterations is determined as the individual optimal position of the particle; then, the global optimal position of each particle is determined based on the numerical value of the particle fitness function corresponding to the individual optimal position of each particle, that is, in one iteration, the individual optimal position of each particle with the smallest particle fitness function corresponding to the individual optimal position of the particle is determined as the global optimal position.

[0154] It can be understood that after a particle position is updated, although the individual optimal position of a particle is the minimum value of the particle fitness function calculated at the corresponding position of the particle, the calculation of the value of the particle fitness function requires that the positions of all particles are determined, that is, the individual optimal position of a particle corresponds to a particle fitness function, and the particle fitness function corresponds to the positions of all particles respectively, that is, the individual optimal position of a particle can correspond to the positions corresponding to all particles, and the value of the particle fitness function calculated at the positions corresponding to all particles corresponding to the individual optimal position of the particle is the value of the particle fitness function corresponding to the particle at the individual optimal position.

[0155] That is, for the individual optimal position j of a particle k, it also corresponds to the corresponding positions of all particles. In this way, when all particles are at the corresponding positions, the calculated value of the particle fitness function indicates that particle k is at the corresponding position as the individual optimal position j. That is, the individual optimal position of a particle corresponds to the positions of all particles, and the position of the particle is mapped to the execution order of each humanoid robot. That is, the individual optimal position of a particle corresponds to the execution order of all humanoid robots when the particle position is the individual optimal position.

[0156] Therefore, the global optimal position is the individual optimal position with the smallest particle fitness function among the individual optimal positions of all particles, that is, the global optimal position also corresponds to a value of the particle fitness function. Under the value of the particle fitness function, the positions corresponding to all particles, that is, the global optimal position, also maps the execution order between the humanoid robots corresponding to each particle.

[0157] For example, in one embodiment, when the position of a particle is updated once, the positions of all particles can be determined, and the value of the particle fitness function can be calculated based on the positions of all particles. For a particle, if the value of the particle fitness function calculated in this update is smaller than the value of the particle fitness function in the previous update, the position of the particle this time can be determined as the individual optimal position of the particle, and the positions of all particles corresponding to the individual optimal position are the positions of all particles updated this time. In this way, in each update, the individual optimal position of each particle is obtained based on the size of the particle fitness function of each particle. The value of the particle fitness function exists at the individual optimal position, and the value of the particle fitness function is the value calculated by the particle fitness function when all particles are at different positions. In this way, the individual optimal position corresponds to the position corresponding to each particle. The position corresponding to each particle corresponding to the individual optimal position is substituted into the particle fitness function to obtain the value of the particle fitness function, and the obtained value of the particle fitness function can make the position of the corresponding particle the individual optimal position.

[0158] For example, in another embodiment, each time the position of a particle is updated, for each particle's individual optimal position, it can be considered that there is a corresponding execution order among the humanoid robots, and the global optimal position is the one selected from all individual optimal positions, that is, the global optimal position also has an execution order among the humanoid robots.

[0159] Through the parallel search capabilities of particle swarms, the optimal solution for the execution order of multiple tasks is quickly explored, that is, the global optimal position under the preset convergence conditions is obtained. Particles continuously update their positions through iterations, and ultimately find the global optimal solution for the task execution order, thereby determining the target execution order.

[0160] It is understandable that the goal of the particle fitness function is to minimize the value of the particle fitness function by balancing the load resource consumption and task dependencies of the target task. By evaluating the particle fitness function of each particle, the particle swarm is guided towards the optimal task execution sequence, ensuring the efficient execution of the target task.

[0161] In some embodiments, for particle i, f(X i ) indicates that the particle is in X i The mass at the position, f(X i ) is smaller, indicating that the particle is in X i The higher the quality of the position, the better the comparison of different X i The value of the particle fitness function corresponding to the particle fitness function, the X corresponding to the minimum value of the particle fitness function i The individual optimal position is determined, and thus the individual optimal positions of different particles can be obtained.

[0162] The individual optimal positions of different particles have corresponding values ​​of the particle fitness function. It can be understood that when a particle has an individual optimal position, when the particle is at the individual optimal position, other particles also have corresponding positions. In this way, when all particles are at the corresponding positions, the value of the particle fitness function of the particle at the individual optimal position is the smallest. The values ​​of the particle fitness functions of the individual optimal positions of different particles are compared, and the individual optimal position with the smallest value of the particle fitness function is determined as the global optimal position. In this process, the position of the particle is updated according to the individual optimal position and the global optimal position until the preset convergence condition is reached, and the execution order corresponding to the global optimal position that reaches the preset convergence condition is determined as the target execution order.

[0163] In some embodiments, the preset convergence condition may be: the change in the value of the particle fitness at the global optimal position in several consecutive iterations is less than a preset first threshold; or the change in the position of each particle is close to a preset second threshold (such as 0 or a value close to 0); or a maximum number of iterations is set. When the number of iterations reaches the upper limit, it indicates that the preset convergence condition is met.

[0164] It can be understood that for the global optimal position, the corresponding particle fitness function includes the target position between each particle. Based on the target position, the arrangement position of the target task of the corresponding humanoid robot in the target execution order can be determined, thereby obtaining the target execution order between multiple target tasks.

[0165] In one embodiment, updating the particle position according to the global optimal position can be achieved by the following particle velocity update formula and position update formula.

[0166] Specifically, the particle swarm optimization algorithm optimizes the target task execution order based on task information and the corresponding task execution information of the humanoid robot. In each iteration, the particle swarm optimization algorithm adjusts the speed and position of particles to find the optimal task execution order, ensuring that tasks are executed in the optimal order, thereby maximizing the overall efficiency of the system.

[0167] In one embodiment, the particle position can be updated by using a set particle velocity update formula, and the particle velocity update formula is:

[0168]

[0169] in, represents the velocity of particle i at time t, represents the position of particle i at time t, w is the inertia weight, c1 and c2 are acceleration constants, r1 and r2 are random numbers, is the individual optimal position of particle i, g best is the global optimal position of the particle swarm.

[0170] The particle's speed determines its next moving direction and step size, and then the particle's position is updated using the position update formula. The position update formula is:

[0171]

[0172] in, represents the position of particle i at time t+1.

[0173] The position update formula calculates the particle's new position by adding its updated velocity to its current position, thereby determining the new task execution order. Through continuous velocity and position updates, the particle swarm can gradually approach the optimal solution for complex task scheduling problems. Each position update brings the task execution order closer to the global optimal sequence, thereby optimizing the system's overall task completion time.

[0174] According to the particle speed update formula and position update formula, each particle can adjust its position based on the individual optimal position and the global optimal position, thereby searching for the optimal solution in the multidimensional task scheduling space. By gradually updating the speed and position, the particle can find the optimal task sequence in the task scheduling space and ultimately determine the target execution order.

[0175] S404: Based on the target positions between the particles, determine the arrangement position of the target task corresponding to the humanoid robot in the target execution sequence.

[0176] In some embodiments, the position of the target task of the corresponding humanoid robot in the target execution order can be determined based on the target position of each humanoid robot, thereby obtaining the target execution order among the multiple target tasks.

[0177] When multiple humanoid robots collaborate to perform their respective target tasks, the execution order of the target tasks directly affects the completion time of multiple target tasks. Especially when there are dependencies between the target tasks, the task completion time is an important goal of system optimization. Reasonable arrangement of the task execution order can significantly improve the efficiency of the system.

[0178] In this application, the PSO algorithm optimizes particle speed and position, gradually adjusting the order of task execution to minimize the particle fitness function and satisfy the constraints of load resource allocation and task dependencies. The particle fitness function is directly related to task completion time, resource consumption, and task dependencies. The particle swarm optimizes task scheduling through continuous iterative updates.

[0179] As you can understand, the particle position represents the corresponding humanoid robot's position in the task execution sequence, while the particle speed determines the direction and step size of the humanoid robot's position adjustment in the execution sequence. By iteratively updating the particle's speed and position, the particles gradually find the optimal task execution sequence, minimizing the task completion time of multiple humanoid robots while satisfying resource and task dependency constraints.

[0180] In some embodiments, each humanoid robot can share information and coordinate tasks in real time through an internal communication interface. That is, after a target task is completed, the humanoid robot at the next position in the target execution order can be prompted through the communication interface to perform the target task to avoid conflicts and duplication of work, so that each target task can be completed within the most suitable time window.

[0181] In some embodiments, by Figure 1 In the scenario, the task allocation of humanoid robots and the determination of target execution order can be carried out in real time according to needs.

[0182] In some embodiments, it is assumed that there are four humanoid robots R1, R2, R3, and R4, each of which corresponds to a particle, and the goal is to minimize the value of the fitness function.

[0183] In the initial state, each particle has a corresponding initial position. At this time, the fitness function of each particle is: the position of R1 corresponds to AA, the fitness function value is 30, the position of R2 corresponds to BB, the fitness function value is 25, the position of R3 corresponds to CC, the fitness function value is 28, the position of R4 corresponds to DD, the fitness function value is 32. At this time, the individual optimal position of each particle is initially equal to its current position, that is: the individual optimal position of R1 corresponds to AA, the individual optimal position of R2 corresponds to BB, the individual optimal position of R3 corresponds to CC, and the individual optimal position of R4 corresponds to DD.

[0184] Under the individual optimal position corresponding to each particle, there are positions corresponding to all particles.

[0185] The global optimal position gbest is determined by the individual optimal position with the smallest fitness value. At this time, the global optimal position is the individual optimal position BB of R2 (the particle fitness function is 25).

[0186] In the first iteration, all particles use the velocity update formula to update their own speed, and then update their positions. For example, after one iteration, the position of particle R1 is A', and the value of the fitness function is 27. Since 27<30, the individual optimal position of R1 changes to A', the position of particle R2 corresponds to B', the value of the fitness function is 25, and the individual optimal position of particle R2 remains unchanged. The position of particle R3 is C', the value of the fitness function is 24, and the individual optimal position of particle R3 changes to C'. The position of particle R4 is D', the value of the fitness function is 29, and the individual optimal position of particle R3 changes to D'. Comparing the individual optimal fitness values ​​of each particle in this iteration, the global optimal position is updated to the individual optimal position C' corresponding to the individual optimal position of R3.

[0187] It is understandable that although each particle has its own individual optimal position, the global optimal position is the best one in the entire particle swarm. The individual optimal positions of other particles do not directly become the global optimal position; they only participate in the comparison, and the global optimal position is the best one.

[0188] Repeat the above iterations until the preset convergence condition is reached. At this time, the global optimal position gbest is the final target task execution order.

[0189] The global optimal position corresponds to the position of each particle. Through the position of each particle, the target task execution order between the humanoid robots corresponding to each particle can be obtained.

[0190] Figure 5 This is a schematic diagram of the structure of the humanoid robot task scheduling device in the humanoid robot training field provided by this application, such as Figure 5 As shown, the humanoid robot task scheduling device 50 in the humanoid robot training field provided in this embodiment includes:

[0191] A data acquisition module 510 is configured to acquire task information corresponding to a plurality of tasks and task execution information of a plurality of humanoid robots. The task execution information indicates the execution time and load resources required for each humanoid robot to perform different tasks. The number of tasks corresponding to the task information corresponds to the number of humanoid robots.

[0192] A utility function construction module 530 is used to construct a utility function of each humanoid robot for different tasks based on task information of each task and task execution information of the humanoid robot;

[0193] A task assignment module 550 is configured to determine a corresponding target task assigned to each humanoid robot based on the utility function of each humanoid robot for different tasks;

[0194] The execution order determination module 570 is configured to determine the target execution order between the target tasks assigned to the humanoid robots based on the task information corresponding to the target tasks assigned to the humanoid robots and the task execution information of the corresponding humanoid robots.

[0195] In some embodiments, the task information includes priority information corresponding to each task; the utility function is:

[0196]

[0197] Among them, U im The utility function for the i-th humanoid robot to perform the m-th task, w m is the value of the priority information of the mth task, t im The execution time of the i-th humanoid robot to perform the m-th task, r im is the value of the load resource required for the i-th humanoid robot to perform the m-th task, and λ is the adjustment parameter of the load resource.

[0198] In some embodiments, the task assignment module includes:

[0199] an assignment set determining unit, configured to assign a task set to each humanoid robot, wherein the task set includes tasks assignable to each humanoid robot;

[0200] an initial assignment unit, configured to assign an assignable task to each humanoid robot based on the assigned task set of each humanoid robot, wherein one humanoid robot corresponds to one assignable task, and different humanoid robots are assigned different assignable tasks;

[0201] The task assignment unit is used to determine the target task of each humanoid robot based on the task information of the assignable tasks assigned to each humanoid robot, the task execution information of the corresponding humanoid robot, and the utility function of each humanoid robot for different assignable tasks.

[0202] In some embodiments, the task allocation unit includes:

[0203] A utility calculation module, for calculating the value of the utility function of each humanoid robot for different assignable tasks based on the task information of the assignable tasks assigned to each humanoid robot and the task execution information of the corresponding humanoid robot;

[0204] a task adjustment section, for adjusting the assignable tasks assigned to each humanoid robot based on a constraint condition of maximizing the value of the utility function of each humanoid robot, and determining the value of the utility function of each humanoid robot performing different assignable tasks based on task information of the adjusted assignable tasks of each humanoid robot and task execution information of the corresponding humanoid robot;

[0205] The target task determination section is used to determine the task corresponding to each humanoid robot as the target task corresponding to each humanoid robot when the value of the utility function of each humanoid robot for different assignable tasks reaches Nash equilibrium.

[0206] In some embodiments, the execution order determination includes:

[0207] A particle mapping unit is used to map each humanoid robot into a particle, and the position corresponding to each particle is used to indicate the arrangement position of the target task of the corresponding humanoid robot in the execution order of multiple tasks;

[0208] A function construction unit, configured to construct a particle fitness function for each particle based on task information of the target task corresponding to each particle and task execution information of each particle;

[0209] a target position determination unit, configured to determine, based on the particle fitness function of each particle, a global optimal position between the particles when a preset convergence condition is reached, wherein the global optimal position corresponds to the target position of each particle;

[0210] The sequence determination unit is used to determine the arrangement position of the target task corresponding to the humanoid robot in the target execution sequence based on the target position between each particle.

[0211] In some embodiments, the task information also includes dependency information of the corresponding task; the function construction unit includes:

[0212] The execution time determination section is used to determine the target execution time required for each particle corresponding to the humanoid robot to perform the target task;

[0213] The first penalty function construction section is used to construct the first penalty function based on the load resource threshold and the load resources required by each particle corresponding to the target task;

[0214] The second penalty function construction section is used to construct the second penalty function based on the dependency information between the target tasks corresponding to each particle;

[0215] The particle fitness function construction section is used to construct the particle fitness function based on the target execution time, the first penalty function, and the second penalty function.

[0216] The humanoid robot task scheduling device in the humanoid robot training field provided in this embodiment can execute the method provided in the above method embodiment. Its implementation principle and technical effects are similar, and will not be described in detail in this embodiment.

[0217] Figure 6 This is a schematic diagram of the structure of the electronic device provided in this application. Figure 6As shown, the electronic device 60 provided in this embodiment includes: at least one processor 601 and a memory 602. Optionally, the device 60 further includes a communication component 603. The processor 601, the memory 602 and the communication component 603 are connected via a bus 604.

[0218] During the specific implementation process, at least one processor 601 executes the computer-executable instructions stored in the memory 602, so that the at least one processor 601 performs the above method.

[0219] The specific implementation process of the processor 601 can be found in the above method embodiment. Its implementation principle and technical effects are similar and will not be repeated here in this embodiment.

[0220] In the above embodiments, it should be understood that the processor may be a central processing unit (CPU), other general-purpose processors, digital signal processors (DSP), application-specific integrated circuits (ASICs), etc. A general-purpose processor may be a microprocessor or any conventional processor. The steps of the method disclosed in the present invention may be directly executed by a hardware processor or by a combination of hardware and software modules in the processor.

[0221] The memory may include a high-speed memory (Random Access Memory, RAM), and may also include a non-volatile memory (NVM), such as at least one disk memory.

[0222] The bus can be an Industry Standard Architecture (ISA) bus, a Peripheral Component Interconnect (PCI) bus, or an Extended Industry Standard Architecture (EISA) bus. Buses can be classified as address buses, data buses, and control buses. For ease of illustration, the buses in the drawings of this application are not limited to just one bus or just one type of bus.

[0223] The present application also provides a computer program product, including a computer program, which implements the above method when executed by a processor.

[0224] The present application also provides a computer-readable storage medium, in which computer-executable instructions are stored. When a processor executes the computer-executable instructions, the above method is implemented.

[0225] The above-mentioned readable storage medium can be implemented by any type of volatile or non-volatile memory device or a combination thereof, such as static random access memory (SRAM), electrically erasable programmable read-only memory (EEPROM), erasable programmable read-only memory (EPROM), programmable read-only memory (PROM), read-only memory (ROM), magnetic memory, flash memory, magnetic disk or optical disk. The readable storage medium can be any available medium that can be accessed by a general-purpose or special-purpose computer.

[0226] An exemplary readable storage medium is coupled to a processor so that the processor can read information from the readable storage medium and write information to the readable storage medium. Of course, the readable storage medium can also be an integral part of the processor. The processor and the readable storage medium can be located in an application specific integrated circuit (ASIC). Of course, the processor and the readable storage medium can also exist in a device as discrete components.

[0227] The division of units is merely a logical functional division; actual implementations may employ alternative divisions, such as combining or integrating multiple units or components into another system, or omitting or disabling certain features. Furthermore, any direct coupling or communication connection shown or discussed may be an indirect coupling or communication connection between devices or units, either through an interface, electrical, mechanical, or other means.

[0228] Units described as separate components may or may not be physically separate, and components shown as units may or may not be physical units, that is, they may be located in one place or distributed across multiple network units. Some or all of these units may be selected to achieve the purpose of this embodiment according to actual needs.

[0229] In addition, each functional unit in each embodiment of the present invention may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit.

[0230] If the function is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present invention, or the part that contributes to the prior art, or the part of the technical solution, can be embodied in the form of a software product. The computer software product is stored in a storage medium and includes several instructions for enabling a computer device (which can be a personal computer, server, or network device, etc.) to execute all or part of the steps of the various embodiments of the present invention. The aforementioned storage medium includes: U disk, mobile hard disk, read-only memory (ROM, Read-Only Memory), random access memory (RAM, Random Access Memory), disk or optical disk, and other media that can store program code.

[0231] Those skilled in the art will appreciate that all or part of the steps in the above-described method embodiments can be implemented using hardware associated with program instructions. The aforementioned program can be stored in a computer-readable storage medium. When executed, the program performs the steps of the above-described method embodiments. The aforementioned storage medium includes various media capable of storing program code, such as ROM, RAM, magnetic disks, or optical disks.

[0232] Finally, it should be noted that those skilled in the art will readily identify other embodiments of the present invention after considering the specification and practicing the invention disclosed herein. The present invention is intended to cover any variations, uses, or adaptations of the present invention that follow the general principles of the present invention and include common knowledge or customary techniques in the art not disclosed herein. The present invention is not limited to the precise structure described above and illustrated in the accompanying drawings, and various modifications and variations may be made without departing from the scope thereof. The scope of the present invention is limited solely by the appended claims.

Claims

1. A method for scheduling tasks of humanoid robots in a humanoid robot training field, characterized in that: include: Obtaining task information corresponding to a plurality of tasks and task execution information of a plurality of humanoid robots, wherein the task execution information is used to indicate the execution time and load resources required for each humanoid robot to perform different tasks, and the number of tasks corresponding to the task information corresponds to the number of humanoid robots; Based on the task information of each task and the task execution information of the humanoid robot, construct the utility function of each humanoid robot for different tasks; Determining the corresponding target tasks assigned to each humanoid robot based on the utility functions of each humanoid robot for different tasks; The target execution order between the target tasks assigned to the humanoid robots is determined based on the task information corresponding to the target tasks assigned to the humanoid robots and the task execution information of the corresponding humanoid robots.

2. The method according to claim 1, characterized in that The task information includes the priority information corresponding to each task; the utility function is: Among them, U im The utility function for the i-th humanoid robot to perform the m-th task, w m is the value of the priority information of the mth task, t im The execution time of the i-th humanoid robot to perform the m-th task, r im is the value of the load resource required for the i-th humanoid robot to perform the m-th task, and λ is the adjustment parameter of the load resource.

3. The method according to claim 1 or 2, characterized in that The step of determining the target tasks assigned to the humanoid robots based on the utility functions of the humanoid robots for different tasks includes: Assigning a task set to each humanoid robot, wherein the task set includes tasks assignable to each humanoid robot; For each assigned task set of each humanoid robot, assign an assignable task to each humanoid robot, wherein one humanoid robot corresponds to one assignable task, and different humanoid robots are assigned different assignable tasks; The target task of each humanoid robot is determined based on the task information of the assignable task assigned to each humanoid robot, the task execution information of the corresponding humanoid robot, and the utility function of each humanoid robot for different assignable tasks.

4. The method according to claim 3, characterized in that The step of determining a target task for each humanoid robot based on task information of the assignable tasks assigned to each humanoid robot, task execution information of the corresponding humanoid robot, and utility functions of each humanoid robot for different assignable tasks includes: Calculating the value of the utility function of each humanoid robot for different assignable tasks based on task information of the assignable tasks assigned to each humanoid robot and task execution information of the corresponding humanoid robot; Adjusting the assignable tasks assigned to each humanoid robot based on maximizing the value of the utility function of each humanoid robot as a constraint, and determining the value of the utility function of each humanoid robot performing different assignable tasks based on task information of the adjusted assignable tasks of each humanoid robot and task execution information of the corresponding humanoid robot; When the utility function values ​​of the humanoid robots for different assignable tasks reach a Nash equilibrium, the tasks corresponding to the humanoid robots are determined as target tasks corresponding to the humanoid robots.

5. The method according to claim 1, wherein The determining of the target execution order of the tasks assigned to the humanoid robots based on the task information corresponding to the target tasks assigned to the humanoid robots and the task execution information of the corresponding humanoid robots includes: Each humanoid robot is mapped into a particle, and the position corresponding to each particle is used to indicate the arrangement position of the target task of the corresponding humanoid robot in the execution order of multiple tasks; Construct the particle fitness function of each particle based on the task information of each particle corresponding to the target task and the task execution information of each particle; Determine, based on the particle fitness function of each particle, the global optimal position among the particles when a preset convergence condition is reached, wherein the global optimal position corresponds to the target position of each particle; Based on the target positions between the particles, the arrangement position of the target task corresponding to the humanoid robot in the target execution sequence is determined.

6. The method according to claim 5, characterized in that The task information also includes dependency information of the corresponding task; and constructing the particle fitness function of each particle based on the task information of each particle corresponding to the target task and the task execution information of each particle includes: Determine the target execution time required for each particle corresponding to the humanoid robot to perform the target task; Constructing a first penalty function based on the load resource threshold and the load resources required by each particle for the corresponding target task; Based on the dependency information between the target tasks corresponding to each particle, a second penalty function is constructed; The particle fitness function is constructed based on the target execution time, the first penalty function, and the second penalty function.

7. A humanoid robot task scheduling device in a humanoid robot training field, characterized in that: include: a data acquisition module, configured to acquire task information corresponding to a plurality of tasks and task execution information of a plurality of humanoid robots, wherein the task execution information indicates the execution time and load resources required for each humanoid robot to perform different tasks, and the number of tasks corresponding to the task information corresponds to the number of humanoid robots; A utility function construction module is used to construct the utility function of each humanoid robot for different tasks based on the task information of each task and the task execution information of the humanoid robot; A task assignment module, configured to determine a corresponding target task assigned to each humanoid robot based on the utility function of each humanoid robot for different tasks; The execution sequence determination module is used to determine the target execution sequence between the target tasks assigned to each humanoid robot based on the task information corresponding to the target tasks assigned to each humanoid robot and the task execution information of the corresponding humanoid robot.

8. An electronic device, characterized in that: include: Memory, processor; The memory stores computer-executable instructions; The processor executes the computer-executable instructions stored in the memory, so that the processor performs the method according to any one of claims 1 to 6.

9. A computer-readable storage medium, characterized in that The computer-readable storage medium stores computer-executable instructions, which are used to implement the method according to any one of claims 1 to 6 when executed by a processor.

10. A computer program product, characterized in that The invention comprises a computer program, which implements the method according to any one of claims 1 to 6 when the computer program is executed by a processor.

Citation Information

Patent Citations

  • Distributed intelligent factory supply task allocation method based on game theory

    CN112465391A

  • Task scheduling method, device and equipment for multiple pieces of Internet of Things equipment and storage medium

    CN118916126A

  • Distributed collaborative debugging method and system for industrial robot

    CN119292082A

  • Multi-task collaborative robot scheduling method and system for intelligent factory

    CN119596882A

  • Robot ground station intelligent monitoring system and method

    CN119624066A

Cited By

  • Humanoid robot task scheduling method and related equipment

    CN121132649A

  • Humanoid robot scheduling method based on group game and related equipment

    CN121212731A

  • Dynamic task allocation method for humanoid robot in industrial scene and related equipment

    CN121340239A