Operation reconfiguration processing system, learning processing method, operation reconfiguration processing method, and program
The motion reconstruction processing system addresses the limitations of conventional imitation learning by using latent representations to enable robots to imitate both steady-state and transient states, enhancing natural movement imitation.
Patent Information
- Application Number
- JP2024086895
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-05-29
- Publication Date
- 2025-12-11
AI Technical Summary
Conventional imitation learning methods struggle to enable robots to imitate a variety of human movements naturally, as they fail to account for the differences between human and robot dynamics, and only allow robots to imitate steady states without capturing transient states.
A motion reconstruction processing system using a learnable model with latent representations that absorb the differences between human and robot motions, incorporating an encoder, decoder, and mutual feedback processing to imitate both steady-state and transient states.
Enables robots to imitate both steady-state and transient states of motion, allowing for more natural movement imitation by utilizing latent representations that account for human-robot differences.
Smart Images

Figure 2025179938000001_ABST
Abstract
Description
[Technical Field]
[0001] The present invention relates to a technology (motion reconstruction processing technology) for making a robot imitate human motions, thereby enabling the robot to execute natural motions that imitate human motions. [Background technology]
[0002] In recent years, imitation learning approaches that use human motion data to make robots learn movements that mimic human motion have been attracting attention. In such imitation learning approaches, a model that represents human motion is set, and human motion data is used to perform a learning process on the model to obtain a trained model, and processing is performed using the trained model, allowing the robot to execute natural movements that mimic human motion (see, for example, Non-Patent Documents 1 to 3). [Prior art documents] [Non-patent literature]
[0003] [Non-Patent Document 1] Schaal S. Learning from demonstration. In: Mozer M, Jordan MI, Petsche T, editors. Advances in Neural Information Processing Systems; Vol. 9; Denver, Colorado, USA; 1996. p. 1040-1046. [Non-patent document 2] Ravichandar H, Polydoros AS, Chernova S, et al. Recent advances in robot learning from demonstration. Robotics, and Autonomous Systems. 2020;3(1):297-330. [Non-patent document 3] Hussein A, Gaber MM, Elyan E, et al. Imitation learning: A survey of learning methods. ACM Computing Surveys. 2017;50(2). Summary of the Invention [Problem to be solved by the invention]
[0004] However, with the above-mentioned conventional technology (imitation learning method), in order to make a robot imitate a variety of human movements and execute natural movements, it is necessary for the robot to re-learn, taking into consideration variations in movements based on physical differences between humans and robots. Therefore, with the imitation learning method, it is difficult to make a robot imitate a variety of human movements and execute natural movements.
[0005] In order to enable a robot to perform more natural movements, (1) it is necessary for the robot to imitate the dynamics of the robot, including the position and velocity of each joint, and (2) it is necessary for the robot to imitate not only the steady state of the movement, but also the transient state leading up to the steady state.
[0006] However, conventional techniques only allow a robot to imitate a steady state of operation, and are unable to allow a robot to imitate both the steady state of operation and the transient state leading to the steady state.
[0007] In view of the above, the present invention aims to realize a motion reconstruction processing system, a learning processing method, a motion reconstruction processing method, and a program that enable a robot to imitate both steady-state and transient states of motion by performing processing using a learnable model that uses latent representations that can absorb the differences between human motion and robot motion. [Means for solving the problem]
[0008] In order to solve the above problem, a representative example (one aspect) of the invention disclosed in this application is a behavior reconstruction processing system for causing a control target to imitate a predetermined behavior whose steady state is a periodic behavior, and includes a behavior data input unit, an encoder, a latent expression data acquisition processing unit, a decoder, and a mutual feedback processing unit.
[0009] The action data input unit inputs action data corresponding to a predetermined action, and acquires state variable data corresponding to the action data.
[0010] The encoder uses the parameters θ h The system has a trainable model that can set and update the above, and performs encoding processing on the state variable data to obtain latent expression data including phase data and amplitude data as encoded latent variable data.
[0011] The latent expression data acquisition processing unit performs latent expression data acquisition processing on the encoded latent variable data to acquire data after the latent expression data acquisition processing.
[0012] The decoder uses the parameters θ ζ The system has a trainable model that can set and update the latent expression data, and performs a decoding process on the data output from the latent expression data acquisition processing unit to obtain decoded state variable data.
[0013] The mutual feedback processing unit performs a mutual feedback process, which is a process of acquiring feedback data, based on the encoded latent variable data acquired by the encoder and the data after the latent expression data acquisition process acquired by the latent expression data acquisition processing unit.
[0014] Then, the latent expression data acquisition processing unit adjusts the data after the latent expression data acquisition processing in accordance with the feedback data, which is data acquired by the mutual feedback processing, to acquire latent variable data after the feedback amount adjustment, and outputs the latent variable data after the feedback amount adjustment to the decoder.
[0015] The decoder performs a decoding process on the latent variable data after adjusting the amount of feedback output from the latent expression data acquisition processing unit. [Effects of the Invention]
[0016] According to the present invention, it is possible to realize a motion reconstruction processing system, a learning processing method, a motion reconstruction processing method, and a program that enable a robot to imitate both steady-state and transient states of motion by performing processing using a learnable model that uses latent representations that can absorb the differences between human motion and robot motion. [Brief explanation of the drawings]
[0017] [Figure 1] FIG. 1 is a schematic configuration diagram of a motion reconfiguration processing system 1000 according to a first embodiment. [Figure 2] FIG. 2 is a schematic configuration diagram of an encoder 2 and a decoder 4 of the motion reconfiguration processing system 1000 according to the first embodiment. [Figure 3] The diagram (top) shows the behavior of a person repeatedly waving a baton btn1 along a specified trajectory, and the diagram (bottom) shows the configuration of the control object Rbt1. [Figure 4] FIG. 1 is a schematic configuration diagram of a motion reconfiguration processing system 1000 according to the first embodiment (during learning). [Figure 5] FIG. 1 is a diagram for explaining multi-KL divergence, showing a graphical model of variational distributions q1 and q2 and probability distributions p1, p2, p3, and p4. [Figure 6] FIG. 2 is a schematic configuration diagram of the motion reconfiguration processing system 1000 according to the first embodiment during prediction processing (during inference). [Figure 7] FIG. 10 is a diagram showing experimental results of prediction processing by the motion reconfiguration processing system 1000 according to the first embodiment. [Figure 8] FIG. 10 is a diagram showing experimental results of prediction processing by the motion reconfiguration processing system 1000 according to the first embodiment. [Figure 9]FIG. 10 is a diagram showing experimental results of prediction processing by the motion reconfiguration processing system 1000 according to the first embodiment. [Figure 10] A diagram showing the CPU bus configuration. DETAILED DESCRIPTION OF THE INVENTION
[0018] [First embodiment] The first embodiment will be described below with reference to the drawings.
[0019] <1.1: Configuration of the motion reconstruction processing system> FIG. 1 is a schematic configuration diagram of a motion reconfiguration processing system 1000 according to the first embodiment.
[0020] FIG. 2 is a schematic configuration diagram of the encoder 2 and decoder 4 of the motion reconfiguration processing system 1000 according to the first embodiment.
[0021] 1, the motion reconstruction processing system 1000 includes a first selector SEL1, a motion data input unit 1, an encoder 2, a latent expression data acquisition processing unit 3, a decoder 4, a mutual feedback processing unit 5, a robot drive processing unit 6, and a loss evaluation unit 7. The motion reconstruction processing system 1000 can, for example, (1) during learning, input motion data (data D_psn) when a human performs a predetermined motion as data Din, and (2) during inference, input motion data (data D_rbt) when a control object Rbt1 performs a predetermined motion as data Din, and drive control the control object Rbt1 (for example, a robot arm).
[0022] The first selector SEL1 is a two-input, one-output selector that selects one of two input terminals (the input terminals are assumed to have terminals 0 and 1) in response to a select signal sel1, and outputs the selected input to the motion data input unit 1. Note that the select signal sel1 is assumed to be output from a control unit (not shown) that controls the functional units of the motion reconfiguration processing system 1000. During learning, the control unit outputs a select signal sel1 with a signal value of "0" to the first selector SEL1, and the first selector SEL1 selects terminal 0 in accordance with the select signal sel1, and outputs the motion data Din_psn input to terminal 0 when a person performs a predetermined motion as data Din to the motion data input unit 1.
[0023] On the other hand, during inference, the control unit outputs a select signal sel1 with a signal value of "1" to the first selector SEL1, and the first selector SEL1 selects terminal 1 in accordance with the select signal sel1 and outputs the operation data (data D_rbt) when the controlled object Rbt1 performs a predetermined operation as data Din to the operation data input unit 1.
[0024] The operation data input unit 1 receives the data Din output from the first selector SEL1 and calculates the state variable x (which is x (in) Then, the operation data input unit 1 acquires data of the acquired state variable x (in) The data is output to the encoder 2 as data D_x.
[0025] Encoder 2 is the state variable x (in) the latent variable z (which is z (in) (=h(x (in) )) into a trainable model (parameters are written as θ h As shown in the left diagram of FIG. 2, the encoder 2 includes an encoder trainable model unit 21 and a phase and amplitude data acquisition processing unit 22.
[0026] The encoder trainable model unit 21 has a trainable model, and the data D_x (state variable x (in) ) is input, and data of the internal variable s is acquired. As shown in the left diagram of FIG. 2, the encoder trainable model unit 21 has, for example, a neural network model including a first linear layer 211, a first activation layer 212, a second linear layer 213, and a second activation layer 214, and data D_x (state variable x (in) ) and process it using the neural network model, the data of the internal variable s (for example, s=[s0,s1,s2,...,s M ] (M+1-dimensional data) (M: an integer equal to or greater than 0)). Then, the encoder trainable model unit 21 outputs the acquired data of the internal variable s to the phase amplitude data acquisition processing unit 22 as data D_in_s.
[0027] As shown in the left diagram of FIG. 2, the phase amplitude data acquisition processing unit 22 includes a phase acquisition processing unit 221 and an identity conversion unit 222.
[0028] The phase acquisition processing unit 221 receives as input s0 and s1, which are two-dimensional data of the data D_in_s (internal variable s), φ=tan -1 (s1 / s0) and obtains the phase data φ.
[0029] The identity conversion unit 222 converts data D_s (internal variable s) into M-1-dimensional data, s2,...,s M is input, and s2, ,s M The identity transformation is performed on the amplitude data r1, ,r M-1 Get.
[0030] Then, the phase and amplitude data acquisition processing unit 22 combines the phase data φ and amplitude data r1, . . . , r M-1 The data with elements z and z are treated as latent variables. (in) (z=[φ,r1,r2,···,rM-1 ]) and outputs the acquired data to the latent expression data acquisition processor 3 and the mutual feedback processor 5 as data D_enc.
[0031] The latent expression data acquisition processing unit 3 receives the data D_enc output from the encoder 2 and the data D_fb output from the mutual feedback processing unit 5. The latent expression data acquisition processing unit 3 also receives data D_hyper including hyperparameters from the outside. The latent expression data acquisition processing unit 3 receives the latent variable z (in) Using the data and the data (feedback data) output from the mutual feedback processing unit 5, latent expression data in the phase amplitude contracted latent space is acquired. (1) During learning, the latent expression data acquisition processing unit 3 acquires the following latent expression data: (1A) A calculation process (details will be described later) is performed using the phase-amplitude equation (a latent expression equation capable of expressing steady states and transient states of operation) of the phase-amplitude reduction method, and the data of the latent variables obtained by the calculation process (the latent variable data of time step 0 (denoted as z0) (corresponding to the output data from encoder 2) is used to add a fluctuation component (for example, a fluctuation component following a Laplace distribution) to the latent variable of time step k obtained by the phase-amplitude equation (this is z k (Denoted as ). (1B) If the processing time (current time) is k (time step k), the data h(x k (in) ) with fluctuation components (for example, fluctuation components following a Laplace distribution) added (this is called z' k (Denoted as ). (1C) Latent variable z kThe data (denoted as f(z0, k)) obtained by correcting (adjusting) the data in accordance with the amount of feedback from time steps 0 to k based on the data output from the mutual feedback processing unit 5 (data f(z0, k) obtained by advancing k time steps from z0 in the phase amplitude equation (see the third equation in (Equation 5)) corrected taking into account the amount of feedback from time steps 0 to k based on the feedback data from the mutual feedback processing unit 5) is used. (1D) Latent variable z' k The data obtained by correcting (adjusting) the data output from the mutual feedback processing unit 5 according to the amount of feedback from time step k-1 to k (this is called f(z' k-1 , 1)) (the feedback amount from time step k-1 to k based on the feedback data from the mutual feedback processing unit 5) is taken into consideration. In the phase amplitude equation (see the third equation of (Equation 5)), z' k-1 The data f(z') obtained by advancing one time step from k-1 ,1)). (2) During inference, the latent expression data acquisition processing unit 3 acquires the data obtained by time integration using the data D_enc output from the encoder 2 as the initial value, and performs correction (adjustment) based on the data D_fb output from the mutual feedback processing unit 5 to the latent variables, and acquires the data as latent expression data.
[0032] Then, the latent expression data acquisition processing unit 3 outputs the data acquired as described above (data of the latent variable z) to the decoder 4 and the feedback processing unit 5 as data D_z.
[0033] The decoder 4 is a functional unit for decoding the latent variable z into the state variable x (a functional unit for performing a decoding process corresponding to the encoding process of the encoder 2 (a process of decoding the latent variable z obtained by encoding the state variable x by the encoder 2 to obtain the original state variable x)), and is a trainable model (parameters are set to θ ζ2, the decoder 4 is provided with an internal variable acquisition processing unit 41 and a decoder trainable model unit 42, and receives data D_z (latent variable z) output from the latent expression data acquisition processing unit 3, performs decoding processing on the data D_z (latent variable z), and acquires the state variable x.
[0034] As shown in the right diagram of FIG. 2, the internal variable acquisition processing unit 41 includes a cosine conversion processing unit 411, a sinus conversion processing unit 412, and an identity conversion unit 413.
[0035] The cos transformation processing unit 411 acquires the phase data φ contained in the data D_z (latent variable z) output from the latent expression data acquisition processing unit 3, performs a cos transformation process (a process to acquire cos(φ)) on the phase data φ, and acquires data s0 (internal variable data s0) after the cos transformation process.
[0036] The sin transformation processing unit 412 acquires the phase data φ contained in the data D_z (latent variable z) output from the latent expression data acquisition processing unit 3, performs a sin transformation process (a process to acquire sin(φ)) on the phase data φ, and acquires data s1 (internal variable data s1) after the sin transformation process.
[0037] The identity conversion unit 413 converts the amplitude data r1, . . . , r2 included in the data D_z (latent variable z) output from the latent expression data acquisition processing unit 3. M-1 and obtain the amplitude data r1, ,r M-1 The identity transformation process is performed on the internal variable data s2,...,s M Get.
[0038] Then, the internal variable acquisition processing unit 41 integrates the internal variable data acquired as described above, and obtains the data of the internal variable s (s=[s0, s1, s2, . . . , s M ]) and outputs the acquired data to the decoder trainable model unit 42 as data D_s.
[0039] The decoder trainable model unit 42 has a trainable model, and receives data D_s (internal variable s) output from the internal variable acquisition processing unit 41 as input to acquire data for the internal variable s. As shown in the right diagram of FIG. 2, the decoder trainable model unit 42 has, for example, a neural network model including a first linear layer 421, a first activation layer 422, a second linear layer 423, and a second activation layer 424. Data D_s (internal variable s) is input to the neural network model, and processing is performed using the neural network model to acquire data for the state variable x. The decoder trainable model unit 42 then outputs the acquired data for the state variable x to the second selector SEL2 as data D_x.
[0040] The mutual feedback processing unit 5 calculates the data D_enc (latent variable z (in) =h(x (in) )) and the data D_z (latent variable z) output from the latent expression data acquisition processing unit 3. The mutual feedback processing unit 5 receives the data D_enc (latent variable z (in) =h(x (in) )) and data D_z (latent variable z), a process of obtaining feedback data (for example, latent variable z (in) (=h(x (in) )) and the time derivative of the latent variable z (data D_z) multiplied by a gain g to obtain feedback data, and data including the data obtained by this process is output as data D_fb to the latent expression data acquisition processing unit 3.
[0041] The second selector SEL2 is a one-input, two-output selector that outputs the input to one of two output terminals (the output terminals are assumed to have terminals 0 and 1) in response to a select signal sel2. The select signal sel2 is output from a control unit (not shown) that controls the functional units of the motion reconfiguration processing system 1000. During learning, the control unit outputs a select signal sel2 having a signal value of "0" to the second selector SEL2, which in turn selects terminal 0 in accordance with the select signal sel2 and outputs the output (data D_x) from the decoder 4 to the loss evaluation unit 7. During inference, the control unit outputs a select signal sel2 having a signal value of "1" to the second selector SEL2, which in turn selects terminal 2 in accordance with the select signal sel2 and outputs the output (data D_x) from the decoder 4 to the robot drive processing unit 6.
[0042] During inference, the robot drive processing unit 6 receives data D_x output from the second selector SEL2 (data D_x output from the decoder 4) and acquires a control input u for the control object Rbt1 based on the data D_x (state variable x). Then, the robot drive processing unit 6 outputs a signal sig_Drv for driving and controlling the control object Rbt1, which corresponds to the control input u for the control object Rbt1, to the control object Rbt1, and drives and controls the control object Rbt1.
[0043] The loss evaluation unit 7 receives as input data acquired by processing executed in the motion reconstruction processing system 1000 (during learning, data D_x is directly input to the loss evaluation unit 7 from the first selector SEL1), and also receives as input data D_hyper including hyperparameters input from outside. The loss evaluation unit 7 acquires losses based on the data acquired by processing executed in the motion reconstruction processing system 1000, and performs error backpropagation processing based on the acquired losses (processing in which an error (loss) is propagated by the error backpropagation method in the order of the decoder 4, latent expression data acquisition processing unit 3, and encoder 2, thereby updating each parameter). As a result, the parameter θ of the decoder 4 is ζ , parameter θ of encoder 2h will be updated.
[0044] The data acquired or generated in the above-mentioned functional units is stored and held in each functional unit or in a storage unit (not shown).
[0045] <1.2: Operation of the motion reconstruction processing system> The operation of the motion reconstruction processing system 1000 configured as above will be described below with reference to the drawings.
[0046] FIG. 3 shows a diagram (upper diagram) illustrating the action of a person repeatedly waving a baton btn1 along a predetermined trajectory, and a diagram (lower diagram) illustrating the configuration of the control object Rbt1.
[0047] FIG. 5 is a diagram for explaining multi-KL divergence, showing graphical models of variational distributions q1 and q2 and probability distributions p1, p2, p3, and p4.
[0048] FIG. 6 is a schematic configuration diagram of the motion reconfiguration processing system 1000 according to the first embodiment during prediction processing.
[0049] 7 to 9 are diagrams showing experimental results of the prediction process of the motion reconfiguration processing system 1000 of the first embodiment.
[0050] (1.2.1: Phase-amplitude Reduction method) First, as prior knowledge, the phase-amplitude reduction method will be explained.
[0051] We define a continuous-time dynamical system as follows:
number
[0052] Assuming that a dynamical system is a dynamical system that autonomously converges to a stable closed orbit, the nonlinear system (nonlinear dynamical system) can be reduced to a phase amplitude equation by mapping the following equation.
number
number
number
[0053] In the phase-amplitude mechanical system, the phase φ is the phase of a limit cycle (limit cycle), and the amplitude r indicates the distance (deviation) from the attractor of the limit cycle.
[0054] Also, in the above, M < N, and since the dimension of the latent space by phase-amplitude is smaller than the dimension of the mechanical system, the latent mechanical space representation obtained above is a reduced one (a latent mechanical space representation reduced by phase-amplitude reduction).
[0055] In the phase-amplitude mechanical system, λ>0 (all elements of the vector λ are greater than 0), and the amplitude r showing a transient-state response asymptotically converges to "0". Therefore, in the phase-amplitude mechanical system, the observable state variable x can be reconstructed by learning a decoder (x’ = ζ(z)) that obtains the state variable x from the latent variable z.
[0056] Therefore, by learning the encoder h(z = h(x)) and the decoder ζ(x’ = ζ(z)), human behavior can be reconstructed based on the phase-amplitude mechanical system. Note that the characteristic frequency ω and the characteristic exponent λ can be estimated by time series analysis methods such as fast Fourier transform (FFT) and autocorrelation analysis.
[0057] The motion reconstruction processing system 1000 introduces a latent representation (a latent representation based on a phase amplitude contraction technique) that can express steady-state responses and transient state responses (corresponding to processing in the latent representation data acquisition processing unit 3), and by training the encoder h(z=h(x)) (corresponding to encoder 2) and the decoder ζ(x'=ζ(z)) (corresponding to decoder 4), human motion is reconstructed based on a phase amplitude dynamical system (the control object Rbt1 is operated based on human motion (by imitating human motion)).
[0058] (1.2.2: Interactive Feedback) The motion reconstruction processing system 1000 employs a mutual feedback method, which will now be described.
[0059] The motion reconstruction processing system 1000 performs processing using a system that combines the above-described latent dynamical system f with a system that takes into account the feedback amount of the system G(y, u) (robot system) (a system that inputs observable state variables) of the control object Rbt1. This system is expressed as follows:
number
[0060] (1.2.3: Encoder and decoder learning process) The motion reconstruction processing system 1000 employs a method for minimizing the KL divergence (KL: Kullback-Leibler) based on variational inference in the learning process of the encoder and decoder. This will be described below.
[0061] Similar to the method used in β-VAE (VAE: Variational autoencoder), the encoder h and decoder ζ of the motion reconstruction processing system 1000 are trained to reconstruct human motion data (human trajectory data) using a latent variable z. The variational estimation method estimates a model probability distribution P(Z)P(X|Z) (probability distribution of the modeling target) given a prior distribution q(Z|X) and a data distribution p(X). The prior distribution q(Z|X) and the model probability distribution P(Z)P(X|Z) are estimated by alternately updating the two distributions so that the KL divergence KL[p(X)q(Z|X)||p(Z)p(X|Z)] is minimized.
[0062] Here, the time series data X of the observed state variable x is expressed as X={x0, x1, , x T} (T: natural number), and the time series data Z of the latent variable z is Z={z0, z1, , z T}, consider the problem of minimizing the KL divergence below.
number
number
[0063] In the discrete-time dynamical system corresponding to the continuous-time dynamical system of (Equation 3), the latent variable z k is derived.
number
number
[0064] The objective function derived above can be effectively minimized using the gradient descent method by employing a reparameterization trick.
[0065] (1.2.4: Behavior of the motion reconstruction processing system during learning) The operation of the motion reconstruction processing system 1000 during learning will be described below with reference to the drawings.
[0066] For ease of explanation, the specific operation of the motion reconstruction processing system 1000 will be described below for an example in which motion data (limit cycle motion data) of a human repeatedly waving a baton btn1 along a predetermined trajectory as shown in the upper diagram of Fig. 3 is used, and a 6-DoF robot arm with a baton btn1 attached is set as the control object Rbt1 as shown in the lower diagram of Fig. 3, and motion reconstruction processing is performed on the control object Rbt1 (to imitate the above-mentioned human motion) as shown in Fig. 4. Also, Fig. 4 shows a schematic configuration diagram of the motion reconstruction processing system 1000, with the functional units and processing systems used during learning indicated in bold.
[0067] The motion data input unit 1 inputs, as motion data when a person performs a predetermined motion (motion shown in the upper diagram of FIG. 3), for example, video data (data Din_psn) of the motion of the person as data Din via the first selector SEL1 (terminal 0 selected). Then, the motion data input unit 1 selects, for example, by 3D caption (motion capture processing), a position vector P of the tip of the baton btn1 when the person performs the motion shown in the upper diagram of FIG. tip , velocity vector V tip , and the position vector P of the root of btn1 root , velocity vector V root In order to obtain the movement data, a three-dimensional coordinate space is defined with a predetermined position as the origin, and the position vector P of the tip of the baton btn1 istip , velocity vector V tip , and the position vector P of the root of btn1 root , velocity vector V root are three-dimensional real data (vectors determined in the three-dimensional coordinate space) (P tip ∈R 3 , V tip ∈R 3 , P root ∈R 3 , V root ∈R 3 ).
[0068] The operation data input unit 1 inputs the data obtained as above (=[P tip ,V tip ,P root ,V root ]) into the state variable x (in) Then, the operation data input unit 1 acquires the acquired state variable x (in) The data is output to the encoder 2 as data D_x.
[0069] The encoder trainable model unit 21 of the encoder 2 calculates the data D_x (state variable x (in) ) is input, and data of the internal variable s is obtained. The trainable model unit for encoder 21 inputs data D_x (state variable x (in) ) and process it using the neural network model, the data of the internal variable s (for example, s=[s0,s1,s2,...,s M ] (M+1-dimensional data) (M: an integer equal to or greater than 0)). Then, the encoder trainable model unit 21 outputs the acquired data of the internal variable s to the phase amplitude data acquisition processing unit 22 as data D_in_s.
[0070] The phase acquisition processing unit 221 receives as input two-dimensional data s0 and s1 from the data D_in_s (internal variable s) output from the encoder trainable model unit 21, φ=tan -1(s1 / s0) The phase data φ is obtained by performing a process equivalent to the above. Here, an unwrap process is performed on the phase data φ. In other words, since the range that the phase data φ can take is [0, 2π], when the period is updated, the value jumps from 2π to 0, and continuity is lost. Therefore, in order to make the range (value range) of the phase data φ continuous, when the period is updated, φ←φ+2nπ n: natural number The process (unwrapping process) is performed.
[0071] The identity conversion unit 222 converts data D_in_s (internal variable s) into M-1-dimensional data, s2,...,s M is input, and s2, ,s M The identity transformation is performed on the amplitude data r1, ,r M-1 Get.
[0072] Then, the phase and amplitude data acquisition processing unit 22 combines the phase data φ and amplitude data r1, . . . , r M-1 The data with elements z and z are treated as latent variables. (in) (z (in) =[φ,r1,r2,···,r M-1 ]) and outputs the acquired data to the latent expression data acquisition processing unit 3 as data D_enc.
[0073] <1: When decoding is performed using data derived from the phase-amplitude equation (time-evolved data)> The latent expression data acquisition processor 3 receives the data D_enc output from the encoder 2 (the data D_enc output from the encoder 2 is used as the initial value). The latent expression data acquisition processor 3 also receives data D_hyper including hyperparameters from the outside. The data D_hyper includes a characteristic frequency ω, a characteristic exponent λ (=[λ1, λ2, . . . , λ M-1 ](λ iis assumed to include data on the Koopman eigenvalues (corresponding to the frequencies and damping rates of each vibration mode) and the discount rate γ when Koopman Mode Decomposition (KMD) is performed. The characteristic frequency ω and the characteristic exponent λ can be estimated by time series analysis techniques such as fast Fourier transform (FFT) and autocorrelation analysis, for example. Therefore, they can be estimated and acquired from data when a human motion (periodic repetitive motion (motion equivalent to a limit cycle)) corresponding to the data input to the motion data input unit 1 is performed by time series analysis techniques such as fast Fourier transform (FFT) and autocorrelation analysis, and the characteristic frequency ω and the characteristic exponent λ can be set based on the estimated values.
[0074] The latent expression data acquisition processing unit 3 performs calculation processing using a phase-amplitude equation (a latent expression equation capable of expressing steady and transient states of motion) of the phase-amplitude reduction method. Specifically, it finds latent variables by solving the following formula:
number
number
number
[0075] In this embodiment, it is assumed that the dynamical system is a discrete time system, and the latent expression data acquisition processing unit 3 acquires time series data {φ0, φ1, . . . , φ} of phase φ at t=j (j: integer, 0≦j≦T, T: natural number). T}, and time series data of amplitude r {r0,r1,...,r T}, and integrate them to obtain the time series data Z={z0,z1,...,z T} is obtained. Note that the latent variable z (latent variable z k (k: integer, 0≦k≦T) is assumed to be data obtained by adding fluctuation components according to the Laplace distribution Lap(0, b) to data calculated from the phase amplitude equation, as shown in (Equation 9).
[0076] The latent expression data acquisition processing unit 3 acquires the latent variable z (latent variable z k (k: integer, 0≦k≦T) is output as data D_z to the decoder 4 and the feedback processing unit 5 (the time-series data of the latent variable z is output sequentially).
[0077] The cosine transformation processing unit 411 of the decoder 4 converts the data D_z (latent variable z k), and performs a cosine transformation process (processing to obtain cos(φ)) on the phase data φ to obtain data s0 after the cosine transformation process (internal variable data s0).
[0078] The sin transformation processing unit 412 of the decoder 4 converts the data D_z (latent variable z k ), and performs a sin transformation process (a process to obtain sin(φ)) on the phase data φ to obtain data s1 after the sin transformation process (internal variable data s1).
[0079] The identity conversion unit 413 converts the data D_z (latent variable z k ) contains amplitude data r1,...,r M-1 and obtain the amplitude data r1, ,r M-1 The identity transformation process is performed on the internal variable data s2,...,s M Get.
[0080] Then, the internal variable acquisition processing unit 41 integrates the internal variable data acquired as described above, and obtains the data of the internal variable s (s=[s0, s1, s2, . . . , s M ]) and outputs the acquired data to the decoder trainable model unit 42 as data D_s.
[0081] The decoder trainable model unit 42 inputs data D_s (internal variable s) into a neural network model (see the right diagram in FIG. 2) and processes the data using the neural network model to generate a state variable x k Then, the decoder trainable model unit 42 acquires the data of the acquired state variable x k The data is output as data D_x to the second selector SEL2, and further output to the loss evaluation unit 7 via the second selector SEL2 (which selects terminal 0).
[0082] The mutual feedback processing unit 5 calculates the data D_enc (latent variable z(in) =h(x (in) )) and the data D_z (latent variable z) output from the latent expression data acquisition processing unit 3. The mutual feedback processing unit 5 receives the data D_enc (latent variable z (in) =h(x (in) )) and data D_z (latent variable z), a process of obtaining feedback data (for example, latent variable z (in) (=h(x (in) )) and the time derivative of the latent variable z (data D_z) multiplied by a gain g to obtain feedback data, and data including the data obtained by this process is output as data D_fb to the latent expression data acquisition processing unit 3.
[0083] The latent expression data acquisition processing unit 3 outputs the latent variable z k (k: integer, 0≦k≦T) is a feedback amount (latent variable z (in) (=h(x (in) )) and the time derivative of the latent variable z (data D_z) multiplied by gain g is used to integrate the feedback data from time steps 0 to k, and the latent variable obtained by correcting (adjusting) the feedback data is obtained as the latent variable f(z0,k) after adjusting the feedback amount (the latent variable obtained by correcting (adjusting) the feedback data so as to satisfy the equation equivalent to the third equation in (Equation 5) is obtained as the latent variable f(z0,k) after adjusting the feedback amount (the latent variable f(z0,k) reflecting the feedback amount from time steps 0 to k)).
[0084] By performing the above process for each k in 0≦k≦T, the latent expression data acquisition processing unit 3 (1) Latent variable z from k=0 to k=T k The data (latent variable z calculated from the phase amplitude equation) k data (including fluctuation components of the Laplace distribution), and (2) Latent variables z from k=1 to k=T k(k: integer, 0≦k≦T) is a feedback-adjusted latent variable f(z0,k) that is a latent variable corrected (adjusted) in accordance with the feedback data D_fb from time steps 0 to k output from the mutual feedback processing unit 5. Get.
[0085] ≪2: When decoding is performed using latent variable data conditioned on the state variables at the current time (time step k)≫ Next, assuming that the processing time (current time) is k (time step k), the latent expression data acquisition processing unit 3 performs time integration on the data output from the encoder 2 at time step k=1 as the initial value, and then performs time integration on the data acquired (state variable x at current time k). k the latent variable z', which is the latent variable conditioned on k is output to the decoder 4 as data D_z.
[0086] Decoder 4 uses the latent variable z' k Decoding is performed on the latent variable z' (similar to the decoding process described above) k The decoded state variable x k The decoder 4 obtains the obtained state variable x k is output as data D_x to the loss evaluation unit 7 via the second selector SEL2 (which selects terminal 0).
[0087] The mutual feedback processing unit 5 calculates the data D_enc (latent variable z k (in) =h(x k (in) )) and the data D_z (latent variable z' k ) is input to the mutual feedback processing unit 5. k (in) =h(x k (in) )) and data D_z (latent variable z' k ) and the process of obtaining feedback data (e.g., latent variable z k (in)(=h(x k (in) )) and latent variable z' k (Processing to obtain feedback data obtained by multiplying the difference between the time derivative of data D_z by gain g) is performed, and data including the data obtained by this processing is output to the latent expression data acquisition processing unit 3 as data D_fb.
[0088] The latent expression data acquisition processing unit 3 outputs the latent variable z' to the decoder 4. k (k: integer, 0≦k≦T) is a feedback amount (latent variable z k (in) (=h(x k (in) )) and latent variable z' k The latent variable after the feedback amount adjustment is called the latent variable f(z' k-1 ,1) (The latent variable obtained by performing correction (adjustment) according to the feedback data so as to satisfy the equation corresponding to the third equation in (Equation 5) is obtained as the latent variable f(z' k-1 ,1) (latent variable f(z') reflecting the amount of feedback from time step k-1 to k) k-1 ,1)) is obtained as).
[0089] The latent expression data acquisition processing unit 3 acquires the latent variable z' k The data f(z') is corrected (adjusted) according to the data output from the mutual feedback processing unit 5 (feedback data from time step k-1 to k). k-1 , 1) (in the phase amplitude equation (see the third equation of (Equation 5)) corrected in consideration of the feedback data from the mutual feedback processing unit 5, z' k-1 The data f(z') obtained by advancing one time step from k-1 , 1)). That is, the latent expression data acquisition processing unit 3 acquires the latent variable z'k The latent variable after correction (adjustment) according to the feedback data D_fb from time step k-1 to k is the latent variable f(z' k-1 ,1) is obtained.
[0090] By performing the above process for each k in 0≦k≦T, the latent expression data acquisition processing unit 3 (1) Latent variable z' from k=0 to k=T k The data (latent variable z' obtained by Encoder 2) k data (including fluctuation components of the Laplace distribution), and (2) Latent variable z' from k=1 to k=T k (k: integer, 0≦k≦T) where the feedback data D_fb (latent variable h(x k (rbt) )) k-1 ,1) Get.
[0091] <Loss Acquisition Processing> The loss evaluation unit 7 acquires the loss based on the data acquired by the processing executed as described above in the motion reconstruction processing system 1000. Here, the loss function employed to acquire the loss in the motion reconstruction processing system 1000 will be described.
[0092] The following six probability distributions are defined to define the loss function employed to obtain the loss in the motion reconstruction processing system 1000. Also, Fig. 5 shows graphical models of the following six distributions.
number
number
[0093] The probability distribution q1 plays a role in training (learning) the transient state response. Based on the probability distribution q1, the latent variable z k time steps ahead (future) from the initial state variable x0 is calculated. k This process improves the accuracy of the training process of the encoder e by gradient backpropagation from the loss of the reconstruction process, resulting in a training process that is highly sensitive to transient state responses.
[0094] On the other hand, the distribution q2 is the state variable x observed at each time step. k to the latent variable z k Since the probability distribution that generates the gradient backpropagation is limited to the time around the current time, this process emphasizes the behavior around a closed orbit.
[0095] The model m1 is a model probability distribution (a model probability distribution of the latent dynamical system) conditioned only on the initial latent variable z0.
[0096] On the other hand, model m2 is a model probability distribution (model probability distribution of the latent dynamical system) conditioned on the initial latent variable z0 and the observed state variable xk, as shown in the following formula.
number
[0097] The difference between Model p1 and Model p2 is the directionality of the conditioning: Model p1 represents the decoding probability from latent variable z to state variable x, while Model p2 represents the filtering probability from state variable x to latent variable z (see Figure 5).
[0098] As explained in "1.2.3: Encoder and Decoder Learning Process", similar to the method adopted in β-VAE (VAE: Variational autoencoder), the learning process of the encoder h and decoder ζ of the motion reconstruction processing system 1000 should be such that the KL divergence KL[p(X)q(Z|X)||p(Z)p(X|Z)] is minimized. In other words, (1) If KL[q1|p1] and KL[q1|p2] become smaller, the estimation accuracy (prediction accuracy) of the state k time steps ahead from the initial state will increase. (2) If KL[q2|p3] and KL[q2|p4] become smaller, the accuracy of state prediction from the most recent state will increase.
[0099] Therefore, a loss function is introduced that takes into account the loss based on the above four KL divergences (KL[q1|p1], KL[q1|p2], KL[q2|p3], KL[q2|p4]) and the loss for the difference in the state variable x, and the motion reconstruction processing system 1000 performs learning processing to reduce the loss due to the loss function.
[0100] The loss function according to the above is shown below. The loss evaluation unit 7 performs processing corresponding to the following formula (loss function L(h, ζ:X)) to obtain the loss L.
number
[0101] loss L Rec , L Enc , L Dec , L Lat are as shown in the following (Equation 17) to (Equation 20).
number
number
number
number
[0102] In addition, the loss L in (Equation 16) Rec,Diff , L Dec,Diff are as shown in the following (Equation 21) to (Equation 22).
number
number
[0103] In this way, the loss evaluation unit 7 calculates the loss L Rec , L Enc , L Dec , L Lat , L Rec,Diff , L Dec,Diff is obtained, and processing equivalent to the loss function L(h, ζ:X) (Equation 6) is performed to obtain the loss L.
[0104] Then, the loss evaluation unit 7 performs an error backpropagation process (a process of propagating the error (loss) in the order of the decoder 4, the latent expression data acquisition processing unit 3, and the encoder 2 by the error backpropagation method, and updating each parameter) based on the acquired loss L. As a result, the parameter θ ζ , parameter θ of encoder 2 hIn the latent expression data acquisition processing unit 3, for the part where fluctuation components are added to the latent variables, the error can be backpropagated using a reparameterization trick method.
[0105] The above processes (data acquisition process, loss calculation process, and encoder and decoder parameter update process) are then repeatedly executed in the motion reconstruction processing system 1000. The loss evaluation unit 7 evaluates the loss L, and determines that the learning has converged if, for example, at least one of the following conditions is satisfied: (1) When the acquired loss L falls below a predetermined value (2) When the change in the acquired loss L is below a predetermined value. (3) When the above processes (data acquisition process, loss calculation process, encoder and decoder parameter update process) are executed a predetermined number of times. Then, (1) the parameter θ set in encoder 2 when it is determined that the learning has converged. h The optimal parameter θ h _opt, and (2) the parameter θ set in decoder 4 when it is determined that the learning has converged. ζ The optimal parameter θ ζ Fix (set) it as _opt.
[0106] (1.2.5: Operation of the motion reconstruction processing system during inference) The operation of the motion reconstruction processing system 1000 during inference (prediction) will be described below with reference to the drawings. It is assumed that optimal parameters acquired by the above learning process are set in the encoder 2 and decoder 4 (see FIG. 6). It is also assumed that motion data Din_rbt of the control object Rbt1 is input to the motion data input unit 1 via the first selector SEL1 (terminal 1 is selected).
[0107] The operation data input unit 1 inputs operation data of the control object Rbt1 via the first selector SEL1 (selects terminal 1). For example, video data of the operation of the control object Rbt1 is input as data Din as operation data when the control object Rbt1 performs a predetermined operation. From the data Din, the state variable x (in) (=[P tip ,V tip ,P root ,V root Then, the operation data input unit 1 acquires data of the acquired state variables x (in) The data is output to the encoder 2 as data D_x.
[0108] Encoder 2 encodes the data D_x in the same way as during the learning process, and generates the state variable x (in) The latent variable z (in) (=h(x (in) During inference, the encoder 2 acquires the data of the trained model (optimal parameters θ h Then, the encoder 2 performs the encoding process using the latent variable z (in) (=h(x (in) )) is output as data D_enc to the latent expression data acquisition processing unit 3 and the feedback processing unit 5.
[0109] The latent expression data acquisition processing unit 3 receives the data D_enc output from the encoder 2 and the data D_fb output from the mutual feedback processing unit 5, and generates a latent variable obtained by the encoder 2 that has been corrected by the feedback data D_fb (for example, a latent variable f(z' k-1 ,1) (latent variables corresponding to the inference of time step k are z k Then, the latent expression data acquisition processing unit 3 acquires the acquired latent variable z k The data is output to the decoder 4 as data D_z.
[0110] The decoder 4 performs a decoding process on the data D_z in the same way as during the learning process, and obtains the latent variable z k The state variable x k (=ζ(z k During inference, the decoder 4 acquires data of the trained model (optimal parameters θ ζ The decoder 4 then performs decoding using the acquired state variable x k The data is output as data D_x to the robot drive processing unit 6 via the second selector SEL2 (which selects terminal 1).
[0111] The robot drive processing unit 6 calculates the data D_x (state variable x k ) for driving and controlling the control object Rbt1. The robot drive processing unit 6 generates a control input u corresponding to the control input u to the control object Rbt1. k (=ζ(z k )) is realized, a control signal )) for generating torque to drive the actuators of each joint of the control object Rbt1 is output to the control object Rbt1, and the control object Rbt1 is driven and controlled.
[0112] The control object Rbt1 is driven by the signal sig_Drv to perform a predetermined operation (operation corresponding to the state variable x).
[0113] The motion data input unit 1 inputs, as motion data Din, video data (data D_rbt) of the motion executed by the control object Rbt1 driven by the signal sig_Drv via the first selector SEL1 (selects terminal 1). Then, the motion data input unit 1 uses 3D captions (motion capture processing) to calculate the position vector P' of the tip of the baton btn1 when the control object Rbt1 is performing the motion. tip , velocity vector V' tip , and the position vector P' of the root of btn1 root , velocity vector V' root Get.
[0114] The operation data input unit 1 inputs the data (=[P' tip ,V' tip ,P' root ,V' root ]) into the state variable x k (in) Then, the operation data input unit 1 acquires the acquired state variable x k (in) The data is output to the encoder 2 as data Din_x.
[0115] Encoder 2 performs encoding (processing using a trained model) on the data Din_x, and generates the state variable x k (in) The latent variable h(x k (in) ) data. Then, the encoder 2 uses the acquired latent variable h(x k (in) ) is output to the latent expression data acquisition processing unit 3 as data D_fb.
[0116] The mutual feedback processing unit 5 calculates the data D_enc (latent variable z (in) =h(x (in) )) and the data D_z (latent variable z) output from the latent expression data acquisition processing unit 3. The mutual feedback processing unit 5 receives the data D_enc (latent variable z (in) =h(x (in) )) and data D_z (latent variable z), a process of obtaining feedback data (for example, latent variable z (in) (=h(x (in) )) and the time derivative of the latent variable z (data D_z) multiplied by a gain g to obtain feedback data, and data including the data obtained by this process is output as data D_fb to the latent expression data acquisition processing unit 3.
[0117] The latent expression data acquisition processing unit 3 receives the data D_enc output from the encoder 2 and the data D_fb output from the mutual feedback processing unit 5, and generates a latent variable obtained by the encoder 2 that has been corrected by the feedback data D_fb (for example, a latent variable f(z' k-1 ,1) (latent variables corresponding to the inference of time step k are z k Then, the latent expression data acquisition processing unit 3 acquires the acquired latent variable z k The data is output to the decoder 4 as data D_z.
[0118] Then, the processing in the decoder 4 and the processing in the robot drive processing unit 6 are carried out in the same manner as above.
[0119] By repeatedly executing the above process, the motion reconstruction processing system 1000 can cause the control object Rbt1 to perform motions that imitate human motions corresponding to the motion data Din (= Din_psn) input into the motion reconstruction processing system 1000 during learning.
[0120] Figure 7 shows trajectory data (trajectory data in the three-dimensional coordinate space of the tip and base of the baton btn (trajectory data of the human movement and the movement of the control object Rbt1)) when the control object Rbt1 is made to imitate the movement (limit cycle) of a person waving a baton btn (see the upper diagram of Figure 7) in the movement reconstruction processing system 1000 (lower diagram of Figure 7).
[0121] As shown in the lower diagram of FIG. 7, it can be seen that the motion reconstruction processing system 1000 can make the control object Rbt1 imitate human motion very well.
[0122] Another experimental result is shown in Figure 8. Figure 8 shows data obtained when the motion reconstruction processing system 1000 is made to imitate the motion of a human being in which the tip of a baton btn traces a circular orbit on the xy plane. Specifically, the left diagram in Figure 8 is the target limit cycle attractor, and the central circle (thick circle) is the trajectory in the steady state. The right diagram in Figure 8 shows the limit cycle attractor (limit cycle attractor predicted by the motion reconstruction processing system 1000) obtained when a learning process is performed to have the motion reconstruction processing system 1000 imitate the motion of a human being in which the tip of a baton btn traces a circular orbit on the xy plane, and after the learning process is completed, the motion reconstruction processing system 1000 is made to use the learned model to have the control object Rbt1 imitate (during inference) the motion of a human being in which the tip of a baton btn traces a circular orbit on the xy plane.
[0123] As can be seen from Figure 8, the motion reconstruction processing system 1000 can predict both the steady-state response (the circular trajectory in the center) and the transient state response data (the data in the trajectory portion marked with an arrow in the limit cycle attractor) extremely well.
[0124] The motion reconstruction processing system 1000 performs processing using data (latent variables) in the latent representation space that expresses the steady-state response and the transient-state response, and furthermore, can reflect corrections due to mutual feedback from the control object Rbt1 in the data in the latent representation space. As a result, as shown in Figure 8, it is possible to make extremely good predictions of both the steady-state response (the trajectory of the circle in the center) and the transient-state response data (the data of the trajectory portion marked with an arrow in the limit cycle attractor).
[0125] Another experimental result is shown in Fig. 9. Fig. 9 is data obtained when the motion reconstruction processing system 1000 is made to imitate the motion of a human being in which the tip of a baton btn traces a trajectory resembling the horizontal number eight on the xy plane. Specifically, the upper diagram in Fig. 9 shows a trajectory on the xy plane when (during inference) the motion reconstruction processing system 1000 is made to imitate the motion of a human being in which the tip of a baton btn traces a trajectory resembling the horizontal number eight on the xy plane, using a learned model after the learning process is completed, and the motion reconstruction processing system 1000 is made to imitate the motion of a human being in which the tip of a baton btn traces a circular trajectory on the xy plane. The diagram shows the trajectory when the input to the control object Rbt1 becomes abnormal at a predetermined time (for example, when the control input u (signal sig_Drb) to the control object Rbt1 becomes non-input). For comparison, the lower diagram in Figure 9 shows the trajectory when the input to the control object becomes abnormal when the same human movement as above is imitated with the processing by the mutual feedback processing unit 5 (mutual feedback processing) set to "none" (OFF) in the motion reconstruction processing system 1000.
[0126] 9, in the motion reconstruction processing system 1000 (with feedback processing), even if the input to the control object Rbt1 becomes abnormal, the subsequent trajectory does not deviate significantly and can return to the correct trajectory in an extremely short time. On the other hand, in the case without feedback processing, even if the input to the control object becomes abnormal, the subsequent trajectory deviates significantly.
[0127] In the motion reconstruction processing system 1000, processing is performed using data (latent variables) in the latent representation space that expresses responses in a steady state and responses in a transient state, and further, corrections due to mutual feedback from the control object Rbt1 can be reflected in the data in the latent representation space. Therefore, as shown in FIG. 9, even if the control object Rbt1 goes into an abnormal state (for example, when the control input to the control object Rbt1 becomes zero, when the control object Rbt1 is affected by noise, or when a disturbance occurs to the control object Rbt1 during operation), the subsequent trajectory does not deviate significantly and can return to the correct trajectory in an extremely short time. In the motion reconstruction processing system 1000, the latent representation data acquisition processing unit 3 acquires observable state variables (state variables x (rbt) The feedback amount corresponding to the difference between the time derivative of the encoded output of the control object Rbt1 and the time derivative of the latent variable z is obtained, and the latent variable z is obtained by taking into account the obtained feedback amount. For example, when the control input to the control object Rbt1 becomes zero, the observable state variable (state variable x (rbt) Since the time derivative of the encoded output of the latent variable z becomes data close to zero, and following this, the time derivative of the latent variable z also becomes data close to zero, it is possible to appropriately prevent the latent variable z from deviating significantly. As a result, in the motion reconstruction processing system 1000, as described above, even if an abnormal state occurs, the control object Rbt1 does not deviate significantly from the correct trajectory.
[0128] <Summary> As described above, the motion reconstruction processing system 1000 performs processing using data (latent variables) in the latent representation space that expresses responses in a steady state and responses in a transient state, and further performs processing that reflects corrections made by mutual feedback between the latent variables output from the encoder 2 and the latent variables output from the latent expression data acquisition processing unit 3 in the data in the latent representation space, thereby making it possible to learn both the steady state and the transient state of human motion (motion to be imitated).The motion reconstruction processing system 1000 can then make the robot imitate both the steady state and the transient state of human motion (motion to be imitated) by performing processing using the learned model during inference.
[0129] During learning, the motion reconstruction processing system 1000 performs a learning process to encode state variables into data (latent variables) in a latent representation space that can represent both steady-state responses and transient state responses, and to decode the latent variables into state variables.
[0130] That is, in the motion reconstruction processing system 1000, during learning, (1) Using the data evolved over time by the phase amplitude equation from the latent variables (time series data of the latent variables), the state variables (x k (=ζ(z k ))) and the input state variables (x k (in) ) and the loss obtained based on L Rec (loss of accuracy of motion reconstruction), and the latent variables obtained by encoding (z k (in) (=h(x k (in) ))) and the latent variables (z k (=f(z0,k))) and the loss L obtained based on Enc (Loss on the accuracy of the encoding process) (The above two losses set to improve the accuracy of predicting future states) (2) The latent variable data (z') conditioned on the state variables at the current time (time step k) k ) to decode the state variable (x k (=ζ(z' k ))) and the input state variables (x k (in) ) and the loss obtained based on L Dec (loss of accuracy in the decoding process), and the latent variables obtained by the encoding process (z k (in) (=h(x k (in) ))) and the latent variable (z' k (=f(z' k-1 ,1))) and the loss L obtained based on Lat(Loss on the accuracy of the latent expression data acquisition process) (The above two losses set to improve the accuracy of predicting the most recent state) A loss function that integrates the above is introduced, and the learning process is performed based on this loss function.
[0131] Therefore, the motion reconstruction processing system 1000 can acquire a highly accurate model for making a robot imitate both the steady state and transient state of human motion (motion to be imitated).
[0132] Furthermore, in the motion reconstruction processing system 1000, during inference, a process (mutual feedback process, latent expression data acquisition process) is performed to reflect corrections made by mutual feedback between the latent variables output from the encoder 2 (state variables obtained by encoding the state variables obtained from the motion data of the control object Rbt1) and the latent variables output from the latent expression data acquisition processing unit 3 in the data of the latent expression space, while encoding and decoding processes are performed using the trained model acquired by the above learning process.This makes it possible to have the robot imitate both the steady state and transient state of human motion (motion to be imitated) with extremely high accuracy while maintaining high robustness.
[0133] [Other embodiments] In the above embodiment, in the motion reconstruction processing system 1000, as shown in (Equation 16), the loss L Rec,Diff , and loss L Dec,Diff However, the present invention is not limited to this. For example, the loss function L Rec,Diff , and loss L Dec,Diff The learning process in the motion reconfiguration processing system 1000 may be performed using a loss function in which at least one of the above is omitted.
[0134] Furthermore, in the above embodiment, in the motion reconstruction processing system 1000, the hyperparameter ω (characteristic frequency ω) acquired from the data D_hyper is described as being input from outside, but this is not limited to this, and for example, in the motion reconstruction processing system 1000, a device that automatically acquires the characteristic frequency ω from motion data (for example, a device that automatically acquires the characteristic frequency ω by autocorrelation analysis) may be introduced (added).
[0135] Furthermore, in the above embodiment, in the motion reconstruction processing system 1000, the hyperparameter λ (characteristic index λ) acquired from the data D_hyper has been described as being input from outside, but this is not limited to this. For example, in the motion reconstruction processing system 1000, a device that automatically acquires the characteristic index λ from motion data (for example, a device that automatically acquires Koopman eigenvalues (corresponding to the frequency and damping rate of each vibration mode) by Koopman mode decomposition, and acquires the characteristic index λ based on the acquired data) may be introduced (added).
[0136] Furthermore, in the motion reconfiguration processing system 1000 of the above embodiment, each block may be individually implemented as a single chip using a semiconductor device such as an LSI, or may be implemented as a single chip that includes some or all of the blocks.
[0137] Although we have referred to it as an LSI here, it may also be called an IC, system LSI, super LSI, or ultra LSI depending on the level of integration.
[0138] Furthermore, the method of integration is not limited to LSI, but may be realized by dedicated circuits or general-purpose processors. It is also possible to use FPGAs (Field Programmable Gate Arrays), which can be programmed after the LSI is manufactured, or reconfigurable processors, which allow the connections and settings of circuit cells inside the LSI to be reconfigured.
[0139] Furthermore, part or all of the processing of each functional block in each of the above embodiments may be realized by a program. And part or all of the processing of each functional block in each of the above embodiments is performed by a central processing unit (CPU) in a computer. Furthermore, the programs for performing each processing are stored in a storage device such as a hard disk or ROM, and are executed in the ROM or by being read into the RAM.
[0140] Furthermore, each process in the above-described embodiments may be realized by hardware, or by software (including cases where it is realized together with an OS (operating system), middleware, or a predetermined library). Furthermore, it may be realized by a combination of software and hardware.
[0141] Furthermore, for example, when each functional unit of the above embodiment is realized by software, each functional unit may be realized by software processing using the hardware configuration shown in FIG. 10 (for example, a hardware configuration in which a CPU (which may be a GPU), a ROM, a RAM, an input unit, an output unit, etc. are connected via a bus).
[0142] Furthermore, when each functional unit of the above embodiment is realized by software, the software may be realized using a single computer having the hardware configuration shown in Figure 10, or may be realized by distributed processing using multiple computers.
[0143] Furthermore, the execution order of the processing method in the above embodiment is not necessarily limited to the description of the above embodiment, and the execution order can be changed within the scope of the gist of the invention. Furthermore, in the processing method in the above embodiment, some steps may be executed in parallel with other steps within the scope of the gist of the invention.
[0144] The scope of the present invention includes a computer program for causing a computer to execute the above-described method and a computer-readable recording medium having the program recorded thereon, including, for example, a flexible disk, a hard disk, a CD-ROM, an MO, a DVD, a DVD-ROM, a DVD-RAM, a large-capacity DVD, a next-generation DVD, and a semiconductor memory.
[0145] The computer program is not limited to one recorded on the recording medium, but may be one transmitted via a telecommunications line, a wireless or wired communication line, a network such as the Internet, or the like.
[0146] In the above embodiment, "the same" is a concept that includes being roughly the same. "Simultaneous" is a concept that includes being roughly simultaneous. "Matched" is a concept that includes being roughly the same.
[0147] Furthermore, in the description of this specification and the claims, "optimization" refers to achieving the best state, and a parameter for "optimizing" a system (model) refers to a parameter when the value of the objective function of the system is the optimal value. The "optimal value" is the maximum value when the system is in a better state as the value of the objective function of the system increases, and is the minimum value when the system is in a better state as the value of the objective function of the system decreases. The "optimal value" may also be an extreme value. The "optimal value" may also allow for a predetermined error (measurement error, quantization error, etc.), and may be a value within a predetermined range (a range that can be considered to have sufficiently converged).
[0148] The specific configuration of the present invention is not limited to the above-described embodiment, and various changes and modifications are possible without departing from the gist of the invention.
[0149] Appendix: Introduction of loss functions The following will explain why the formulas for loss (absolute value error loss) in (Formula 17) to (Formula 20) can be derived from the KL divergence in (Formula 13).
[0150] The loss functions KL[q1|p1], KL[q1|p2], KL[q2|p3], and KL[q2|p4] are derived as follows using the same method as explained in "(1.2.3: Encoder and decoder training process)".
[0151] The loss function KL[q1|p1] is derived as follows:
number
[0152] The loss function KL[q1|p2] is derived as follows:
number
number
[0153] The loss function KL[q2|p3] is derived as follows:
number
number
[0154] The loss function KL[q2|p4] is derived as follows:
number
number
[0155] [Note] The present invention can also be expressed as follows.
[0156] The first invention is a behavior reconstruction processing system for causing a control object to imitate a predetermined behavior whose steady state is a periodic behavior, and includes a behavior data input unit, an encoder, a latent expression data acquisition processing unit, a decoder, and a mutual feedback processing unit.
[0157] The action data input unit inputs action data corresponding to a predetermined action, and acquires state variable data corresponding to the action data.
[0158] The encoder uses the parameters θ h The system has a trainable model that can set and update the above, and performs encoding processing on the state variable data to obtain latent expression data including phase data and amplitude data as encoded latent variable data.
[0159] The latent expression data acquisition processing unit performs latent expression data acquisition processing on the encoded latent variable data to acquire data after the latent expression data acquisition processing.
[0160] The decoder uses the parameters θ ζ The system has a trainable model that can set and update the latent expression data, and performs a decoding process on the data output from the latent expression data acquisition processing unit to obtain decoded state variable data.
[0161] The mutual feedback processing unit performs a mutual feedback process, which is a process of acquiring feedback data, based on the encoded latent variable data acquired by the encoder and the data after the latent expression data acquisition process acquired by the latent expression data acquisition processing unit.
[0162] Then, the latent expression data acquisition processing unit adjusts the data after the latent expression data acquisition processing in accordance with the feedback data, which is data acquired by the mutual feedback processing, to acquire latent variable data after the feedback amount adjustment, and outputs the latent variable data after the feedback amount adjustment to the decoder.
[0163] The decoder performs a decoding process on the latent variable data after adjusting the amount of feedback output from the latent expression data acquisition processing unit.
[0164] In this motion reconstruction processing system, a latent representation space is defined in which latent variables are phase data (e.g., data that can represent periodicity) that can represent steady-state responses and amplitude data (e.g., data that can represent deviations from the steady state (distance, norm, etc.)) that can represent transient-state responses, and processing is performed using the data (latent variables) in the latent representation space.Furthermore, processing is performed in which corrections made through mutual feedback from the controlled object are reflected in the data in the latent representation space, so that the controlled object can imitate both the steady state and transient state of human motion (motion to be imitated).
[0165] A second invention is a learning processing method using the motion reconstruction processing system of the first invention, comprising a first step, a second step, an integrated loss acquisition step, a parameter update processing step, a loss evaluation step, and an optimal parameter acquisition step.
[0166] The first step uses latent expression time series data obtained by time-evolving the latent expression data using a phase-amplitude equation to obtain (1) a loss for evaluating motion reconstruction, which is a loss obtained based on the decoded state variable data obtained by the decoding process and the state variable data input to the motion data input unit, and (2) a loss for evaluating encoding process, which is obtained based on the encoded latent variable data and the latent variable data after feedback amount adjustment obtained by the latent expression data acquisition processing unit.
[0167] The second step uses latent variable data conditioned on the state variable data at the target time to obtain (1) a loss for evaluating the decoding process, which is a loss obtained based on the decoded state variable data obtained by the decoding process and the state variable data input to the operation data input unit, and (2) a loss for evaluating the latent expression data acquisition process, which is a loss obtained based on the encoded latent variable data and the latent variable data after adjusting the feedback amount obtained by performing latent expression data acquisition processing on the latent variable data one time step before the target time.
[0168] The integrated loss acquisition step acquires an integrated loss, which is a loss obtained by a loss function that integrates the motion reconstruction evaluation loss, the encoding process evaluation loss, the decoding process evaluation loss, and the latent expression data acquisition process evaluation loss.
[0169] The parameter update process updates the encoder parameters θ based on the integrated loss. h and the decoder parameters θ ζ The process of updating is performed.
[0170] The loss evaluation step determines the convergence of the training process based on the combined loss.
[0171] The optimal parameter acquisition step is performed by determining the parameters θ set in the first encoder when it is determined that the learning process has converged in the loss evaluation step. h and the parameter θ set in the decoder ζ are obtained as the optimal encoding and decoding parameters, respectively.
[0172] In the learning processing method using this motion reconstruction processing system, learning processing is performed to encode state variables into data (latent variables) in a latent representation space that can represent both steady-state responses and transient state responses, and to decode the latent variables into state variables.
[0173] In other words, in this learning process, (1) Using the data evolved over time by the phase amplitude equation from the latent variables (time series data of the latent variables), the state variables (x k (=ζ(z k ))) and the input state variables (x k (in) ) and the loss obtained based on L Rec (loss of accuracy of motion reconstruction), and the latent variables obtained by encoding (z k (in) (=h(x k (in) ))) and the latent variables (z k (=f(z0,k))) and the loss L obtained based on Enc (Loss on the accuracy of the encoding process) (The above two losses set to improve the accuracy of predicting future states) (2) The latent variable data (z') conditioned on the state variables at the current time (time step k) k ) to decode the state variable (x k (=ζ(z' k ))) and the input state variables (x k (in) ) and the loss obtained based on L Dec(loss of accuracy in the decoding process), and the latent variables obtained by the encoding process (z k (in) (=h(x k (in) ))) and the latent variable (z' k (=f(z' k-1 ,1))) and the loss L obtained based on Lat (Loss on the accuracy of the latent expression data acquisition process) (The above two losses set to improve the accuracy of predicting the most recent state) A loss function that integrates the above is introduced, and the learning process is performed based on this loss function.
[0174] Therefore, the learning processing method using this motion reconstruction processing system makes it possible to learn a model with high accuracy that allows a robot to imitate both the steady state and transient state of human motion (motion to be imitated).
[0175] The third invention is the second invention, in which the first step individually sets a damping factor corresponding to each vibration mode of a predetermined operation whose steady state is a periodic operation, and based on the set damping factor, adjusts the degree of influence of the data corresponding to each vibration mode to obtain a loss for evaluating the encoding process.
[0176] As a result, in this learning processing method, for example, for data corresponding to operations corresponding to a transient state, the decay rate is set to a large value to cause fast decay and the proportion (weighting) of loss obtained from the most recent data is increased (increasing the influence of the most recent data).On the other hand, for data corresponding to operations corresponding to a steady state, the decay rate is set to a small value to cause slow decay and the proportion (weighting) of loss obtained from data over a long period of time in the time series is increased (decreasing the influence of the most recent data).
[0177] The fourth invention is the second invention, in which the second step individually sets a damping rate corresponding to each vibration mode of a predetermined operation whose steady state is a periodic operation, and based on the set damping rate, adjusts the degree of influence of the data corresponding to each vibration mode to obtain a loss for evaluating the latent expression data acquisition process.
[0178] As a result, in this learning processing method, for example, for data corresponding to operations corresponding to a transient state, the decay rate is set to a large value to cause fast decay and the proportion (weighting) of loss obtained from the most recent data is increased (increasing the influence of the most recent data).On the other hand, for data corresponding to operations corresponding to a steady state, the decay rate is set to a small value to cause slow decay and the proportion (weighting) of loss obtained from data over a long period of time in the time series is increased (decreasing the influence of the most recent data).
[0179] A fifth invention is the second invention, in which the first step acquires a first speed loss, which is a loss based on the difference between the amount of change per unit time of the state variable data and the amount of change per unit time of the decoded state variable data.
[0180] The second step is to obtain a second rate loss, which is a loss based on the difference between the amount of change per unit time of the state variable data and the amount of change per unit time of the decoded state variable data.
[0181] The integrated loss acquisition step acquires the loss obtained by a loss function that integrates the loss for motion reconstruction evaluation, the loss for encoding process evaluation, the loss for decoding process evaluation, the loss for latent expression data acquisition process evaluation, the loss for the first speed, and the loss for the second speed as the integrated loss.
[0182] As a result, this learning processing method further enables learning processing that takes into account the first speed loss and the second speed loss, making it possible to learn so that the speed of the movement to be imitated matches the speed of the movement of the controlled object.
[0183] A sixth aspect of the present invention is a program for causing a computer to execute the learning processing method according to any one of the second to fifth aspects of the present invention.
[0184] This makes it possible to realize a program for causing a computer to execute a learning processing method that has the same effect as any one of the second to fifth aspects of the present invention.
[0185] The seventh invention is a behavior reconstruction processing system for causing a control object to imitate a predetermined behavior whose steady state is a periodic behavior, and includes a behavior data input unit, an encoder, a latent expression data acquisition processing unit, a decoder, a mutual feedback processing unit, and a control object drive processing unit.
[0186] The action data input unit inputs action data corresponding to a predetermined action, and acquires state variable data corresponding to the action data.
[0187] The encoder uses the optimal encoding parameters obtained by the learning processing method of any one of the second to fifth inventions as parameters θ h The method has a trained model set as follows: and performs encoding processing on the state variable data using the trained model to obtain latent expression data including phase data and amplitude data as encoded latent variable data.
[0188] The latent expression data acquisition processing unit performs latent expression data acquisition processing on the encoded latent variable data to acquire data after the latent expression data acquisition processing.
[0189] The decoder uses the optimal decoding parameters obtained by the learning processing method of any one of the second to fifth inventions as parameters θ ζ The system has a trained model set as follows: and performs a decoding process using the trained model on the data output from the latent expression data acquisition processing unit to obtain decoded state variable data.
[0190] The mutual feedback processing unit performs a mutual feedback process, which is a process of acquiring feedback data, based on the encoded latent variable data acquired by the encoder and the data after the latent expression data acquisition process acquired by the latent expression data acquisition processing unit.
[0191] The controlled object driving processing section performs a process of driving the controlled object based on the decoded state variable data.
[0192] The operation data input unit inputs controlled object operation data, which is data corresponding to the operation of the controlled object, and acquires data corresponding to the operation data as state variable data.
[0193] The encoder performs encoding processing using a trained model on the state variable data output from the operation data input unit.
[0194] The mutual feedback processing unit performs mutual feedback processing based on the encoded latent variable data output from the encoding unit and the data after the latent expression data acquisition processing acquired by the latent expression data acquisition processing unit.
[0195] The latent expression data acquisition processing unit adjusts the data after the latent expression data acquisition processing in accordance with feedback data, which is data acquired by the mutual feedback processing, to acquire latent variable data after the feedback amount adjustment, and outputs the latent variable data after the feedback amount adjustment to the decoder.
[0196] The decoder performs a decoding process on the feedback amount adjusted latent variable data output from the latent expression data acquisition processing unit.
[0197] In this motion reconstruction processing system, a latent representation space is defined in which phase data capable of expressing steady-state responses and amplitude data capable of expressing transient-state responses are used as latent variables, and processing is performed using the data (latent variables) in the latent representation space.Furthermore, processing is performed in which corrections due to mutual feedback from the controlled object are reflected in the data in the latent representation space, making it possible to perform processing (prediction processing using a trained model) in which the controlled object imitates both the steady state and transient state of human motion (motion to be imitated).
[0198] The eighth invention is a motion reconstruction processing method for making a control object imitate a predetermined motion whose steady state is a periodic motion, and includes a motion data input step, an encoding processing step, a latent expression data acquisition processing step, a decoding processing step, a mutual feedback processing step, and a control object drive processing step.
[0199] The action data input step inputs action data corresponding to a predetermined action, and acquires state variable data corresponding to the action data.
[0200] The first encoding process step uses the optimal encoding parameters obtained by the learning process method according to any one of the second to fifth inventions as parameters θ h The method has a trained model set as follows: and performs encoding processing on the state variable data using the trained model to obtain latent expression data including phase data and amplitude data as encoded latent variable data.
[0201] The latent expression data acquisition processing step performs latent expression data acquisition processing on the encoded latent variable data to acquire data after the latent expression data acquisition processing.
[0202] The decoding step uses the optimal decoding parameters obtained by the learning method according to any one of the second to fifth aspects of the present invention as parameters θ ζThe system has a trained model set as follows: and performs a decoding process using the trained model on the data output from the latent expression data acquisition processing unit to obtain decoded state variable data.
[0203] The mutual feedback processing step performs a mutual feedback process, which is a process of acquiring feedback data based on the encoded latent variable data acquired by the encoder and the data after the latent expression data acquisition process acquired by the latent expression data acquisition processing unit.
[0204] The controlled object driving process step performs a process of driving the controlled object based on the decoded state variable data.
[0205] Then, in the operation data input step, controlled object operation data, which is data corresponding to the operation of the controlled object, is input, and data corresponding to the operation data is acquired as state variable data.
[0206] The encoding process step performs encoding process using a trained model on the state variable data output from the operation data input unit.
[0207] The mutual feedback processing step performs a mutual feedback process based on the encoded latent variable data output from the encoding and the data after the latent expression data acquisition process acquired by the latent expression data acquisition processing unit.
[0208] The latent expression data acquisition processing step acquires latent variable data after adjusting the amount of feedback by adjusting the data after the latent expression data acquisition processing in accordance with the feedback data, which is data acquired by the mutual feedback processing, and outputs the latent variable data after adjusting the amount of feedback to the decoding processing step.
[0209] The decoding step performs a decoding process on the feedback amount adjusted latent variable data output from the latent expression data acquisition processing unit.
[0210] This makes it possible to realize a motion reconstruction processing method that has the same effects as the seventh aspect of the invention.
[0211] A ninth aspect of the present invention is a program for causing a computer to execute the motion reconstruction processing method of the eighth aspect of the present invention.
[0212] This makes it possible to realize a program for causing a computer to execute a motion reconstruction processing method that has the same effects as the eighth aspect of the invention. [Explanation of symbols]
[0213] 1000 Motion Reconstruction Processing System 1 Operation data input section 2 Encoders 3 Latent expression data acquisition processing section 4 Decoder 5 Mutual feedback processing section 6 Robot drive processing unit 7 Loss Evaluation Section
Claims
1. A motion reconstruction processing system for causing a control target to imitate a predetermined motion whose steady state is a periodic motion, comprising: an action data input unit that inputs action data corresponding to the predetermined action and acquires state variable data corresponding to the action data; Parameter θ h an encoder having a trainable model capable of setting and updating the state variable data, and performing an encoding process on the state variable data to obtain latent expression data including phase data and amplitude data as encoded latent variable data; a latent expression data acquisition processing unit that performs a latent expression data acquisition process on the encoded latent variable data to acquire data after the latent expression data acquisition process; Parameter θ ζ a decoder that has a trainable model that can set and update the latent expression data, and performs a decoding process on the data output from the latent expression data acquisition processing unit to acquire decoded state variable data; a mutual feedback processing unit that performs a mutual feedback process, which is a process of acquiring feedback data, based on the encoded latent variable data acquired by the encoder and the data after the latent expression data acquisition process acquired by the latent expression data acquisition processing unit; Equipped with The latent expression data acquisition processing unit: adjusting the latent expression data acquisition process data according to the feedback data acquired by the mutual feedback process to acquire latent variable data after adjusting the amount of feedback, and outputting the latent variable data after adjusting the amount of feedback to the decoder; The decoder performing the decoding process on the feedback amount adjusted latent variable data output from the latent expression data acquisition processing unit; Motion reconstruction processing system.
2. A learning processing method using the motion reconfiguration processing system according to claim 1, a first step of acquiring, using latent expression time-series data acquired by time-evolving the latent expression data using a phase-amplitude equation, (1) a loss for motion reconstruction evaluation, which is a loss acquired based on the decoded state variable data acquired by the decoding process and the state variable data input to the motion data input unit, and (2) a loss for encoding process evaluation, which is acquired based on the encoded latent variable data and latent variable data after feedback amount adjustment acquired by the latent expression data acquisition processing unit; a second step of acquiring, using latent variable data conditioned on the state variable data at the target time, (1) a decoding process evaluation loss, which is a loss acquired based on the decoded state variable data acquired by the decoding process and the state variable data input to the action data input unit, and (2) a latent expression data acquisition process evaluation loss, which is a loss acquired based on the encoded latent variable data and feedback amount adjusted latent variable data acquired by performing the latent expression data acquisition process on the latent variable data one time step before the target time; an integrated loss acquisition step of acquiring an integrated loss, which is a loss according to a loss function that integrates the motion reconstruction evaluation loss, the encoding process evaluation loss, the decoding process evaluation loss, and the latent expression data acquisition process evaluation loss; Based on the integrated loss, the encoder parameters θ h and the decoder parameters θ ζ a parameter update processing step for performing a process of updating the parameter; a loss evaluation step for determining convergence of the training process based on the integrated loss; The parameter θ set in the encoder when it is determined that the learning process has converged in the loss evaluation step h and a parameter θ set in the decoder ζ an optimal parameter acquisition step of acquiring the optimal encoding parameters and the optimal decoding parameters, respectively; A learning processing method comprising:
3. The first step comprises: a damping factor corresponding to each vibration mode of the predetermined operation whose steady state is a periodic operation is individually set, and the degree of influence of the data corresponding to each vibration mode is adjusted based on the set damping factor to obtain the encoding process evaluation loss; The learning processing method according to claim 2 .
4. The second step is a damping factor corresponding to each vibration mode of the predetermined motion whose steady state is a periodic motion is individually set, and the influence degree of the data corresponding to each vibration mode is adjusted based on the set damping factor to obtain the loss for evaluation of the latent expression data acquisition process; The learning processing method according to claim 2 .
5. The first step comprises: obtaining a first speed loss that is a loss based on a difference between a change amount per unit time of the state variable data and a change amount per unit time of the decoded state variable data; The second step is obtaining a second speed loss that is a loss based on a difference between a change amount per unit time of the state variable data and a change amount per unit time of the decoded state variable data; The integrated loss acquisition step includes: A loss according to a loss function that integrates the motion reconfiguration evaluation loss, the encoding process evaluation loss, the decoding process evaluation loss, the latent expression data acquisition process evaluation loss, the first speed loss, and the second speed loss is acquired as the integrated loss. The learning processing method according to claim 2 .
6. A program for causing a computer to execute the learning processing method according to any one of claims 2 to 5.
7. A motion reconstruction processing system for causing a control target to imitate a predetermined motion whose steady state is a periodic motion, comprising: an action data input unit that inputs action data corresponding to the predetermined action and acquires state variable data corresponding to the action data; The optimal encoding parameters obtained by the learning processing method according to any one of claims 2 to 5 are parameters θ h and an encoder that performs an encoding process on the state variable data using the trained model to obtain latent expression data including phase data and amplitude data as encoded latent variable data. a latent expression data acquisition processing unit that performs a latent expression data acquisition process on the encoded latent variable data to acquire data after the latent expression data acquisition process; The optimal decoding parameters obtained by the learning processing method according to any one of claims 2 to 5 are parameters θ ζ a decoder that has a trained model set as follows: and performs a decoding process using the trained model on data output from a latent expression data acquisition processing unit to obtain decoded state variable data; a mutual feedback processing unit that performs a mutual feedback process, which is a process of acquiring feedback data, based on the encoded latent variable data acquired by the encoder and the data after the latent expression data acquisition process acquired by the latent expression data acquisition processing unit; a control object driving processing unit that performs processing to drive the control object based on the decoded state variable data; Equipped with The operation data input unit inputting control object operation data corresponding to an operation of the control object, and acquiring data corresponding to the operation data as the state variable data; The encoder comprises: performing an encoding process using the trained model on the state variable data output from the operation data input unit; The mutual feedback processing unit performing the mutual feedback process based on the encoded latent variable data output from the encoding and the data after the latent expression data acquisition process acquired by the latent expression data acquisition processing unit; The latent expression data acquisition processing unit: adjusting the latent expression data acquisition process data according to the feedback data acquired by the mutual feedback process to acquire latent variable data after adjusting the amount of feedback, and outputting the latent variable data after adjusting the amount of feedback to the decoder; The decoder performing the decoding process on the feedback amount adjusted latent variable data output from the latent expression data acquisition processing unit; Motion reconstruction processing system.
8. A motion reconstruction processing method for making a control target imitate a predetermined motion whose steady state is a periodic motion, comprising: an action data input step of inputting action data corresponding to the predetermined action and acquiring state variable data corresponding to the action data; The optimal encoding parameters obtained by the learning processing method according to any one of claims 2 to 5 are parameters θ h an encoding processing step of performing an encoding process on the state variable data using the trained model to obtain latent expression data including phase data and amplitude data as encoded latent variable data; a latent expression data acquisition processing step of acquiring data after latent expression data acquisition processing by performing latent expression data acquisition processing on the encoded latent variable data; The optimal decoding parameters obtained by the learning processing method according to any one of claims 2 to 5 are parameters θ ζ a decoding process step of performing a decoding process using the trained model on the data acquired by the latent expression data acquisition process step to acquire decoded state variable data; a mutual feedback processing step of performing a mutual feedback processing, which is a process of acquiring feedback data, based on the encoded latent variable data acquired by the encoder and the data after the latent expression data acquisition processing acquired by the latent expression data acquisition processing unit; a controlled object driving processing step for performing processing to drive the controlled object based on the decoded state variable data; Equipped with The operation data input step includes: inputting control object operation data corresponding to an operation of the control object, and acquiring data corresponding to the operation data as the state variable data; The encoding step includes: performing an encoding process using the trained model on the state variable data output from the operation data input unit; The mutual feedback processing step includes: performing the mutual feedback process based on the encoded latent variable data output from the encoding and the data after the latent expression data acquisition process acquired by the latent expression data acquisition processing unit; The latent expression data acquisition processing step includes: adjusting the latent expression data acquisition process data according to the feedback data acquired by the mutual feedback process to acquire latent variable data after adjusting the amount of feedback, and outputting the latent variable data after adjusting the amount of feedback to the decoding process step; The decoding step includes: performing the decoding process on the feedback amount adjusted latent variable data output from the latent expression data acquisition processing unit; Motion reconstruction processing method.
9. A program for causing a computer to execute the motion reconstruction processing method according to claim 8.