central pattern generators for gait generation in bipedal robots · 2018. 9. 25. · 17 central...

22
17 Central Pattern Generators for Gait Generation in Bipedal Robots Almir Herali 1 , Krister Wolff 2 , Mattias Wahde 2 1 University West, Trollhättan, Sweden 2 Chalmers University of Technology, Göteborg, Sweden 1. Introduction An obvious problem confronting humanoid robotics is the generation of stable and efficient gaits. Whereas wheeled robots normally are statically balanced and remain upright regardless of the torques applied to the wheels, a bipedal robot must be actively balanced, particularly if it is to execute a human-like, dynamic gait. The success of gait generation methods based on classical control theory, such as the zero-moment point (ZMP) method (Takanishi et al., 1985), relies on the calculation of reference trajectories for the robot to follow. In the ZMP method, control torques are generated in order to keep the zero-moment point within the convex hull of the support area defined by the feet. When the robot is moving in a well-known environment, the ZMP method certainly works well. However, when the robot finds itself in a dynamically changing real-world environment, it will encounter unexpected situations that cannot be accounted for in advance. Hence, reference trajectories can rarely be specified under such circumstances. In order to address this problem, alternative, biologically inspired control methods have been proposed, which do not require the specification of reference trajectories. The aim of this chapter is to describe one such method, based on central pattern generators (CPGs), for control of bipedal robots. Clearly, walking is a rhythmic phenomenon, and many biological organisms are indeed equipped with CPGs, i.e. neural circuits capable of producing oscillatory output given tonic (non-oscillating) activation (Grillner, 1996). There exists biological evidence for the presence of central pattern generators in both lower and higher animals. The lamprey, which is one of the earliest and simplest vertebrate animals, swims by propagating an undulation along its body. The wave-like motion is produced by an alternating activation of motor neurons on the left and right sides of the segments along the body. The lamprey has a brain stem and spinal cord with all basic vertebrate features, but with orders of magnitude fewer nerve cells of each type than higher vertebrates. Therefore, it has served as a prototype organism for the detailed analysis of the nervous system, including CPGs, in neurophysiological studies (Grillner, 1991; Grillner, 1995). In some early experiments by Brown (Brown, 1911, Brown, 1912), it was shown that cats with transected spinal cord and with cut dorsal roots still showed rhythmic alternating contractions in ankle flexors and extensors. This was the basis of the concept of a spinal locomotor center, which Brown termed the half-center model (Brown, 1914). Further biological support for the existence of a spinal CPG structure in vertebrates is presented in (Duysens & Van de Crommert, 1998). Source: Humanoid Robots, New Developments, Book edited by: Armando Carlos de Pina Filho ISBN 978-3-902613-02-8, pp.582, I-Tech, Vienna, Austria, June 2007 Open Access Database www.i-techonline.com

Upload: others

Post on 18-Feb-2021

0 views

Category:

Documents


0 download

TRANSCRIPT

  • 17

    Central Pattern Generators for Gait Generation in Bipedal Robots

    Almir Herali 1, Krister Wolff2, Mattias Wahde21University West, Trollhättan, Sweden

    2Chalmers University of Technology, Göteborg, Sweden

    1. Introduction

    An obvious problem confronting humanoid robotics is the generation of stable and efficient gaits. Whereas wheeled robots normally are statically balanced and remain upright regardless of the torques applied to the wheels, a bipedal robot must be actively balanced, particularly if it is to execute a human-like, dynamic gait. The success of gait generation methods based on classical control theory, such as the zero-moment point (ZMP) method (Takanishi et al., 1985), relies on the calculation of reference trajectories for the robot to follow. In the ZMP method, control torques are generated in order to keep the zero-moment point within the convex hull of the support area defined by the feet. When the robot is moving in a well-known environment, the ZMP method certainly works well. However, when the robot finds itself in a dynamically changing real-world environment, it will encounter unexpected situations that cannot be accounted for in advance. Hence, reference trajectories can rarely be specified under such circumstances. In order to address this problem, alternative, biologically inspired control methods have been proposed, which do not require the specification of reference trajectories. The aim of this chapter is to describe one such method, based on central pattern generators (CPGs), for control of bipedal robots. Clearly, walking is a rhythmic phenomenon, and many biological organisms are indeed equipped with CPGs, i.e. neural circuits capable of producing oscillatory output given tonic (non-oscillating) activation (Grillner, 1996). There exists biological evidence for the presence of central pattern generators in both lower and higher animals. The lamprey, which is one of the earliest and simplest vertebrate animals, swims by propagating an undulation along its body. The wave-like motion is produced by an alternating activation of motor neurons on the left and right sides of the segments along the body. The lamprey has a brain stem and spinal cord with all basic vertebrate features, but with orders of magnitude fewer nerve cells of each type than higher vertebrates. Therefore, it has served as a prototype organism for the detailed analysis of the nervous system, including CPGs, in neurophysiological studies (Grillner, 1991; Grillner, 1995). In some early experiments by Brown (Brown, 1911, Brown, 1912), it was shown that cats with transected spinal cord and with cut dorsal roots still showed rhythmic alternating contractions in ankle flexors and extensors. This was the basis of the concept of a spinal locomotor center, which Brown termed the half-center model (Brown, 1914). Further biological support for the existence of a spinal CPG structure in vertebrates is presented in (Duysens & Van de Crommert, 1998).

    Source: Humanoid Robots, New Developments, Book edited by: Armando Carlos de Pina FilhoISBN 978-3-902613-02-8, pp.582, I-Tech, Vienna, Austria, June 2007

    Ope

    n A

    cces

    s D

    atab

    ase

    ww

    w.i-

    tech

    onlin

    e.co

    m

  • 286 Humanoid Robots, New Developments

    However, there is only evidence by inference of the existence of human CPGs. The strongest evidence comes from studies of newborns, in which descending supraspinal control is not yet fully developed, see e.g. (Zehr & Duysens, 2004) and references therein. Furthermore, advances made in the rehabilitation of patients with spinal cord lesions support the notion of human CPGs: Treadmill training is considered by many to rely on the adequate afferent activation of CPGs (Duysens & Van de Crommert, 1998). In view of the results of the many extensive studies on the subject, it seems likely that primates in general, and humans in particular, would have a CPG-like structure. In view of their ability to generate rhythmic output patterns, CPGs are well suited as the basis for bipedal locomotion. Moreover, CPGs exhibit certain properties of adaptation to the environment: Both the nervous system, composed of coupled neural oscillators, and the musculo-skeletal system have their own nonlinear oscillatory dynamics, and it has been demonstrated that, during locomotion, some recursive dynamics occurs between these two systems. This phenomenon, termed mutual entrainment, emerges spontaneously from the cooperation among the systems’ components in a self-organized way (Taga et al., 1991). That is, natural periodic motion, set close to the natural (resonant) frequency of the mechanical body, is achieved by the entrainment of the CPGs to a mechanical resonance by sensory feedback. The feedback is non-essential for the rhythmic pattern generation itself, but rather modifies the oscillations in order to achieve adaptation to environmental changes. In the remainder of this chapter, the use of CPGs in connection with bipedal robot control will be discussed, with particular emphasis on CPG network optimization aimed at achieving the concerted activity needed for bipedal locomotion. However, first, a brief introduction to various CPG models will be given.

    2. Biological and analytical models for CPGs

    2.1 Models from biology

    From biological studies, three main types of neural circuits for generating rhythmic motor output have been proposed, namely the closed-loop model, the pacemaker model, and the half-center model. The closed-loop model was originally proposed for the salamander (Kling & Székely, 1968). In some way it resembles the half-center model (see below), but the interneurons are organized in a closed loop of inhibitory connections. There are corresponding pools of motor neurons activated, or inhibited, in sequence, allowing for a finer differentiation in the activation of the flexors and extensors, respectively. In the pacemaker model, rhythmic signals result as an intrinsic cell membrane property, involving complex interaction of ionic currents, of a group of pacemaker cells. The electrical impulses that control heart rate are generated by such cells. The pacemaker cells drive flexor motor neurons directly, and bring about concurrent inhibition of extensor motor neurons through inhibitory interneurons. These two models are further described in (Shephard, 1994).The half-center model, mentioned above, was suggested by Brown (Brown, 1914) in order to account for the alternating activation of flexor and extensor muscles of the limbs of the cat during walking. Each pool of motor neurons for flexor or extensor muscles is activated by a corresponding half-center of interneurons, i.e. neurons that send signals only to neurons and not to other body parts (such as muscles). Another set of neurons provides a steady excitatory drive to these interneurons. Furthermore, inhibitory connections between each

  • Central Pattern Generators for Gait Generation in Bipedal Robots 287

    half-center of interneurons ensure that when one half-center is active, the other is being suppressed. It was hypothesized that, as activity in the first half-center progressed, a process of fatigue would build up in the inhibitory connections between the two half-centers, thereby switching activity from one half-center to the other (Brown, 1914). Since then, support for the half-center model has been found in experiments with cats (Duysens & Van de Crommert, 1998).

    2.2 Computational CPG Models

    In mathematical terms, CPGs are usually modeled as a network of identical systems of differential equations, which are characterized by the presence of attractors, i.e. bounded subsets of the phase space to which the dynamics becomes confined after a sufficiently long time (Ott, 1993). Usually, a periodic gait of a legged robot is a limit cycle attractor, since the robot periodically returns to (almost) the same configuration in phase space. Several approaches for computational modeling of the characteristics of CPGs can be found in the literature: Drawing upon neurophysiological work on the lamprey spinal cord, Ekeberg and co-workers have studied CPG networks based on model neurons ranging from biophysically realistic neuronal models, describing the most important membrane currents and other mechanisms of importance (Ekeberg et al., 1991), to simple connectionist-type non-spiking neurons (Ekeberg, 1993). The use of the biophysical models makes it possible to compare the simulation results directly with corresponding experimental data. The advantage of using the simpler model, on the other hand, is the weak dependence of certain parameters that are hard to measure experimentally.

    Fig. 1. The Matsuoka oscillator unit. The nodes (1) and (2) are referred to as neurons, or cells. Excitatory connections are indicated by open circles, and inhibitory connections are indicated by filled disks.

    However, in this work the CPG model formulated in mathematical terms by Matsuoka (Matsuoka, 1987) has been used for the development of CPG networks for bipedal walking. The Matsuoka model is a mathematical description of the half-center model. In its simplest form, a Matsuoka CPG (or oscillator unit) consists of two neurons arranged in mutual inhibition, as depicted in Fig. 1. The neurons in the half-center model are described by the following differential equations (Taga, 1991):

    N

    j

    jijiiiu uyvuu1

    0 (1)

    iiiv yvv (2)

  • 288 Humanoid Robots, New Developments

    ii uy ,0max (3)

    where ui is the inner state of neuron i, vi is an auxiliary variable measuring the degree of self-inhibition (modulated by the parameter ) of neuron i, u and v are time constants, u0 is an external tonic (non-oscillating) input, wij are the weights connecting neuron j to neuron i,and, finally, yi is the output of neuron i. Two such neurons arranged in a network of mutual inhibition (a half-center model), form an oscillator, in which the amplitude of the oscillation is proportional to the tonic input u0. The frequency of the oscillator can be controlled by changing the values of the two time constants u and v. If an external oscillatory input is applied to the input of a Matsuoka oscillator, the CPG can lock onto its frequency. Then, when the external input is removed, the CPG smoothly returns to its original oscillation frequency. This property, referred to as entrainment, is highly relevant for the application of the Matsuoka oscillator in adaptive locomotion (Taga, 1991).

    3. CPGs in bipedal robot control

    Generating robust gaits for bipedal robots using artificial counterparts to biological CPGs is an active field of research. The first results in this field were obtained using simple 2D models, and somewhat later, simplified 3D models. The most recent results, however, cover the use of realistic 3D simulations often corresponding to real, physical robots (Righetti & Ijspeert, 2006). Several results have also been implemented using real robots, involving both 2D locomotion (Endo et al., 2004; Lewis et al., 2005) and full 3D locomotion (Ogino et al. 2004).

    3.1 CPG-based control of simulated robots

    In works by Taga and co-workers (Taga et al., 1991; Taga, 2000), a gait controller based on the half-center CPG model was investigated for a 2D simulation of a five-link bipedal robot. By creating global entrainment between the CPGs, the musculo-skeletal system, and the environment, robustness against physical perturbations as well as the ability to walk on different slopes were achieved (Taga et al., 1991). Moreover, the possibility to regulate the step length was realized and demonstrated in an obstacle avoidance task (Taga, 2000). Reil and Husbands (Reil & Husbands, 2002) used genetic algorithms (GAs) in order to optimize fully connected recurrent neural networks (RNNs), which were used as CPGs to generate bipedal walking in 3D simulation. The GA was used for optimizing weights, time constants and biases in fixed-architecture RNNs. The bipedal model consisted of a pair of articulated legs connected with a link. Each leg had three degrees-of-freedom (DOFs). The resulting CPGs were capable of generating bipedal straight-line walking on a planar surface. Furthermore, by integrating the gait controller with an auditory input for sound localization, directional walking was achieved. In a recent work by Righetti and Ijspeert, a system of coupled nonlinear oscillators was used as programmable CPGs in a bipedal locomotion task (Righetti & Ijspeert, 2006). The CPG parameters, such as intrinsic frequencies, amplitudes, and coupling weights, were adjusted to replicate a teaching signal corresponding to pre-existing walking trajectories. Once the teaching signal was removed, the trajectories remained embedded as the limit cycle of the dynamical system. The system was used to control 10 joints in a 25 DOF simulated HOAP-2 robot (the remaining joints were locked). It was demonstrated that, by varying the intrinsic frequencies and amplitudes of the CPGs, the gait of the robot could be modulated in terms

  • Central Pattern Generators for Gait Generation in Bipedal Robots 289

    of walking speed and step length. By continuously decreasing the speed, the robot could be brought to a halt in a controlled way. It was also possible to generate backwards walking by simply inverting the sign of all frequency parameters in the CPG controller.

    3.2 CPG-based control of real, physical robots

    The examples given above involve simulated robots. However, some studies involving CPG-based control of real, physical robots have also been made. In work by Endo and co-workers (Endo et al., 2004) and Lewis and co-workers (Lewis et al., 2005), controllers based on the half-center CPG model were employed. The robots used were, however, somewhat simplified, having only 4 DOFs each. Further simplification included a supporting rod that was attached to the robots and to the floor, in order to prevent the robots from falling over sideways. A more complex robot was used in (Ogino et al., 2004) in a gait generation task. Here, reinforcement learning based on visual feedback was used to adjust the parameters of a CPG-based controller for a HOAP-1 robot, in order to achieve directional walking.

    3.3 Optimization of CPG-based controllers

    The examples given above confirm that CPGs are indeed suitable for generation of gaits and other types of repetitive motions. However, in most studies, the design of the CPG networks has commonly been carried out manually, in an intuitive manner, e.g. (Taga, 2000; Ogino et al., 2004). This is a time-consuming and difficult process, and it may also lead to suboptimal performance. By contrast, GAs are well suited for structural optimization, i.e. modification of the CPG network structure during optimization. However, even in cases where GAs have been applied, e.g. (Reil & Husbands, 2002), the approach has generally been restricted to parametric optimization in a network of fixed architecture. Furthermore, the use of predefined trajectories, as in (Righetti & Ijspeert, 2006), limits the approach only to those situations for which such trajectories exist. Nevertheless, the results presented in (Righetti & Ijspeert, 2006) reveal one of the advantages associated with a CPG-based approach, namely the ability of the corresponding controllers to smoothly change the gait pattern online, by simple parameter modification. The work presented in the remainder of this chapter concerns simultaneous parametric and structural optimization of CPG networks in a gait generation task, using GAs as the optimization tool. Some early results from this study can also be found in (Wolff et al., 2006). When generating bipedal locomotion by artificial evolution from a starting point of essentially random CPG networks (or other controllers, for that matter), a great challenge concerns the definition of the fitness function. Using, for example, the distance covered in the initial forward direction as the fitness measure commonly results in controllers that simply throw the body of the robot forward, rather than walking. While actual walking would certainly result in higher fitness values, such solutions are very hard to find, given the easily accessible local optimum found by throwing the robot’s body forward. Adding constraints on body posture as part of the fitness measure will in most cases only lead to other non-desirable gaits that display very limited similarity with human-like gaits. Thus, in the experiments presented below, rather than trying to evolve an upright, human-like bipedal gait by an ingenious definition of a fitness function, a supporting structure will be used for the purpose of helping the robot to balance as it starts to walk. Some different strategies for subsequently removing this support, while maintaining a dynamically stable gait, will then be investigated.

  • 290 Humanoid Robots, New Developments

    In the simulation experiments presented here, a fully three-dimensional bipedal robot with 14 DOFs, shown in the leftmost panel of Fig. 2, was used. The simulated robot weighs 7 kg and its height is 0.75 m. The distance between the ground and the hips is 0.45 m. The waist has 2 DOFs, each hip joint 3 DOFs, the knee joints 1 DOF each, and the ankle joints 2 DOFs each, as illustrated in the in Fig. 2 (second panel from the left). The simulations were carried out using the EvoDyn simulation library (Pettersson, 2003), developed at Chalmers University of Technology. Implemented in object-oriented Pascal, EvoDyn runs both on Windows and Linux platforms and is capable of simulating tree-structured rigid-body systems. Its dynamics engine is based on a recursively formulated algorithm that scales linearly with the number of rigid bodies in the system (Featherstone, 1987). For numerical integration of the state derivates of the simulated system, a fourth order Runge-Kutta method is used. Visualization is achieved using the OpenGL library.

    Fig. 2. The two panels to the left show the simulated robot and its kinematics structure with 14 DOFs, used in this work. The panels on the right show the dimensions of the robotic body.

    In the simulation experiments, the output of the CPG network was either interpreted as motor torques, which were applied directly to the joint actuators, or as desired joint angles for the robot’s joints to follow. In the latter case, a standard PD controller was implemented in order to generate the adequate torques to the joint actuators.

    4. Optimization of CPG networks

    This section presents the results from experiments conducted with the 14 DOF simulated robot introduced above. First, however, the setup of the experiments will be described in some detail, starting with a description of the fitness measure used in connection with the GA. The method for CPG network generation presented here is intended for use in connection with fully three-dimensional bipedal robots, with many DOFs. For such robots, designing a CPG network by hand is a daunting task. Instead, in this method, a GA is used for carrying out structural and parametric optimization of the CPG network, with the aim of achieving bipedal walking, without specific reference trajectories. The approach poses many challenges, particularly since no a priori knowledge of the needed control signals is available. In fact, in the experiments presented below, the CPG networks have been evolved

  • Central Pattern Generators for Gait Generation in Bipedal Robots 291

    starting from randomly generated initial populations (the members of which are referred to as individuals, following standard GA terminology) of such networks. Thus, for experiments of this kind, the first challenge is to choose a suitable fitness measure that will favor CPG networks capable of executing an upright bipedal gait.

    Fig. 3. The posture-support structure used in this work for helping the robot to balance as it starts to walk.

    4.1 Fitness measure

    How should one judge the motion patterns generated in the beginning of the evolutionary process, given the fact that, in all likelihood, none of the individuals are able to walk at that stage? The simplest way, perhaps, would be to judge the individuals by their ability to move forward, i.e. to use, as the fitness measure, simply the covered distance in the initial forward direction, starting each evaluation with the simulated robot in an upright position. By thus favoring individuals that can carry out some form of movement in the right direction, one may assume that, sooner or later, individuals will appear that are able to walk indefinitely. This, however, is not what typically happens. Instead, it is more common that the evolutionary process quickly discovers a local optimum in the fitness space, such that the robot simply throws its body forward, thus receiving a relatively high fitness compared to robots that simply fall down at the starting position. Once this local optimum has been found, the evolutionary process often gets stuck in some sort of crawling motion, or even a tripod-like gait in which the torso is used as a third leg. Of course, such mediocre results can, in principle, be avoided by adding constraints on body posture as part of the fitness measure. However, finding relevant constraints is a difficult task, especially in fully three-dimensional simulations. Usually, a modification of the fitness measure simply leads to the discovery of other unnatural (and thus undesirable) gaits. In order to deal with this problem, an approach has been proposed that uses a supporting structure (shown in Fig. 3) added to the robot to help it maintain its balance as it starts to walk (Wolff et al., 2006). Introducing posture support enables those individuals that produce some sort of repetitive leg motion (but are initially unable to maintain balance) resulting in forward motion to gain high fitness. Another benefit of this approach is that the fitness measure can be left quite simple, e.g. the distance covered in the forward direction (even though some additional punishment must be introduced as well, as described in Section 4 below). On the other hand, the problem of when, and how, to remove the support must be considered instead. Several strategies for eliminating the support have therefore been investigated. Despite its appearance, it is modeled as a massless structure and therefore it does not affect the robot’s dynamics, unless it starts to fall.

  • 292 Humanoid Robots, New Developments

    4.2 Structural and parametric optimization

    The elementary CPG network structure, shown in Fig. 4, has been designed in a way that each joint is assigned a half-center oscillator (depicted in Fig. 1). Thus, in this case, the structural optimization part consists of deciding the presence, or absence, of the connections between the CPGs for different joints. Furthermore, motivated by the fact that the movements of the left and right parts of a bipedal robot are symmetrical during walking, symmetry constraints on the CPG network were imposed. Thus, the structure of the CPGs on the right side of the robot mirrors that of the left side, considerably reducing the size of the search space for the GA. For example, the connection weight between the left hip and the left knee is equal in value to the weight connecting the right hip to the right knee.

    Fig. 4. Left panel: the structure of the CPG network used in the simulations, with the hip1joint CPG marked with a darker shade of gray. The connections between the individual oscillators are represented, in a slightly simplified way, by the arrows in the figure; see the text for a more detailed explanation. Right panel: The robot’s kinematics structure with joint names indicated.

    The CPG network is further constrained such that only the hip1 CPG, responsible for rotation in the sagittal plane, can be connected to all the other ipsilateral1 joint CPGs, the corresponding contralateral hip1 CPG, and the waist CPGs. Note, however, that the hip1 CPG on a given side, can only receive connections from the corresponding contralateral hip1 CPG, see Fig. 4 for more details. The remaining joint oscillators do not transmit any signals at all. The introduction of these constraints was motivated by several preliminary experiments, the results of which indicated that the evolutionary process was considerably less efficient when a fully connected CPG network was used, yet without improving the final results. For simplicity, in Fig. 4, the connections between CPG units are depicted with a single arrow. In fact, each such arrow represents a maximum of four unique connections between two joint oscillators, as indicated in Fig. 5. This figure depicts, as an example, the possible connections between the hip1 CPG and the knee CPG. Thus, given the symmetry and connectivity constraints presented above, a total of 8x4 = 32 connections are to be determined by the GA. Note, that it is possible that the GA may disable all connections, w1 –

    1 The term ipsilateral refers to the same side of the body, and is thus the opposite of the term contralateral.

  • Central Pattern Generators for Gait Generation in Bipedal Robots 293

    w4 between two CPG units. If this happens, one connection will be forced between the two CPGs. This is motivated by the fact that, without any interconnection, no synchronization between the two joints will be possible. In this setup, the forced connection will be added between the flexor neuron in the transmitting CPG, and the flexor neuron in the receiving CPG. There is, however, no particular reason for preferring this connection; Choosing any other connection would not make any fundamental difference.

    Fig. 5. All possible connections between the hip1 CPG and the knee CPG.

    For optimization of the CPG network, a standard genetic algorithm, (Holland, 1975), was chosen. In the GA, the CPG network of a given individual was represented by two chromosomes; one binary-valued chromosome determining the presence or absence of each of the 32 evolvable connections, and one real-valued chromosome determining the parameter values for those connections that are actually used in a given individual. In addition to these two chromosomes, a third (real-valued) chromosome was used for determining the sign and strength of the different feedback paths, as described in the next subsection. In early experiments, the internal parameters (see Eqs. (1) and (2)) of the individual half-center CPGs were also evolved by the GA. However, with the supporting structure present, evolution always promoted parameters values that produced unnaturally large steps, so that the support could be exploited for reaching higher fitness values. In such cases, the robot became highly dependent on the supporting structure for balance, making it even more difficult to find an appropriate removal strategy for the support. For this reasons, the internal parameters of the individual half-center CPGs were set to fixed values, generating a motion frequency of the robot’s legs approximating that of normal walking. The chosen parameters are shown in Fig. 6 along with the resulting output from the half-center oscillator. These parameters were applied to all CPGs, except for the knee joint CPGs and the waist1 CPG. In analogy with human gait, the knee joint oscillator and the waist1 oscillator were tuned to generate a rhythmic pattern with double frequency compared to the other CPGs. Thus, for these joints’ CPGs, the u and v values were set to half of the values used for the other CPGs. In each run, a population of 180 individuals was used. Selection of individuals (for reproduction), was carried out using tournament selection, with a tournament size of 8 individuals. In a given tournament, the individual with the highest fitness value was selected with a probability of 0.75, and a random individual (among the 8) with 0.25

  • 294 Humanoid Robots, New Developments

    probability. After each selection step, the mutation operator was applied, randomly changing a gene’s value with probability 10/N, where N denotes the total number of genes in the three chromosomes of the individual.

    Fig. 6. Left panel: The half-center oscillator assigned to each joint. Right panel: The parameter values used, along with a typical output signal. Note that the knee and waist1 joint oscillators used different values of the time constants (see the main text for details).

    The fitness measure was taken as the distance walked by the robot in the initial forward direction, x, decreased by the sideways deviation y. The fitness function F, for a given individual i, can thus be expressed as:

    yxiF )( (4)

    In addition to the fitness function, several indirect punishments were introduced during evaluation. For example, since the two-point supporting structure provided no support in the sagittal plane, the robot could still fall to the ground during evaluation, leading to the emergence of motion patterns such as crawling. Avoiding this was important, particularly in the beginning of the evolutionary process, since these individuals could gain better fitness than the very first individuals that walked with an upright body posture. Thus, even though the support was used, the resulting gaits could develop towards gait patterns other than upright walking. Thus, a rule was introduced such that if a robot’s hips collided with the ground, the evaluation of that particular individual was terminated. Other punishments or modifications that were also introduced are described in the experiment section.

    4.2 Feedback signals

    In order to guide the evolutionary process towards an upright and stable bipedal gait, feedback was introduced by measuring the waist angle, thigh angle, and lower leg angle, all relative to the vertical axis. The introduction of feedback paths for the generation of bipedal locomotion has proven to be important in achieving adaptation to the environment and forming the overall gait pattern (Taga et al., 1991; Righetti & Ijspeert, 2006). In the experiments presented here, the structure of the feedback network was determined in advance. However, the actual type of the connection, i.e. whether it is inhibitory or excitatory, and the strength of the feedback paths were determined by the GA. Symmetry constraints were applied also in this case, meaning that the feedback structure of the right side of the robot mirrored that of the left side. Furthermore, motivated by biological findings indicating that tactile feedback from the foot is essential for human locomotion (Van Wezel et al., 1997), a touch sensor in each foot was introduced in the simulations. The signal from

  • Central Pattern Generators for Gait Generation in Bipedal Robots 295

    the touch sensor was used both as tactile feedback, i.e. to indicate foot-to-ground contact, but also to enable, or prohibit, other feedback signals to be connected to certain CPGs during a specific phase of the gait; see Fig. 7 for an example. In this section, only some illustrative examples of the feedback network structure are given. For a detailed description of the feedback paths see (Wolff et al., 2006). The feedback signals to an individual CPG are introduced by adding an extra term to Eq. (1), which then becomes:

    fuyvuuN

    j

    jijiiiu

    1

    0 (5)

    where f denotes the sum of all feedback signals connected to the particular CPG. When designing the feedback network, the main idea was to trigger the different phases in a gait cycle. For example, for the left hip1 CPG, the feedback structure was designed in the following way: The flexor and the extensor neuron receive two feedback signals, as shown in the left panel of Fig. 7: One signal from the right-foot touch sensor, and one signal measuring the inclination angles of the left and right upper leg, scaled by the strength of the feedback connections. The feedback signal from the touch sensor is intended to trigger the swing motion of the left leg, as soon as the right foot touches the ground. Feedback from the inclination angles of the upper legs is intended to promote repetitive leg motion in such a way that, when the left leg is moving forward, the right leg should move backwards, and vice versa. The feedback paths connected to the hip1 CPG are depicted in the left panel of Fig. 7. Note, that the type of connections shown in the figure are chosen to easier demonstrate how the feedback signals were intended to affect the motion of the hip1 joint. However, since the dynamical system of a single CPG unit becomes rather complex in an interaction with other CPGs, the robot, and the environment, it is very hard to predict if the chosen feedback configuration will work as intended. For this reason, both the sign and the strength of each connection were determined by the GA (but not the structure of the feedback paths). Fig. 7 shows an example in which the feedback connection to the flexor neuron of a certain CPG happened to be of opposite sign compared with the feedback connection to the extensor neuron of the same CPG. In the right panel of Fig. 7, the feedback paths connected to the right hip2 CPG are illustrated. In same way as above, the illustrated types of connections in the figure intend only to demonstrate how the structure of the feedback for this joint was planned to affect the motion of the hip2 joint. It does not represent the best connection configuration (in terms of the sign and the strength) chosen by the GA. In the case of hip2, only the feedback signal measuring the inclination angle of the right upper leg is connected to the oscillator. However, the feedback is only transmitted to the CPG unit if the touch sensor in the right foot is activated, i.e. when the right foot is on the ground. This configuration was chosen with the intention of ensuring that the hip2 CPG was able to generate more torque in the stance phase, i.e. when the right leg is moving backwards, during which the entire body of the robot is resting on the right leg. One should notice that by choosing an adequate feedback structure, the feedback signals may indirectly force synchronization between different joints, even if the connection weights between the joints’ CPG units may not necessarily ensure this by themselves. In this work, a total of 20 parameters, determining the sign and the strength of the different feedback paths were evolved by the GA; see (Wolff et al., 2006) for details.

  • 296 Humanoid Robots, New Developments

    Fig. 7. The simulated robot with the hip1 and hip2 joint CPGs and the corresponding feedback, with specific connection types (i.e. signs) chosen to illustrate how the feedback was intended to affect the corresponding joint’s motion (see the main text for details). The hip1 flexor neuron rotates the leg in the counter-clockwise direction in the sagittal plane2,while the hip2 flexor neuron rotates the leg in the clockwise direction in the frontal plane (seen from behind the robot).

    4.3 Experimental setup

    In this subsection, the setup used in the simulation experiments will be discussed. Two approaches for generating dynamically balanced bipedal locomotion will be described, the difference being the method for removing the support structure. In both approaches, a two-point supporting structure, as depicted in Fig. 3, was used. Initially, a four-point support was used, in an open-loop fashion without feedback signals. However, the GA exploited the support to such an extent that no useful results were obtained (Wolff et al., 2006). For example, the individuals obtained walked with unnaturally large steps and were unable to balance without constant use of the supporting structure. Thus, instead a two-point structure was introduced in order to minimize exploitation (Wolff et al., 2006), while still providing some support. The contact points of the support structure were placed 2 m from the robot and 0.25 m above the ground. This configuration was chosen to ensure small sideways leaning angle and at the same time allow the robot to bend its knees without the support touching the ground.

    Method 1: Evolution in two steps

    In this approach, the evolutionary process was divided into two steps. During the first step, the posture support was present and the hip2, hip3, and ankle joints were locked. In this step, the intention was to evolve a CPG network capable of producing a stable upright gait in the sagittal plane. Once a stable individual had been obtained, it was cloned, creating a new population consisting of copies of this individual. At this stage, the second step was initiated, in which the support was removed and the GA was assigned the task of finding a

    2 The sagittal plane is a vertical plane running from front to back through the body, while the frontal plane is a vertical plane running from side to side through the body, perpendicular to the

    sagittal plane

  • Central Pattern Generators for Gait Generation in Bipedal Robots 297

    way to balance the robot in the frontal plane as well. Before the second step of evolution was started, the hip2 and ankle joints were unlocked, and the corresponding genes were set randomly for each individual in the population. Since the waist joints also affect the frontal plane balance, the corresponding genes were randomly initiated as well. The remaining genes (which take identical values for all individuals) ensured sagittal plane balance and were therefore left unchanged in the second step of evolution. In this approach the hip3 joint remained locked during the entire procedure. The fitness measure used in both steps was the distance walked by the robot in the initial forward direction, decreased by the sideways deviation, as formulated in Eq. (4). Since the two-point supporting structure provides no support in the sagittal plane, the evolutionary procedure found several easily accessible solutions for maintaining sagittal balance. In some cases, the evolved individuals used the torso as a third leg, or the knees, for maintaining balance. Other examples include forward motion using somersaults or walking with unnaturally large steps. In order to prevent the individuals from developing other means of locomotion than upright, human-like gaits, several constraints had to be introduced. In Method 1, the following rules and modifications were added:

    a) The contact points in the knee joints and the torso, used for detecting ground collisions, were removed.

    b) If the robot’s hip collided with the ground, the evaluation run of that individual was aborted.

    c) If the robot’s hips were located less than a 0.15 m above the ground, the supporting structure was immediately removed, and was not further used during the evaluation of the individual.

    The removal of the robot’s contact points in the torso and the knees eliminated the possibility of misusing these body parts for support. Ending a run as soon as the robot’s hip collided with the ground, efficiently removed all crawling solutions. Finally, punishing the individuals for having the hips too close to the ground successfully removed those individuals trying to take unnaturally large steps (for improved sagittal plane balance). If the step length is large and the support is removed in this way, the robot will most likely be unable to maintain the frontal plane balance. Thus it will fall to the ground, terminating its evaluation. Using these rules, the evolutionary procedure was strongly biased towards individuals walking with an upright posture. Initially, the posture support was intended to be present during the entire evaluation time of the first step, and then completely removed in the second step. However, it turned out that such an approach gave no obvious way of deciding at what point to interrupt the first step; This simply had to be judged by the experimenter in an ad hoc manner. Evolving for too long, for example, led to individuals that were indeed walking rapidly but, at the same time, over-exploiting the posture support, making the produced gait unsuitable for the second step, where the support was removed. For this reason, the time during which the support was present in the first step was changed from the entire evaluation period to only the first two seconds of the evaluation. This arrangement is motivated by the assumption that it is during the starting sequence, before entering the gait cycle, that the individuals are most vulnerable in terms of frontal plane balance. For this reason, in these experiments, the posture support was also present during the initial two seconds in the next step. The details regarding the experiments carried out using Method 1 are shown in Table 1. The results from the simulations are given in the next subsection.

  • 298 Humanoid Robots, New Developments

    Case Support t DOFs CPG genes Feedback genes

    1.1 2 sec, 2-point, 0.25, 2 40 8 40 14

    1.2 2 sec, 2-point, 0.25, 2 40 12 32 10

    Table 1. Details regarding the experiments made using Method 1. The first column indicates which step in Method 1 is being considered. In the column labeled support, the term 2 secindicates that the (two-point) support was only present during the first two seconds of the evaluation time. The numbers i, j in the same column denote the initial placement of the contact points in a given run, where i is the height above the ground [m], and j is the horizontal distance from the hip [m]. The evaluation time (third column) is denoted by t [s]. The fourth column (DOFs) gives the number of active joints, and the last two columns indicates the number of genes evolved by the GA.

    Due to symmetry constraints, described in subsection 4.2, only those connections in the CPG network that correspond to one side of the robot, and the waist joints, must be evolved. Since there are four unique connections for each joint, a total of 8 genes per joint must be evolved, i.e. four genes determining the presence or absence of the connections, and four genes determining the parameters of the connections that are actually used. Thus, in the first step of Method 1, five unique joint configurations (hip1, knee, foot, waist1 and waist2) must be evolved, leading to a total of 8x5=40 genes. Based on the feedback equations given in (Wolff et al., 2006) the number of genes needed to determine the characteristics of the feedback paths for these joints sums up to 14. In the second step of Method 2, the genes corresponding to the hip1, knee and the foot joints were not changed. Instead, the waist1, waist2, hip2, and the ankle joints were evolved, bringing the total number of CPG genes to 4x8=32. The number of genes needed for the feedback network sums up to 10 since the feedback paths connected to hip1, knee and the foot joints require four more parameters than the hip2, and the ankle joints (Wolff et al., 2006).

    Method 2: One-step evolution with 12 active DOFs

    In Method 1, the supporting structure was only allowed in the beginning of an evaluation run, motivated by the assumption that it is during the starting sequence that the individuals are most vulnerable in terms of balance. Since it was found that this assumption turned out to be correct, the somewhat cautious two-step approach used in Method 1 is perhaps unnecessary. Therefore, in Method 2, the evolution of CPG networks was carried out in one single step during which all joints except the hip3 joint were unlocked. Apart from this change, the additional rules, presented in connection with Method 1, were also valid here.

    Case Support t DOFs CPG genes Feedback genes Type of CPG

    2 2 sec, 2-point, 0.25, 2 40 12 56 18 torque 3 2 sec, 2-point, 0.25, 2 40 12 56 18 angle

    Table 2. Details regarding the experiments made using Method 2. As in Method 1 the term 2sec in the column labeled Support indicates that the (two-point) support was only present during the first two seconds of the evaluation time. In the last column, the type of output produced by the CPG network is given.

    In addition, both a torque-generating CPG network and a network for generating joint angles were tested. In the latter case, the appropriate torques were generated using a standard PD controller, implemented as

  • Central Pattern Generators for Gait Generation in Bipedal Robots 299

    idirpi kkT , (6)

    where Ti is the torque applied to joint i, kp is the proportional constant, kd is the derivative constant, r is the desired angle, and i is the current angle of the ith joint. In the experiment described in the 2nd row of Table 2, kp and kd were chosen as 20.0 and 4.0, respectively. In both cases, the fitness measure was the distance walked by the robot in the initial forward direction, decreased by the sideways deviation, as formulated in Eq. (4).

    4.4 Results

    Method 1: In Method 1, the generation of upright bipedal locomotion was carried out in a two-step evolutionary procedure. In the first step, during which the hip2, hip3 and ankle joints were locked, an individual walking with a speed of 0.58 m/s was evolved after 400 generations. The results for this individual are shown in Table 3, case 1.1. As Table 3 implies, the individual evolved here was fairly unstable and able to maintain balance only for one minute. Note that the stability in the frontal plane was only ensured by the waist joint, since the hip2 and ankle joints were locked. Even though slower, but stable, individuals were found earlier in evolution, i.e. individuals that maintained balance during the testing time of 20 minutes, they were not suitable as a starting condition for the second step because of the way these individuals were walking: They were heavily leaning the torso forward, or backwards, keeping it motionless to create a sort of counterweight for balance. By contrast, the fastest individual maintained an active upright posture during the entire walking sequence.

    Case Method F v DOFs Resulting gait

    1.1 1, step1 19.54 0.56 8 slow, stable for 60 sec. 1.2 1, step2 23.09 0.58 12 slow, stable for 12 min. 2 2, torque 35.56 0.90 12 fast, stable for 42 sec. 3 2, angle 52.46 1.31 12 fast, stable for >20 min.

    Table 3. Results from the trials made using Method 1 and Method 2. In the column labeled Method, the method and the current step (or type of output) is given. F is the obtained fitness [m], and v denotes the average locomotion speed [m/s] of the robot during the evaluation period. DOFs is the number of active joints, and the last column gives a short description of the resulting gaits.

    Fig. 8. The best evolved gait pattern, using Method 1, with 12 active DOFs. The details of the corresponding individual are shown on the 2nd row of Table 3.

    In the second step, the hip2 and ankle joints were unlocked and the best individual, found within 100 generations, was able to walk with a speed of 0.58 m/s. However, when the

  • 300 Humanoid Robots, New Developments

    individual was tested for longer evaluation times, it fell after 12 minutes, see case 1.2 in Table 3. The resulting gait is depicted in Fig. 8.

    Method 2, torque-generating CPGs: While the CPG networks in Method 1 were evolved in two steps, with the hip2, hip3 and anklejoints locked at first, in Method 2, all joints, except the hip3 joint, were evolved in one step. When Method 2 was tested with a torque-generating CPG network, the main difference compared to Method 1 was the difficulty to evolve stable individuals. While the average speed of the best individual was significantly improved, the balance capabilities were at the same time reduced, and it was only after 800 generations that the best individual was able to balance during the entire evaluation time of 40 seconds. However, this result was not satisfactory since the individual did not walk more than 42 seconds when the evaluation time was expanded; see Table 3, case 2 for details. The resulting motion pattern resembled the one obtained in Method 1, shown in Fig. 8, with the exception of the foot joint, which was now more active during the lift-off phase. Nevertheless, the motion of the hip2 and ankle joints appeared rather nervous, suggesting that more restraining feedback to these joints’ CPGs is necessary, preferably from their own joint angles, something that was not included in the current feedback network.

    Method 2, angle-generating CPGs:When Method 2 was tested in connection with angle-generating CPGs, the results were significantly improved, compared to the previous results, both in terms of locomotion speed and stability of the best individual, but also in terms of evolution time. The best individual found with this approach reached a distance of 52.46 m, having an average locomotion speed of 1.31 m/s (see Table 3, case 3). The corresponding individual, in the case of torque-generating CPGs, reached a distance of 35.56 m walking at an average locomotion speed of 0.90 m/s. Furthermore, stable individuals capable of walking during the entire evaluation time of 40 seconds emerged quite early, around generation 25, compared to the case of torque-generating CPGs, where such results were obtained only after 800 generations. While the best individual using torque-generating CPGs was unable to maintain balance for more than 42 seconds, the best individual equipped with the angle-generating CPGs was able to walk without falling during a testing time of 20 minutes. The resulting gait is depicted in Fig. 9.

    Fig. 9. The best evolved gait pattern obtained using Method 2, with 12 active DOFs and with angle-generating CPGs. The details of the corresponding individual are shown on 4th row of Table 3.

    4.5 Discussion

    The results of the study described above demonstrate the feasibility of using artificial evolution for designing CPG networks, as well as optimizing the parameters of such networks, in order to achieve efficient and stable bipedal walking for a simulated robot.

  • Central Pattern Generators for Gait Generation in Bipedal Robots 301

    Both methods introduced here solved the problem of generating robust bipedal gaits. However, the first method showed some limitations in generating gaits with long-term stability. This drawback was a result of splitting up the evolutionary process into two parts. Since the hip2 and ankle joints were locked during the first phase of Method 1, stability in the frontal plane was only ensured by the torso. As a result, the gaits had to be less dynamic in order for the robot to maintain balance in the frontal plane. Thus, these gaits were less suitable for generalization to full 3D, i.e. with all joints unlocked. Yet, the gaits evolved with this method were more stable than the solutions found in Method 2, when torque-generating CPGs were used in the latter method. The frontal plane balance seems to be the most critical point when trying to maintain an upright body posture. Thus, more feedback, based on the inclination of the body, should preferably be introduced to restrain the motion of some critical joints like the hip2 and the ankle.The best results were obtained with angle-generating CPGs. The major contribution to the improved results was the better motion control of the hip2 and ankle joints, which were now easily restrained using the PD controller. However, a problem with this approach is that the individuals start to take larger and larger steps, as evolution progresses. In order to prevent the occurrence of such large steps, small perturbations should perhaps be introduced during the evaluation of the individuals, preferably in the frontal plane. This should force the robot to walk in a more cautious manner. The need for the supporting structure during the initial seconds indicates that the CPG network handling the gait cannot fully handle also the start-up of the walking cycle. Thus, an extra controller, based on CPGs or other approaches, should be used for the start-up sequence. It should then be tuned to enter the walking cycle and hand over control to a CPG network in a smooth way.

    5. Current and future directions

    Throughout the CPG experiments presented here, the connection paths of the feedback network were pre-defined. Since the feedback paths were specified in an ad hoc manner, there is certainly no guarantee that these paths are optimal. Therefore, a topic for further work would be to investigate whether the structure of the feedback network could be improved by applying an optimization method. Furthermore, the constraints that were added to the CPG networks, e.g. the restricted number of connections, could also be removed in order to evolve gait patterns from fully connected CPG networks instead.In the case of bipedal robot control in a dynamically changing environment, more advanced control of posture and balance would be required. Thus, investigating how different kinds of feedback, such as information regarding foot joint angles and foot-to-ground contact, can influence the quality of the generated gaits is another relevant topic, particularly in view of the importance of tactile sensory feedback in the case of human bipedal walking (Ogihara & Yamazaki, 2001). As shown in Fig. 6 above, the internal parameters of each CPG unit were pre-defined as well, in order to prevent the optimization procedure from promoting parameter values that generate unnaturally large steps, in which case the support could be exploited for reaching higher fitness values. However, in Section 4.4, it was shown that the support was only necessary during the first seconds of each evaluation run (see Case 3, Method 2). Thus, with the removal of the support after a few seconds of walking, the possibility of exploiting it was strongly reduced, making evolution of individual CPG parameters

  • 302 Humanoid Robots, New Developments

    possible. Results from preliminary experiments of that kind indicate similar performance of the evolved gaits (in terms of walking speed and stability) as that obtained in Case 3 of Method 2. However, an interesting difference in the evolution of the gaits was observed. In the experiments described in Section 4.4, the first stable gaits that emerged had basically the same walking pattern as the final gait evolved in the same run. The major contribution to the fitness increase was the increase in walking speed, rather than step length. However, in the approaches where the individual CPG parameters are also evolved, the first stable gaits that emerge have considerably smaller step length than the final gait evolved in that run. Another topic that requires further development concerns gait transition from, say, a walking gait to a running gait. Two preliminary experiments have recently been carried out. In the first case, a stop-and-go routine was accomplished by manually changing the bias values and time constants appropriately. In the second case, a complete and smooth gait transition was realized by abruptly switching control from one CPG network to another. However, those maneuvers required quite some manual tuning of the CPG parameters in order to work fully. In a robot intended for real-world applications, the transitions must be carried out in a more automatic fashion. Ultimately, the CPG-based controllers should, of course, be implemented in real, physical robots. Preliminary experiments with a small humanoid robot with 17 DOFs have recently been carried out (Wolff et al., 2007). In these experiments the robot's gait was optimized using an evolutionary approach, including structural modifications of the gait control program.

    6. References

    Brown, T. G. (1911). The intrinsic factors in the act of progression in the mammal, Proceedings of the Royal Society of London Series B, Vol. 84, pp. 308–319

    Brown, T. G. (1912). The factors in rhythmic activity of the nervous system, Proceedings of the Royal Society of London Series B, Vol. 85, pp. 278–289

    Brown, T. G. (1914). On the nature of the fundamental activity of the nervous centers: Together with an analysis of the conditioning of rhythmic activity in progression, and a theory of the evolution of function in the nervous system, Journal of Physiology, Vol. 48, pp. 18–46

    Duysens, J. & Van de Crommert, H. W. A. A. (1998). Neural control of locomotion, Part 1: The central pattern generator from cats to humans, Gait and Posture, Vol. 7, No. 2, pp. 131–141

    Ekeberg, Ö; Wallén, P.; Lansner, A.; Tråvén, H.; Brodin, L. & Grillner, S. (1991). A computer based model for realistic simulations of neural networks. I: The single neuron and synaptic interaction, Biological Cybernetics, Vol. 65, No. 2, pp. 81–90

    Ekeberg, Ö. (1993). A combined neuronal and mechanical model of fish swimming, Biological Cybernetics, Vol. 69, No. 5-6, pp. 363–374

    Endo, G.; Morimoto, J.; Nakanishi, J. & Cheng, G. (2004). An empirical exploration of a neural oscillator for biped locomotion control. In Proceedings of the 2004 IEEE International Conference on Robotics and Automation (ICRA’04).

    Featherstone, R. (1987). Robot Dynamics Algorithms. Kluwer Academic Publishers. Grillner, S. (1996). Neural networks for vertebrate locomotion, Scientific American, Vol. 274,

    pp. 64-69

  • Central Pattern Generators for Gait Generation in Bipedal Robots 303

    Grillner, S.; Wallén, P.; Brodin, L. & Lansner, A. (1991). Neuronal network generating locomotor behavior in lamprey: Circuitry, transmitters, membrane properties, and simulation, Annual Review of Neuroscience, Vol. 14, pp. 169–199

    Grillner, S.; Deliagina, T.; Ekeberg, Ö.; El Manira, A.; Hill, R.; Lansner, A.; Orlovsky, G. & Wallen, P. (1995). Neural networks that coordinate locomotion and body orientation in lamprey, Trends in Neurosciences, Vol. 18, No. 6, pp. 270–279

    Holland, J. (1975). Adaptation in Natural and Artificial Systems. The University of Michigan Press, Ann Arbor, MI, USA.

    Kling, U. & Székely, G. (1968). Simulation of rhythmic nervous activities. I. function of networks with cyclic inhibitions. Kybernetik, Vol. 5, No. 3, pp. 89–103

    Lewis, M.; Tenore, F. & Eienne-Cummings, R. (2005). CPG design using inhibitory networks. In Proc Int Conf on Robotics and Automation (ICRA’05), IEEE-RAS. Barcelona, Spain.

    Matsuoka, K. (1987). Mechanisms of frequency and pattern control in the neural rhythm generators. Biological Cybernetics, Vol. 47, No. 2–3, pp. 345–353

    Ogihara, N. & Yamazaki, N. (2001). Generation of human bipedal locomotion by a bio-mimetic neuro-musculo-skeletal model. Biological Cybernetics, Vol.84, No.1, pp. 1–11

    Ogino, M.; Katoh, Y.; Aono, M.; Asada, M. & Hosoda, K. (2004). Reinforcement learning of humanoid rhythmic walking parameters based on visual information. Advanced Robotics, Vol. 18, No. 7, pp. 677-697

    Ott, E. (1993). Chaos in Dynamical Systems, Cambridge University Press, Cambridge, UK. Pettersson, J. (2003). EvoDyn: A simulation library for behavior-based robotics, Department

    of Machine and vehicle systems, Chalmers University of Technology, Göteborg, Technical Report

    Reil, T. & Husbands, P. (2002). Evolution of central pattern generators for bipedal walking in a real-time physics environment. IEEE Transactions in Evolutionary Computation, Vol. 6, No. 2, pp. 159-168

    Righetti, L. & Ijspeert, A. J. (2006). Programmable central pattern generators: an application to biped locomotion control. In Proceedings of the 2006 IEEE International Conference on Robotics and Automation.

    Shepard, G. M. (1994). Neurobiology, chapter 20, pages 435-451. Oxford University Press, 3rd

    edition, New York. Taga, G.; Yamaguchi, Y. & Shimizu, H. (1991). Self-organized control of bipedal locomotion

    by neural oscillators in unpredictable environment, Biological Cybernetics, Vol. 65, pp. 147–159

    Taga, G. (2000). Nonlinear dynamics of the human motor control – real-time and anticipatory adaptation of locomotion and development of movements. In Proc 1st

    Int Symp on Adaptive Motion of Animals and Machines (AMAM’00).Takanishi, A.; Ishida, M.; Yamazaki, Y. & Kato, I. (1985). The realization of dynamic walking

    by the biped walking robot WL-10RD, Proceedings of the International Conference on Advanced Robotics (ICAR'85), pp. 459-466

    Van Wezel, B. M. H.; Ottenhoff, F. A. M. & Duysens, J. (1997) Dynamic control of location-specific information in tactile cutaneous reflexes from the foot during human walking. The Journal of Neuroscience, Vol. 17, No. 10, pp. 3804-3814

    Wolff, K.; Pettersson, J.; Herali , A. & Wahde, M. (2006). Structural evolution of central pattern generators for bipedal walking in 3D simulation. In Proc of the 2006 IEEE International Conference on Systems, Man, and Cybernetics, pp. 227-234

  • 304 Humanoid Robots, New Developments

    Wolff, K.; Sandberg, D. & Wahde, M. (2007). Evolutionary optimization of a bipedal gait in a physical robot. Submitted to: IEEE Transactions on Robotics.

    Zehr, E. P. & Duysens, J. (2004). Regulation of arm and leg movement during human locomotion., Neuroscientist, Vol. 10, No. 4, pp. 347–361

  • Humanoid Robots: New DevelopmentsEdited by Armando Carlos de Pina Filho

    ISBN 978-3-902613-00-4Hard cover, 582 pagesPublisher I-Tech Education and PublishingPublished online 01, June, 2007Published in print edition June, 2007

    InTech EuropeUniversity Campus STeP Ri Slavka Krautzeka 83/A 51000 Rijeka, Croatia Phone: +385 (51) 770 447 Fax: +385 (51) 686 166www.intechopen.com

    InTech ChinaUnit 405, Office Block, Hotel Equatorial Shanghai No.65, Yan An Road (West), Shanghai, 200040, China

    Phone: +86-21-62489820 Fax: +86-21-62489821

    For many years, the human being has been trying, in all ways, to recreate the complex mechanisms that formthe human body. Such task is extremely complicated and the results are not totally satisfactory. However, withincreasing technological advances based on theoretical and experimental researches, man gets, in a way, tocopy or to imitate some systems of the human body. These researches not only intended to create humanoidrobots, great part of them constituting autonomous systems, but also, in some way, to offer a higherknowledge of the systems that form the human body, objectifying possible applications in the technology ofrehabilitation of human beings, gathering in a whole studies related not only to Robotics, but also toBiomechanics, Biomimmetics, Cybernetics, among other areas. This book presents a series of researchesinspired by this ideal, carried through by various researchers worldwide, looking for to analyze and to discussdiverse subjects related to humanoid robots. The presented contributions explore aspects about robotichands, learning, language, vision and locomotion.

    How to referenceIn order to correctly reference this scholarly work, feel free to copy and paste the following:

    Almir Heralic, Krister Wolff and Mattias Wahde (2007). Central Pattern Generators for Gait Generation inBipedal Robots, Humanoid Robots: New Developments, Armando Carlos de Pina Filho (Ed.), ISBN: 978-3-902613-00-4, InTech, Available from:http://www.intechopen.com/books/humanoid_robots_new_developments/central_pattern_generators_for_gait_generation_in_bipedal_robots

  • © 2007 The Author(s). Licensee IntechOpen. This chapter is distributed under the terms of theCreative Commons Attribution-NonCommercial-ShareAlike-3.0 License, which permits use,distribution and reproduction for non-commercial purposes, provided the original is properly citedand derivative works building on this content are distributed under the same license.

    https://creativecommons.org/licenses/by-nc-sa/3.0/