On the dynamics of a quadruped robot model with impedance control: Self-stabilizing high speed trotrunning and period-doubling bifurcations The MIT Faculty has made this article openly available. Please share how this access benefits you. Your story matters. Citation Lee, Jongwoo, Dong Jin Hyun, Jooeun Ahn, Sangbae Kim, and Neville Hogan. “On the Dynamics of a Quadruped Robot Model with Impedance Control: Self-Stabilizing High Speed TrotRunning and Period-Doubling Bifurcations.” 2014 IEEE/RSJ International Conference on Intelligent Robots and Systems (September 2014). As Published http://dx.doi.org/10.1109/IROS.2014.6943260 Publisher Institute of Electrical and Electronics Engineers (IEEE) Version Author's final manuscript Accessed Mon May 23 11:08:46 EDT 2016 Citable Link http://hdl.handle.net/1721.1/98282 Terms of Use Creative Commons Attribution-Noncommercial-Share Alike Detailed Terms http://creativecommons.org/licenses/by-nc-sa/4.0/ On the Dynamics of a Quadruped Robot Model with Impedance Control: Self-stabilizing High Speed Trot-running and Period-doubling Bifurcations* Jongwoo Lee1 , Dong Jin Hyun2 , Jooeun Ahn1 , Sangbae Kim2 , and Neville Hogan1 Abstract— The MIT Cheetah demonstrated a stable 6 m/s trot gait in the sagittal plane utilizing the self-stable characteristics of locomotion. This paper presents a numerical analysis of the behavior of a quadruped robot model with the proposed controller. We first demonstrate the existence of periodic trot gaits at various speeds and examine local orbital stability of each trajectory using Poincarè map analysis. Beyond the local stability, we additionally demonstrate the stability of the model against large initial perturbations. Stability of trot gaits at a wide range of speed enables gradual acceleration demonstrated in this paper and a real machine. This simulation study also suggests the upper limit of the command speed that ensures stable steady-state running. As we increase the command speed, we observe series of period-doubling bifurcations, which suggests presence of chaotic dynamics beyond a certain level of command speed. Extension of this simulation analysis will provide useful guidelines for searching control parameters to further improve the system performance. I. INTRODUCTION Developing dynamic quadruped machines has been an active field of research in robotics to exploit potential advantages of the legged locomotion: enhanced mobility, versatility and maneuverability in unstructured environments [1]. Even though recent developments such as LittleDog [2], BigDog [3], Tekken [4], and Wildcat [5] have shown successful demonstrations of dynamic locomotion, highly dynamic mobility observed in animals still outperforms what these robots have achieved. For instance, few quadruped robots in publications has shown Froude number (Fr)1 of greater than 2 [7], which is significantly smaller than that of animals [8]. Robotic researchers have improved their understanding of the complex dynamics of legged locomotion by learning insights from biomechanical studies. Achieving highlydynamic locomotion of a quadruped robot is challenging due to the inherent complexity of locomotion mechanics (highorder, nonlinear hybrid dynamics with inevitable ground *This work was partly supported by the Defense Advanced Research Program Agency M3 program 1 Authors are with the Eric P. and Evelyn E. Newman Laboratory for Biomechanics and Human Rehabilitation Laboratory, the Department of Mechanical Engineering, Massachusetts Institute of Technology, Cambridge, MA, 02139, USA. 2 Authors are with the Biomimetic Robotics Laboratory, the Department of Mechanical Engineering, Massachusetts Institute of Technology, Cambridge, MA, 02139, USA. Corresponding email: sangbae@mit.edu 1 Fr represents ratio between centripetal force and gravitational force. Due to the dynamic similarity found in animals, Fr has been widely used as a metrics of speed in both animals and robotics [6]. impact), which can be resolved by proper use of intuition obtained from biological observation. In particular, the self-stabilizing property2 has been investigated, which allows stable locomotion without neuronal feedback [9]. A canonical model of running, ‘Spring Loaded Inverted Pendulum (SLIP)’, showed that self-stability may rest on properly adjusted leg compliance [10]. Ringrose simulated this self-stabilizing behavior in monopod, biped, and quadruped models with leg compliance at a fixed running speed [11]. Several machines employed similar control strategies that hold such self-stablizing characteristics and successfully demonstrated stable gaits [7], [12], [13]. Previously, we developed a controller that consists of 1) a gait pattern modulator to coordinate four legs, 2) a leg trajectory generator to modulate interaction between the robot and the ground, and 3) a leg controller to create virtual leg compliance using impedance control [14], which is inspired by SLIP model. The MIT Cheetah with the controller recently achieved stable trot-running up to 6 m/s (corresponding Fr ≈ 7.34) in the sagittal plane without attitude feedback [15]. This experiment supports our hypotheses that the self-stabilizing dynamic locomotion can be achieved with fixed leg compliance and properly designed trajectory of equilibrium points. To address its inherent complexity, dynamics of legged locomotion have been analyzed using numerical simulation. Although rigorous stability criteria of legged machine is still in question, Poincarè return map analysis of periodic motion is widely used to evaluate the stability of legged locomotion, from the SLIP model [16] to more elaborate models which entail specific controller and configuration of quadrupeds [11], [17]. In legged mechanics, multiple step/stride-periodic gait is often observed, depending on the control/environment parameters. Goswami analyzed period-doubling bifurcations leading chaotic motion of compass biped model by using Poincarè analysis [18]. This paper presents a numerical analysis on the dynamic behavior of a 11 degrees-of-freedom quadruped robot model with the previously developed controller. Discussion of the self-stabilizing behavior of the system at a wide range of speeds is one focus of this paper. We examine periodic trot gaits at various speeds and show their local orbital stability using the Poincarè analysis. Convergence from large 2 Self-stabilizing locomotion in sagittal plane in robotics is defined as the ability which can sustain steady periodic locomotion without direct control efforts to stabilize the body attitude/height. perturbation to stable limit cycles at various speeds indicates applicability of the controller to real machines. Based on this result, gradual acceleration of the robot was achieved in a stable manner. The paper also focuses on the perioddoubling bifurcation and possible chaotic behavior at high speeds, which is a characteristic of the trotting controller we developed. This simulation study suggests a way to find the maximum speed which ensures one stride periodic behavior. We anticipate that further analysis on the dynamic behavior may suggest a guideline for choosing control parameters to enhance the system performance. This paper is organized as follows: Section II and Section III briefly describe a simulation model and the proposed controller. Section IV exhibits interesting simulation results. Section V discusses behavior of the system, followed by conclusion and future works in Section VI. II. MULTI-BODY DYNAMIC SIMULATOR A. Modeling a quadruped robot A planar, rigid, 11 degrees of freedom (DoF) quadruped robot model is constructed to describe dynamic behavior of the model in the sagittal plane (Fig.1). Model parameters are obtained from Solidworks model of the MIT Cheetah [15]. The configuration of each leg can be described by 2 generalized coordinates qi,1 , qi,2 , with leg index i ∈ {F R, F L, BR, BL}. The proximal and the distal segments of each leg are designed to be parallel (qi,1 = qi,3 ). Three coordinates describe position ((x, y)) and orientation (qp : pitch) of the model with respect to the inertial reference frame. We assumed that the robot interacts with the flat ground with point feet, and the interaction follows the Coulomb friction model (friction coefficient µ). yb Back body-fixed! coordinate yf x y Local ! coordinate qp Front body-fixed! coordinate xf xb CoM qi,1 Angular! direction qi,2 BR Radial ! direction FL Virtual Leg qi,3 BL FR Fig. 1. A quadruped robot model. The generalized coordinate of the model is q := [qp , qF R,1 , qF R,2 , · · · , qBL,1 , qBL,2 , x, y]T ∈ <11 . The virtual leg is also depicted. B. Hybrid dynamics and Lagrange multiplier method Dynamics of the model changes depending on the state of each foot (stick, forward/backward slip, and no interaction). Lagrange multiplier method [17], [19], [20] is adopted 1) to construct equations of motion for each state and 2) to simultaneously monitor vertical components of the ground reaction forces and the height of each foot, in order to detect transition between each dynamic state. X D(q)q̈ + C(q, q̇)q̇ + G(q) = B(q)u + Ji (q)T Fi,ext (1) i D(q), C(q, q̇)q̇, G(q) and B(q) are the inertial matrix, Coriolis and centrifugal terms, gravitational torque vector, and the input matrix, respectively. u ∈ <8 is a vector of i (q) actuating torques at each joint. Ji (q) = ∂p∂q is a Jacobian matrix of a position vectors of each foot with respect to the inertial frame. Ji (q)T Fi,ext transforms the ground reaction forces Fi,ext := [Fi,T , Fi,N ]T from the Cartesian into the T T , Ji,N ] and Fi,ext are non-zero if leg joint space. JiT = [Ji,T i is in contact with the ground. Kinematic constraints are imposed in normal direction to prevent the ground-contact leg i from penetrating the ground (2). Either kinematic or force constraints are imposed in tangential direction, depending on the state (stick/slip) of corresponding leg (3). Equations (1)-(3) are solved for q̈ and Fi,ext . Ji,N q̈ + J˙i,N q̇ Ji,T q̈ + J˙i,T q̇ = 0 = or 0 (2) |Fi,T | = µ|Fi,N | (3) Impact between legs and the ground is assumed instantaneous and inelastic. Algebraic impact law is obtained by integrating (1) with appropriate constraints [21]. Detailed description of the modelling algorithms is presented in [22]. III. HIERARCHICAL CONTROLLER USING SIMPLE IMPEDANCE CONTROL Among biological observations, we noted 1) the existence of the central pattern generator for multiple leg coordination [23], 2) equilibrium-point hypothesis3 which describe animals’ motion mechanism [24], and 3) exploitation of the leg compliance for locomotion [25]. Inspired by the above observations, we developed a controller for achieving stable and high-speed trot-running, creating virtual leg compliance. A gait pattern modulator, a leg trajectory generator and a leg impedance controller are hierarchically structured as shown in Fig.2. The detailed description of the controller is presented in [15]. A. Control framework The gait pattern modulator generates swing/stance-phase signals to four legs to create a single stride according to the command speed. The signal generation is activated by ground touchdown of a reference leg (Front right leg). Each swing/stance signal increases from 0 to 1 linearly over desired swing time T̂sw and desired stance time T̂st , respectively. Target gait pattern is imposed by having fixed time-normalized phase difference between the reference leg and the other legs. The command speed can be modulated 2L by changing the desired stance time by vd = T̂span . st 3 Animals might exert proper force on the environment by controlling the equilibrium point of their limb virtual compliance, which penetrates into the contact surface. Structure of the control algorithm[1] Operator Desired Speed Target Gait Pattern Proposed ideas High-level Controller Leg Trajectory Generator (Spatial property) Gait Pattern Modulator (Temporal property) Programmable virtual leg compliance Foot-end Equilibrium Points Stride**-to-stride pattern signal Leg Controller (Impedance control) Motor Currents Adjustable penetration depth for stance state MIT Cheetah Encoder Signals Reference Leg Touchdown detection Terminology Definition T̂st T̂sw BF Desried stance time Desired swing time Bézier control points Half of the stroke length Penetration depth of front legs Reference point of front legs Bézier control points Half of the stroke length Penetration depth of back legs Reference point of back legs radial stiffness of each leg radial damping of each leg angular stiffness of each leg angular damping of each leg Lspan,F δF P0,F BB Lspan,B δB P0,B Kp,r Kd,r Kp,θ Kd,θ Touchdown feedback of the reference leg Low-level Controller TABLE I A SET OF CONTROL PARAMETERS DESIGNED FOR THE SIMULATION Value Varies according to vd 0.25 seconds Shown in [15] 170 mm 35 mm (0 mm, -500 mm) Shown in [15] 170 mm 10 mm (0 mm, -500 mm ) 5,000 N/m 100 Ns/m 100 Nm/rad 4 Nms/rad [1] Hyun, Dongjin, Seok, Sangok, and Lee, Jongwoo. “High Speed Trot-running: Implementation of a Hierarchical Controller using Proprioceptive Impedance Control on the MIT Cheetah" " The International Journal of Robotics Research , revised virsion, awating for EIC decision.# Fig. 2. A schematic structure of a developed controller. IV. SIMULATION RESULTS As shown in Fig. 3, the swing leg trajectory is designed by using a 12-points Beziér curve, and the stance leg trajectory is designed by a sinusoidal shape with a tunable amplitude which determines the penetration depth of equilibrium point into the ground. Four legs have identical swing trajectory, but the virtual ground-penetration depth δF /δB for the stance trajectories of the front/back legs are set to different values. Each foot has virtual leg compliance created by simple impedance control. The virtual impedance gains commanded by the controller are listed in Table I. 0 Kd,✓ \ Kp,✓ −0.2 y−axis (m) Kp,r Kd,r Protraction −0.4 −0.5 Follow throw P0 Swing leg retraction 2Lspan −0.3 Fig. 3. −0.2 −0.1 0 0.1 x−axis (m) A. Local orbital stability of limit cycles at various speeds Steady state locomotion is examined using Poincaré analysis. We define the Poincaré section as the instants when the reference leg detects ground touch down. xk+1 = P (xk ). −0.1 −0.3 The controller is implemented in the dynamic simulator introduced in Section II to analyze the performance of the system: stability analysis of limit cycles, acceleration test, and observation of period-doubling bifurcation phenomenon. The analyses are all conducted in MATLAB R2013a (Mathworks Inc.). Equations of motion are numerically integrated using ode45 solver with absolute/relative tolerance of 1e-6. 0.2 0.3 Trajectory of equilibrium points for virtual leg. B. Control strategy Referring to biological observations [8], [26], [27] and preliminary experiments performed on the MIT Cheetah [28], we propose to predetermine all the control parameters but δF/B . We first adjust δF/B to minimize the body height variation at a target speed, 4 m/s in the simulation. With these determined δF/B , we simply change vd to accelerate/decelerate the robot model. Interestingly, with the fixed set of control parameters in Table I, the robot model can achieve stable trot-running in a broad range of speeds. In the following sections, we address dynamic characteristics of this self-stabilizing locomotion at various speeds. (4) The return map is defined in 21 dimensional space, all states of the 11 DoF robot model except horizontal displacement which is ignorable coordinate. Among the 21 state variables, we visualize the return map of pitch and height in Fig.4. The data are obtained from 20 seconds of simulation with arbitrary initial conditions. In each graph, we can find a fixed point x∗ that satisfies (5). Existence of fixed points demonstrates existence of periodic motion at each speed. Each periodic trajectory is visualized by projecting it onto pitch and height phase portraits in Fig.5. x∗ = P (x∗ ). (5) The local orbital stability of the limit cycle4 is equivalent to the local stability of the fixed point. If all eigenvalues (Floquet multipliers: λ) of the linearized mapping fuction about the fixed point (monodromy matrix, ∂P ∂x x∗ ) have magnitudes less than one, the fixed point is locally stable, such that perturbation ∆xk = xk − x∗ dissipates over time [29]. ∂P ∆xk+1 = ∆xk (6) ∂x ∗ x 4 A limit cycle is a simple, closed and isolated trajectory in phase space which attracts nearby trajectories as time goes to infinity or negative infinity. The term ‘limit cycle’ is used as we found all of these conditions are met. −25 −5.8 −3.7 −4 −3.8 −3.6 Pitchk[deg] −3.4 −4.5−22 −24.5 −5.5 −24 −23.5 −5 −23 −22.5 Pitch [deg] dPitchk/dt[deg/s] k −3.2 −4.75 −6.495 −4.75 0.5433 0.5466 0.5016 0.5082 Height [m] Height k [m] 0.550.515 −35 m/s 0.5433 0.5466 0.55 Height map of [m] the body pitch −30 4 m/s /dt[m/s] Pitchk+1 [deg] dPitch /dt[deg/s] Heightk+1[m] k+1 Height [m] k −0.15 2 m/s k k = 0.6977 Im 0.4 0.2 0.2 0 Im k+1 k+1 dHeight Heightk+1[m] 0.6 0.4 k k −0.6 k 30 0.4 20 0 0.5016 −0.2 −0.4 0.495 0.495 −0.8 −1 0.46 10 0 0.47 0.5016 0.5082 Height [m] 0.48 0.49 0.5 0.51 k0.52 Height (m) a) Height 0.53 −0.35 −30 0.515 0.54 0.55 0.56 −0.3 0.4893 −10 −20 2 m/s 3 m/s 4 m/s 5 m/s −0.6 1 −0.25 −6 −5 −4 Pitch (deg) −3 −2 −1 b) Pitch 0 0.5 4 m/s k k1 = 0.5126 1 0.6 0.6 0.4 0.4 0.2 0.2 0 0 0.5 5 m/s −0.1 0.4894 1 −0.4346 k k1 = 0.7461 −0.4348 −0.435 −0.4352 0 −0.4354 −0.2 −0.3 −0.2 0.4893 0.4893 /dt[m/s] dHeight[m] Height k k −0.4358−0.4356−0.4354−0.4352−0. dHeightk/d −0.4 −0.6 −0.8 −0.8 −1 −1 Fig. 5. Projection of limit cycles at various speeds onto a) height phase portrait, and b) pitch phase portrait. −0.4344 −0.5 Re 0.8 −0.6 −1 −0.5 0 0.5 Re Fig. 6. 1 −1 −0.5 0 0.5 1 Re Floquet multipliers at various speeds. B. Convergence from wide-range of perturbation Local orbital stability only guarantees convergence of motion to the limit cycle from small deviation. In order to implement the controller on a real machine, stability against more realistic range of perturbation should be investigated. Therefore, we demonstrate the dynamic behavior of the robot model under large initial perturbations on three states such as the body pitch, height, and speed. As shown in Fig.7, despite state perturbations more than 5 times of steady periodic motion variability, the model behavior converges to each limit cycle. This convergence from wide-range of perturbation suggests that the designed controller is applicable to a real machine. −11.1 −11 dPitchk/dt[d −0.2 dHeight −0.4358−0.4356−0.4354 −1 1 0.8 −0.2 −0.4 0.4892 −0.4−0.4 0.4892 −40 −50 −7 Im 0.2 −11.14 −11.12 −0.4352 −0.25 −0.25 −0.4354 Re 4.0 0.4893 −0.2 −0.1 0.4894 −1 unit circle −0.5 Im 40 dPitch/dt (deg/s) [m] k+1 Height dHeight/dt (m/s) dHeightk+1/dt[m/s] Heightk+1[m] 0.8 −0.3 −0.2 0.4893 0.4893 /dt[m/s] dHeight Heightkk[m] 0 −0.8 −1 0.5082 0.6 −11.11−0.2−0.435 −0.6 kk −0.8 −1 −0.4346 −11.09 −0.4348 −11.1 −0.4 −0.4 −0.15 −11.07 −0.2 k pitch −11.05 −0.4344 −0.1 −11.06 −11.08 k k1 = 0.5873 −0.15 3 m/s 0.8 0.6 −0.2 50 1 −0.25 The dotted lines and−11.04 arrows −0.25 1 0.8 k −0.25 −11.03 0.4893 −0.2 −0.34 −20 0.548 −0.2 −0.345 0.4893 −6.505 k height /dt[deg/s] −0.15 −15 −6.5 −0.335 k k+1 0.5415 0.548 −0.33 0.555 −0.35 −0.34 −0.32 5 m/s Height [m] line of x dHeight crosses a diagonal k /dt[m/s] k+1 = xk . 1 The Floquet multipliers of 0.5016 each limit cycle at various 0.4893 −0.3 −0.35 −25 −0.25 speeds are shown in Fig.6. All the Floquet multipliers stay 0.515 −0.35 −0.355 0.5415 inside unit circle, therefore we can conclude local orbital sta0.5433 −0.3 −30 0.51 −5.35 −0.4 −0.36 0.495 −6.51 0.4893 0.4892 −4.95 −4.75 −35 −25 −20 −6.5−15 −10 −6.51 −30 −6.505 −6.495 −5 0.495 0.5016 0.5082 0.515 −0.4 0.4892 bility −5.35 of each−5.15 limit cycle. Only 5 eigenvalues are Pitch [deg] dPitch[deg] /dt[deg/s] Pitch Height [m] noticeably −0.35 −0.365 0.505 different from zero since 16 states corresponding to motion 0.535 0.54 −0.4 0.535 0.5415 0.548 −0.33 0.555 0.54 0.5433 0.5466 0.55 −0.36 −0.35 −0.34 −0.32 0.5 0.505 0.515 0.535stabilized 0.54 −0.35 −0.3 −0.25 −0.2 −0.15 −0.1 −0.05 Height [m] Height [m],0.525 dHeight /dt[m/s] 0.4892 of legs (qi,10.51 , q̇i,1 , q0.52 q̇i,20.53 ) are by local impedance−0.45 −0.4 i,2 Height [m] /dt[m/s] 0.4893 dHeight 0.4892 0.4893 0.4894 Heightk[m] 0.515 0.4894 controller. −0.1 0.52 0.5466 −5.15 k+1 kk 0.4894 −0.1 50.535 m/s −0.36 −10 dHeightk+1/dt[m/s] Heightk+1[m] [deg] Heightk+1[m] Pitch k+1 0.525 k k −6.4950.535 0.5082 −0.15 −11.09 −26 −6.505 −6.495 −5 −25 −20 −6.5 −15 −10 −11.1 Pitchk[deg] dPitch /dt[deg/s] −25 −28 −0.355 k 0.5415 −11.11−0.2 −4.6 0.535 −0.4 −0.36 −6.51 0.4892 −4.6 −30−11.14 −11.12 −25 −24.5 −24−4.467 −23.5 −23−4.334 −22.5 −22 −4.2 −21.5 −21 0.535 −0.36 −0.35 0.4893 −0.34 −0.33 −0.32 0.548 0.4893 −6.505 −15 −6.5 0.4892 0.4894 −0.40.5415 −0.3 −0.2 0.555 −0.1 −30 −6.51 −25 −20 −10 −5−6.495 Pitch [deg] dPitchk/ dPitch /dt[deg/s] dHeight /dt[m/s] Height [m] Pitch k k [deg] [m] /dt[m/s] dHeight dPitch /dt[deg/s] k kHeight −0.365 Fig. 4. Return and height at various speeds. Each return map k 0.555 illustrate convergence to the fixed points. −0.1 0.4894 0.53 −4.95 0.55 −24−11.08 −0.355 0.4893 0.5415 −30 −0.3 −0.36 −6.51 −35−6.51−30 −0.35 −0.365 dHeight −5.15 −4.95 Pitchk[deg] −22−11.07 /dt[m/s] 0.548 −0.345 −4.4667 −6.505 −24.5 −0.35 −25 −30 k+1 −0.34 −24 −20 k 0.515 −28 −11.04 −18 −11.05 −20 −0.1 −11.06 /dt[m/s] −5.1 −26 dHeightk+1/dt[m/s] 0.54 0.495 0.54 0.495 −3.05 −24 −16−11.03 dPitchk+1/dt[deg/s] −3.3 −6.5 −4.3334 −0.335 −23.5 −15 5 m/s −0.1 −15−6.5 3 m/s −0.335 −0.15 −0.34 −20 0.4893 0.548 −0.2 −0.345 −6.505 −0.35 −25 −0.25 dPitch /dt[deg/s] k+1 dPitch /dt[deg/s] −10 k+1 −4.75 −3.55 −5.2 Pitch [deg] −5.15 k Pitchk[deg] 0.4894 0.555 5 m/s 3 m/s dHeight −3.8 −5.25−3.8 −5.25 −22 −0.320.546 dHeightk+1/dt[m/s] 0.5433 −20 −10 −23 0.555 −5.35 −5.35 0.54 4 0.54 −6.495 −4.2 −22.5 0.5016 0.5433 −5.2 k k+1 Heightk+1Pitch [m] Heightk+1[m] k+1[deg] Heightk+1[m] 0.5466 −3.55 0.546 42m/s m/s 0.5082 0.5466 −5.15 −3.3 Pitch [deg] Pitchk+1 [deg] k+1 0.55 −5.15 0.55 −4.95 0.545 0.5455 Heightk[m] dHeight dPitch /dt[m/s] /dt[deg/s] k+1 Pitch k+1 [deg] Heightk+1[m] k+1 dHeightk+1/dt[m/s] Height [m] 0.515 44 2m/s m/s m/s −3.05 −0.355 −25 −300.542 −6.51 −0.36 −6.51−30 −6.505 −6.495 −5 −25 −20 −6.5 −15 −10 −4.6−35 0.541 −24 Pitch [deg] −22 −21.5 −21 −24.5 −23.5 −23 −22.5 −4.6 −4.467 −4.334 dPitch kk/dt[deg/s]−4.2 −0.365 dPitch /dt[deg/s] Pitch [deg] −4.6 0.54 −4.6 −24.5 −24−4.467 −23.5 −23−4.334 −22.5 −22 −4.2 −21.5 −21 0.54−0.35 0.542 0.544 −0.34 −0.33 −6.495−0.36 dHeightkHeight /dt[m/s]k[m] Pitch [deg] dPitch /dt[deg/s] k k+1 −3.05 −25 −6.505 −4.4667 0.543 −0.35 −24.5 −25 k k dPitchk+1/dt[deg/s] −5.1 −3.55 −3.3 Pitchk[deg] 0.5445 −4.750.5445 −4.75 −3.05 dPitch /dt[deg/s] Pitch k+1 [deg] k+1 dHeight /dt[m/s] k+1 Pitchk+1[deg] Height [m] −3.8 −3.8 −5.15 −4.95 −3.55Pitch [deg] −3.3 Pitchkk[deg] −4.4667 −24.5 −18 −200.544 dHeightk+1/dt[m/s] Heightk+1[m] −5.35 −5.35 −3.8 −3.8 −24 −0.345−24 −16 3 m/s dPitch 0.545 −4.3334 −23.5 dPitch /dt[deg/s] Pitch k+1 [deg] k+1 −5.15 −3.55 dHeightk+1/dt[m/s] dPitch /dt[deg/s] Pitch k+1 [deg] k+1 −23 0.5455 −3.55 0.546 −23 −15−6.5 −0.335 −4.3334 0.545 −23.5 −0.34 3 m/s Heightk+1[m] −3.3 k+1 Pitch [deg] Heightk+1 [m] k+1 Pitch [deg] Pitch k+1 [deg] −3.3 −4.2 −22.5 2 m/s −4.95 dPitch /dt[deg/s] Pitch [deg] k+1 k+1 0.546 2 m/s −3.5 −21 −4.2 −22.5 −10 −3.05 −3.05 −4 −21.5 C. Gradual acceleration Recovery from large perturbation in speed to the stable limit cycle shown in Fig.7 implies that the controller can accelerate/decelerate the robot model as shown in Fig. 8. The robot model is commanded to accelerate gradually from a speed of 1 m/s up to 6 m/s during 35 seconds, then to maintain its speed. Up to 5.5 m/s, variation in both height and pitch gets smaller as stride frequency increases. However, we can observe larger variability at higher speeds. To understand the behavior of the model at high speeds, we examine the Poincarè map. 6.2 4 2 k+1 2 7 7 5 1 a) 3 2 2 3 Magnify Speed 3 b) 0 5.9 5 1 a) 5.8 5.7 5.6 2 6 5.8 a) 7 3 5.7 5.6 Period-1 Period-2 6 6 25.4 5.3 5.3 k −5.5 −5.5 Pitchk+1[deg] 1 0.48 /dt[deg/s] −10 −15 −15 5.62 −10 −15 5.62−10 −20 −20 5.57 −30 −35 −25 −25 −25 5.57 −30 5.57 −30 5.57 −35 −30 −15 5.62 −20 −25 5.57 −30 −20 −15 5.62 −25 −20 5.57 −30−25 k+1 −25 −20 k+1 5.62 −15 5.62 k+1 −20 −10 −15 −355.57 −30 k+1 − 5 5.4 −20 5.− −25 −30 −25 − −35 −30 − −40 −35 − −40 −30 −25 −30 −35 −40 −30 dHeightk+1/dt[m/s] 5.67 −10 −5 − −15 −20 k+1 0.48 −15 5.62 Speedk+1 [m/s] dPitch /dt[deg/s] −5 k+1 0.48 −5 −0.3 −20 dPitchk −0.3 − −0.35 −0.3 −0 −0.4 −0.35 − −0.35 dHeightk+1/dt[m/s] 0.48 k+1 Heightk+1[m] 0.48 −10 Speedk+1 [m/s] dPitch /dt[deg/s] k+1 Speed /dt[deg/s] [m/s] dPitch k+1 0.48 0.49 0.49 −5 −10 Speedk+1 [m/s] dPitch /dt[deg/s] 0.48 −7.5 0.49 0.49 −20 −5.5 Speedk+1 [m/s] dPitch /dt[deg/s] −7.5 Heightk+1[m] −7.5 0.49 k+1 −6.5 [m] −6.5 0.49 Heightk+1[m] −7.5 Heightk+1[m] −7.5 k −7.5 −6.5 Pitchk[deg] 0.5 0.49 Height Heightk+1[m][m] k+1 −7.5 −5.5 −6.5 Height −7.5 −6.5 k 0.5 Pitchk+1[deg] Pitch [deg] k+1 −6.5 −6.5 Pitchk+1[deg] Pitchk+1[deg] −5.5 Pitchk+1[deg] −6.5 Pitchk+1[deg] Pitchk+1[deg] −5.5 dPitch k k −7.5 Speedk+1 [m/s] dPitch /dt[deg/s] Speed [m/s] dPitch /dt[deg/s] k+1 k+1 Pitchk+1[deg] k /dt[deg/s] Cannot define periodicity−15 −8.5 −6.5 − −10 −10 −7.5 −6.5 The transient behavior of −8.5 the period-two gait is−5.5 shown in −8.5 Pitch [deg] −8.5 −8.5 −7.5 −6.5 −5.5 −8.5 −7.5 −6.5 −5.5 Pitch [deg] −8.5 height, Fig.10. The pitch, and speed return map show clear −8.5 −8.5 Pitch [deg] −8.5 −7.5 −6.5 −5.5 −8.5 −7.5 −6.5 −5.5 −8.5 −7.5 −6.5 −5.5 [deg] Pitch [deg] Pitch [deg] evidence of a period-twoPitchgait. The states of the model at two points of (7), and eventually 5.67 −5.5each stride, xk , converge to 0.5 −5 5.67 0.5 5.67 0.5 −5 −5 repeats themselves every two strides. −105.67 5.67 0.5 5.67 −5.5 0.5 −8.5 −8.5 −5.5 Period-4 −7.5 dPitch −7.5 Spe −5 −6.5 Pitchk+1[deg] Pitchk+1[deg] Pitchk+1[deg] Pitchk+1[deg] −7.5 75.7 −5 1 k −5.5 5.6 Fig. 9. Plot a) shows the return map of speed. Plot b) magnifies the high- 5.4 −6.5 −6.5 speed region. Period-one, period-two, and period-four gaits are represented 0 as black, blue, and−6.5green −6.5 crossings,−6.5 respectively. At even higher3 speed, 4 5.3 0 0 1 2 0 1 2 3 −7.5 4 5 6 7 (m/s) 5.3 periodicity is not defined (red crossings). Period-1Speedkfor Speedk (m/s)The simulation was conducted −5.5 −7.5 Period-2 −5 100 - 180 strides, −7.5 and the last 32 strides are plotted in the graph. Pitchk+1[deg] Fig. 7. Transient and steady behavior of the system at various command speed with initial large perturbations on the body pitch, height, and speed. 5.6 5.5 6 5.5 5.6 k −5.5 3 7 Spee 5.7 Cannot define 5.3 periodicity 7 35.7 5.8 5.9 4 6 5.36.1 6.2 5.4 5 6.3 Speed (m/s) Speed (m/s) k 5.5 2 6.3 5.4 Period-4 2 5.4 5 71 6 5.8 6.2 /dt[deg/s] 0 3 3 4 0 4 5 Speed (m/s) −5.5 Speed (m/s) −5.5 k 6.1 k k+1 a) 5.9 /dt[deg/s] 5 5.6 0 0 1 3 4 5 5.3 5.3 5.4 5.5 5.6 Speedk (m/s) 5.7 Speed5.8(m/s) 5.9 6 b) 5.5 5.4 k+1 1 3 4 Speedk (m/s) −5.5 2 5.4 5 b) dPitch 0 2 1 6 1 5.7 dPitch 2 1 2 6.1 5.3 3 4 5.3 Speedk (m/s) 7 5.5 46 5.9 5.5 0 2 dHeightk+1/dt[m/s] 1 a) 3 0 6 5.8 dHeightk+1/dt[m/s] 0 3 k+1 4 Speed (m/s) Speed (m/s) k+1 2 0 k+1 0 5.4 5.9 2 6.1 1 0 4 (m/s) 6.2 1 5 4 k 5 6.3 1 1 5.5 b) 6.2 6.1 6 2 0 6.3 3 6 Speedk+1 (m/s) 5a) 1 0 5.6 Magnify 6.2 6 2 Speed Speed (m/s) (m/s) k+1 6.3 1 Speedk+1 (m/s) 1 4 6 2 Magnify Speedk+1 (m/s) 3 0 Speedk+1 (m/s) 0 7 4 6.1 6 5 4 a) 3 target6 speed increases. 4 Speedk+1 (m/s) Speedk+1 (m/s) a) Speed 7 5 Speedk+1 (m/s) 6 (m/s) 6 −0.45 −0.4 −0 −0.45 −0.5 −0.45 − −0.5 −0.55 −0.4 −0.55 −0.5 −0 −0.55 − −35 −0.6 −0.6 −40−35 −35 −40 −35 −40 −40 5.52 5.52 −8.5 −8.5 −8.5 5.52 5.52 0.47 0.47 0.47 −8.5 0.47 −0.6 5.57 5.62 5.67 −8.5 −7.5 −6.5 −5.5 −30 −20 −10 0 −0.6−0.7 1 5.52−30 5.57−20 5.62 5.67 −7.5 −6.5 −5.5 0.47 −305.52 −20 −10 0 10 5.52 5.57 5.6 5.57 5.62 5.67 0.48 0.49 0.5−40 −8.5 −7.5 −6.5 −5.50.47 −30 −20 −1 −8.5 −7.5 −6.5 −8.5 −5.5 −10 0 10 0.48 0.49 −0.7 0.47 0.48 0.49 0.50.48 0.5 5.52 0.47 0.49 0.5 −40 −40 Speed [m/s] Pitchk[deg] dPitch /dt[deg/s] Height [m] dHeigh Speed [m/s]/dt[deg/s]Speed dPitch Speed [m/s] Pitch [deg] Pitchk[deg] Pitch dPitch /dt[deg/s] Height [m] Height [m/s] [deg] 0.47 dPitch /dt Height [m] k [m] −8.5 k k 5.52k k k k −8.5 k k 0.47 k k k 5.52 k 5.52 −8.5 0.47 k 5.52 −8.5 −7.5 −6.5 −5.5 −20−30 5.62 −10 0 −10 0.47 0.48 0.49 0.5 5.52 5.57 5.62 −8.5 −7.5 −6.5 −5.5 −20 −30 5.67 05 0.47 0.48 0.49 0.5 5.52 5.57 −2010 5.6 −8.5 −7.5 −6.5 −5.5 0.47 0.48 0.49 −30 5.57 0.5 Speed [m/s]/dt[deg/s] Pitchk[deg] Pitch [deg] dPitch Height [m] Height [m] [m/s]/dt[deg/s] dPitch Speed [m/s/ Pitch [deg] dPitch Height [m] k k Speed k k k k k k k k 5.47 5.47 0.47 x∗ = P (x̄∗ ) (7) Each of these points experiences another period-doubling as −0.5 −0.45 −0.5 −0.45 −0.55 −0.7 −0.5 −0.55 /dt[m/s] −0.35 −0.4 k+1 −0.6 −0.4 dHeight −0.4 −0.45 dHeightk+1/dt[m/s] dHeightk+1/dt[m/s] k+1 −0.55 −0.3 −0.35 −0.4 −0.45 −0.45 −0.6 −0.5 −0.5 dHeight /dt[m/s] −0.5 k −0.4 −0.3 −0.5 −0.55 −0.6 −0.55 −0.6 −0.55 −0.55 −0.6 −0.6−0.7 −0.6 −0.5 −0.6 −0.7 −0.6 −0.6 in multiple ways. First, the simulation results are consistent with ten times higher ab- −0.4−0.5 −0.3−0.4 dHeight /dt[m/s] dHeight /dt[m/s] solute/relative tolerance (1e-7) and with a different solver −0.7 −0.6 −0.7 −0.6 −0.5 −0.7 −0.6−0.7−0.4 −0.5dHeight −0 / −0.6−0.3 k Height [m] dHeight /dt[m/s] Height [m] dHeight /dt[m/s]dHeight [m] (ode113 in Height MATLAB R2013a). Second, the net horizontal/vertical impulses applied by the ground reaction forces and the gravitational force per stride are computed in the simulation after sufficient iteration from arbitrary initial condition, as shown in Table II. The impulse computed from the discrete impact map is added to the momentum change. The error in vertical direction corresponds to 0.058 % and 0.022 % in total mass for single stride and average of 30 strides, respectively. The results are consistent with the linear momentum principle in the presence of possible numerical artifacts. k Fig.9 shows the speed return map of the model at various speeds. This speed return map clearly illustrates occurrence of period-doubling bifurcations as speed increases. Up to 5.5 m/s, the state of the model converges to a single fixed point (black crossing marks in Fig. 9) after sufficient number of iterations (>90). As the command speed (vd ) is changed, the Poincaré map is also modified and the corresponding fixed point continuously shifts. For higher values of speed, the system exhibits perioddoubling phenomena. After the 1st bifurcation, a period-two gait appears as two points in the map, x∗ and x̄∗ , which are inter-related as in (7). x̄∗ = P (x∗ ) and k k 5.47 5.5 5.53 5.56 5.47 5.5 5.53 5.56 5.47 0.48 0.49 0.5[m/s] Speed [m/s] 0.47 0.48 0.49 0.5 Speed 5.47 5.5 5.53 5.56 Height [m] k 5.47 5.47k 5.47 0.47 k 5.5 Heightk[m] 5.470.47 5.56 5.470.47 5.53 5.5 5.53 0.47 0.47 0.48 0.49 0.5 [m/s] 5.56 5.47 Speed 5.5 5.53 5.56 0.47 0.48 0.49 0.5 Speed [m/s]Speed 0.47 0.48 0.49 0.5 [m/s] Height [m] kSpeed 0.47 0.48 0.49[m/s] 0.5 k k k 0.47 0.47 D. Period-doubling bifurcation points Height Speed Height k+1 Fig. 8. Gradual acceleration of the model. The model is accelerating from 5.47 5.5 5.5 5.47 5.5 5.53 5.56 A.0.475.5 Validation of 1 m/s to 6 m/s for 35 seconds (5-40 seconds). a) Pitch, b)0.48height,0.48and 0.47 0.48 0.49 0.5 simulator Speed [m/s] the Height [m] 0.48 5.5 5.5 c) forward speed of the model are plotted over time. The speed0.48at which 5.5 0.48 0.48 The simulator was validated period-doubling behavior occurs is also denoted as dotted line. −0.3 −0.4 −0.35 −0.4 −0.35 −0.5 V. DISCUSSION−0.45 5.53 −0.3 −0.35 −0.45 dHeightk+1/dt[m/s] 5.5 dHeightk+1/dt[m/s] 0.49 dHeightk+1/dt[m/s]dHeightk+1/dt[m/s] [m/s] −0.35 k+1 Heightk+1[m] Speed 0.48 [m] 0.49 0.49 5.53 5.53 Speedk+1 [m/s] 5.53 Speedk+1 [m/s] k+1 5.53 k+1 0.49 0.49 HeightSpeed [m] k+1 [m/s] [m] 5.53 k+1 Height [m] Heightk+1[m] Speedk+1 [m/s] 0.49 [m/s] 5.56 0.5 Heightk+1 [m] Speed [m/s] k+1 5.56 0.5 0.5 b) c) b) Height Height b) Height a) Pitch a) Pitch a) b) Height c) Speed Speedc) Speed a) Pitch Pitch c) Speed k 0.5 5.56 a) Pitch b) Heightb) Heightb) Height c) Speedc) Speed c) Speed a) Pitch a) Pitch −0.3 5.56 Fig. 10. a) Pitch, b)height, and c) forward speed of −0.35 the model of 70 strides 0.5 5.56 −0.3 −0.3 −0.3 are plotted on each return map. 5.53 0.5 5.56 0.490.5 5.56 −0.4 k k k k k B. Summary of the period-one trot gait created by the proposed controller The trot gait created by the proposed controller shows several characteristics. The trotting robot model exhibits stable limit cycles at various speeds as shown in Fig. 5. The stability k k TABLE II N ET IMPULSE COMPUTED FOR A SINGLE STRIDE AND AVERAGED FOR 30 STRIDES Direction Vertical Horizontal Single stride -0.0458 (Ns) 0.0069 (Ns) Average of 30 strides 0.0217 (Ns) 0.0056 (Ns) of limit cycles is supported by Floquet multipliers (Fig.6), and convergence from large initial perturbation (Fig.7). When the robot model accelerates gradually by increasing its stride frequency, it is observed that variation of the body pitch and height are large in low speed regions. The equilibrium trajectories of front/back legs are tuned for the speed of the robot at 4 m/s. The increasing body pitch/height fluctuation at region of different speeds might be due to the strategy of the fixed equilibrium trajectories. The parameter sweep on the δF /δB at various speeds would enable minimal variation of the body pitch/height at various speeds. It should be noted that these subsequent findings were achieved with the controller without any attitude measurement. Thus, the self-stabilizing property of the robot-andcontroller system is validated. C. Bifurcation points and possible chaotic dynamics We observed period doubling bifurcation points which introduced period-two gaits and period-four gaits. The blue crossing mark at 5.5 m/s is barely noticeable as a periodtwo gait in the scale of Fig.9. Hence, the 1st bifurcation point is expected to locate near 5.5 m/s. There might exist a cascade of period-doubling bifurcation points which induce period-2n gaits such as period-eight, however the result presented in this paper does not show them. More dense search in the high range of speed needs to be conducted to observe more period-doubling bifurcation points, if exist, because in general progression of bifurcation occurs along with smaller change of parameters (vd in this paper) [18]. Period-doubling bifurcations caused by extreme velocities has also been observed in biped models and debatably in humans with the phenomenon of functional asymmetry [30], although further investigation is required to conclude this is a characteristic of legged locomotion or not. A cascade of period-doubling bifurcation in legged machines often leads to chaotic dynamic behavior, as observed in [18]. To verify whether the system behavior is chaotic or not, 1) the fractal dimension, which provides a lower bound for Hausdorff-Besicovitch dimension can be computed using the algorithm provided in [31], 2) we can examine whether nearby trajectories exponentially diverges [32], or 3) we can conduct a large number of iteration to reveal broad-band frequency characteristics of a chaotic system [18]. As shown in Fig.8 and Fig.10, period-doubling incorporates large fluctuation in pitch and height, which might be undesirable in the use of legged machine. In general, large fluctuation might be undesirable for the purpose of transportation, and may induce large impact loss which harms energy efficiency. However, it should be noted that all of the simulation results are obtained with a predefined, fixed control parameters as in Table I. Even though we do not report the result here, our preliminary study showed that changing some of the control parameters affects the occurrence of bifurcation at a certain speed. Therefore, a further systematic investigation is required. VI. CONCLUSIONS AND FUTURE WORKS A. Conclusions Locomotive stability of the controller presented in [15] was validated with analyses presented in this paper. A dynamic simulator with a complex model was constructed. In the simulation, we analyzed orbital stability of periodic locomotion. Further, the simulation revealed that a single set of predefined control parameters with fixed leg compliance and properly tuned δF /δB can accomplish not only stable periodic locomotion at a wide range of speed but also a gradual acceleration. Lastly, subsequent period-doubling bifurcation points are found as the command speed increases. The behavior of the system at high speed appears to be chaotic, but further analysis is required to be sure. After the performance was verified in the simulation, the controller was implemented on the MIT Cheetah and achieved self-stabilizing trot running accelerating up to 6 m/s with small height/pitch variation (2.7 cm/ 2.6 deg at 6 m/s) as shown in the Appendix [15]. High speed robot running with complex dynamics requires fast computation. Self-stability with minimal sensory feedback and control efforts can significantly contribute to resolving this challenge. More elaborate tasks can be achieved by adding higher level controllers on top of the presented controller, as mentioned in [11]. B. Future works We plan to perform further analysis on the dynamic behaviors of this model. Several candidates are listed below. • Quantitative analysis on the basin of attraction should be performed for each limit cycle to figure out range of disturbance the self-stability can handle. • Optimal relation between control parameters can be found. The constrained search space may limit the performance. We can relax fixed/predefined control parameters and investigate effects of each on performance. • The behavior of the system at high speeds should be revisited to determine whether it actually has chaotic motion. We can also investigate how each control parameters affect bifurcation points: the bifurcation can occur at higher/lower speed. Examination of system behavior with fine grid (<0.1 m/s resolution) of vd is required to observe cascade of period-doubling bifurcations. • Bifurcation phenomenon in the experimental robot can be investigated at speeds higher than the maximum speed achieved in the previous experiment. APPENDIX 500 trot running with speed of 6 m/s 500 450 height (mm) height (mm) height (mm) height (mm) height (mm) 500 trot running with speed of 6 m/s height (mm) trot running with speed of 6 m/s 450 500 400 450 trot running with speed of 6 m/s 400 500 400 450 350 trot running with speed of 6 m/s 500 trot running with speed of 6 m/s 350 450 350 400 450 300 45 300 400 45 300 400 45 350 45.5 46 45.5 45.5 46 46 46.5 46.5 46.5 2 0350 350 0 Pitch (deg) 0 300 45 45 −4 −1 −4 45.5 46 46.5 45.5 45.5 46 46 46.5 46.5 45.5 46 46.5 2 47.5 47 48 48 47.5 47Time (s) 47.5 47 47.5 Time (s) Time (s) 48.5 48.5 48 48.5 48 48 48 49 49 49 48.5 48.5 48.5 49 49 49 0−6 −2 −6 0 1−3 −8 −2−8 −2 0−4 Pitch (deg) Pitch (deg) Pitch (deg) 300 1 45 −2300 −2 47 47Time (s) 47.5 47 47.5 Time (s) Time (s) −10 −1 −4 −4−545 −10 4545 −2 −6 −6 45.5 45.5 46 46 46.5 46.5 47 4747 Time (s) 47.5 47.5 47.5 48 48 48 48.5 49 48.5 48.5 49 49 Time (s) −3 −8 −8 −4 Fig.−10−10 11. Experimental validation of 47the stable and high-speed trot 49running −545 45.5 46 46.5 47.5 48 48.5 45 45.5 46 46.5 4747 47.5 48.5 48.5 49 45.5 46 46.5 47.5 48 49 Time (s) with 45small height/pitch variation. Graphs obtained from48 [15]. Time (s) Velocity (m/s) 6 Velocity 5 4 3 2 1 0 5 10 15 20 25 30 35 40 45 50 10 Fig. 12. Experimental validation of the gradual acceleration capability2 of the controller. Fr Result obtained from [15]. 1 COT Fr COT 5 ACKNOWLEDGMENT This project was supported in part by the ‘DARPA Max0 0 0 5 10 15 20 25 30 35 40 45 50 imum Mobility and Manipulation Time (s) Program’. Jongwoo Lee was supported by the Samsung Scholarship. R EFERENCES [1] K. Byl, Metastable Legged-Robot Locomotion. PhD thesis, MIT, 2008. [2] A. Shkolnik, M. Levashov, I. R. Manchester, and R. Tedrake, “Bounding on rough terrain with the LittleDog robot,” The International Journal of Robotics Research, vol. 30, no. 2, pp. 192–215, 2011. [3] M. Raibert, K. Blankespoor, G. Nelson, R. Playter and BigDog Team, “Bigdog, the rough-terrain quadruped robot,” in Proceedings of the 17th World Congress The International Federation of Automatic Control (IFAC), 2008. [4] Y. Fukuoka, H. Kimura, and A. H. Cohen, “Adaptive dynamic walking of a quadruped robot on irregular terrain based on biological concepts,” The International Journal of Robotics Research, vol. 22, no. 3-4, pp. 187–202, 2003. [5] Boston Dynamics, “Introducing wildcat,” October 2013. http:// www.youtube.com/watch?v=wE3fmFTtP9g. [6] R. Alexander and A. Jayes, “A dynamic similarity hypothesis for the gaits of quadrupedal mammals,” Journal of Zoology, vol. 201, no. 1, pp. 135–152, 1983. [7] A. Spröwitz, A. Tuleu, M. Vespignani, M. Ajallooeian, E. Badri, and A. J. Ijspeert, “Towards dynamic trot gait locomotion: Design, control, and experiments with cheetah-cub, a compliant quadruped robot,” The International Journal of Robotics Research, vol. 0, pp. 1–19, 2013. [8] L. D. Maes, M. Herbin, R. hacker, V. L. Bels, and A. Abourachid, “Steady locomotion in dogs: temporal and associated spatial coordination patterns and the effect of speed,” The Journal of Experimental Biology, vol. 211, pp. 138–149, 2008. [9] R. Blickhan, H. Wagner, and A. Seyfarth, “Brain or muscles?,” Recent research developments in biomechanics, vol. 1, pp. 215–245, 2003. [10] R. Blickhan, “The spring-mass model for running and hopping,” Journal of Biomechanics, vol. 22, no. 1112, pp. 1217 – 1227, 1989. [11] R. Ringrose, “Self-stabilizing running,” in Robotics and Automation, 1997. Proceedings., 1997 IEEE International Conference on, vol. 1, pp. 487–493, 1997. [12] T. Kubow and R. Full, “The role of the mechanical system in control: a hypothesis of self–stabilization in hexapedal runners,” Philosophical Transactions of the Royal Society of London. Series B: Biological Sciences, vol. 354, no. 1385, pp. 849–861, 1999. [13] I. Poulakakis, E. Papadopoulos, and M. Buehler, “On the stability of the passive dynamics of quadrupedal running with a bounding gait,” The International Journal of Robotics Research, vol. 25, pp. 669–687, 2006. [14] N. Hogan, “Impedance control-an approach to manipulation. part I - part III,” ASME Transactions Journal of Dynamic Systems and Measurement Control B, vol. 107, pp. 1–24, 1985. [15] D. J. Hyun, S. Seok, J. Lee, and S. Kim, “High speed trotrunning: Implementation of a hierarchical controller using proprioceptive impedance control on the MIT cheetah.” The International Journal of Robotics Research, to be published. [16] R. Ghigliazza, R. Altendorfer, P. Holmes, and D. Koditschek, “A simply stabilized running model,” SIAM Journal on Applied Dynamical Systems, vol. 2, no. 2, pp. 187–218, 2003. [17] C. D. Remy, Optimal exploitation of natural dynamics in legged locomotion. PhD thesis, ETH, 2011. [18] A. Goswami, B. Thuilot, and B. Espiau, “A study of the passive gait of a compass-like biped robot symmetry and chaos,” The International Journal of Robotics Research, vol. 17, no. 12, pp. 1282–1301, 1998. [19] A. Witkin, M. Gleicher, and W. Welch, Interactive dynamics, vol. 24. ACM, 1990. [20] D. Baraff, “Linear-time dynamics using lagrange multipliers,” in Proceedings of the 23rd annual conference on Computer graphics and interactive techniques, pp. 137–146, ACM, 1996. [21] Hurmuzlu, Yildirim, and D. B. Marghitu, “Rigid body collisions of planar kinematic chains with multiple contact points,” The International Journal of Robotics Research, vol. 13.1, pp. 82–92, 1994. [22] J. Lee, “Hierarchical controller for highly dynamic locomotion utilizing pattern modulation and impedance control: implementation on the MIT cheetah robot,” Master’s thesis, MIT, 2013. [23] S. Grillner and P. Wallen, “Central pattern generators for locomotion, with special reference to vertebrates,” Annual review of neuroscience, vol. 8, no. 1, pp. 233–261, 1985. [24] E. Bizzi, N. Hogan, F. A. Mussa-Ivaldi, and S. Giszter, “Does the nervous system use equilibrium-point control to guide single and multiple joint movements?,” Behavioral and Brain Sciences, vol. 15, no. 04, pp. 603–613, 1992. [25] T. McMahon, “The role of compliance in mammalian running gaits,” Journal of Experimental Biology, vol. 115, no. 1, pp. 263–282, 1985. [26] M. Gross, J. Rummel, and A. Seyfarth, “Stability in trotting dogs,” 2009. Poster presented at the Adaptive motion in man, animals, and machines, Feb 19 – 20, Friedrich-Schiller-Universität, Jena, Germany. [27] R. Blickhan and R. Full, “Similarity in multi legged locomotion: Bouncing like a monopode,” Journal of Comparative Physiology A, vol. 173, pp. 509–517, 1993. [28] S. Seok, A. Wang, D. Otten, and S. Kim, “Actuator design for high force proprioceptive control in fast legged locomotion,” in Intelligent Robots and Systems (IROS), 2012 IEEE/RSJ International Conference on, pp. 1970–1975, IEEE, 2012. [29] Y. Hurmuzlu, F. Génot, and B. Brogliato, “Modeling, stability and control of biped robots-a general framework,” Automatica, vol. 40, no. 10, pp. 1647–1664, 2004. [30] R. D. Gregg, Y. Y. Dhaher, A. Degani, and K. M. Lynch, “On the mechanics of functional asymmetry in bipedal walking,” Biomedical Engineering, IEEE Tran., vol. 59, no. 5, pp. 1310–1318, 2012. [31] P. Bergé, Y. Pomeau, C. Vidal, and L. Tuckerman, Order within chaos: towards a deterministic approach to turbulence. Wiley New York, 1986. [32] R. Hilborn, Chaos and nonlinear dynamics: an introduction for scientists and engineers. oxford university press, 2000.