International Journal of Advanced Robotic Systems Biologically Inspired Self-stabilizing Control for Bipedal Robots Regular Paper

which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited. Abstract Despite recent major advances in computational power and control algorithms, the stable and robust control of a bipedal robot is still a challenging issue due to the complexity and high nonlinearity of robot dynamics. To address the issue an efficient and powerful alternative based on a biologically inspired control framework employing neural oscillators is proposed and tested. In a numerical test the virtual force controller combined with the neural oscillator of a humanoid robot generated rhythmic control signals and stable bipedal locomotion when coupled with proper impedance components. The entrainment nature inherent to neural oscillators also achieved stable and robust walking even in the presence of unexpected disturbances, in that the centre of mass (COM) was successfully kept in phase with the zero moment point (ZMP) input trajectory. The efficiency of the proposed control scheme is discussed alongside simulation results.


Introduction
Keeping the stability and robustness of bipedal locomotion has recently gained a lot of attention in the humanoid robot community since considerable efforts are required to deal with both the high nonlinearity of multibody robot dynamics and the unexpected disturbances from new environments. Modern robot control based on motion planning based approaches, i.e., the zero moment point criterion [1,2], the threedimensional linear inverted pendulum model [3] and virtual model-based control [4], have tried to achieve stability and robustness. For motion planning a fairly accurate robot model with a large number of degrees of freedom is required to generate dynamically admissible motion patterns. However, an efficient pattern generation of such a large dynamic system is still quite challenging withstanding recent advances in computational power. Thus, from a practical viewpoint, a biologically inspired control approach that does not need a reference motion may be a good alternative to enhancing pattern generation competence.
Human and animal locomotion inherently exhibit stable rhythmic movements, adapted to the natural frequency of their body dynamics, in spite of variety in their sensors and actuators. The neural circuits of oscillators on the spinal cord [5] known as Central Pattern Generators (CPGs) contribute to such efficient motor movement and novel stability properties in biological models. Moreover, neural oscillators can entrain to sensory feedback, which plays a key role in adapting locomotion to unexpected forces from new environment. Hence, biologically inspired motion control based on the neural oscillator has drawn much attention as an attempt to realize natural motion in bipedal humanoid robots.
The neural oscillator for robotic applications was first formalized in mathematical form by Matsuoka [6,7]. In the paper the neurons were proven to generate rhythmic output and the necessary and sufficient conditions for self-oscillations were provided. Through Matsuoka's model, Taga et al. showed that the neural oscillators of a bipedal robot could entrain to the characteristics of various environments, so as to generate stable bipedal locomotion by the feedback of sensory signals from robot joints to the neural oscillators [8,9]. In a 2D simulation robot control became robust against perturbation and the robot was able to climb an upward slope [10]. These methodologies were later applied to a 3D simulation (Miyakoshi et al. [11]), to dynamic quadrupedal walking (Fukuoka et al. [12]) and to rhythmic robotic arm movement (Williamson [13]).
The entrainment property of the neural oscillator was later tested on real systems [15][16][17] such as the robot walking on uneven terrains. Even though it enabled adaptive bipedal locomotion in a 3D environment, the neural oscillator achieved global stability mostly through its phase locking properties, which sometimes cause large deviations in motion from the reference one [18]. In addition, since previous research mostly focused on cyclic gait motion, such as bipedal walking, direct application of the neural oscillator based control schemes are not easy in robot practices, which need to control various robot behaviours that are non-cyclic. Therefore, it would be desirable for a user to be able to handle overall robot motion, i.e., ZMP trajectory, to fulfil a mission objective, while allowing autonomous adaptation of robots for stability purposes. On the other hand, a new intuitive stability control scheme based on virtual model control for legged locomotion was proposed by Pratt [14]. Even though this algorithm is extended for rough terrain walking, the approach is still limited to 2D.
For practical purposes new methods in this study are designed to maintain the stability autonomously without sophisticated stability controllers with a predetermined ZMP trajectory input so that humanoid robots could show arbitrary whole body motions as well as various bipedal motions with minimal interruption by a user. The new methods that couple the neural oscillator and the virtual components apply the interaction between neural oscillators and virtual mechanical components to humanoid locomotion control and produce periodic swing motions, which allow the adaptivity of humanoid robots to unknown disturbances through entrainment of their frequency and phase.
In addition, the methodologies on how to generate human-like motions while properly maintaining stability of humanoid robots will be discussed. In the proposed self-stabilizing controller, the motion of the inverted pendulum is often regarded as a supporting leg in the stance phase of humanoid locomotion [19]. We therefore develop a new control method for sustaining and enlarging the stability of an inverted pendulum in the pitching and rolling direction. The proposed controller contributes to whole body motion generation and adaptive bipedal locomotion of humanoid robots even under unknown disturbances and uneven terrains. Based on this self-stabilizing controller, we focus on the implementation of the new bipedal walking strategy. This is verified through simulations and experiments designed to test whether the proposed approach yields a robust and efficient control of rhythmic locomotion This paper is organized as follows: Section 2 briefly introduces the mathematical form and inherent properties of Matsuoka's neural oscillator. In Sections 3 to 5, we address basic concepts for controlling bipedal robots and how to implement these in humanoid robots with basic tests on dynamic stability through simulations. More details of the bipedal stability on the proposed control model under unknown disturbances are discussed in Section 5. Section 6 presents the proposed bipedal walking strategy with simulations and experiments. Conclusions are drawn in Section 7.

A. Matsuoka's Neural Oscillator
Our work is motivated by studies on and aspects of biologically inspired locomotion control employing oscillators. Especially, the fact that the basic motor pattern generated by the Central Pattern Generator (CPG) of the inner body of a human or animal is usually modified by sensory signals from motor information to deal with environmental disturbances. Similarly to the sensory system of a human or animal, the neural oscillators are entrained with external stimuli at a sustained frequency. They show stability against perturbations through global entrainment between the neuro-musculo-skeletal systems and the ground [8]. Thus, neural oscillators have been applied to the CPG of humanoid robots with rhythmic motions [9,10]. The oscillators provide robust performance in a wide variety of rhythmic tasks when they are implemented to a system such as a robotic arm. The reason is that the oscillators use sensory signals about the joint state to adapt the frequency and phase of the joint motion regardless of the references corresponding to changes in the environment.  [5,6]. If gains are properly tuned, the system exhibits limit cycle behaviours. The trajectory of a stable limit cycle can be derived analytically, describing the firing rate of a neuron with self-inhibition. The neural oscillator is represented by a set of nonlinear coupled differential equations given as n r ei ei fi fi ij j ei where xe(f)i is the inner state of the i-th neuron, which represents the firing rate, ve(f)i is a variable that represents the degree of the adaptation, modulated by the adaptation constant b , or self-inhibition effect of the i-th neuron. The output of each neuron ye(f)i is taken as the positive part of xi and the output of the whole oscillator as Y(out)i. wijyi represents the total input from the neurons inside a neural network; the input is arranged to excite one neuron and inhibit the other, by applying the positive part to one neuron and the negative part to the other. The inputs are scaled by gains ki. Tr and Ta are time constants of the inner state and the adaptation effect of the i-th neuron respectively, b is a coefficient of the adaptation effect, wij is a connecting weight from the j-th neuron to the i-th neuron and si is an external input with a constant rate. wij (0 for i≠j and 1 for i=j) is the weight of the inhibitory synaptic connection from the j-th neuron to the i-th and wei, wfi are also weights from the extensor neuron to the flexor neuron, respectively.

B. Coupling Neural Oscillator to Mechanical Systems
This subsection addresses a new control method that exploits the natural dynamics of the oscillator coupled with the dynamic system that closely interacts with the environment. This method enables the robot to adapt to changing conditions. For simplicity, we employed a general 2 nd order mechanical system connected to the neural oscillator, as seen in the lower system in Fig. 3. The desired torque input at the i-th joint can be given by [13] where ki is the stiffness of the joint, bi the damping coefficient, θi the joint angle and θvi the desired joint position, which is the output of the neural oscillator. The output of the neural oscillator drives the mechanical system corresponding to the sensory signal input (feedback) from the actuator (displacement or torque). The oscillator entrains the input signal so that the mechanical system can exhibit adaptive behaviour even under unknown environmental conditions. Generally, it is known that Matsuoka's neural oscillator exhibits the following properties: the natural frequency of the output signal increases in proportion to 1/Tr. The magnitude of the output signal also increases as the tonic input increases. Tr and Ta have an effect on the control of the delay time and the adaptation time of the entrained signal, respectively. Thus, as these parameters decrease, the input signal is well entrained. The minimum gain ki of the input signal enlarges the entrainment capability, because the minimum input signal needs to be entrained appropriately in the range of the natural frequency of an input signal. In this case, regardless of the generated natural frequency of the neural oscillator and the natural frequency of an input signal, the output signal of the neural oscillator locks onto an input signal well in a wide range.
If we appropriately tune the parameters of the neural oscillator, the oscillator exhibits stable limit cycle behaviours. In Fig. 1, the gain k of the sensory feedback was set at 0.53. If the gain k is properly set at 0.53, the neural oscillator produces the fully entrained signal, as illustrated in Fig.4. In Fig. 4, the dashed line shows the output of the sensory signal and the solid line is the output entrained in terms of the neural oscillator. With this, it can be observed that the neural oscillator is able to entrain the input signal well, even though a non-periodic sensory signal is the input into the neural oscillator.

The Control Model for Bipedal Stability
In humanoid locomotion, the pitching motion should be performed under the stable single support phase of the rolling motion. Now we explain how to attain the stable single support phase corresponding to the periodic bipedal locomotion. For the stable rolling motion in the frontal plane, we consider an inverted pendulum model coupled with such a virtual mechanical component as a spring and damper and the neural oscillator, as seen in Fig. 5 (a) for generating an appropriate rolling motion. The coupled model enables the inverted pendulum to stably move in a frontal plane according to a desired ZMP (Zero Moment Point) trajectory sustaining the stability.
Assuming that θ, the angle between the vertical axis and the pendulum in Fig. 5 (a), is small enough and linearized near 0, the dynamic equation of the coupled inverted pendulum is given by where y is the displacement of the pendulum in the rolling direction, l is the length of the pendulum and u is the position of the massless cart of the pendulum. G is the gravitational constant and Fy indicates the force that should be applied to the COM of the pendulum in the rolling direction.
If the desired ZMP trajectory, u, is given in Eq. (3), a stable periodic motion of the COM of the pendulum is generated in terms of the coupled neural oscillator with state feedback [17]. If a mechanical system is coupled to the neural oscillator, the dynamic stability is improved [18], [19]. Hence, stable limit cycle behaviour is induced and the periodic COM motion is achieved by the impedance controller of the virtual components, as illustrated in the block diagram in Fig. 6. Accordingly, Fy in Eq. (3) is given by where ks is the stiffness coefficient and h is the output gain of the neural oscillator. kp and kv are the gains of state feedback and ip and iv are the gains of the impedance controller. In the proposed controller, θv and yd denote the output of the neural oscillator and a desired ZMP input, respectively. The current COM position and velocity of the humanoid robot are obtained again by Eq. (3). These gains illustrated in Table  I are properly tuned with the analysis in Section 2 and the trial and error method. Remarkably, the stability of the coupled system is dependant of the stiffness gain with state feedback. Thus, the state feedback gains need tuning when ks is within the range of 40 to 60. Then the virtual impedance gains are optimized for controlling the stable COM motion according to the arbitrary ZMP input. For a stable rolling motion corresponding to the ZMP input, Fy in Eq. (4) is transformed into joint torque using the Jacobian, which needs to be applied to each joint in both legs to achieve the rolling motion in Fig. 5 (b).

Input signal & Yout
As illustrated in Fig. 5 (b) and (c), the humanoid robot exhibits a stable rolling motion, therefore satisfying the desired ZMP. Assuming variation in environmental conditions, the robustness of the proposed control method is verified with the simulation result in Fig. (6). In the simulation results in (a) and (b) in Fig. 6, when the coupled model is implemented to the pendulum model (see the Fig. 6 (b)), the COM motion is sustained stably even with an allowable change of a ZMP input.

A. Implementation
This subsection describes how to embody the bipedal locomotion of the humanoid robot using the proposed control scheme to guarantee stability on the single and double support phases. The humanoid robot in Fig. 7, developed by KIST, is used to test and evaluate the proposed controller. It has 35 degrees of freedom (DOF): 6 in each arm, 6 in each leg, 4 in each hand, 2 in its neck and 1 in its waist. It's 150cm high and weighs about 67kg. The robot is equipped with a stereo camera, a microphone, four force/torque sensors and a pose sensor. We propose a control method that uses several virtual mechanical components such as springs and dampers and couples them with neural oscillators, as seen in Fig. 8.

Time [s] ZMP [m]
two horizontal directions to generate the virtual horizontal forces Fx and Fy at the hip. Here Fx and Fy include the virtual forces exerted by virtual mechanical components and a neural oscillator. Using those forces, the humanoid robot should perform the desired motion and maintain stability simultaneously under unknown environments or disturbances.
Considering the right and left legs as separate systems, the dynamic equations of each leg can be written in the following form where M is the 3×3 inertia matrix, V is the 3×3 Coriolis/centripetal vector and G 3×1 is the gravity vector. Also a rotational spring-damper is attached at the pelvis to generate a virtual rotational force Fθ about the y-axis in Fig. 8. This is used to maintain the upright posture of the pelvis. The virtual forces and moment can be transformed into equivalent torques as follows.
where J is the Jacobian matrix, which relates the virtual velocity with regard to the Cartesian coordinate between frames of the ankle joint and the COM position to the joint velocities. ki and ci are the spring stiffness and damping coefficient, respectively, for the virtual components in i (=x, y, z or θ) coordinate. fr,r and fr,l indicate the reaction forces of the right and left leg, as seen in Fig. 8. Therefore, the right leg is controlled in terms of Fz,r and Fz,l is employed to drive the left leg. Note that fo,x is the driving force induced by the individual neural oscillators of the sagittal plane. In the frontal plane, since one-link dynamics are considered similar to the inverted pendulum, Fy can be described by Eq. (4), including fo,y. x, y, z and θ denote the current position of the pelvis and xd, yd, zd and θd are the desired position, respectively. Finally, substituting the equations for the virtual forces for Eq. (6), the pelvis, τw, knee, τk and ankle joint torques, τa, can be obtained in order to drive each leg joint of the humanoid robot.

B. Basic Control Tests of the Coupled Model
To test the performance of the proposed control methods, a dynamic humanoid motion was simulated using a dynamic robot engine, SIMSTUDIO (SimLab, KOREA). Prior to a complete cycle of bipedal locomotion, tests on basic bipedal motions were simulated. From the simulation results the adaptive properties of the neural oscillator were investigated.
The rolling and pitching of humanoid are two basic bipedal motions when ZMP trajectory is given as a function over time. The key dynamic parameters and snapshots of a whole robot body are presented in Figs. 9-12.

Output of the neural oscillator
The dashed lines in Figs. 9 and 11 indicate the input ZMP trajectory over time. It is shown that the COM trajectory presented in dashed lines properly oscillates in response to the arbitrarily defined ZMP input, so the humanoid can maintain stability. This implies that the proposed control method in Section 3 works properly. For example, letʹs investigate the outputs of the neural oscillators presented in dotted lines in Figs. 9 and 11. The COM motion of the humanoid robot is considered as the sensory signal of the neural oscillator. Then the outputs of neural oscillator entrain to that of the humanoid robot and drive the humanoid robot corresponding to the sensory input appropriately as a torque input. Consequently, we note that this leads the adaptive motion of humanoid robots to maintain bipedal stability even under an unknown disturbance. In addition, the ZMP planning in the proposed control method is possible in terms of properly adjusting the gains of the impedance model and the neural oscillator described in Eq. (4). In Figs. 9 and 11, the simulations were performed with the consideration that the real ZMP is larger than the movement of the COM within the range of the ZMP criterion.

Adaptive Motion under unknown Disturbance
In this section, the inherent adaptive feature of neural oscillators is tested through the proposed balance controller. The proposed controller is based on a neural oscillator coupled with the virtual components under two states of the humanoid robot under unknown disturbances. Fig. 13 illustrates how to apply an external acceleration as a disturbance to the MAHRU robot. The size and direction of the red s indicates the magnitude and direction of the external acceleration as unknown disturbances,. The unknown external acceleration is induced in the COM position of the MAHRU robot periodically as time passes.
From the results shown in Figs. 14 and 15, it can be observed that the humanoid robot not coupled to the neural oscillator and virtual components tips over if there is an unknown disturbance. In the graphs in Figs. 15 and   17, the red thin, the blue dashed and the grey thick lines indicate the calculated ZMP, the input of an external acceleration as an unknown disturbance and the COM position, respectively. Also, note that the black dotted line is the output of the neural oscillator and the red dashdotted line is the desired ZMP input. The COM and the ZMP plots of Fig. 15 represent that the humanoid robot became unstable. Here the positive and negative signs of the moving distance imply the left and right direction of the humanoid robot. In addition, it can be verified from Figs. 16 and 17 that the COM follows the external disturbance well regardless of the motion of the humanoid robot. This is caused by the neural oscillator coupled with the COM of the humanoid robot, since the neural oscillator entrains the sensory signal fed from the COM motion of the humanoid robot.  The proposed control method was implemented on the real humanoid robot to verify the validity of the proposed motion adaptor with the self-stabilizing bipedal controller. The kinematic and dynamic properties of a robot such as the width of the feet, the area of each foot and the length and mass of each leg are different from those of a human. So, considering the calculated COM, we adjust the ZMP measured from the human motion so that the bipedal stability of the humanoid robot is maintained within the stable ZMP range. This is done by multiplication by a suitable scale factor. The modified ZMP is input into the self-stabilizing bipedal controller. Then the stable COM corresponding to the ZMP input is autonomously generated in terms of the self-stabilizing balance controller, as illustrated in Fig. 5 (c). Under the dancing motion of the humanoid robot, to employ the motion data obtained from the motion conversion method, unknown disturbances composed of two dumbbells weighing 10kg are applied directly to the humanoid robot on the frontal and sagittal sides, as seen in Fig. 18. It is observed from the experiment that the humanoid robot is able to maintain bipedal stability. Hence, even though the external disturbances of a sinusoidal form effect to the humanoid robot, the humanoid robot coupled to the neural oscillator and virtual components can stably exhibit a novel adaptive motion corresponding to an unknown disturbance.

Bipedal Locomotion Strategy
The authors finally propose the appropriate bipedal walking strategy of humanoid robots for our control model. Our objective is to embody the simple and integrated algorithm for generating various bipedal motions of humanoid robots. We also aim to have robust and adaptive properties under an unknown disturbance even in an unpredictable terrain. The proposed algorithm is illustrated in Fig. 19. Comparing the bipedal walking strategy with the whole body motion generation, the only difference between them is that the input is not a reference ZMP but a rhythmic pattern generated by the neural oscillator. However, a desired ZMP pattern can be input into the self-stabilizing controller for bipedal walking as illustrated in Section 3. In experiments with respect to the bipedal walking of the humanoid robot, a simple sinusoidal ZMP pattern was used.
The output of the COM motion generated in the rolling direction dominates the entire bipedal walking motion, such as walking period, velocity, stride distance etc. The output of the rolling COM motion causes the COM motion in the pitching direction because the neural oscillator that produces the pitching motion is internally connected to the rolling oscillator. In this way, the rolling motion and pitching motion of the COM are harmonized periodically. Also the output of the COM motion in the lateral plane determines the trajectory of the swing motion. The sequence in the locomotion phases is shown in Fig. 23. If the COM is inhibited by an unknown disturbance, such as pushing or pulling forces, the neural oscillator generates the adapting motion properly by means of sensory feedback. In addition, if the swinging foot doesn't contact the ground thoroughly, the swing motion and the single support phase of individual legs are sustained. On the contrary, during the initial phase, if the swinging leg absorbs much of the impact energy in its landing on the ground, the module, in order to distinguish between distinct walking phases, selects a certain phase according to the ZMP and COM position. The initial phase begins when the swing leg hits the ground and lands on it and ends when the walking phase is changed into the double support phase. By this walking strategy, the swing and stance motions can be autonomously changed according to the altered COM motion. Ultimately the COM of a humanoid robot will be appropriately controlled, sustaining the bipedal stability according to an arbitrary ZMP input. Figs. 20 and 21 show the stable walking of MAHRU robot on flat terrain, controlled in terms of the proposed walking algorithm.
In order to verify the validity of the proposed walking algorithm under unknown environmental changes, the height of the ground was altered aperiodically, irrespective of walking phases during bipedal walking. As shown in Fig. 22, when a swinging leg lands on the ground, the environmental change with regard to the height of the ground is applied. At first, while the left leg supports the whole weight of the robot, the height of the left leg changes in landing on the ground in about 7s. Therefore, the condition is applied to each walking phase from 7s to 11s in sequence. In Fig. 22, the red arrows indicate the direction that the 1.5cm high plate is inserted between the foot of the robot and the ground. Even though an unknown environmental condition exists by changing the height of the ground during bipedal walking, it was verified from the experimental results of Fig. 21 that the proposed self-stabilizing controller and walking algorithm enabled a humanoid robot to exhibit efficient adaptable motions sustaining bipedal stability. However, most of the existing problems associated with unknown terrain as well as additional uncertainty in dynamic characteristics remain largely undetermined so far. This work will be extended to solve such a difficult problem in the future.

Conclusion
To attain a stable periodic locomotion in biped humanoid robots, we proposed a new control architecture consisting of neural oscillators and virtual components. This causes the COM position of the biped robot to be controlled to follow the time varying desired ZMP input, thereby sustaining the bipedal stability. As a consequence, a humanoid robot can maintain bipedal stability regardless of single or double phases. For this, we simply let the virtual components and the neural oscillator generate the Cartesian forces. We can determine the required joint torques incorporating the Jacobian of the three link inverted pendulum. It is also noted that the appropriate swing and stance motions were generated according to the rolling and pitching motion because the neural oscillators between the dynamic models of the rolling and pitching direction are connected internally in phase. Since the stable rolling motion of the COM was induced by the ZMP reference input, which properly generated the pitching motion of the COM in accordance with the rolling motion, stable walking could be achieved with this novel walking strategy. Extensive simulations and experiments were carried out to verify the effectiveness of the proposed method. More experiments are currently under way for further evaluation of the proposed control method.