Shibata, T, Schaal, S (2000). Fast learning of biomimetic oculomotor control with nonparametric regression networks, International Conference on Robotics and Automation (ICRA2000). San Francisco, April 2000.
Fast Learning of Biomimetic Oculomotor Control with Nonparametric Regression Networks T. Shibata
1
1
Kawato Dyanmic Brain Project
1;2
S. Schaal
2
Computer Science and Neuroscience
Japan Science and Tech. Corp.
Univ. of Southern California
[email protected]
[email protected]
http://www.erato.atr.co.jp/~ tom/
http://www-slab.usc.edu/sschaal/
Abstract Accurate oculomotor control is one of the essential pre-requisites of successful visuomotor coordination. Given the variable nonlinearities of the geometry of binocular vision as well as the possible nonlinearities of the oculomotor plant, it is desirable to accomplish accurate oculomotor control through learning approaches. In this paper, we investigate learning control for a biomimetic active vision system mounted on a humanoid robot. By combining a biologically inspired cerebellar learning scheme with a state-of-the-art statistical learning network, our robot system is able to acquire high performance visual stabilization re exes after about 40 seconds of learning despite signi cant nonlinearities and processing delays in the system.
1 Introduction Oculomotor control is the foundation of one of the most important sensory input channels, the visual system. Tasks of oculomotor control include the selection of relevant visual information, its spatial and temporal segmentation, as well as the stabilization of visual input in the light of a dynamically moving body. The goal of our research is to investigate the interplay between oculomotor control, visual processing, and limb control in humans and primates by exploring the computational issues of these processes with a biologically inspired arti cial oculomotor system on a humanoid robot(see Figure 1). This paper focuses on learning one of the most basic behaviors of oculomotor control, the stabilization re exes that need to be elicited in response to physical perturbations of one's own body or the dynamic change of the visual scenery. In biology, these re exes
Figure 1: Our developed anthropomorphic robot are known as the vestibulo-ocular re ex (VOR) and the optokinetic response (OKR), respectively. Similar as in biology, accurate control of these re exes is one of the pre-requisites for higher level visual processing in a humanoid robot. For the control and learning circuity, we will employ mechanisms that have their origins in the neurophysiological research of primates as biology seems to have evolved an almost ideal control scheme for oculomotor control [1]. Our work is particularly inspired by research in the vestibulocerebellum that suggested the idea of feedback-error-learning (FEL) as a biologically plausible and control theoretically sound adaptive control concept [2]. While FEL has been pursued in several
robotic studies before (e.g.,[3]), there has never been any emphasis on developing FEL learning approaches that combine the idea of FEL with modern statistical learning techniques. In the context of learning oculomotor re exes, we will demonstrate in this paper how nonparametric regression networks in conjunction with FEL can be employed to learn a biomimetic oculomotor controller that leads to accurate control performance and very fast learning convergence for a nonlinear oculomotor plant with temporal delays in the feedback loop. For this purpose, Section 2 will review FEL and introduce a FEL learning method based on recursive least squares regression. Section 3 embeds this learning controller in our biomimetic control circuit, while Section 4 reports of a variety of experimental evaluations of VOR-OKR learning with our humanoid robotic system.
2 Ecient Feedback-Error-Learning With Nonparametric Regression Networks 2.1 Feedback Error Learning From the viewpoint of adaptive control, FEL is a model-reference adaptive controller. The controller is assumed to be equipped a priori with a stabilizing linear feedback controller whose performance, however, is not satisfactory. Therefore, the feedback motor command of this controller is employed as an error signal to train a neural network. Given that the neural network receives the correct inputs, i.e., usually current and desired state of the plant, it can acquire a nonlinear control policy that includes both an inverse dynamics model of the plant and a nonlinear feedback controller. [2] proved the convergence of this adaptive control scheme and advocated its architecture as an abstract model of learning in the cerebellum. Figure 4 shows how FEL can be embedded in our oculomotor system.
2.2 Fast and Stable Learning in Linear Systems Feedback-error learning (FEL) does neither prescribe the type of neural network employed in the control system nor the exact layout of the control circuitry. Rather FEL is a principle of learning motor control that employs an approximate way of mapping sensory errors into motor errors such that, subsequently, a neural network can be trained by super-
vised learning. As a computationally ecient learning mechanism for linear plants, we suggest to use Recursive Least Squares (RLS) for FEL, a Newtonlike method with fast convergence, high robustness, and without the need for elaborate parameter adjustments [4]. To apply RLS for FEL, a small modi cation in the RLS algorithm is required. The normal RLS update is formulated as in Equations 1 and 2, where w is the regression vector to be estimated, P is the inverted covariance matrix of the input data, x is the input vector, y is the output, and y^ is the predicted output. is a forgetting factor, discussed below. T P(t) = 1 [P(t 0 1) 0 P(t +0 x1)(xt)(Tt)Px((tt)0 P1)(xt (0t)1) ] (1)
w(t) = w(t 0 1) + P(t)x(t)(y(t) 0 y^(t))
(2)
y^(t) = w(t)T x(t)
(3)
As can be seen in Equation 2, normal RLS requires the presence of a target output y in the update rules. In motor learning, target values for motor commands rarely exist since errors are usually generated in sensory space, not in motor command space. The strategy of FEL can be interpreted as generating a pseudo target for the motor command y(t 0 1) = y^(t 0 1) + fb (t), where fb denotes the feedback error signal, i.e., the output of the feedback controller. Thus, for FEL, Equation 2 needs to be modi ed to become:
w(t) = w(t 0 1) + P(t)x(t)fb (t + 1)
(4)
Note that FEL requires the appropriate time alignment of the feedback error signal and state, as shown by the time index t in Equation 4. Moreover, since the feedback error signal is only an approximate value, it is necessary to add a forgetting factor in RLS, as shown above. lies in the [0; 1] interval. For = 1, no forgetting takes place, while for smaller values, older values in the matrix P will be exponentially forgotten. This forgetting strategy allows to neglect training data from the early stages of learning, where the feedback error was large and most likely the most inaccurate.
2.3 Extension to Nonlinear Systems For nonlinear plants, a nonlinear learning system needs to replace the RLS solution from above. The appealing performance of recursive least squares can
be carried over to the nonlinear domain by employing a spatially localized version of RLS, as suggested in the Receptive Field Weighted Regression (RFWR) algorithm [5]. RFWR approximates nonlinear functions by localized piecewise linear functions. The region of validity of each local model is determined by a receptive eld which assigns a weight wk , i.e., the activation strength of the receptive eld, to an input data vector x according to multidimensional Gaussian kernel function: 1 (5) 2 The receptive eld is thus parameterized by its location in input space, ck 2 Rn , and a positive de nite distance metric Dk , deteremining the size and shape of the receptive eld. A prediction y^ for a query point x is calculated from the normalized weighted sum of the individual predictions y^k of all receptive elds:
... Dk
...
xn x...
Linear Unit
x3
Gaussian Unit centered at ck
Weighted Average
x1
x2
Inputs
y
Output
x4
Figure 2: A network illustration of Receptive Field Weighted Regression 8
7
6
(6)
=1
Amplitude
5
=1
4
3
For the individual prediction within each receptive eld, a linear function models the relationship between input and output data in analogy to RLS:
y^k = (x 0 ck )T bk + b0;k = x~ T k ; x~ = ((x 0 ck )T ; 1)T
(7) where k denotes the parameters of the locally linear model and x~ a compact form of the center-substracted, augmented input vector to simplify the notation. To clarify the elements and parameters of RFWR, Figure 2 gives a network-like illustration for a single output system. The inputs are routed to all receptive elds, each of which consists of a linear and a Gaussian unit. The learning algorithm of RFWR determines the parameters ck ; Dk ; and k for each receptive eld by nonparametric regression techniques [5]. For updating k , RFWR adopts the local version of the RLS formulae:
k (t) = k (t 0 1) + wk Pk (t)~x(t)(y 0 k (t 0 1)T x~ (t))
(8)
x(t)~x(t)T Pk (t 0 1) Pk (t) = 1 [Pk (t 0 1) 0 Pk(t 0+ 1)~ ] x~ (t)T P (t 0 1)~x(t) wk
yk
wk
wk = exp(0 (x 0 ck )T Dk (x 0 ck ))
PKk wk y^k y^ = PK k wk
bk b0 ,k
k
(9) In analogy with RLS, in order to use RFWR with FEL, the update equation for k needs to be adjusted to:
2
1
0 0
0.05
0.1
0.15
0.2
0.25
0.3
Time (sec.)
Figure 3: Impulse response of a second order lter
k (t) = k (t 0 1) + wk Pk (t)~x(t)fb (t + 1)
(10)
2.4 Learning with the Delayed-Error Signal For successful feedback-error-learning, the timealignment between input signals and the feedbackerror signal is critically important, and, thus, additional techniques are required in the case of delayed sensory feedback. For instance, if a perturbation of the head or body has frequency components that are much faster than the delay in the feedback pathway during VOR learning, the phase delay in the feedback pathway gets large such that learning speed decreases, or learning can even become unstable in the worst case. To solve this \temporal credit assignment problem", the concept of eligibility traces has been suggested in both biological modeling and machine learning [6]. For neurons in the brain, it is assumed that a second messenger would tag a synapse as eligible for modi cation. This \tag" would decay with an
Nonparametric Regression Networks learning indirect pathway
f siegedb na ack l e
control
1 s
head angular velocity head angular position
a b
-1
s +
rro
+
+
r Oculomotor Plant
direct pathway
D +
c
P
Figure 4: our VOR-OKR model appropriate time constant, thus forming a temporal eligibility window. Schweighofer et al. proposed a biologically plausible learning model for saccadic eye movement, and modeled the second messenger as a second order linear lter (see Fig. 3 ) of the input signals to the learning system[7]. Using a second order lter is important since, in contrast to a rst order lter, the impulse response has a unimodal peak at a delay time determined by the time constant of the lter. For successful learning, the delay time only has to roughly coincide with the actual delay of the sensory feedback. Note that rst order lters are less appropriate as their impulse response peaks at the stimulus onset, i.e., without any delay. In related work, Fagg proposed a cerebeller learning model where eligibility traces modeled by such a second order lter are employed[8]. We will apply this technique to FEL, and investigate its eciency with our oculomotor system on our anthropomorphic robot.
3 A Computational Model of VOROKR Successful visual perception requires that retinal images remain constant, at least for a certain amount of time. Since our humanoid oculomotor system resides on a moving body and the foveal vision has a narrow view, it is essential to stabilize gaze in order to obtain stable visual input. In biological systems, the stabilization of visual sensation is provided by the phylogenetically oldest oculomotor behaviors, the vestibulo-ocular re ex (VOR) and the optokinetic response (OKR). These re exes are equally required for our anthropomorphic robot. This section outlines the computational model of
VOR-OKR we developed [1] in conjunction with the nonlinear version of feedback error learning of the previous section. Figure 4 depicts the VOR-OKR control system. The inputs to the system are i) the visual target in camera coordinates and ii) an angular velocity signal generated from a gyroscopic sensor due to a perturbation of the robot's body; since the sensor is attached to the head, the signal is called \head angular velocity". From the dierence between target position and eye position, error signals can be computed, denoted as retinal slip error and retinal slip error velocity. These error signals are used as input to a PD controller in the bottom part of Figure 4. The gains of this PD controller have to be kept rather small due to the delays incurred in visual information processing. The output of the PD controller serves primarily as a teaching signal to the feedback error learning system. However, it is also needed to stabilize the crude feedforward controller in the shaded block of Figure 4. Without the feedback input, the feedforward controller would only be marginally stable due to the oating integrator. As described in the last section, the eligibility trace realized by a second order lter is used to inputs for learning.
The entire control systems is quite similar to what has been discovered in the primate oculomotor system. The a priori existing feedforward controller provides some crude functionality of the VOR. The a priori existing feedback controller provides acceptable OKR performance for slowly changing visual targets and acts as a compensatory negative feedback controller for the VOR. These systems form what is called the \direct pathway" of oculomotor control in biology. By adding a learning controller in the indirect pathway of Figure 4, trained with the FEL strategy, excellent VOR performance can be accomplished, even if the feedback pathway has large delays, and also the OKR performance will be improved to some extent. This learning network, known to be located in the primate cerebellum, acquires during the course of learning an inverse dynamics model of the oculomotor plant that compensates for the missing performance of the crude feedforward controller in the shaded box of Figure 4. The coordination of a direct and indirect pathway is analogous to how the cerebellar pathway acts in parallel to the brainstem pathways [9]. As developed in [1], this control system is equally well reasonable for both biological and robotic oculomotor control.
VISION MVME2604
MVME2700
Fujitsu Tracking Vision
MVME2700
NTSC Signal MVME2604
MVME2700
VME BUS
VME BUS
Fujitsu Tracking Vision
A/D Converter AJC Card
sensor signals motor command
NTSC Signal
3-axes gyro-ciruit
Figure 5: Our experimental setup retinal slip [rad]
We implemented an on-line learning system of the VOR-OKR controller for our humanoid robot. Each DOF of the robot is actuated hydraulically out of a torque control loop. Each eye of the robot's oculomotor system consists of two cameras, a wide angle (100 degrees view-angle horizontally) color camera for peripheral vision, and second camera for foveal vision, providing a narrow-viewed (24 degrees view-angle horizontally) color image. This setup mimics the foveated retinal structure of primates, and it is also essential for an arti cial vision system in order to obtain high resolution vision of objects of interest while still being able to perceive events in the peripheral environment. Each eye has two independent degrees of freedom, a pan and a tilt motion. Fig. 5 depicts our experimental system. Two subsystems, a learning control subsystem and a vision subsystem, are setup in each VME rack and carry out all necessary computations out of the real-time operating system VxWorks. Three CPU boards (Motorola MVME2700) are used for the learning control subsystem, and two CPU boards (Motorola MVME2604) are equipped for the vision subsystem. In the learning control subsystem, CPU boards are used, respectively, for: i) low level motor controller of the eyes and other joints of our robot (compute torque mode), ii) visuomotor learning, and iii) data receiving from the vision subsystem. All communication between the CPU boards is carried out through the VME shared memory communication which, since it is implemented in hardware, is very fast. In the vision subsystem, each CPU board controls one Fujitsu tracking vision board in order to calculate retinal slip and retinal slip velocity information of each eye. NTSC video signals from the binocular cameras are synchronized to insure simultaneous processing of both eyes' vision data. Vision data are sent via a serial port (115200 bps) to the learning control subsystem. For the experimental demonstrations of this paper, only one peripheral camera is used for VOR-OKR in its horizontal (pan) degree-of-freedom. Multiple degrees of freedom per camera, and multiple eyes just require a duplication of our control/learning circuits. If the image on a peripheral camera is stabilized, the image on the mechanically-coupled foveal vision is also stabilized. In order to mimic the semicircular canal of biological systems, we attached a threeaxis gyro-sensor circuit to the head (Murata Manufacturing). From the sensors of this circuit, the head
0.1
0
−0.1
slip velocity [rad]
4.1 Experimental Setup
CONTROL and LEARNING
differentiated slip [rad]
4 Experimental Results
0
1
2
3
4
5
6
0
1
2
3
4
5
6
0
1
2
3
4
5
0.5 0 −0.5
0.5 0 −0.5
Figure 6: Retinal slip acquired by the real vision system angular velocity signal is acquired through a 12 bit A/D board. The oculomotor and head control loop runs at 480 Hz, while the vision control loop runs at 30 Hz. We use both visual-tracking and optical ow calculation in order to acquire the retinal slip and the retinal slip velocity, respectively. Both processes are based on the block-matching method[10] which is performed by the Fujitsu Tracking Vision board in realtime. In the beginning of each learning experiment, a template image is sampled from the the center of the image, and stored in memory. During the experiment, visual-tracking of the template image is performed in a pre-speci ed search area, and its resulting motionvector is used as a retinal slip. The top row of Fig. 6 shows time course of the acquired retinal slip by our
y
target
0.1 D=0.5 D=1.0 D=2.0 D=5.0
α
D dx
β dy
γ x
Figure 7: O-axis con guration vision system. For this plot, the eye was xed in the head, and the head was rotated sinusoidally. The bottom row of Fig. 6 shows the time course of the dierentiated retinal slip. This retinal slip velocity is too noisy for learning. As on-line temporal ltering would produce too much time lag in the signal, we chose spatial averaging of multiple optical ow detectors to reduce the noise. The mid row of Fig. 6 illustrates samples of the retinal slip velocity acquired by this method. Comparing the data in the mid row with the data in the bottom row demonstrates the feasibility of spatial averaging of ow vectors in order to calculate velocity signal. For the following experiments, one template tracker and 81 optic ow detectors were run for one peripheral vision. To keep 30 Hz vision processing loop rate, pixels were sampled on every three dots. Due to this sampling, the eective angular resolution around the center of the image was about 0.03 rad.
4.2 Sources of Nonlinearity in Oculomotor Control There are three sources of nonlinearities both in biology and arti cial oculomotor systems: i) muscle nonlinearities or nonlinearities added by the actuators and the usually heavy cable attached to the cameras, ii) perceptual distortion due to foveal vision, and iii) o-axis eects. O-axis eects result from the noncoinciding axes of rotation of eye-balls and the head and require a nonlinear adjustment of the feedforward controller as a function of focal length, eye, and head position. Note that this o-axis eect is the most signi cant nonlinearity in our oculomotor system. Equation 11 demonstrates the mathematical formula of the o-axis nonlinearity, derived from Fig. 7. (t) is the appropriate eye angular position for a target at distance D and angular position (t), given an oset dx ; dy of the eye-axis to the head-axis and the
nonlinear component of the retinal slip [rad]
0.05
0
−0.05
−0.1
−0.15 −0.5
−0.4
−0.3
−0.2
−0.1 0 0.1 head angular position [rad]
0.2
0.3
0.4
0.5
Figure 8: Nonlinear component of the retinal slip in o-axis cases for dx = 0:05 m; dy = 0:1 m head angular position (t).
Dsin( (t)) 0 dy sin( (t)) + dx cos( (t)) ) (t) = T an01 ( Dcos( (t)) 0 dy cos( (t)) 0 dx sin( (t)) 0 (t) (11) Fig. 8 exempli es the magnitude of the nonlinearity of the o-axis eect. Each curve shows the nonlinear component of the retinal slip, i.e., + = ((t) 0 (0))+( (t) 0 (0)). For a linear system, this quantity would be zero, i.e., a change in gamma would require an equal change in alpha. The axis oset eects that this equality does not hold anymore. The curves in Fig. 8 were calculated for dierent values of D given that = 0, (0) = 0, and (0) = Sin01 (dx =(D 0 dy )). As can be seen, the nonlinearity of the retinal slip become quite signi cant for small D.
4.3 Experimental Results(1): ecacy of eligibility trace Since the retinal slip signals are generated from visual data, they are delayed by more than 30 ms. This delay aects FEL negatively. In this rst set of experiments, we test how the eligibility traces can improve the ecacy of VOR learning. The following experimental result was obtained from a head movement generated by three superimposed sinusoidal signals with frequencies of 0.6, 2.0, and 3.0 Hz and amplitude of 0.1 rad, respectively. Fig. 9 shows the time course of the recti ed retinal slip obtained from a moving average over 1 second time windows. While the dashed line represents data
0.4
0.09
0.35
0.08
0.3 Rectified mean retinal slip [rad]
Rectified mean retinal slip [rad]
0.1
0.07
0.06
0.05
0.25
0.2
0.15
0.04
0.1
0.03
0.05
0.02
0
5
10
15 Time [sec]
20
25
30
Figure 9: Time course of the recti ed mean retinal slip: While the dashed line represents data obtained without eligibility trace, the solid line shows data acquired with eligibility trace.
0
0
10
20
30 Time [sec]
40
50
60
Figure 11: Time course of the recti ed mean retinal slip: the dashed line corresponds to a linear learning result, and the solid line corresponds to a nonlinear learning result. retinal slip [rad]
(a) 0.1 0.05 0 −0.05 −0.1
0
0.5
1
1.5
2
2.5
3
(c)−0.10
0.5
1
1.5
2
2.5
3
0.5
1
1.5 time [s]
2
2.5
3
(b) retinal slip [rad]
0.1 0.05 0 −0.05
retinal slip [rad]
0.1 0.05 0 −0.05 −0.1
Figure 10: Experimental environment for the o-axis case obtained from learning without eligibility traces, the solid line shows data acquired with eligibility traces. This gure shows that eligibility traces are necessary for successful learning as the the retinal slip does not decrease without use the traces.
4.4 Experimental Results(2): case
o-axis
The next set of experiments investigated the improvements of using RFWR for learning in a nonlinear oculomotor plant. For this purpose, a large board with texture appropriate for vision processing was placed in front of the robot (see Fig. 10 ). The distance between a camera and the board was around 50 cm, i.e., a distance that emphasized the o-axis nonlinearities. In
0
Figure 12: Retinal slip in the last part of learning: the dashed line corresponds to a linear learning result, and the solid line corresponds to a nonlinear learning result. this experiment, the head was moved horizontally according to a sinusoidal signal with frequency 0.8 Hz and amplitude 0.25 rad. We compared linear learning based on RLS with nonlinear learning based on RFWR. Fig. 11 and Fig. 12 present the results of this experiment. Fig. 11 shows the time course of the recti ed retinal slip obtained from a moving average over a 1 second time windows. The dashed line corresponds to RLS learning, while the solid line presents the learning performance of RFWR, the nonlinear learning system. The need for a nonlinear learning is clearly demonstrated in this plot: each learning curve shows improvement over time, but the nal retinal slip out of nonlinear learning is almost half of the remaining slip from linear learning. Fig. 12 shows the time course of the raw retinal slips in the end of learning. Since,
as mentioned at 4.1, the eective angular resolution around the center of the image was 0.03 rad, those results shown in Fig. 11 and Fig. 12 look satisfactory. As shown in Fig. 8 , the nonlinear component generated by the o-axis eect is around 0.05 rad when the head is rotated 0.25 rad and the visual stimulus is at 0.5 m distance. This dierence is consistent with the average dierence between the results obtained RLS and RFWR, suggesting that RFWR was able to learn the nonlinear component generated by the o-axis effect.
5 Conclusion Our research objective is to study the computational processes of oculomotor control, visual processing, limb control, and the interdependencies of these three modalities by using a humanoid robot. This paper took a rst step towards this goal by exploring adaptive gaze stabilization in a biomimetic arti cial oculomotor system. We presented how the strategy of feedback-error-learning together with a state-of-theart statistical learning network can be used to construct a control theoretically principled learning system for oculomotor control that is surprisingly similar to the adaptive control strategies employed in the primate cerebellum. We also showed how the idea of eligibility traces, a concept from biology and reinforcement learning, works nicely for overcoming unknown delays in the sensory feedback pathway. In experiments with our humanoid oculomotor system, it was shown that this system can acquire good VOR performance after about 10 seconds of learning and converges to excellent performance after about 30 to 40 seconds. This performance remained the same even in the case of nonlinearities of the oculomotor control system due to o-axis eect. Our control and learning strategies should be applicable without modi cations to any other oculomotor systems. In this paper, for the simplicity of presentation, we demonstrated experiments using only one axis. In our ongoing work, we also applied our techniques also in experiments that required binocular, 4-axes simultaneous learning, and learning with multiple visual template trackers. Our future work will address adding smooth pursuit and saccadic behavior to our current system, and how these dierent behaviors can adapt simultaneously without interference.
References [1] T. Shibata and S. Schaal. Robot Learning: An Interdisciplinary Approach, chapter Biomimetic Gaze Stabilization. Robotics and Intelligent System Series. World Scienti c, 2000. (In Press). [2] M. Kawato. Feedback-error-learning neural network for supervised motor learning. In R. Eckmiller, editor, Advanced Neural Computers, pages 365{372. Elsevier, North-Holland, 1990. [3] L. Berthouze, P. Bakker, and Y. Kuniyoshi. Learning of oculo-motor control: a prelude to robotic imitation. In Int'l Conf. on Intelligent Robots and Systems, 1996. [4] L. Ljung and T. Soderstrom. Theory and practice of recursive identi cation. MIT Press, 1986. [5] S. Schaal and C.G. Atkeson. Constructive incremental learning from only local information. Neural Computation, 10(8):2047{2084, 1998. [6] A.G. Barto, R.S. Sutton, and C.W. Anderson. Neuronlike adaptive elements that can solve dicult learning control problems. IEEE Trans. on Systems, Man, and Cybern., SMC-13:834{846, 1983. [7] N. Schweighofer, M.A. Arbib, and P.F. Dominey. A model of the cerebellum in adaptive control of saccadic gain. Biological Cybernetics, 75:19{28, 1996. [8] A.H. Fagg, N. Sitko, A.G. Barto, and J.C. Houk. Cerebellar learning for control of a two-link arm in muscle space. In Proc. of IEEE Conf. on Robotics and Automation, pages 2638{2644, 1997. [9] H. Gomi and M. Kawato. Adaptive feedback control models of the vestibulo-cerebellum and spinocerebellum. Biological Cybernetics, 68:105{114, 1992. [10] H. Inoue, M. Inaba, T. Mori, and T. Tachikawa. Real-Time Robot Vision System based on Correlation Technology. In Proc. of Int'l Symp. on Industrial Robots (ISIR), pages 675{680, 1993.