A method for planning a feasible contact sequence of a multi-legged robot and related devices

CN121275014BActive Publication Date: 2026-08-18HARBIN INST OF TECH
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202511353486.1
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2025-09-22
Publication Date
2026-08-18
Estimated Expiration
2045-09-22

AI Technical Summary

Technical Problem

[0004]综上所述,现有方法往往无法有效协调决策维度与约束满足之间的关系,导致规划效率低下,甚至无法完成复杂环境下的通过性任务

Benefits of technology

[0041]This application provides a method and related apparatus for planning feasible contact sequences for a multi-legged robot. By guiding path planning and constructing multiple constraints, it ensures that the multi-legged robot adheres to multiple constraints, including static stability, kinematics, joint torque, and collision, throughout its movement, thus avoiding unstable or infeasible actions. Furthermore, by iteratively optimizing the feasible contact state at each step using a Monte Carlo tree search method and dynamically selecting the optimal node, the multi-legged robot can find a feasible path from the initial contact state to the target contact state in a complex state space, ensuring that the robot's actions at each node are optimal and safe. In addition, by recursively selecting scalable child nodes using a tree strategy and combining rapid simulation with stochastic simulation and a backpropagation strategy, the target contact state can be found efficiently in complex environments, significantly improving search efficiency and path accuracy.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121275014B_ABST
    Figure CN121275014B_ABST
Patent Text Reader

Abstract

The application discloses a kind of multi-legged robot feasible contact sequence planning method and related device, it is related to robot motion planning technical field, the method includes based on initial position, target position, the topography physical parameter of the environment where it is located and the necessary condition of preset multi-legged robot feasibility contact, using guide path planning method is guided path planning to multi-legged robot, obtains guide path;Multi-constraint condition of multi-legged robot is constructed;Using Monte Carlo tree search method is iterated to root node, obtains the multiple child nodes corresponding to root node;Judge whether it meets termination condition;If yes, then from all child nodes, optimal node is gradually selected, and the optimal feasible contact sequence corresponding to initial contact state to target contact state is output, and input to trajectory planner, control multi-legged robot motion.The application can improve the planning efficiency of feasible contact sequence, and make multi-legged robot can move stably under complex terrain.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of robot motion planning technology, and in particular to a method and related apparatus for planning feasible contact sequences for a multi-legged robot. Background Technology

[0002] With the continuous development of robotics technology, multi-legged robots are increasingly widely used in complex environments due to their excellent terrain adaptability and stability. To accomplish movement and manipulation tasks, multi-legged robots need to continuously plan contact sequences with their environment to achieve stable and efficient motion. However, complex environments pose significant challenges to the autonomous movement capabilities of robots, especially in the real-time generation of feasible contact sequences, where numerous technical bottlenecks remain.

[0003] Specifically, finding feasible contact sequences in complex environments presents a multifaceted challenge for multi-legged robots. Firstly, the increased number of legs in a multi-legged robot introduces more complex planning and decision-making problems. Each step of a multi-legged robot's movement requires decisions regarding its gait, foot placement, and overall posture. Due to the vast number of combinations of these variables (i.e., contact sequence combinations), determining the optimal combination becomes extremely difficult. Furthermore, traversing the environment requires a series of consecutive planning steps, rather than a single decision step; the high-dimensional decision-making and optimization process easily leads to combinatorial explosion. Secondly, when planning each step, multi-legged robots must satisfy multiple constraints, such as stability constraints, kinematic constraints, and torque limits, to ensure the planning result is physically feasible. Simultaneously, in complex environments, the feasible area shrinks due to uneven surfaces and diverse terrain types. Although numerous possible contact sequence combinations exist, most are ineffective under multiple strict constraints and challenging environmental conditions.

[0004] In summary, existing methods often fail to effectively coordinate the relationship between decision dimensions and constraint satisfaction, leading to low planning efficiency and even the inability to complete accessibility tasks in complex environments. Therefore, finding feasible contact sequences becomes particularly challenging and time-consuming under the combined influence of these complex constraints and harsh environments. Summary of the Invention

[0005] The purpose of this application is to provide a method and related apparatus for planning feasible contact sequences for multi-legged robots, which can improve the planning efficiency of feasible contact sequences and enable multi-legged robots to move stably in complex terrain.

[0006] To achieve the above objectives, this application provides the following solution:

[0007] In a first aspect, this application provides a method for planning feasible contact sequences for a multi-legged robot, including:

[0008] Step S1: Obtain the initial position, target position, and terrain physical parameters of the environment of the multi-legged robot. Based on the initial position, target position, terrain physical parameters of the environment, and the preset necessary conditions for the multi-legged robot to make contact, use the guided path planning method to plan the guided path for the multi-legged robot and obtain the guided path.

[0009] Step S2: Construct multiple constraints for the multi-legged robot; the multiple constraints include static stability constraints, kinematic constraints, joint torque constraints, and collision constraints.

[0010] Step S3: Use the Monte Carlo tree search method to perform iterative operations on the root node to obtain multiple child nodes corresponding to the root node; the root node is the node corresponding to the initial contact state; the child nodes are the nodes corresponding to any feasible contact state between the initial contact state and the target contact state; the nodes include the feasible support state, feasible centroid pose and feasible footing point of the multi-legged robot.

[0011] Step S4: Determine if the termination condition is met; if yes, then select the optimal node from all child nodes step by step and output the optimal feasible contact sequence corresponding to the initial contact state to the target contact state; if no, continue to perform the iterative operation; the optimal node is the child node with the highest value; the optimal feasible contact sequence is used to input into the trajectory planner to control the movement of the multi-legged robot.

[0012] Specifically, the iteration operation is as follows:

[0013] Starting from the root node, recursively select expandable child nodes using a tree strategy;

[0014] Based on the guiding path and multiple constraints, the scalable child nodes are processed to obtain the corresponding set of feasible candidate nodes, and a feasible contact state is selected from the set of feasible candidate nodes as a new child node.

[0015] Starting from the new child node, a rapid random simulation is performed using a simulation strategy until the target contact state is reached, and a reward value is obtained.

[0016] The reward value is backpropagated along the search path from the new child node to the root node, updating the visit count and value of all child nodes on the search path to obtain the updated visit count and updated value.

[0017] Optionally, the necessary conditions for the multi-legged robot to be capable of contact include: the working space of the multi-legged robot's legs colliding with the environment, and the torso of the multi-legged robot not colliding with the environment.

[0018] Optionally, the expandable child nodes are determined as the current feasible contact state. Based on the guiding path and multiple constraints, the expandable child nodes are processed to obtain the corresponding set of feasible candidate nodes, specifically including:

[0019] Based on the current feasible contact state and static stability constraints, determine the next feasible support state; there are multiple possible next feasible support states.

[0020] Based on the guidance path, feasible working region, joint torque constraints, and collision constraints, the next feasible support state is processed to determine the next feasible centroid pose; the feasible working region is calculated based on static stability constraints and kinematic constraints; there are multiple next feasible centroid poses.

[0021] Based on the preset leg workspace, terrain physical parameters and joint torque constraints, the feasible centroid pose for the next step is processed to calculate the feasible landing point for the next step; there are multiple feasible landing points for the next step.

[0022] The next feasible support state, the next feasible centroid pose, and the next feasible foot point are combined to obtain the next feasible contact state; there are multiple next feasible contact states.

[0023] Based on all possible next-step contact states, the corresponding set of feasible candidate nodes is obtained.

[0024] Optionally, the tree strategy is an upper confidence interval algorithm, and the calculation formula for the upper confidence interval algorithm is:

[0025]

[0026] Where UCB1 is the upper confidence interval value; X j n is the reward value for child node j; j N is the number of visits to child node j; N is the number of visits to the parent node; C is the balance factor.

[0027] Optionally, the updated value is calculated using a backpropagation operator based on power mean, and the calculation formula for the backpropagation operator based on power mean is as follows:

[0028]

[0029] in, For the updated value; T represents the average reward of the child nodes. i (n) represents the number of visits from child node i to child node n; p is the adjustable power parameter; K is the total number of child nodes.

[0030] Optionally, the iterative operation is performed using a hash-driven parallel architecture, specifically including:

[0031] The Zobrist hash algorithm is used to randomly assign nodes in the Monte Carlo search tree to multiple processors;

[0032] For each processor, a message queue is established; the message queue is used to receive and process node information sent by other processors besides the current processor.

[0033] Each processor independently performs iterative operations on its assigned node and communicates and synchronizes via message queues.

[0034] Optionally, a dummy loss term is introduced into the upper confidence interval algorithm. The formula for calculating the dummy loss term is as follows:

[0035]

[0036] Where UCBvl is the virtual loss value; X j t is the reward value for child node j; j n is the number of processors used by child node j; j N is the number of visits to child node j; N is the number of visits to the parent node; C is the balance factor.

[0037] In a second aspect, this application provides a computer device, including: a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor executes the computer program to implement the planning method for a feasible contact sequence of a multi-legged robot as described above.

[0038] Thirdly, this application provides a computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements the planning method for feasible contact sequences of a multi-legged robot as described above.

[0039] Fourthly, this application provides a computer program product, including a computer program that, when executed by a processor, implements the planning method for feasible contact sequences of a multi-legged robot as described above.

[0040] According to the specific embodiments provided in this application, this application has the following technical effects:

[0041] This application provides a method and related apparatus for planning feasible contact sequences for a multi-legged robot. By guiding path planning and constructing multiple constraints, it ensures that the multi-legged robot adheres to multiple constraints, including static stability, kinematics, joint torque, and collision, throughout its movement, thus avoiding unstable or infeasible actions. Furthermore, by iteratively optimizing the feasible contact state at each step using a Monte Carlo tree search method and dynamically selecting the optimal node, the multi-legged robot can find a feasible path from the initial contact state to the target contact state in a complex state space, ensuring that the robot's actions at each node are optimal and safe. In addition, by recursively selecting scalable child nodes using a tree strategy and combining rapid simulation with stochastic simulation and a backpropagation strategy, the target contact state can be found efficiently in complex environments, significantly improving search efficiency and path accuracy. Attached Figure Description

[0042] To more clearly illustrate the technical solutions in the embodiments of this application or the prior art, the drawings used in the embodiments will be briefly introduced below. Obviously, the drawings described below are only some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0043] Figure 1 This is an application environment diagram of a method for planning feasible contact sequences for a multi-legged robot according to an embodiment of this application;

[0044] Figure 2 A flowchart illustrating a method for planning feasible contact sequences for a multi-legged robot, provided in an embodiment of this application;

[0045] Figure 3 This is a schematic diagram of a parallel planning framework for feasible contact sequences of a multi-legged robot under multiple constraints, according to one embodiment of this application.

[0046] Figure 4 This is a schematic diagram illustrating the structure of the reward function term in one embodiment of this application;

[0047] Figure 5 This is a schematic diagram of hash-driven parallel allocation nodes in one embodiment of this application;

[0048] Figure 6 This is a schematic diagram of the MCTS search process based on hash allocation in one embodiment of this application;

[0049] Figure 7 This is a schematic diagram of the structure of a computer device provided in an embodiment of this application. Detailed Implementation

[0050] The technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, and not all embodiments. Based on the embodiments of this application, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this application.

[0051] To make the above-mentioned objectives, features and advantages of this application more apparent and understandable, the application will be further described in detail below with reference to the accompanying drawings and specific embodiments.

[0052] The method for planning feasible contact sequences for multi-legged robots provided in this application can be applied to, for example... Figure 1 In the application environment shown, terminal 102 communicates with server 104 via a network. A data storage system can store the data that server 104 needs to process. The data storage system can be set up independently, integrated into server 104, or placed in the cloud or on another server. Terminal 102 can send the initial position, target position, and terrain physical parameters of the environment of the multi-legged robot to server 104. Based on the initial position, target position, terrain physical parameters, and necessary conditions for the multi-legged robot's feasible contact, server 104 uses a guided path planning method to plan a guided path for the multi-legged robot, obtaining a guided path; constructs multiple constraints for the multi-legged robot; performs iterative operations on the root node using a Monte Carlo tree search method to obtain multiple child nodes corresponding to the root node; determines whether the termination condition is met; if so, it gradually selects the optimal node from all child nodes, outputting the optimal feasible contact sequence corresponding to the initial contact state to the target contact state, and inputs it into the trajectory planner to control the movement of the multi-legged robot. Server 104 can feed back the obtained optimal feasible contact sequence to terminal 102.

[0053] The terminal 102 can be, but is not limited to, a trajectory planner or a low-level controller for a multi-legged robot. The server 104 can be implemented using a standalone server or a server cluster consisting of multiple servers, or it can be a cloud server.

[0054] In one exemplary embodiment, such as Figure 2 As shown, a method for planning feasible contact sequences for a multi-legged robot is provided. This method is executed by a computer device, specifically by a terminal or server alone, or by both a terminal and a server. In this embodiment, the method is applied to... Figure 1 Taking server 104 as an example, the explanation includes the following steps S1 to S4. Wherein:

[0055] Step S1: Obtain the initial position, target position, and terrain physical parameters of the environment of the multi-legged robot. Based on the initial position, target position, terrain physical parameters of the environment, and the preset necessary conditions for the multi-legged robot to make contact, use the guided path planning method to plan the guided path for the multi-legged robot and obtain the guided path.

[0056] Step S2: Construct multiple constraints for the multi-legged robot; the multiple constraints include static stability constraints, kinematic constraints, joint torque constraints, and collision constraints.

[0057] Step S3: Use the Monte Carlo Tree Search (MCTS) method to perform iterative operations on the root node to obtain multiple child nodes corresponding to the root node; the root node is the node corresponding to the initial contact state; the child nodes are the nodes corresponding to any feasible contact state between the initial contact state and the target contact state; the contact state of the multi-legged robot is regarded as a node in the Monte Carlo search tree, and the node includes the feasible support state, feasible centroid pose and feasible footing point of the multi-legged robot.

[0058] Step S4: Determine if the termination condition is met. If yes, progressively select the optimal node from all child nodes and output the optimal feasible contact sequence from the initial contact state to the target contact state. If no, continue the iterative operation. The optimal node is the child node with the highest value. The optimal feasible contact sequence is input into the trajectory planner to control the movement of the multi-legged robot. The parallel planning framework for feasible contact sequences of multi-legged robots under multiple constraints is as follows: Figure 3 As shown.

[0059] Specifically, the iteration operation is as follows:

[0060] Step S3-1, Selection: Starting from the root node, recursively select expandable child nodes using a tree strategy.

[0061] Step S3-2, Expansion: Based on the guiding path and multiple constraints, the expandable child nodes are processed to obtain the corresponding set of feasible candidate nodes, and a feasible contact state is selected from the set of feasible candidate nodes as a new child node.

[0062] Step S3-3, Simulation: Starting from the new child node, use the simulation strategy to perform a fast random simulation until the target contact state is reached, and obtain the reward value.

[0063] Step S3-4, Backpropagation: Backpropagate the reward value along the search path from the new child node to the root node, update the visit count and value of all child nodes on the search path, and obtain the updated visit count and updated value.

[0064] By implementing steps S1 to S4 above, this application ensures that the multi-legged robot adheres to multiple constraints, including static stability, kinematics, joint torque, and collision, throughout its movement by guiding path planning and constructing multiple constraints, thus avoiding unstable or infeasible actions. Furthermore, by iteratively optimizing the feasible contact state at each step using the Monte Carlo tree search method and dynamically selecting the optimal node, the multi-legged robot can find a feasible path from the initial contact state to the target contact state in a complex state space, ensuring that the robot's actions at each node are optimal and safe. In addition, by recursively selecting scalable child nodes using a tree strategy and combining rapid simulation with stochastic simulation and a backpropagation strategy, the target contact state can be found efficiently in complex environments, significantly improving search efficiency and path accuracy.

[0065] Furthermore, the necessary condition for the multi-legged robot to make contact in step S1 includes: the multi-legged robot's leg workspace B. i The necessary condition for the multi-legged robot to collide with its environment, and for its torso A to not collide with its environment E, is expressed by the following formula:

[0066]

[0067] Further, in step S3-2, the expandable child nodes are determined as the current feasible contact states; based on the guiding path and multiple constraints, the expandable child nodes are processed to obtain the corresponding set of feasible candidate nodes, specifically including:

[0068] Step a1: Define the set of feasible candidate nodes for any node (i.e., any expandable child node) as S. candidate .

[0069]

[0070] Where, Φ * In the state of a multi-legged robot; S represents the feasible support state when a node moves to the next step. gait This is the set of feasible support states when a node moves to the next step. The posture of a multi-legged robot; Position of the multi-legged robot; S COG This is the set of next feasible centroid (COG) poses that a node can move to under a specified feasible support condition; The foot position vector; S is the normal vector for all contact points (i.e., landing points); foothold This is the set of feasible landing points for a node under a specified support state and feasible COG pose.

[0071] Step a2: Based on the current feasible contact state and static stability constraints, determine the next feasible support state. There are multiple next feasible support states; and the feasible support state S gait Each support leg must not be a faulty leg; and the feasible support state S gait It cannot be consistent with the support state of the parent node of Φ (current feasible support state).

[0072] Step a3: Based on the guide path, feasible working area, joint torque constraints, and collision constraints, process the feasible support state for the next step to determine the feasible centroid pose for the next step; the feasible working area is calculated based on static stability constraints and kinematic constraints; there are multiple feasible centroid poses for the next step.

[0073] Step a4: Based on the preset leg workspace, terrain physical parameters and joint torque constraints, process the feasible centroid pose for the next step and calculate the feasible landing point for the next step (which includes the feasible landing point for each leg, randomly combined or selected using an expert strategy); there are multiple feasible landing points for the next step.

[0074] Step a5: Combine the next feasible support state, the next feasible centroid pose, and the next feasible foot point to obtain the next feasible contact state; there are multiple next feasible contact states.

[0075] Step a6: Based on all feasible contact states for the next step, obtain the corresponding set of feasible candidate nodes.

[0076] Furthermore, in step S3-3, starting from the new child node, a rapid random simulation is performed using a simulation strategy until the target contact state is reached, and the reward value is obtained. The evaluation equation for the reward value is:

[0077] J i =∑ω i,(.) J i,(.) (3);

[0078] Among them, J i ω is the score for node i. i,(.) J is the weighting coefficient; i,(.) Different scoring items; the meanings of different scoring items are as follows: Figure 4 As shown, the specific scoring items are set as follows:

[0079] (1)J i,SimStepL The reward is the average step size of the simulation sequence starting from node i. i,SimStepL A higher value means that the multi-legged robot can travel a greater distance starting from that node, and that the multi-legged robot has a greater potential to traverse complex environments at that node.

[0080] (2)J i,StepExpThe reward is the average step size of the extended sequence of nodes from node i to the current root node, which makes the algorithm tend to converge to the faster sequence. Define the scalable sequence of states from node i to the root node as a set C. i Define C i The number of elements in is n i The step size between node i and its parent node is s. i For the root node r, s r If J is set to 0, then J i,StepExp The calculation formula is as follows:

[0081]

[0082] (3)J i,marginExp The reward is the minimum static stability margin of the extended sequence of nodes from node i to the current root node, making the algorithm more likely to converge to a sequence with a larger stability margin. SM i J represents the static stability margin of node i. i,marginExp The calculation formula is as follows:

[0083] J i,marginExp =min(SM) j (j∈C) i (5);

[0084] (4)J i,disToPar The reward is the step size from node i to its parent node, preventing the robot from staying in place.

[0085] Furthermore, the updated value described in steps S3-4 is calculated using a backpropagation operator based on power mean. This operator allows for balancing the values ​​between the average reward and the maximum reward by adjusting a single coefficient, effectively achieving a balance between a pessimistic estimate of the average reward and an optimistic estimate of the maximum reward. The formula for calculating the backpropagation operator based on power mean is as follows:

[0086]

[0087] in, For the updated value; T represents the average reward of the child nodes. i (n) represents the number of visits from child node i to child node n; p is the adjustable power parameter; K is the total number of child nodes.

[0088] Furthermore, the contact planning method for feasible contact sequences employs hash-driven parallelism to accelerate the search planning process. Simultaneously, the aforementioned reachability conditions are used for filtering during node expansion to ensure the physical probability of search results. The iterative operations are executed using a hash-driven parallel architecture, such as... Figure 5 and Figure 6As shown, it specifically includes:

[0089] Step b1: Use a hash algorithm to randomly assign nodes in the Monte Carlo search tree to multiple processors; the hash function randomly divides the Monte Carlo search tree into four partitions (represented by four colors), and each processor stores the nodes in the assigned partition in the corresponding hash table.

[0090] Step b2: For each processor, a message queue is established, and memory is allocated for the processor to store node information. The message queue is used to receive and process node information sent by other processors besides the processor itself. The message types mainly include three types: Search, Backprogation (BP), and Stop. Each time a message to be processed pops out of the message queue, it will be processed according to the different types.

[0091] In step b3, each processor independently performs iterative operations on the assigned node and communicates and synchronizes through a message queue.

[0092] "Search" message processing: This process includes the selection, expansion, and simulation phases in the MCTS workflow. First, the algorithm determines whether the node transmitted by the pop-up message is already stored in local memory. If not, the node will undergo simulation, its score will be calculated, and it will be added to local memory. Finally, the node will be published as a new "BP" message. If it has already been added locally, the algorithm will perform either the selection or expansion phase depending on whether the node has been expanded, ultimately selecting a new node and sending it to the corresponding processor based on its hash value.

[0093] "BP" message processing: The processor will receive information from the child node based on the message and update the node's information, including score, access count, processor usage, etc. Finally, it will update the relevant information stored on the local node.

[0094] "STOP" message handling: When the algorithm reaches a specified time or stops, the specified processor will issue a "STOP" message to all other processors and request them to stop the search.

[0095] Furthermore, in this embodiment, the Zobrist hash algorithm is used, and its steps are as follows:

[0096] Step c1: During the initialization process, a hash table with dimension W×H is constructed using the Zobrist algorithm, where W represents the maximum number of candidate nodes and H represents the maximum allowed depth of the tree.

[0097] Step c2, when expanding child nodes, derives a new hash value by performing a bitwise OR operation between the hash value of the node and each value of all its parent nodes in the hash table, thereby ensuring that a different hash value is assigned to the node.

[0098] Furthermore, the tree strategy described in step S3-1 is the Upper Confidence Interval Algorithm (UCB1), and the calculation formula for the Upper Confidence Interval Algorithm is as follows:

[0099]

[0100] Where UCB1 is the upper confidence interval value; X j n is the reward value for child node j; j N is the number of visits to child node j; N is the number of visits to the parent node; C is the balance factor.

[0101] Furthermore, a virtual loss term is introduced into the upper confidence interval algorithm. The virtual loss method is described as follows:

[0102]

[0103] Where UCBvl is the virtual loss value; X j t is the reward value for child node j; j n is the number of processors used by child node j; j Let N be the access count of child node j; N be the access count of the parent node; and C be the balancing factor. The number of processors t occupied is determined by referencing it in UCB1. j This results in the visited node having a lower score, causing other processors to ignore the node and search for other high-scoring nodes.

[0104] Furthermore, in this embodiment, an extremum backup strategy is used, which means preserving the extremum of a node during backpropagation. Typically, a larger value is chosen for the parameter p, which is equivalent to a maximum backpropagation strategy. The propagation formula is as follows:

[0105] X i =J i (9);

[0106]

[0107] If the score is less than the parent node's score, the parent node's score remains unchanged, and the parallel MCTS stops backpropagation to that node. The processor containing the node begins sending "Search" messages, allowing the algorithm to continue exploring downwards until a node with a higher score is found.

[0108] This application also provides an application scenario in which the above-described method for planning feasible contact sequences for multi-legged robots is applied. Specifically, the planning method provided in this embodiment can be applied to the planning scenario of feasible contact sequences for multi-legged robots. The planning scenario includes an optimal feasible contact sequence generation stage and an optimal feasible contact sequence execution stage; the optimal feasible contact sequence generation stage is used to output the optimal feasible contact sequence corresponding to the initial contact state to the target contact state; the optimal feasible contact sequence execution stage is used to input the optimal feasible contact sequence into the trajectory planner to control the movement of the multi-legged robot. The planning method provided in this embodiment belongs to the optimal feasible contact sequence generation stage.

[0109] In one exemplary embodiment, a computer device is provided, which may be a server or a terminal, and its internal structure diagram may be as follows. Figure 7 As shown, this computer device includes a processor, memory, input / output (I / O) interfaces, and a communication interface. The processor, memory, and I / O interfaces are connected via a system bus, and the communication interface is also connected to the system bus via the I / O interfaces. The processor provides computational and control capabilities. The memory includes non-volatile storage media and internal memory. The non-volatile storage media stores the operating system, computer programs, and a database. The internal memory provides the environment for the operation of the operating system and computer programs stored in the non-volatile storage media. The database stores and processes data. The I / O interfaces are used for exchanging information between the processor and external devices. The communication interface is used for communicating with external terminals via a network. When executed by the processor, the computer program implements a method for planning feasible contact sequences for a multi-legged robot.

[0110] Those skilled in the art will understand that Figure 7 The structures shown are merely block diagrams of some structures related to the present application and do not constitute a limitation on the computer device to which the present application is applied. Specific computer devices may include more or fewer components than shown in the figures, or combine certain components, or have different component arrangements. In an exemplary embodiment, a computer device is provided, including a memory and a processor. The memory stores a computer program, and the processor executes the computer program to implement the steps in the above-described method embodiments.

[0111] In one exemplary embodiment, a computer-readable storage medium is provided storing a computer program that, when executed by a processor, implements the steps in the above-described method embodiments.

[0112] In one exemplary embodiment, a computer program product is provided, including a computer program that, when executed by a processor, implements the steps in the above-described method embodiments.

[0113] It should be noted that the user information (including but not limited to user device information, user personal information, etc.) and data (including but not limited to data used for analysis, data stored, data displayed, etc.) involved in this application are all information and data authorized by the user or fully authorized by all parties, and the collection, use and processing of the relevant data must comply with relevant regulations.

[0114] Those skilled in the art will understand that all or part of the processes in the methods of the above embodiments can be implemented by a computer program instructing related hardware. The computer program can be stored in a non-volatile computer-readable storage medium, and when executed, it can include the processes of the embodiments of the above methods. Any references to memory, databases, or other media used in the embodiments provided in this application can include at least one of non-volatile and volatile memory. Non-volatile memory can include read-only memory (ROM), magnetic tape, floppy disk, flash memory, optical memory, high-density embedded non-volatile memory, resistive random access memory (ReRAM), magnetic random access memory (MRAM), ferroelectric random access memory (FRAM), phase change memory (PCM), graphene memory, etc. Volatile memory can include random access memory (RAM) or external cache memory, etc. By way of illustration and not limitation, RAM can take many forms, such as Static Random Access Memory (SRAM) or Dynamic Random Access Memory (DRAM).

[0115] The databases involved in the embodiments provided in this application may include at least one type of relational database and non-relational database. Non-relational databases may include, but are not limited to, blockchain-based distributed databases. The processors involved in the embodiments provided in this application may be general-purpose processors, central processing units, graphics processing units, digital signal processors, programmable logic devices, quantum computing-based data processing logic devices, etc., and are not limited to these.

[0116] The technical features of the above embodiments can be combined in any way. For the sake of brevity, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this specification.

[0117] This document uses specific examples to illustrate the principles and implementation methods of this application. The descriptions of the above embodiments are only for the purpose of helping to understand the methods and core ideas of this application. Furthermore, those skilled in the art will recognize that, based on the ideas of this application, there will be changes in the specific implementation methods and application scope. Therefore, the content of this specification should not be construed as a limitation of this application.

Claims

1. A method for planning feasible contact sequences for a multi-legged robot, characterized in that, include: Step S1: Obtain the initial position, target position, and terrain physical parameters of the environment of the multi-legged robot. Based on the initial position, target position, terrain physical parameters of the environment, and the preset necessary conditions for the multi-legged robot to make contact, use the guided path planning method to plan the guided path for the multi-legged robot and obtain the guided path. Step S2: Construct multiple constraints for the multi-legged robot; the multiple constraints include static stability constraints, kinematic constraints, joint torque constraints, and collision constraints. Step S3: Use the Monte Carlo tree search method to perform iterative operations on the root node to obtain multiple child nodes corresponding to the root node; the root node is the node corresponding to the initial contact state. The child node is the node corresponding to any feasible contact state from the initial contact state to the target contact state; the node includes the feasible support state, feasible center of mass pose, and feasible foot placement of the multi-legged robot; Step S4: Determine if the termination condition is met; if yes, then select the optimal node from all child nodes step by step and output the optimal feasible contact sequence corresponding to the initial contact state to the target contact state; if no, continue to perform the iterative operation; the optimal node is the child node with the highest value; the optimal feasible contact sequence is used to input into the trajectory planner to control the movement of the multi-legged robot. The iterative operations are performed using a hash-driven parallel architecture, specifically including: The Zobrist hash algorithm is used to randomly assign nodes in the Monte Carlo search tree to multiple processors; For each processor, establish a message queue; Each processor independently executes iterative operations on its assigned node, and communicates and synchronizes via a message queue; the iterative operations are as follows: Starting from the root node, recursively select expandable child nodes using a tree strategy; Based on the guiding path and multiple constraints, the scalable child nodes are processed to obtain a set of corresponding feasible candidate nodes. A feasible contact state is then selected from this set as a new child node. Specifically, the scalable child node is identified as the current feasible contact state. The process of processing the scalable child node to obtain the corresponding set of feasible candidate nodes, based on the guiding path and multiple constraints, includes: determining the next feasible support state based on the current feasible contact state and static stability constraints; there are multiple next feasible support states; and determining the next feasible support state based on the guiding path, feasible working area, joint torque constraints, and collision constraints. The support state is processed to determine the feasible center-of-gravity pose for the next step; the feasible working area is calculated based on static stability constraints and kinematic constraints; there are multiple feasible center-of-gravity poses for the next step; based on the preset leg working space, terrain physical parameters, and joint torque constraints, the feasible center-of-gravity pose for the next step is processed to calculate the feasible footing point for the next step; there are multiple feasible footing points for the next step; the feasible support state for the next step, the feasible center-of-gravity pose for the next step, and the feasible footing points for the next step are combined to obtain the feasible contact state for the next step; there are multiple feasible contact states for the next step; based on all feasible contact states for the next step, the corresponding set of feasible candidate nodes is obtained; Starting from the new child node, a rapid random simulation is performed using a simulation strategy until the target contact state is reached, and a reward value is obtained. The reward value is backpropagated along the search path from the new child node to the root node, updating the visit count and value of all child nodes on the search path to obtain the updated visit count and updated value. The updated value is calculated using the backpropagation operator based on power mean, and the calculation formula for the backpropagation operator based on power mean is as follows: ; in, For the updated value; The average reward for the child nodes; child node To child nodes Number of visits; Adjustable power parameters; This represents the total number of child nodes.

2. The method for planning feasible contact sequences for a multi-legged robot according to claim 1, characterized in that, The necessary conditions for the permissible contact of the multi-legged robot include: the working space of the multi-legged robot's legs collides with the environment, and the torso of the multi-legged robot does not collide with the environment.

3. The method for planning feasible contact sequences for a multi-legged robot according to claim 1, characterized in that, The tree strategy is the upper confidence interval algorithm, and the calculation formula for the upper confidence interval algorithm is: ; in, The upper confidence interval value; child node The reward value; child node The number of visits; This represents the number of visits to the parent node; It is a balancing factor.

4. The method for planning feasible contact sequences for a multi-legged robot according to claim 1, characterized in that, The message queue is used to receive and process node information sent by processors other than this processor.

5. The method for planning feasible contact sequences for a multi-legged robot according to claim 3, characterized in that, A dummy loss term is introduced into the upper confidence interval algorithm. The formula for calculating the dummy loss term is as follows: ; in, This is a virtual loss value; child node The reward value; child node The number of processors used; child node The number of visits; This represents the number of visits to the parent node; It is a balancing factor.

6. A computer device, comprising: A memory, a processor, and a computer program stored in the memory and capable of running on the processor, characterized in that the processor executes the computer program to implement a method for planning feasible contact sequences for a multi-legged robot according to any one of claims 1-5.

7. A computer-readable storage medium having a computer program stored thereon, characterized in that, When executed by a processor, the computer program implements the method for planning feasible contact sequences for a multi-legged robot as described in any one of claims 1-5.

8. A computer program product, comprising a computer program, characterized in that, When executed by a processor, the computer program implements the method for planning feasible contact sequences for a multi-legged robot as described in any one of claims 1-5.

Citation Information

Patent Citations

  • Man-machine co-fusion intelligent motion planning method for hexapod robot in complex environment

    CN115857524A