Abstract

According to the neuromuscular model of virtual trajectory control, the postures and movements of limbs are performed by shifting the equilibrium positions determined by agonist and antagonist muscle activities. In this study, we develop virtual trajectory control for the reaching movements of a multi-joint arm, introducing a proportional-derivative feedback control scheme. In virtual trajectory control, it is crucial to design a suitable virtual trajectory such that the desired trajectory can be realized. To this end, we propose an algorithm for updating virtual trajectories in repetitive control, which can be regarded as a Newton-like method in a function space. In our repetitive control, the virtual trajectory is corrected without explicit calculation of the arm dynamics, and the actual trajectory converges to the desired trajectory. Using computer simulations, we assessed the proposed repetitive control for the trajectory tracking of a two-link arm. Our results confirmed that when the feedback gains were reasonably high and the sampling time was sufficiently small, the virtual trajectory was adequately updated, and the desired trajectory was almost achieved within approximately 10 iterative trials. We also propose a method for modifying the virtual trajectory to ensure that the formation of the actual trajectory is identical even when the feedback gains are changed. This modification method makes it possible to execute flexible control, in which the feedback gains are effectively altered according to motion tasks.

1  Introduction

In the neural control field of limb movements, there is a certain concept that focuses on the viscoelasticity of muscles, suggesting that the central nervous system adjusts the activity of motoneurons to specify the equilibrium point at which the extensor and flexor muscles of a joint are balanced. In other words, muscles have properties similar to springs, and the viscoelasticity and equilibrium point are determined by motoneuron activities, which makes it possible to realize various postures and movements.

Polit and Bizzi (1979) conducted experiments on the elbow joint movements of rhesus monkeys and inferred that a monkey's central nervous system only specifies the final equilibrium position of the movement by adjusting the viscoelasticity of the flexor and extensor muscles to form a trajectory toward a target. In addition, Bizzi, Accornero, Chapple, and Hogan (1984) executed experiments on the elbow joint movements of deafferented monkeys and suggested that the activation pattern of motoneurons defines not only the final equilibrium position but also the time series of equilibrium positions over the entire movement. This time series of equilibrium positions has been called, for example, an equilibrium trajectory, equilibrium-point trajectory, and virtual trajectory. Hogan (1984) presented a mathematical model of virtual trajectory control, in which driving torque is generated by muscular contraction corresponding to the difference between the arm position and the equilibrium position at every moment. According to this control model, the virtual trajectory is specified by the neural commands, and then the limb moves while tracking the equilibrium positions owing to the viscoelasticity of the musculoskeletal system; therefore, it is not necessary to calculate the complex dynamics of the limb. Flash (1987) applied the equilibrium trajectory control to multi-joint arm movements and discussed the trajectory formation of human reaching movements. Flash then concluded that the hand trajectories observed in human reaching movements could be reproduced from the straight equilibrium trajectories defined by the minimum jerk criterion (Flash & Hogan, 1985). Gomi and Kawato (1996) experimentally measured the perturbation for external forces during human reaching movements and estimated the arm stiffness whose value was considerably lower than that in Flash's (1987) simulation. Furthermore, they demonstrated that the equilibrium-point trajectories calculated for the estimated low stiffness were complex and far from the actual straight trajectories. Their experimental results suggest that the smooth trajectory of a human hand cannot be formed by simply specifying the equilibrium-point trajectory as a copy of the desired trajectory.

The virtual trajectory needs to be designed in such a way that the actual trajectory formed by tracking the sequence of equilibrium positions matches the desired trajectory. How can such a suitable virtual trajectory be obtained? Shadmehr (1990) and Katayama and Kawato (1993) proposed learning schemes to obtain such suitable virtual trajectories. However, their learning schemes require an enormous amount of training, and it might be difficult to effectively respond to the change of the stiffness that is characterized by the spring-like behavior of agonist and antagonist muscles. In particular, if the stiffness is relatively low, it is more delicate to achieve the desired movement because the required virtual trajectory becomes more complex. A more significant problem is that the relation between the virtual trajectory and the actual trajectory depends on the dynamics of the arm, which means that the procedure to get the suitable virtual trajectory includes the calculation of the arm dynamics. It should be noted that the original scheme of the equilibrium trajectory control has an advantage of operating without calculating the arm dynamics.

The traditional model of the equilibrium trajectory control for musculoskeletal systems is considered to be similar to feedback control, where the feedback gains are determined by the muscle stiffness. In this study, we develop the virtual trajectory control from the viewpoint of control engineering rather than the control model of living things. We aim at improving control performance and the expansion of mechanical application. In this development, a more practical way for obtaining proper virtual trajectories is required to succeed in trajectory tracking. We propose a repetitive control method in which the virtual trajectory is corrected at every trial according to the information of the trajectory error. This correction is advisable to be executed without explicit calculation of the arm dynamics. It is expected that in the repetitive control, the virtual trajectory derives the desired trajectory after several corrections. The effectiveness of the proposed repetitive control is examined for the trajectory tracking of multijoint arm movements using computer simulations.

The actual trajectory that is guided by a virtual trajectory depends on the feedback gains. For example, if low gains are set, the actual trajectory tends to be far from the virtual trajectory. Naturally, the virtual trajectory required to derive a desired trajectory must be adjusted according to the values of the feedback gains. We investigate how the virtual trajectory should be modified so that the identical actual trajectory is formed even when the feedback gains are changed.

2  Virtual Trajectory Control

The paradigm of the virtual trajectory control is described. The dynamics of a k-joint arm is generally expressed as a differential equation τ=f(θ,θ˙,θ¨), where τ, θ, θ˙ and θ¨ are k-dimensional vectors and represent the joint torque, joint angle, angular velocity, and angular acceleration, respectively. If the kinematics (i.e., the relation between the joint angle θ and the hand position x) is expressed as x=g(θ), the hand velocity is given by x˙=J(θ)θ˙, where J(θ)g(θ)/θ is the Jacobian of g(θ) with respect to θ. When the hand force F acts on the multi-joint arm, the joint torque is given by multiplying F by the transpose of J(θ), and the arm moves according to the differential equation,
JT(θ)F=τ=f(θ,θ˙,θ¨).
(2.1)
Expanding the early applications of equilibrium trajectory control to multi-joint limb movements, the hand force caused by the difference between actual and equilibrium positions is given by F=K(xv-x). Here, x is an actual hand position, xv is an equilibrium position determined by the activities of multiple flexor muscles and extensor muscles, and K is a diagonal matrix representing the hand stiffness. Therefore, the following equation is derived from equation 2.1:
JT(θ)K(xv-x)=f(θ,θ˙,θ¨).
(2.2)
From the perspective of control engineering, this formula is similar to conventional feedback control, especially proportional control (P-control), and K is considered to be proportional gain (P-gain).
In this study, we introduce proportional-derivative control (PD-control) into the scheme of virtual trajectory control to improve the performance of trajectory tracking control of a multi-joint arm. Changing the left side of equation 2.2 addresses the following feedback control system:
JT(θ)Kp(xv-x)+Kd(x˙v-x˙)=f(θ,θ˙,θ¨).
(2.3)
Here, Kp and Kd are called proportional gain (P-gain) and derivative gain (D-gain), respectively, and both are diagonal matrices with the positive constants of diagonal elements. Virtual trajectory control that obeys equation 2.3 is different from conventional PD-control because the control signal is calculated from a virtual trajectory instead of a desired trajectory.
Suppose that a desired trajectory x*, which is often termed reference trajectory in control engineering, is given for a k-joint arm. In virtual trajectory control, once a virtual trajectory is specified, an actual trajectory is formed according to the arm dynamics. Therefore, the critical point of this control scheme is how to find a virtual trajectory xv* required to form an actual trajectory x that coincides with the desired trajectory x*. If the arm dynamics f(θ,θ˙,θ¨) is already known, the required virtual trajectory xv* can be calculated as follows. Consider that the arm movement starts at t0 and ends at tN, and variables are discretized by infinitesimal time Δt=ti-ti-1 (i=1,2,,N). Then the hand position at ti is denoted by x(ti), and its velocity x˙(ti) is defined by the backward difference of the position, such that
x˙(ti)=x(ti)-x(ti-1)Δt.
Discretizing some variables and arranging the expression of equation 2.3, we obtain
xv*(ti)=x*(ti)+(ΔtKp+Kd)-1Kd{xv*(ti-1)-x*(ti-1)}+Δt(ΔtKp+Kd)-1{JT(θ*(ti))}#f(θ*(ti),θ˙*(ti),θ¨*(ti)),(i=1,2,,N).
(2.4)
Here, # signifies the conversion to a generalized inverse matrix. The use of {JT(θ)}# means that the formalization of this control scheme includes a redundant multi-joint arm for which the Jacobian J(θ) is not a square matrix. In this connection, the equation to calculate the required virtual trajectory for simple P-control (see equation 2.2) can be easily derived by replacing the differential gain Kd with zero matrix in equation 2.4.

Consider that the arm dynamics and kinematics are known, and the time series {x*(t0),x*(t1),,x*(tN)} of the desired hand trajectory is specified. If the initial value xv*(t0) of the virtual trajectory is defined, the complete required virtual trajectory is obtained as follows: xv*(t1) is calculated from xv*(t0), and xv*(t2),,xv*(tN-1), and xv*(tN) are sequentially calculated in accordance with equation 2.4. Therefore, the required virtual trajectory {xv*(t):t0ttN} that derives a desired trajectory {x*(t):t0ttN} depends on the choice of initial values. It should be noted that there exist multiple virtual trajectories deriving the identical actual trajectory.

Although the hand virtual trajectory is considered in our description, the virtual trajectory control for joint angles can be formalized in a similar manner; this formalization is easier because the calculation concerning Jacobian is unnecessary.

3  Repetitive Control for the Correction of Virtual Trajectories

If the dynamics of a controlled object is known, it is possible to calculate the required virtual trajectory xv* that realizes the desired trajectory x* according to equation 2.4. However, the details of the arm dynamics and the exact values of its physical parameters are unknown in many cases. In this section, we propose a repetitive control method to achieve the desired trajectory by correcting a virtual trajectory at every motion trial without calculating the arm dynamics.

A Newton-Raphson method in a function space is available for repetitive control. We consider an iteration method to obtain the required virtual trajectory xv* that realizes the desired trajectory x* under the control dynamics (see equation 2.3). A hand trajectory {x(t):t0ttN}, which is formed in two-dimensional or three-dimensional Euclidean space, is a function of time. A function space that is a set of such trajectories is denoted by X. We introduce a nonlinear map Ψ:XX defined by
Ψ(xv)=x*-x(xv),
(3.1)
where x(xv) signifies that an actual trajectory x is determined by a virtual trajectory xv, that is, x is a function of xv.1 Equation 3.1 expresses the error of the actual trajectory. In order to find xv* satisfying Ψ(xv*)=0, Newton's method is applied in the function space, where its recurrence formula is generally expressed by
xv(n+1)=xv(n)-Ψ'(xv(n))-1Ψ(xv(n)),
(3.2)
where n labels the iteration step and Ψ'(xv(n))-1 represents the inverse of the Fréchet derivative of Ψ in the function space. Equation 3.2 indicates how to make an approximate sequence toward the exact solution of Ψ(xv)=0. Since the calculation of Ψ'(xv(n))-1 depends on the arm dynamics and is complicated, it is difficult to explicitly deal with equation 3.2. Instead, a simplified update rule can be derived by the use of the discrete representation, equation 2.4. In other words, considering the difference between the exact solution and its approximate solution, a computable representation corresponding to equation 3.2 is deduced in the following stage.
The time series of the exact solution {xv*(ti):i=0,1,,N} is given by equation 2.4. Let {xv(n)(t):t0ttN} be a virtual trajectory existing in the neighborhood of the exact solution, and let {x(n)(t):t0ttN} be an actual trajectory derived from the virtual trajectory. In the same way as equation 2.4, we have the following relationship:
xv(n)(ti)=x(n)(ti)+(ΔtKp+Kd)-1Kd{xv(n)(ti-1)-x(n)(ti-1)}+Δt(ΔtKp+Kd)-1{JT(θ(n)(ti))}#f(θ(n)(ti),θ˙(n)(ti),θ¨(n)(ti)).
(3.3)
Subtracting equation 3.3 from equation 2.4, we obtain the following difference equation:
xv*(ti)-xv(n)(ti)=x*(ti)-x(n)(ti)+(ΔtKp+Kd)-1Kd{xv*(ti-1)-x*(ti-1)}-{xv(n)(ti-1)-x(n)(ti-1)}+Δt(ΔtKp+Kd)-1[{JT(θ*(ti))}#f(θ*(ti),θ˙*(ti),θ¨*(ti))-{JT(θ(n)(ti))}#f(θ(n)(ti),θ˙(n)(ti),θ¨(n)(ti))].
(3.4)
We focus on the third term of the right-hand side of equation 3.4. If the sampling is sufficiently fine (i.e., 0<Δt1) and Kp and Kd are high gains, the coefficient of the third term Δt(ΔtKp+Kd)-1 is considerably smaller than the coefficients of the first and second terms2 of equation 3.4. Furthermore, if the virtual trajectory xv(n) is close to the required virtual trajectory xv*, the difference between {JT(θ*(ti))}#f(θ*(ti),θ˙*(ti),θ¨*(ti)) and {JT(θ(n)(ti))}#f(θ(n)(ti),θ˙(n)(ti),θ¨(n)(ti)) will be small. Based on the above three assumptions, the third term of the right-hand side of equation 3.4 becomes relatively small and can be neglected. Thus, equation 3.4 can be approximated by
xv*(ti)-xv(n)(ti)x*(ti)-x(n)(ti)+(ΔtKp+Kd)-1Kd{xv*(ti-1)-x*(ti-1)}-{xv(n)(ti-1)-x(n)(ti-1)}.
(3.5)
Equation 3.5 includes no terms concerning the arm dynamics and kinematics, and all of its terms can be calculated. Replacing xv*(t) with xv(n+1)(t) in equation 3.5, we define the form
xv(n+1)(ti)-xv(n)(ti)=x*(ti)-x(n)(ti)+(ΔtKp+Kd)-1Kd{xv(n+1)(ti-1)-xv(n)(ti-1)}-{x*(ti-1)-x(n)(ti-1)}.
(3.6)
Here, xv(n+1)(t) is a better approximation of xv*(t), meaning that the updated virtual trajectory xv(n+1) will be closer to xv* than xv(n). Arranging the terms of equation 3.6 and adding a reduction coefficient ɛ(0<ɛ<1), we have
{xv(n+1)(ti)-xv(n)(ti)}-(ΔtKp+Kd)-1Kd{xv(n+1)(ti-1)-xv(n)(ti-1)}=ɛ{x*(ti)-x(n)(ti)}-(ΔtKp+Kd)-1Kd{x*(ti-1)-x(n)(ti-1)}.
(3.7)
Here, the variation of the virtual trajectory in the left-hand side corresponds to the error of the actual trajectory in the right-hand side. A reduction coefficient ɛ(0<ɛ<1) is used to prevent the divergence of the repetitive control. Therefore, it is required that equation 3.7 is satisfied when the time series of the virtual trajectory is updated from {xv(n)(ti):i=0,1,,N} to {xv(n+1)(ti):i=0,1,,N}. If the following equation holds,
xv(n+1)(t)-xv(n)(t)=ɛ{x*(t)-x(n)(t)}(t0ttN),
(3.8)
then the following relations are clearly valid:
xv(n+1)(ti)-xv(n)(ti)=ɛ{x*(ti)-x(n)(ti)}(i=0,1,,N),xv(n+1)(ti-1)-xv(n)(ti-1)=ɛ{x*(ti-1)-x(n)(ti-1)}(i=1,2,,N).
Thus, if the virtual trajectory is updated from the actual trajectory error x*(t)-x(n)(t) in accordance with equation 3.8, the update equation 3.7 is always satisfied.

This theoretical derivation is appropriate in the range of the neighborhood of the exact solution xv*(t). Therefore, the repetitive control requires that the first virtual trajectory xv(1)(t) is near the required virtual trajcectory xv*(t) to avoid divergence. From this perspective, the desired trajectory x*(t) is selected as the first virtual trajectory xv(1)(t). Namely, the control in the first trial of the repetitive control is the same as the conventional feedback control in which general trajectory tracking is performed.

According to the discussion, the algorithm for updating virtual trajectories in the repetitive control is summarized as
xv(1)(t)=x*(t),xv(n+1)(t)=xv(n)(t)+ɛ{x*(t)-x(n)(t)}.
(3.9)
The second equation of the above update rule, equation 3.9 is equivalent to an equation that is deduced from equation 3.2 of Newton's method by replacing the inverse of the Fréchet derivative Ψ'(xv(n)) with a simple linear operator -ɛid (id: identity mapping). Thus, update rule 3.9 can be regarded as a Newton-like method.3 The proposed update rule that is obtained by neglecting the term on the arm dynamics is extremely concise. However, it should be noted that this simplification is applicable under the three conditions of high gains, fine sampling, and neighborhood of the solution xv*(t). Figure 1 shows the schematic of the virtual trajectory correction by the proposed repetitive control.
Figure 1:

Correction of virtual trajectories by repetitive control. A desired trajectory (black dashed line) x* is given. When the actual trajectory (blue solid line) x(n) is formed by tracking the virtual trajectory (red solid line) xv(n) at the nth trial, the next (n+1)th virtual trajectory xv(n+1) is calculated from the nth trajectory error x*-x(n).

Figure 1:

Correction of virtual trajectories by repetitive control. A desired trajectory (black dashed line) x* is given. When the actual trajectory (blue solid line) x(n) is formed by tracking the virtual trajectory (red solid line) xv(n) at the nth trial, the next (n+1)th virtual trajectory xv(n+1) is calculated from the nth trajectory error x*-x(n).

Incidentally, it is easy to derive the algorithm for updating virtual trajectories for simple P-control (see equation 2.2), which is given by equation 3.9, as well as PD-control. Although the update rules are the same, the performance of iterative control is not the same between for P-control and PD-control because the required virtual trajectories are significantly different.

4  Virtual Trajectory Modification for Gain Change

When the feedback gains are changed, the actual trajectory naturally changes in the virtual trajectory control. In this section, we investigate how the virtual trajectory should be modified for the gain change in order to obtain the same actual trajectory as that before the gain change.

Suppose that for a set of values for feedback gains Kp and Kd, a virtual trajectory xv is specified and an actual trajectory x is formed by applying the virtual trajectory control (see equation 2.3). Thereafter, we make the gains α times; that is, new gains are set as
Kpnew=αKp,Kdnew=αKd(α>0).
(4.1)
When a new virtual trajectory xvnew is adjusted for the new gains Kpnew and Kdnew to obtain the same actual trajectory x as before the change, the following equation is valid, as well as equation 2.3:
JT(θ)Kpnew(xvnew-x)+Kdnew(x˙vnew-x˙)=f(θ,θ˙,θ¨).
(4.2)
From equations 2.3 and 4.2, we have
JT(θ)Kp(xv-x)+Kd(x˙v-x˙)=JT(θ)Kpnew(xvnew-x)+Kdnew(x˙vnew-x˙).
(4.3)
This equation means that the virtual trajectory should be adjusted so that both torques are identical before and after the change. By substituting equation 4.1 into 4.3 and arranging the terms, we obtain
Kpαxvnew-{xv+(α-1)x)}+Kdαx˙vnew-{x˙v+(α-1)x˙)}=0.
(4.4)
If the new virtual trajectory is given by
xvnew=1αxv+1-1αx,
(4.5)
then equation 4.4 is satisfied, and the same actual trajectory is thereby formed.

From the above consideration, when the feedback gains are changed by equation 4.1 for any constant α>0, the corresponding virtual trajectory can be obtained by simple calculation (see equation 4.5), and the same actual trajectory can be achieved as before the change. Accordingly, once a virtual trajectory realizing the desired trajectory for a set of gains is found, it is easy to adjust the virtual trajectory so that the identical desired trajectory is achieved for constant multiplied gains corresponding to a motion task.

5  Numerical Experiments

We performed computer simulations for reaching movements of a two-link arm moving in the horizontal plane, as illustrated in Figure 2. The dynamics of a two-link arm is expressed by the following differential equation:
τ1=(I1+I2+2m2l1s2cosθ2+m2l12)θ¨1+(I2+m2l1s2cosθ2)θ¨2-m2l1s2(2θ˙1+θ˙2)θ˙2sinθ2+b1θ˙1,τ2=(I2+m2l1s2cosθ2)θ¨1+I2θ¨2+m2l1s2θ˙12sinθ2+b2θ˙2.
(5.1)
Here, θi and τi are the angle and actuated torque of joint i. In addition, mi,li,si, and Ii represent the mass, length, distance from the center of mass to the joint, and rotary inertia around the joint of link i, respectively; bi represents the coefficient of viscosity of joint i. The values of these physical parameters are provided in Table 1.
Table 1:
Physical Parameters of a Two-Link Arm.
ParametersLink 1Link 2
Mass: mi (kg) 1.680 1.644 
Length: li (m) 0.325 0.367 
COM: si (m) 0.1417 0.2503 
Inertia: Ii (kg·m20.0522 0.1475 
Viscosity: bi (kg·m2/s) 0.2 0.2 
ParametersLink 1Link 2
Mass: mi (kg) 1.680 1.644 
Length: li (m) 0.325 0.367 
COM: si (m) 0.1417 0.2503 
Inertia: Ii (kg·m20.0522 0.1475 
Viscosity: bi (kg·m2/s) 0.2 0.2 
Figure 2:

A two-link arm moving in the horizontal plane (X-Y plane).

Figure 2:

A two-link arm moving in the horizontal plane (X-Y plane).

In our computer simulations, the origin of the plane coordinates was positioned at the rotation axis of the first link. We mainly examined a point-to-point reaching movement; the hand of the two-link arm moved from an initial position (x0,y0)=(0.1,0.1) m to a target position (xf,yf)=(0.4,0.4) m in 1 s. The desired hand trajectory was specified as the minimum jerk trajectory (Flash & Hogan, 1985), which is given by
x(t)=x0+(x0-xf)(15t4-6t5-10t3),y(t)=y0+(y0-yf)(15t4-6t5-10t3).
The minimum jerk trajectory has a straight path and a bell-shaped profile of speed. The sampling frequency was 100 Hz.

5.1  Redundancy of the Required Virtual Trajectory

As described in section 2, when the dynamics of the two-link arm (see equation 5.1) and the physical parameters (see Table 1) are known, it is possible to calculate a suitable virtual trajectory that leads the hand to the desired minimum jerk trajectory.

Here, we fixed the feedback gains at Kp=30E and Kd=10E, where E is an identity matrix. A virtual trajectory calculated from an initial point (0.1,0.1) m in accordance with equation 2.4 is shown in the upper column of Figure 3A, and an actual trajectory derived from this virtual trajectory by the application of the control equation 2.3 is shown in the lower column of Figure 3A. The hand path and speed profile of the actual trajectory were in complete agreement with those of the desired trajectory. Similarly, another virtual trajectory calculated from an initial point (0.15,0.15) m derived the same actual trajectory, which was in complete agreement with the desired trajectory as shown in Figure 3B. Thus we confirmed that more than one virtual trajectory can derive an identical actual trajectory, depending on the definition of the initial point. In other words, even if there is no redundancy for a physical system, there is some redundancy from the viewpoint of a control system.
Figure 3:

Different virtual trajectories that realize an identical desired trajectory based on a PD-control scheme. Feedback gains: Kp=30E,Kd=10E,E=diag(1,1). (A) Hand paths and speed profiles when the initial point of the virtual trajectory is (0.10,0.10) m. (B) Hand paths and speed profiles when the initial point of the virtual trajectory is (0.15,0.15) m. The upper row shows the virtual trajectories (red dotted lines), and the lower row shows the actual trajectories (blue solid lines). The desired hand paths and speed profiles (black dotted lines) are overwritten in these figures.

Figure 3:

Different virtual trajectories that realize an identical desired trajectory based on a PD-control scheme. Feedback gains: Kp=30E,Kd=10E,E=diag(1,1). (A) Hand paths and speed profiles when the initial point of the virtual trajectory is (0.10,0.10) m. (B) Hand paths and speed profiles when the initial point of the virtual trajectory is (0.15,0.15) m. The upper row shows the virtual trajectories (red dotted lines), and the lower row shows the actual trajectories (blue solid lines). The desired hand paths and speed profiles (black dotted lines) are overwritten in these figures.

The desired trajectory can also be formed in accordance with the original model of virtual trajectory control (i.e., P-control in equation 2.2). Actually, by setting K=Kp=30E and Kd=0E, a suitable virtual trajectory calculated from equation 2.4 was able to derive the minimum jerk trajectory between (0.1,0.1) m and (0.4,0.4) m, as shown in Figure 4. Comparing the required virtual trajectory for the P-control with that for the PD-control, its hand path was considerably curved, and the speed profile extremely waved as shown in the upper column of Figure 4.
Figure 4:

A virtual trajectory (red dotted line) and an actual trajectory (blue solid line) in the virtual trajectory control based on a P-control scheme. Feedback gain: K=30E. The desired trajectory (black dotted line) is the same as in Figure 3.

Figure 4:

A virtual trajectory (red dotted line) and an actual trajectory (blue solid line) in the virtual trajectory control based on a P-control scheme. Feedback gain: K=30E. The desired trajectory (black dotted line) is the same as in Figure 3.

5.2  Repetitive Virtual Trajectory Control

Assuming that the dynamics of the two-link arm was unknown, we simulated the repetitive control for two cases of different feedback gains: low gains (Kp=30E,Kd=10E) and high gains (Kp=150E,Kd=50E), where E=diag(1,1). Virtual trajectories were corrected 10 times for the cases of respective gains, according to the update algorithm in equation 3.9 with the reduction coefficient ɛ=0.3.

Figures 5 and 6 show the hand paths and speed profiles, respectively, in the 1st, 3rd, 5th, and 10th trials of the repetitive control for the case of the low gains. In addition, Figures 7 and 8 show the hand paths and speed profiles, respectively, in the same way but for the high gains. The upper columns of these figures correspond to the corrected virtual trajectories, and the lower columns correspond to the derived actual trajectories. In the first trial, the control was essentially the same as the conventional PD-control because the desired trajectory was chosen as the first virtual trajectory; some error was seen in the actual trajectory throughout the overall movement. For the low gains (see Figures 5 and 6), the virtual trajectory was corrected, and the difference between the actual and desired trajectories was reduced as the trials progressed; however, the error of the actual trajectory remained after the repetitive control was performed 10 times. For the high gains (see Figures 7 and 8), the error of the actual trajectory was relatively small in the first trial and was reduced as the trials progressed; we found that the actual trajectory almost converged to the desired trajectory by the 10th trial.
Figure 5:

Hand paths in the 1st, 3rd, 5th, and 10th trials of the repetitive control for the low gains (Kp=30E,Kd=10E). The upper row shows the virtual trajectories (red solid lines) and the lower row shows the actual trajectories (blue solid lines). The desired trajectories (black dotted lines) are overwritten in these figures.

Figure 5:

Hand paths in the 1st, 3rd, 5th, and 10th trials of the repetitive control for the low gains (Kp=30E,Kd=10E). The upper row shows the virtual trajectories (red solid lines) and the lower row shows the actual trajectories (blue solid lines). The desired trajectories (black dotted lines) are overwritten in these figures.

Figure 6:

Hand speed profiles in the 1st, 3rd, 5th, and 10th trials in the simulation of Figure 5. The upper row shows the virtual speed profiles (red solid lines), and the lower row shows the actual speed profiles (blue solid lines). The desired speed profiles (black dotted lines) are overwritten in these figures.

Figure 6:

Hand speed profiles in the 1st, 3rd, 5th, and 10th trials in the simulation of Figure 5. The upper row shows the virtual speed profiles (red solid lines), and the lower row shows the actual speed profiles (blue solid lines). The desired speed profiles (black dotted lines) are overwritten in these figures.

Figure 7:

Hand paths in the 1st, 3rd, 5th, and 10th trials of the repetitive control for the high gains (Kp=150E,Kd=50E). The upper row shows the virtual trajectories (red solid lines) and the lower row shows the actual trajectories (blue solid lines). The desired trajectories (black dotted lines) are overwritten in these figures.

Figure 7:

Hand paths in the 1st, 3rd, 5th, and 10th trials of the repetitive control for the high gains (Kp=150E,Kd=50E). The upper row shows the virtual trajectories (red solid lines) and the lower row shows the actual trajectories (blue solid lines). The desired trajectories (black dotted lines) are overwritten in these figures.

Figure 8:

Hand speed profiles in the 1st, 3rd, 5th, and 10th trials in the simulation of Figure 7. The upper row shows the virtual speed profiles (red solid lines) and the lower row shows the actual speed profiles (blue solid lines). The desired speed profiles (black dotted lines) are overwritten in these figures.

Figure 8:

Hand speed profiles in the 1st, 3rd, 5th, and 10th trials in the simulation of Figure 7. The upper row shows the virtual speed profiles (red solid lines) and the lower row shows the actual speed profiles (blue solid lines). The desired speed profiles (black dotted lines) are overwritten in these figures.

The repetitive control of the reaching movement was also examined for the P-control scheme (see equation 2.2). The desired trajectory was specified in the same way as in the above simulations for the PD-control scheme. The repetitive control diverged in both the cases of the low gain (K=30E) and the high gain (K=150E). Figures 9 and 10 show the simulation results of 10 iterative trials in the repetitive control for the high gain (K=150E). The hand path twisted and turned, and the speed profile was extremely wavy with each update of the virtual trajectory. The actual trajectory never converged to the desired straight trajectory.
Figure 9:

Hand paths in the 1st, 3rd, 5th, and 10th trials of the repetitive control based on P-control. Feedback gain: K=150E. Refer to the caption of Figure 7 concerning the types and colors of the lines.

Figure 9:

Hand paths in the 1st, 3rd, 5th, and 10th trials of the repetitive control based on P-control. Feedback gain: K=150E. Refer to the caption of Figure 7 concerning the types and colors of the lines.

Figure 10:

Hand speed profiles in the simulation of Figure 9. Refer to the caption of Figure 8 concerning the types and colors of the lines.

Figure 10:

Hand speed profiles in the simulation of Figure 9. Refer to the caption of Figure 8 concerning the types and colors of the lines.

As we have described, we performed numerical experiments on the repetitive control for a point-to-point reaching movement with moderate speed. Additional experiments were tried for three types of movements.

5.2.1  Reaching Movements with Different Speed

We examined reaching movements for three different cases of the movement duration: 0.5 s, 1.0 s, and 1.5 s. As the movement duration is shorter, the nonlinear terms of the arm dynamics have more significant effect and the control is more difficult. The desired trajectory was the same minimum-jerk trajectory as in the previous simulations. After setting the feedback gains Kp=150E and Kd=50E, we simulated the repetitive control of the reaching movements. Figures 11 and 12 show the simulation results of 10 iterative trials in the repetitive control for the quick motion (duration: 0.5 s) and the slow motion (duration: 1.5 s). The actual trajectory whose duration was 1.5 s converged to the desired trajectory by the 5th trial, and the actual trajectory whose duration was 0.5 s almost converged to the desired trajectory by the 10th trial. The results for the movement whose duration was 1.0 s are shown in Figures 7 and 8, in which the convergence of its repetitive control was confirmed.
Figure 11:

Hand paths (solid lines) for a slow movement (duration: 1.5 s) and hand paths (dashed lines) for a quick movement (duration: 0.5 s) in the repetitive control. Feedback gains: Kp=150E,Kd=50E. The upper row shows the virtual trajectories (red lines) and the lower row shows the actual trajectories (blue lines). The desired trajectories (black dotted lines) are overwritten in these figures.

Figure 11:

Hand paths (solid lines) for a slow movement (duration: 1.5 s) and hand paths (dashed lines) for a quick movement (duration: 0.5 s) in the repetitive control. Feedback gains: Kp=150E,Kd=50E. The upper row shows the virtual trajectories (red lines) and the lower row shows the actual trajectories (blue lines). The desired trajectories (black dotted lines) are overwritten in these figures.

Figure 12:

Hand speed profiles (solid lines) for a slow movement (duration: 1.5 s) and hand speed profiles (dashed lines) for a quick movement (duration: 0.5 s) in the repetitive control. The upper row shows the virtual speed profiles (red lines) and the lower row shows the actual speed profiles (blue lines). The desired speed profiles (black dotted lines) are overwritten in these figures.

Figure 12:

Hand speed profiles (solid lines) for a slow movement (duration: 1.5 s) and hand speed profiles (dashed lines) for a quick movement (duration: 0.5 s) in the repetitive control. The upper row shows the virtual speed profiles (red lines) and the lower row shows the actual speed profiles (blue lines). The desired speed profiles (black dotted lines) are overwritten in these figures.

5.2.2  A Wider Range of Reaching Movements

We examined a wider range of reaching movements in a workspace. Two paths, L1 and L2, were given; L1 is a straight line connecting an initial point (-0.36,0.6) m and an end point (-0.36,0.1) m, and L2 is a straight line connecting an initial point (0.25,0.1) m and an endpoint (-0.25,0.6) m. The movement duration was 1 s for tracing L1 and 1.5 s for tracing L2. The minimum jerk trajectories that traced paths L1 and L2 were specified as the desired trajectories. Figures 13 and 14 show the simulation results of the repetitive control for the reaching movements L1 and L2. It was confirmed that both desired trajectories were achieved by the 10th trial in the repetitive control.
Figure 13:

Hand paths in the repetitive control for reaching movements that trace straight lines L1: (-0.36,0.6)(-0.36,0.1) and L2: (0.25,0.1)(-0.25,0.6). Tiny circles denote starting positions. The movement duration is 1 s for tracing L1 and 1.5 s for tracing L2. Feedback gains: Kp=150E,Kd=50E. Refer to the caption of Figure 7 concerning the types and colors of lines.

Figure 13:

Hand paths in the repetitive control for reaching movements that trace straight lines L1: (-0.36,0.6)(-0.36,0.1) and L2: (0.25,0.1)(-0.25,0.6). Tiny circles denote starting positions. The movement duration is 1 s for tracing L1 and 1.5 s for tracing L2. Feedback gains: Kp=150E,Kd=50E. Refer to the caption of Figure 7 concerning the types and colors of lines.

Figure 14:

Hand speed profiles in the simulation of Figure 13. Refer to the caption of Figure 8 concerning the types and colors of the curves.

Figure 14:

Hand speed profiles in the simulation of Figure 13. Refer to the caption of Figure 8 concerning the types and colors of the curves.

5.2.3  A Complex Curved Movement

We examined a complex movement drawing a double loop. Considering the data on the drawing of complex two-dimensional trajectories (Viviani & Flash, 1995), an oblate limaçon, which is mathematically described, was used as a reference trajectory:
x=a(cosθ+bcos2θ)+x0,y=c(sinθ+bsin2θ)+y0.
In our computer simulation, the values of coefficients were given as a=0.065 m, b=1.5, c=0.024 m, x0=0.20 m, and y0=0.25 m. The movement duration was 2 s, and the sampling time was Δt=0.01 s. By specifying the argument parameter θ(ti)=πiΔt rad :i=0,1,,200, we determined the desired trajectory drawing the oblate limaçon. After setting the high gains Kp=150E and Kd=50E and the reduction coefficient ɛ=0.5, the repetitive virtual trajectory control was performed. Figures 15 and 16 show the hand paths and speed profiles, respectively, in the 1st, 3rd, 5th, and 10th trials of the repetitive control. It was observed that the actual trajectory almost converged to the desired limaçon trajectory by the 10th trial.
Figure 15:

Hand paths in the repetitive control drawing an oblate limaçon. The hand starts from a tiny circle at the right end, traces an upper wide arc, draws a small oval, and returns to the tiny circle through a lower wide arc. Feedback gains: Kp=150E,Kd=50E. Reduction coefficient: ɛ=0.5. Refer to the caption of Figure 7 concerning the types and colors of the curves.

Figure 15:

Hand paths in the repetitive control drawing an oblate limaçon. The hand starts from a tiny circle at the right end, traces an upper wide arc, draws a small oval, and returns to the tiny circle through a lower wide arc. Feedback gains: Kp=150E,Kd=50E. Reduction coefficient: ɛ=0.5. Refer to the caption of Figure 7 concerning the types and colors of the curves.

Figure 16:

Hand speed profiles in the simulation of Figure 15. Refer to the caption of Figure 8 concerning the types and colors of the curves.

Figure 16:

Hand speed profiles in the simulation of Figure 15. Refer to the caption of Figure 8 concerning the types and colors of the curves.

Thus, we found some typical performance in the numerical experiments on the proposed repetitive control for reaching and drawing movements of the two-link arm. In the first trial, the virtual trajectory was the same as the desired trajectory, while the actual trajectory was somewhat different from the desired trajectory. Thereafter, as the virtual trajectory control was repeated, the virtual trajectory deviated from the desired trajectory by degrees, while the actual trajectory gradually got closer to the desired trajectory.

5.3  Gain Change and Virtual Trajectory Modification

As described in the section 5.2, when the feedback gains were high (Kp=150E,Kd=50E), the desired trajectory was almost achieved after 10 times of iteration. We examined the modification of the virtual trajectory corresponding to the change from high gains to low gains. Here, the virtual trajectory and actual trajectory at this 10th trial are denoted by xv(10) and x(10), respectively. We set new gains Kpnew=30E,Kdnew=10E, meaning that the coefficient of the gain change was α=1/5, and the new virtual trajectory xvnew was easily calculated in accordance with equation 4.5; therefore,
xvnew=5xv(10)+(1-5)x(10).
(5.2)
Figure 17 shows the simulation results for the virtual trajectory modification corresponding to this gain change. Compared with the virtual trajectory xv(10) (the upper row of Figure 17A), the modified virtual trajectory xvnew (the upper row of Figure 17B) had a hand path with a greater detour and a speed profile with more fluctuations. On the other hand, as the results of the virtual trajectory control, the actual trajectories were the same before and after the gain change, and the desired trajectory was reproduced (see the lower row of Figures 17A and 17B). Applying this method of virtual trajectory modification to other types of movements (e.g., drawing an oblate limaçon), we confirmed that the modified virtual trajectories reproduced the same actual trajectory as before the gain change.
Figure 17:

Virtual trajectory modification corresponding to the gain change. (A) A virtual trajectory and a derived actual trajectory, which were obtained at the 10th trial of the repetitive control for the high gains (Kp=150E,Kd=50E). The desired trajectory was realized. See Figures 7 and 8. (B) A modified virtual trajectory corresponding to the changed gain (Kp=30E,Kd=10E), which realizes the same desired trajectory. Red solid lines show the virtual trajectories, blue solid lines show the actual trajectories, and black dotted lines show the desired trajectories.

Figure 17:

Virtual trajectory modification corresponding to the gain change. (A) A virtual trajectory and a derived actual trajectory, which were obtained at the 10th trial of the repetitive control for the high gains (Kp=150E,Kd=50E). The desired trajectory was realized. See Figures 7 and 8. (B) A modified virtual trajectory corresponding to the changed gain (Kp=30E,Kd=10E), which realizes the same desired trajectory. Red solid lines show the virtual trajectories, blue solid lines show the actual trajectories, and black dotted lines show the desired trajectories.

Incidentally, the virtual trajectory (see the red solid lines in the upper row of Figure 17B) obtained by the combination of the repetitive control and the gain change was somewhat different from the required virtual trajectory (see the red dotted lines in the upper row of Figure 3A), which was obtained by the calculation in section 5.1. It was indicated that even if the virtual trajectories have some differences, they derive almost the same actual trajectories.

Corresponding to the gain change, a virtual trajectory that derives the same actual trajectory can be obtained by simple calculation (see equation 4.5) without complicated procedures, which means that a wide range of gains can be chosen. Therefore, by setting gains in accordance with motion tasks and environments, the virtual trajectory control can be easily performed for trajectory tracking. In particular, corresponding to the strength and weakness of noise and the possibility of external disturbances, the gains can be changed. According to circumstances, it might be an effective way to change the values of gains in the middle of a trajectory formation. For example, it is sometimes required to set higher gains near the end of the motion to steadily reach a target. We examined the control performance of a reaching movement for 1 s in the case where the gains had constant values (Kp=30E,Kd=10E) for 0.7 s from the start, and then the gains linearly increased to (Kp=210E,Kd=70E) from 0.7 s to 1.0 s, compared with the case of the constant gains (Kp=30E,Kd=10E) during the motion. Figure 18 shows the responses when the external impulse disturbance was applied to the hand at 0.9 s. In the case of the constant low gains, the actual hand path and velocity profile were significantly changed; the hand did not reach the target, and it did not stop at the end of the motion, as shown in Figure 18A. In the case of the gains whose values gradually increased near the end, the variation of the actual trajectory was relatively small, and the hand reached the target, as shown in Figure 18B, because the torque resisting the disturbance largely worked.
Figure 18:

Responses for the external impulse disturbance applied to the hand at 0.9 s. (A) Feedback gains are fixed at Kp=30E,Kd=10E during the movement. (B) Feedback gains are fixed at Kp=30E,Kd=10E and lasting for 0.7 s. Then they linearly increase up to Kp=210E,Kd=70E from 0.7 s to 1.0 s. Red solid lines show the virtual trajectories, blue solid lines show the actual trajectories, and black dotted lines show the desired trajectories.

Figure 18:

Responses for the external impulse disturbance applied to the hand at 0.9 s. (A) Feedback gains are fixed at Kp=30E,Kd=10E during the movement. (B) Feedback gains are fixed at Kp=30E,Kd=10E and lasting for 0.7 s. Then they linearly increase up to Kp=210E,Kd=70E from 0.7 s to 1.0 s. Red solid lines show the virtual trajectories, blue solid lines show the actual trajectories, and black dotted lines show the desired trajectories.

6  Conclusion

Gaining insights from the equilibrium position control model for living things, we have proposed the repetitive control method based on virtual trajectories and examined the performance of trajectory tracking for a two-link arm. It was confirmed by computer simulations that the virtual trajectory was adequately corrected and the actual trajectory got closer to the desired trajectory, according to the proposed algorithm of the repetitive control. Our repetitive control is applicable under the three conditions of high gains, small sampling time, and neighborhood of a solution. When the high gains are set, the required virtual trajectory can be near the desired trajectory, and the actual trajectory formed in the first trial is relatively close to the desired trajectory. Accordingly, the control trials are repeated around the neighborhood of the solution. That is, the high gains often ensure that the iterative virtual trajectories are close to the required virtual trajectory. In our computer simulations, when the feedback gains were reasonably high, the actual trajectory almost agreed with the desired trajectories within approximately 10 iterative trials. In addition, we have proposed the method of virtual trajectory modification and confirmed that when the feedback gains were changed, the virtual trajectory could be modified by simple calculation such that the actual trajectory was not changed.

Virtual trajectory control was originally proposed in the 1980s as equilibrium position control, which can be regarded as P-control. Katayama and Kawato (1993) indicated from their computer simulation of a muscular skeletal model of a human arm that virtual trajectories based on equilibrium-point control were much more complex than actual trajectories. For our virtual trajectory control based on a P-control scheme, if relatively low gains are set, a rather complicated virtual trajectory is required to derive a straight actual trajectory, as shown in Figure 4. Therefore, it is not so easy in a P-control scheme to find the required virtual trajectory even for ordinary arm movements; the trajectories of its repetitive control sometimes diverge, as shown in Figures 9 and 10. The basic form of the original equilibrium-point control is adequate for relatively slow movements. McIntyre and Bizzi (1993) modified the basic equilibrium-point model for applying the model to faster movements. Considering a servomechanism of the musculoskeletal system for a single joint, they proposed an equilibrium-point control model with reflex feedback. In their model, the virtual trajectory is modified by reflex feedback, which is related to the use of velocity and position signals. Accordingly, the model modified by McIntyre and Bizzi (1993) can be regarded as PD-control. In our letter, we also adopted PD-control, but we focused on virtual trajectories for multi-joint arm movements. We have developed virtual trajectory control based on a PD-control scheme and observed that the required virtual trajectory did not largely deviate from the actual trajectory. It is conjectured that if such a PD-control scheme is applied to the trajectory formation in the simulation of Katayama and Kawato (1993), the required virtual trajectory might be relatively smooth and controllable.

The feedback gain and the virtual trajectory are complementary to each other in virtual trajectory control. This complementary relation provides useful strategies for motion control. When the feedback gains have to be set relatively low owing to some conditions, it is sometimes difficult to achieve the desired trajectory by more than 10 trials in the repetitive control. In such a case, the following two-step control technique is useful. First, setting high gains by prescribing a constant multiplication of the low gains, the required virtual trajectory that derives the desired trajectory is obtained by several iterations of the repetitive control. Then, the high gains are returned to the previous low gains and the virtual trajectory modification (see equation 4.5) is applied. We confirmed in section 5.3 (see Figure 17) that the virtual trajectory control was able to achieve the desired trajectory by using the above way even when the gains were considerably low. A similar strategy might be adopted in human arm movements. That is, for inexperienced motion tasks, human movements are firmly performed with the high stiffness of limbs by the coactivation of agonist and antagonist muscles in the beginning. However, such high stiffness brings an increase in the consumption of metabolic energy and occasionally causes unstable control by an excessive feedback signal. After the skill of the motion task is acquired by some training, the movements are comfortably performed with the lower stiffness by the moderate activation of muscles. For example, recording the electromyography of shoulder and elbow muscles in human pointing tasks, Gribble, Mullin, Cothros, and Mattar (2003) observed that the co-contraction levels of muscles decreased over time, which means that limb stiffness was reduced after sufficient practice.

To date, there have been no research reports suggesting that the proposed repetitive control and gain change in this letter have been used in living things. Assuming that the proposed control model is implemented in the brain, it is conjectured that the mechanism of the repetitive virtual trajectory control is different from that of the original equilibrium-point control hypothesis. Including the spring-like muscle properties and peripheral neural feedback loops, multiple neural feedback loops going around the brain stem, cerebellum, cerebral cortex, and so on should be investigated in order to elucidate the mechanism of virtual trajectory control with repetitive control. The virtual trajectory control that we have developed in this letter deviates from the concept of the original equilibrium trajectory control. From the viewpoint of control, the term guidance trajectory might be more appropriate rather than the term virtual trajectory for trajectory tracking.

Although our control model assumes that the desired trajectory is given in advance, some computational approaches do not need the desired trajectory. For example, Todorov and Jordan (2002) proposed a stochastic framework of optimal feedback control, in which the movement trajectory is produced through the state estimation by a Kalman filter and the calculation of control signals by the state feedback. It is an advanced problem to develop virtual trajectory control for trajectory formation without a reference trajectory. This development might be possible by representing the virtual trajectory in terms of several via-points and by repeating the correction of these via-points to reduce the target error according to some criteria.

Future work will focus on more theoretical advances and control experiments. First, improving the repetitive control method based on a Newton-like method is an important subject of study. We obtained the update rule 3.9 of virtual trajectories by replacing the Fréchet derivative in Newton's method with an identity mapping. However, this simplification occasionally causes worse convergence of iteration. Replacing the Fréchet derivative with a computable linear operator that can properly reflect the arm dynamics is desirable. Second, that the proposed control method is applied to more complicated motion tasks with force control is promising. For example, in order to move a hand pushing a wall with specified force, it could be effective to shift the virtual trajectory in the direction of the force. The adaptation of the control model to force-field perturbation is also an attractive research subject. Developing an iterative learning scheme based on adaptive dynamic programming, Jiang and Jiang (2014) reproduced trial-by-trial trajectories, as observed in experiments of human reaching movements in viscous force fields. Similarly, the repetitive virtual trajectory control might be applied to multi-joint arm movements in various force fields without the knowledge of environments. In addition, the proposed virtual trajectory control can benefit the applications of control engineering (e.g., robot control and vehicle control) because the proposed methods provide simple and useful control.

Notes

1

Here x and xv express trajectories (functions), not positions.

2

The coefficient of the first term is the identity matrix and the coefficient of the second term is roughly the identity matrix, if the sampling time is sufficiently small.

3

An iteration method derived from Newton's method by replacing the gradient of a function for variation with a computable simple linear operator is called a Newton-like method.

Acknowledgments

We thank the editor and anonymous reviewers for their constructive comments that were helpful for improving the presentation of our letter.

References

Bizzi
,
E.
,
Accornero
,
N.
,
Chapple
,
W.
, &
Hogan
,
N.
(
1984
).
Posture control and trajectory formation during arm movement
.
Journal of Neuroscience
,
4
,
2738
2744
.
Flash
,
T.
(
1987
).
The control of hand equilibrium trajectories in multi-joint arm movements
.
Biological Cybernetics
,
57
,
257
274
.
Flash
,
T.
, &
Hogan
,
N.
(
1985
).
The coordination of arm movement: An experimentally confirmed mathematical model
.
Journal of Neuroscience
,
5
,
1688
1703
.
Gomi
,
H.
, &
Kawato
,
M.
(
1996
).
Equilibrium-point control hypothesis examined by measured arm stiffness during multijoint movement
.
Science
,
272
,
117
120
.
Gribble
,
P. L.
,
Mullin
,
L. I.
,
Cothros
,
N.
, &
Mattar
,
A.
(
2003
).
Role of cocontraction in arm movement accuracy
.
Journal of Neurophysiology
,
89
,
2396
2405
.
Hogan
,
N.
(
1984
).
An organizing principle for a class of voluntary movements
.
Journal of Neuroscience
,
4
,
2745
2754
.
Jiang
,
Y.
, &
Jiang
,
Z. P.
(
2014
).
Adaptive dynamic programming as a theory of sensorimotor control
.
Biological Cybernetics
,
108
,
459
473
.
Katayama
,
M.
, &
Kawato
,
M.
(
1993
).
Virtual trajectory and stiffness ellipse during multijoint arm movement predicted by neural inverse models
.
Biological Cybernetics
,
69
,
353
362
.
McIntyre
,
J.
, &
Bizzi
,
E.
(
1993
).
Servo hypotheses for the biological control of movement
.
Journal of Motor Behavior
,
25
,
193
202
.
Polit
,
A.
, &
Bizzi
,
E.
(
1979
).
Characteristics of motor programs underlying arm movements in monkeys
.
Journal of Neurophysiology
,
42
,
183
194
.
Shadmehr
,
R.
(
1990
).
Learning virtual equilibrium trajectories for control of a robot arm
.
Neural Computation
,
2
,
436
446
.
Todorov
,
E.
, &
Jordan
,
M. I.
(
2002
).
Optimal feedback control as a theory of motor coordination
.
Nature Neuroscience
,
5
,
1226
1235
.
Viviani
,
P.
, &
Flash
,
T.
(
1995
).
Minimum-jerk, two-thirds power law, and isochrony: Converging approaches to movement planning
.
Journal of Experimental Psychology: Human Perception and Performance
,
21
,
32
53
.