Method for establishing a complex motion controller

By establishing transition tensors between motion controllers, the problems of complex motion generation and transition stability in existing motion controllers are solved, enabling robust transitions and low-cost expansion between various animal movements, applicable to motion control of quadrupedal and bipedal animals.

CN115810069BActive Publication Date: 2025-12-19INVENTEC PUDONG TECH CORPOARTION +1
View PDF 4 Cites 0 Cited by

Patent Information

Application Number
CN202111075964.9
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2021-09-14
Publication Date
2025-12-19
Estimated Expiration
2041-09-14

AI Technical Summary

Technical Problem

Existing motion controllers struggle to handle unfamiliar scenes when generating complex motions and have difficulty transitioning smoothly between multiple motions. In particular, methods for quadrupeds are not applicable to bipeds, and training new modules is costly and complex.

Method used

Using the Transition Motion Tensor as a data-driven architecture, a transition quality is calculated and the optimal transition quality is sought to build a complex motion controller suitable for the movement of quadrupeds and bipeds.

Benefits of technology

It enables robust generation of physically consistent new transitions without modifying existing motion datasets, reduces the cost of extended training, and can handle complex motion planning and user control commands.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115810069B_ABST
    Figure CN115810069B_ABST
Patent Text Reader

Abstract

A method for building a complex motion controller includes the steps of obtaining a source controller configured to generate a source motion and a target controller configured to generate a target motion; determining a transition tensor between the source controller and the target controller, the transition tensor having indices, one of the indices corresponding to phases of the source motion; calculating results of the transition tensor and recording the results according to the indices; calculating transition masses according to the results; and finding a best transition mass among the transition masses to build a complex motion controller configured to generate a complex motion corresponding to one of the phases.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present disclosure relates to motion controllers for characters, and in particular to an architecture that establishes transitions that are consistent with physical phenomena outside of a motion dataset. BACKGROUND

[0002] Motion controllers for characters with diverse motion capabilities are commonly used in animation, video games, and digital effects for movies.

[0003] Traditionally, to synthesize new animations from motion capture data, an interpolation structure, such as a motion graph, is created, in which nodes represent actions that are explicitly defined by motion capture data, and edges connecting two nodes define transitions between actions. To synthesize new animations, one can look up appropriate actions from the motion graph. Since it is a lookup mechanism, the motion graph needs to collect as many interactions as possible, which refer to various interactions between a character and its surroundings. However, such a motion graph becomes extremely large and complex. Even with such complexity, the motion graph still cannot synthesize motions in unseen scenarios. Moreover, the complexity of searching in the motion graph limits the refinement of control.

[0004] Even with the addition of neural networks, such as auto-regressive models, restricted Boltzmann machines, temporal convolutions, or recurrent variational auto-encoder models, in the motion graph, these approaches still struggle to generate long sequences of motions and tend to average motions, resulting in characters that look tense, stiff, or have severe foot sliding. Moreover, approaches that work for bipeds do not work for quadrupeds.

[0005] Kinematic controllers address the labeling problem of motion graphs by reducing the need to generate transitions between actions, while allowing users to arbitrarily control characters to produce desired motions. Moreover, physics-based controllers can be used to effectively simulate complex phenomena, in which physical simulations and environmental constraints enable characters to react to external disturbances in a way that is consistent with physical phenomena without the need to collect such reactions in advance. Existing physics-based controllers are based on kinematic controllers and maintain naturalness of motions by generating adversarial networks (GANs), which allow motion controllers to produce motions that are consistent with physical phenomena and are smooth and natural.

[0006] To increase the capability of the motion controller to produce a rich repertoire of motions, one can train by adding new motion data. However, each time a new data is added, the controller needs to retrain a large motion controller model. Another way is to add a new physics-based controller as a module and retrain the Multilayer Perceptron (MLP) that modulates the gating network for all the modules. However, even if only one new module is added, the complexity of training the MLP for all the modules still grows exponentially and also needs to avoid the training of the new module affecting the existing motions in the vocabulary. SUMMARY

[0007] Accordingly, the present disclosure proposes a method for building a complex motion controller, which includes a transition motion tensor (hereinafter referred to as transition tensor), a data-driven framework that can build new transitions outside of the motion dataset. The transition tensor preserves the robustness of the individual motion controller and switches to the target controller at the most appropriate stage.

[0008] According to an embodiment of the present disclosure, a method for building a complex motion controller includes the following steps performed by a processor: obtaining a source controller and a target controller, the source controller being used to generate a source motion, and the target controller being used to generate a target motion; determining a transition tensor between the source controller and the target controller, the transition tensor having a plurality of indices, one of the indices corresponding to a plurality of phases of the source motion; calculating a plurality of results of the transition tensor and recording the results according to the indices; calculating a plurality of transition qualities according to the results; and finding a best transition quality among the transition qualities to build a complex motion controller, the complex motion controller being used to generate a complex motion corresponding to one of the phases.

[0009] The present disclosure proposes a method for building a complex motion controller, which can effectively and robustly build new motions without modifying existing motions. Given several different physics-based motion controllers, the transition tensor proposed by the present disclosure can be used as a basis for switching between motion controllers. A unified complex motion controller can be built by querying the transition tensor for the best transition, which can generate new transitions containing various behaviors, such as decelerating before a character performs a higher jump or jumping immediately for better response. The present disclosure is suitable for representing the motions of quadruped and biped animals, quantitatively and qualitatively evaluating transition quality, and having the ability to handle complex motion planning while following user control instructions.

[0010] In summary, the present disclosure has the following contributions or effects:

[0011] 1. A data-oriented approach is proposed to build novel transitions that conform to physical phenomena outside the motion dataset;

[0012] 2. An extensible architecture is proposed to integrate existing controllers based on various architectures or training processes into a coherent and unified controller, and to reduce the training cost when expanding; and

[0013] 3. A solution is proposed to use controllers to solve complex motion planning problems while meeting user control instructions and physical environment constraints.

[0014] The above description of the present disclosure and the following description of the embodiments are used to demonstrate and explain the spirit and principles of the present disclosure, and to provide further explanation of the scope of the patent application of the present disclosure. BRIEF DESCRIPTION OF DRAWINGS

[0015] Figure 1 is a flowchart of a method for building a complex motion controller according to an embodiment of the present disclosure;

[0016] Figure 2 is a schematic diagram of adding external disturbances in the process of training template controllers;

[0017] Figure 3 is a schematic diagram of the degree of change in the transition tensor in the process of transitioning from a source motion to a target motion;

[0018] Figure 4 is a heat map and application schematic diagram of transition quality and its components;

[0019] Figure 5 is a schematic diagram of adding new template controllers; and

[0020] Figure 6is a comprehensive schematic diagram of a method for establishing a complex motion controller according to an embodiment of the present application.

[0021] Element number explanation

[0022] S1-S5: steps DETAILED DESCRIPTION

[0023] In view of the above, the present application proposes a method for establishing a complex motion controller, which includes a transition motion tensor (hereinafter referred to as a transition tensor), a data-driven framework, to establish a new transition beyond the motion dataset. The transition tensor retains the robustness of a single motion controller and switches to a target controller at the most appropriate stage.

[0024] According to a method for establishing a complex motion controller, the method includes the following steps performed by a processor: obtaining a source controller and a target controller, the source controller being used to generate a source motion, and the target controller being used to generate a target motion; determining a transition tensor between the source controller and the target controller, the transition tensor having a plurality of indices, one of the indices corresponding to a plurality of phases of the source motion; calculating a plurality of results of the transition tensor and recording the results according to the indices; calculating a plurality of transition qualities according to the results; and finding a best transition quality among the transition qualities to establish a complex motion controller, the complex motion controller being used to generate a complex motion corresponding to one of the phases.

[0025] The present application proposes a method for establishing a complex motion controller, which can effectively and robustly establish a new motion without modifying an existing motion. Given several different physical-based motion controllers, the transition tensor proposed by the present application can be used as a basis for switching between motion controllers. A unified complex motion controller can be established by querying the transition tensor to obtain the best transition, which is capable of generating new transitions containing various behaviors, such as deceleration before a character performs a higher jump or immediate jumping to obtain a better response. The present application is suitable for representing the motion of quadruped and biped animals, quantitatively and qualitatively evaluating transition qualities, and having the ability to handle complex motion planning while following user control instructions.

[0026] In summary, the present application has the following contributions or effects:

[0027] 1. A data-driven method is proposed, which can establish a novel transition consistent with physical phenomena beyond the motion dataset;

[0028] 2. Propose an extensible architecture to integrate existing controllers based on various architectures or training procedures into a coherent, unified controller and reduce the training cost when scaling up; and

[0029] 3. Propose a solution to solve complex motion planning problems using a controller that satisfies both user control commands and physical environment constraints.

[0030] The above description of the disclosure and the following description of the embodiments are used to demonstrate and explain the spirit and principles of the present invention, and provide further explanation of the scope of the patent application of the present invention.

[0031]

FIGURE SIMPLE EXPLANATION

[0032] Figure 1 is a flowchart of a method for establishing a complex motion controller according to an embodiment of the present invention;

[0033] Figure 2 is a schematic diagram of adding external disturbances in the process of training a template controller;

[0034] Figure 3 is a schematic diagram of the degree of change in the transition tensor in the process of transitioning from a source motion to a target motion;

[0035] Figure 4 is a heat map and application schematic diagram of transition mass and its constituent components;

[0036] Figure 5 is a schematic diagram of adding a new template controller; and

[0037] Figure 6 is a comprehensive schematic diagram of a method for establishing a complex motion controller according to an embodiment of the present invention.

[0038]

EMBODIMENT

[0039] The detailed features and characteristics of the present invention are described in detail in the following embodiments, which are sufficient for anyone skilled in the relevant art to understand the technical content of the present invention and implement it, and anyone skilled in the relevant art can easily understand the related ideas and characteristics of the present invention according to the content disclosed in the present specification, the scope of the patent application and the drawings. The following examples further illustrate the ideas of the present invention, but do not limit the scope of the present invention in any way.

[0040] The complex motion controller established by the present invention can be used to control virtual characters in movies and games, or to control robots in the real world.

[0041] Figure 1is a flow chart of a method for establishing a complex motion controller according to an embodiment of the present application, which is executed by a processor Figure 1 The step S1 is "obtaining a source controller and a target controller", the step S2 is "deciding a transition tensor between the source controller and the target controller", the step S3 is "calculating a plurality of results of the transition tensor and recording the results according to indexes", the step S4 is "calculating a plurality of transition masses according to the recorded results", and the step S5 is "finding a best transition mass in the transition masses to establish a complex motion controller". Details of each step are described below.

[0042] The step S1 is "obtaining a source controller and a target controller", the source controller generates a source motion according to a current state of a role and a control target, and the target controller generates a target motion according to the current state of the role and the control target. For example, the source motion is walking, the target motion is running, and the complex motion is a transition from walking to running. The input of the control target includes at least one physical parameter control quantity, such as a second speed of running or a gravity acceleration of falling from a high place.

[0043] The source controller and the target controller are both template controllers, details of which are described below:

[0044] In order to enable the role to perform a complex motion in a simulated physical environment, a common practice is to train a physics-based controller to adapt to multiple types of motions. However, using a single controller to output multiple complex motions requires a large amount of training cost, and during the training process, the training difficulty may be increased due to the large difference between the types of various motions. In order to avoid the above problems, the present application assigns each motion to a physics-based controller, which is called a template controller. This strategy can limit the training complexity to a single controller, so that the training process is easier to handle and independent operation.

[0045] Before training the template controller, a kinematic controller is used to collect a plurality of reference motion clips. In each reference motion clip, the role is controlled to repeatedly perform a respective motion, but the input parameters of speed, direction and height are slightly different each time. In order to generate realistic motions in a dynamic environment, the present application trains the template controller using the technology of deep reinforcement learning (DRL), and the template controller π(a t |s t ,c t ) outputs a motion a t ∈A, where t is a given time step, s t ∈S is a current state of a given role, and ct A and S represent the action and state domains, respectively, as control objectives. The current state s t stores the position, rotation, velocity, and angular velocity of the character. The control objectives where σ is the target movement speed (e.g., in meters / second), θ is the target direction (e.g., in radians), and h is the target height of the center of mass (COM) (e.g., in meters).

[0046] The present invention initializes the template controllers by performing "imitation learning" on a specified reference motion segment. In this process, the goal of the template controllers is to match the joint positions of the kinematic character and the simulated character. The present invention uses two consecutive frames of the kinematic character as the goal of the low-level controllers. Once converged, the present invention further fine-tunes the template controllers to follow high-level motion control commands (including parameters such as velocity, direction, and target height of COM). Since the values of the control objectives come from the reference motion segment, it is not necessary to set all values at all times. For example, the target height of COM can remain constant during a trot or canter motion, but the target height of COM needs to be adjusted over time during a jump motion.

[0047] To ensure the robustness of each template controller, the present invention introduces external disturbances during the training process, such as throwing objects of various sizes from random directions towards the character, as shown in Figure 2 Using the above approach, a set of controllable and robust template controllers Ψ = {π1... π6} will be obtained, each belonging to one control vocabulary in the vocabulary set V = {trot, canter, jump, walk, stand, sit}.

[0048] ​For the training of template controllers, the present invention uses techniques such as proximal policy optimization, generalized advantage estimator (GAE), multi-step returns TD(λ), etc. To improve sampling efficiency and prevent template controllers from falling into a local optimal solution that is poor for the whole, the present invention adopts techniques such as early termination and reference state initialization mentioned in the document “Xue Bin Peng, Pieter Abbeel, Sergey Levine, and Michiel van de Panne. 2018. DeepMimic: Example-Guided Deep Reinforcement Learning of Physics-Based Character Skills. ACM Transactions on Graphics (TOG) 37, 4 (2018), 143.”

[0049] The present invention implements each template controller as a hierarchical policy, each of which has low-order controllers represented by primitives, and the control target is directly assigned to the low-order controllers. A template controller usually requires four primitives, and the jump motion is an exception, which requires eight primitives to solve the additional motion complexity.

[0050] Template controllers only allow characters to perform specific motions. Therefore, a single template controller cannot solve tasks that require complex motions that integrate multiple motions. For example, controlling a character to jump over a large pit and run to the destination, the character needs to run fast enough first, then jump, and run towards the destination after landing. However, it is not a simple task to know when the character transitions between running and jumping, because the state of the character directly affects the transition result. Simple transitions can produce complex motions that look strange or even fail. Therefore, the present invention proposes a data-oriented transition tensor in step S2 to guide the character to successfully transition from one motion to another by carefully examining the key time points of the transition.

[0051] Step S2 is "decide the transition tensor between the source controller and the target controller", the transition tensor (hereinafter referred to as tensor) has multiple indices, one of which corresponds to the multiple phases of the source motion. For example, the source motion is to raise the left hand, which includes multiple phases such as elbow joint rotation 0 degrees, 1 degree, 2 degrees, 3 degrees… to the upper limit of the rotatable angle.

[0052] In the process of switching from the source controller to the target controller, the role is in a specific state (phase) at the source controller, and the target controller may never have seen this state, and when the target state controller tries to recover from this new state, a new transition motion is generated. This new transition motion does not exist in the source controller or the target controller. That is, switching between the pair of two controllers generates a transition motion, as shown in Figure 3 .

[0053] However, arbitrarily switching controllers will produce unstable transitions because the difficulty of the motion varies. Although the switching process can be improved by assigning control targets compatible with the source motion and the target motion, such as inserting motion speed to transition between different motion gaits. However, this strategy is ineffective for motions that require more delicate and accurate landing timing, which is suitable for the role's phase tag. For example, whether it is possible to successfully transition between jogging and jumping depends on whether the role's feet touch the ground. Therefore, when the role is in the air, the complex motion of returning from jumping to jogging can increase the complexity of the target controller, resulting in longer stabilization time, excessive force, deviation from the control target, and even causing the role to fall.

[0054] In order to describe the possibility of successful transition between the source motion and the target motion, the present application defines a tensor T with four dimensions to record the transition result, as shown in the following way one.

[0055] Formula one: T m,,n,ω = (η, Δt, e, α)

[0056] The four indices of the tensor T include: m e V representing the source controller, n e V representing the target controller, where V is the vocabulary set, φ e [0, 1) representing the phase of the source controller, and ω e [0, 1) representing the phase of the target controller. Each combination (η, Δt, e, α) depends on w = (m, φ, n, ω), that is: η≡ηw.

[0057] Each element T ware a 4-dimensional vector representing the transition outcome at w. The first outcome η records the alive state after the transition, η = 1 if the character's head, torso, and back do not touch the ground after the transition, and η = 0 if the character falls. The second outcome Δt represents the transition duration from the start of the switching process to the end of the target controller's stabilization. The third outcome e represents the effort cost of the transition, for example, the sum of all joint torques during the transition duration, as shown in Equation Two.

[0058] Equation Two:

[0059] where J is the number of joints of the character, j is the joint label, and the torque of the proportional derivative (PD) controller at the jth joint at a given time t is denoted as To evaluate the degree to which the character follows the control objective, the present disclosure defines the velocity, direction, and height rewards as shown in Equation Three, Equation Four, and Equation Five, respectively.

[0060] Equation Three:

[0061] Equation Four:

[0062] Equation Five:

[0063] where ||. || is the L2 norm, v c is the center-of-mass velocity of the character, u = (cos(θ), -sin(θ)) is the target direction projected onto the two-dimensional motion plane, h, is the center-of-mass height of the character before and after the transition. The present disclosure defines the control reward as the average of Equation Three, Equation Four, and Equation Five, as shown in Equation Six.

[0064] Equation Six:

[0065] Finally, the fourth outcome a of the tensor T is the control accuracy of the character, which is calculated as the sum of the control rewards between the two stable states of the target controller . The present disclosure measures the control accuracy post-transition because the present disclosure assumes that there is no data on the control accuracy during the transition. The control accuracy is defined as shown in Equation Seven.

[0066] Equation Seven:

[0067] Before computing the four outcomes of each transition tensor in step S3, the present invention uses a robustness test to evaluate the template controllers. For example: objects of different sizes and densities are thrown from random directions every 0.1 seconds, and if the avatar survives for at least 10 seconds, then this template controller passes the robustness test.

[0068] Figure 3 Figure 1 is a schematic diagram of the degree of change in transition tensor during the process of transitioning from a source motion to a target motion. The recording starts with the avatar performing the source motion (jogging). Before switching to the target controller, the source controller is allowed to stabilize. At the switch, the current state of the avatar and the high-level control goal from the target motion segment are input, and are sampled uniformly in all phases. Next, the controller's response is recorded, and the trajectory of the avatar's footfalls, the center of mass position, joint torques, and control accuracy (e.g., Equation 7) are recorded. The recording is terminated 5 seconds after the controller switch, because most controllers have stabilized or failed by this time.

[0069] Step S3 is "compute multiple outcomes of the transition tensor, and record these outcomes by index". The processor computes multiple outcomes using the Monte Carlo method, each outcome including the survival metric η, the transition time Δt, the energy cost e, and the control accuracy α.

[0070] To find all the possibilities of the transition, the present invention computes a large number (e.g., millions) of samples of the transition tensor to fill the tensor by using the Monte Carlo method in an environment that supports physics simulation. Each pair of transitions is sampled uniformly in multiple phases of the source motion and the target segment.

[0071] Step S4 is "compute multiple transition qualities from the recorded outcomes", where each transition quality includes a stability value and an outcome value computed by the processor from the survival metric, the transition time, the energy cost, and the control accuracy.

[0072] As shown in Equation 1, for a transition between a source controller and a target controller, a 4-dimensional tensor describing the possibilities of this transition can be used to unify the two template controllers to enable the avatar to perform a combination of motions in the vocabulary V. The unified template controllers are used to guide the avatar in step S5 when building the complex motion controller. To achieve this goal, the present invention combines the four dimensions of the transition tensor into an outcome value in step S4, as shown in Equation 8:

[0073] Equation 8:

[0074] where Γ w is the outcome value based on the index w.

[0075] In another aspect, the present application aims to ensure consistency of the result value and the survival probability in neighboring samples. Therefore, the present application defines a local neighborhood Γ w (δ) which is a two-dimensional sub-tensor of Γ adjacent to w, w ∈ {m, φ±δ, n, ω±δ}, where φ±δ represents a plurality of adjacent reference phases associated with phase φ in the source motion m, and ω±δ represents a plurality of adjacent reference phases associated with phase ω in the target motion n.

[0076] Then, the present application calculates the consistency of the transition result ζ w (δ) as the variance of all samples in Γ w (δ).

[0077] Similarly, the present application calculates a transition survival probability η w (δ) as the proportion of samples with survival pointer η = 1 in T w (δ).

[0078] Therefore, the stability is shown in Equation Nine as follows:

[0079] Equation Nine: ψ w (δ) = η w (δ) x exp(-βζ w (δ))

[0080] where β = 0.015. Integrating the stability and the result value, the transition quality at w is shown in Equation Ten as follows.

[0081] Equation Ten: Q w = ψ w (δ) x Γ w

[0082] Step S5 is "finding the best transition quality among the transition qualities to establish a complex motion controller" which is used to generate a complex motion corresponding to one of a plurality of phases of the source motion.

[0083] To generate a transition from the source motion to the target motion, it is necessary to find the best transition among a plurality of tensors. Given the information of the target motion index n and the source motion m with phase φ, the processor can find the best transition by looking at the sub-tensor Q m,φ±∈,n (δ) where ∈ is an adjustable parameter for the search space, and locate the target phase with the best transition quality as Figure 4The transitions between the two controllers can be performed reliably according to the best transition quality. The same strategy is repeated for each pair of all motion compositions, and the template controllers can be integrated into a single complex motion controller for generating complex motions.

[0084] Figure 4 is a heat map of transition quality and its components (result value, stability) and an application diagram. A heat map of result value, stability, and transition quality calculated according to the result value and stability can be drawn by a processor with the phase of the source motion as the vertical axis and the phase of the target motion as the horizontal axis. The present application finds the transition tensor corresponding to the transition quality with a pixel value above a threshold value from the pixels of the heat map of transition quality. In this way, one or more transitions with better effects (for example, a survival index of 1, lower energy cost, shorter transition time, and higher control accuracy) can be screened out.

[0085] Figure 5 is a diagram showing the addition of a new template controller (new motion). Using the transition tensor, a new motion can be simply added without increasing the training cost. Only the newly added motion needs to be described using the template controller and integrated into the original template controller through the transition tensor. Figure 5 An example of is that according to the method proposed by the present application, six transition tensors of pairs composed of motion 1, motion 2, and motion 3 (motion 1 to motion 2, motion 1 to motion 3, motion 2 to motion 3, motion 2 to motion 1, motion 3 to motion 1, and motion 3 to motion 2, note that the transition tensors of pairs with different orders are different) have been established previously. The present application only needs to spend the cost of establishing the transition tensors between the new motion 4 and motions 1, 2, and 3 when adding motion 4. This process does not require additional training processes, and adding more motions does not change the previously configured motions and transitions. Therefore, the present application can easily expand the motion vocabulary set V along the dimension of the source motion label m and the dimension of the target motion label n of the tensor, as shown in Figure 5 .

[0086] Overall, please refer to Figure 6 , which is a comprehensive diagram of the method for establishing a complex motion controller according to an embodiment of the present application. Figure 6 The left side shows the collection of multiple transition tensors, and the content of each transition tensor includes a survival index, a transition time, an energy cost, and a control accuracy. Each transition tensor corresponds to a pair of a source controller and a target controller. If the number of controllers is N, the upper limit of the number of collected transition tensors is N×(N-1). Figure 6 The middle shows the multiple transition tensors established. Figure 6The right side is an example of a unified controller: suppose the previous unified controller does not know how to transition from a certain phase of source motion 2 to target motion 3 as indicated by the question mark in the transition feasibility matrix second column third row, the processor can find the transition tensor corresponding to source motion 2 and target motion 3 in the transition tensor set, and then find the phase of one or several target motions with the best transition quality in all possibilities of this transition tensor, thereby realizing the transition from source motion 2 to target motion 3.

[0087] The present application proposes a method for establishing a complex motion controller, which can effectively and robustly establish a new motion without modifying the existing motion. Given several different physical-based motion controllers, the transition tensor proposed by the present application can be used as a basis for switching between motion controllers. By querying the transition tensor to obtain the best transition, a unified complex motion controller can be established, which can generate new transitions containing various behaviors, such as deceleration before a character performs a higher jump or immediate jumping for better response. The present application is suitable for representing the motion of quadruped and biped animals, quantitatively and qualitatively evaluating transition quality, and having the ability to handle complex motion planning while following user control instructions.

[0088] In summary, the present application has the following contributions or effects:

[0089] 1. A data-oriented method is proposed, which can establish novel transitions consistent with physical phenomena outside the motion data set;

[0090] 2. An extensible architecture is proposed, which integrates existing controllers based on various architectures or training processes into a coherent and unified controller, and reduces the training cost when expanding; and

[0091] 3. A solution is proposed, which uses controllers to solve complex motion planning problems while meeting user control instructions and physical environment constraints.

[0092] Although the present application is disclosed with the above-mentioned embodiments, it is not intended to limit the present application. Any changes and modifications made without departing from the spirit and scope of the present application are within the scope of the present application. For the scope of protection of the present application, please refer to the attached patent claim.

Claims

1. A method of building a complex motion controller, characterized by, The method comprises the following steps executed by a processor: obtaining a source controller and a target controller, the source controller being configured to generate a source motion, the target controller being configured to generate a target motion; determining a transition tensor between the source controller and the target controller, the transition tensor having indices, one of which represents phases of the source motion; calculating results of the transition tensor and recording the results according to the indices, each of the results comprising a survival index, a transition time, an energy cost and a control accuracy; calculating transition qualities according to the results; and finding a best transition quality among the transition qualities to establish a complex motion controller configured to generate a complex motion corresponding to one of the phases.

2. The method of claim 1, wherein, Each of the transition qualities comprises a result value calculated by the processor based on adjacent phases and the one of the phases according to the survival index, the transition time, the energy cost and the control accuracy.

3. The method of claim 1, wherein: Each of the transition qualities comprises a stability value calculated by the processor based on adjacent phases and the one of the phases according to a survival probability of the survival index, a local neighborhood of the result value and a transition result associated with the local neighborhood, wherein the local neighborhood comprises reference phases corresponding to one of the phases of the source motion corresponding to the transition tensor corresponding to the result value.

4. The method of building a complex motion controller of claim 1, wherein, The calculating of the transition qualities according to the results comprises: calculating a result value and a stability of each of the results; and calculating one of the transition qualities according to the result value and the stability; wherein the result value is calculated by the processor based on adjacent phases and the one of the phases according to the survival index, the transition time, the energy cost and the control accuracy; and the stability is calculated by the processor based on adjacent phases and the one of the phases according to a survival probability of the survival index, a local neighborhood of the result value and a transition result associated with the local neighborhood, wherein the local neighborhood comprises reference phases corresponding to one of the phases of the source motion corresponding to the transition tensor corresponding to the result value.

5. The method of claim 1, wherein: The processor calculates the results by using a Monte Carlo method.

6. The method of building a complex motion controller of claim 1, wherein, The source controller or the target controller generates the source motion and the target motion according to a current state and a control target.

7. The method of building a complex motion controller of claim 6, wherein, An input of the control target comprises at least one physical parameter control quantity.

8. The method of building a complex motion controller of claim 6, wherein, The source controller and the target controller belong to a template controller, the template controller having at least one low-order controller corresponding to at least one primitive, the control target being directly assigned to the at least one low-order controller.

9. The method of building a complex motion controller of claim 6, wherein, The source controller and the target controller belong to a template controller, before training the template controller comprising: collecting reference motion segments using a kinematic controller; and varying input parameters in the repetitive control of each of the reference motion segments; and including, when training the template controller: adding external disturbances; and training the template controller using deep reinforcement learning, wherein the control objectives include a movement speed, a target direction, and a target center of mass height.

Citation Information

Patent Citations

  • Role control method, model training method and related devices

    CN110930483A

  • Image Processing Apparatus, Image Processing Method, and Program

    US20080118153A1

  • Methods and Systems for Representing Complex Animation Using Scripting Capabilities of Rendering Applications

    US20120256928A1

  • Generating animation based on starting scene and ending scene

    US20210097747A1