1 Introduction

Stability in legged locomotion is normally characterized as being either static or dynamic. In static stability, the legs and body move to keep the center of mass (COM) over its support polygon (Westervelt et al. 2007; Raibert 1986a, Chap. 1), in which case, the forward velocity is sufficiently small so that the stability can be predicted based on the spatial configuration of the body and feet, without having to worry about stored energy. In contrast, in dynamic stability, the kinetic energy of the system is of sufficient magnitude that stability cannot be guaranteed based solely on the COM position (Raibert 1986a, Chap. 1).

Stable dynamic walking gaits are normally modeled as stable periodic orbits of the dynamical system that represents the legged system. (Holmes et al. 2006; Westervelt et al. 2007, Chap. 1). Even though a periodic model of legged locomotion may not capture all the dynamic behavior of the locomotion, it is at least a promising model for a range of motions; for instance, hopping, along with walking or running on flat ground can be modeled as periodic tasks (Raibert 1986a; Grizzle et al. 2001; Chevallereau et al. 2008; Seyfarth et al. 2002). Moreover, modeling walking as a periodic motion is the primary approach in studying passive walking and natural dynamics of legged locomotion (McGeer 1990; Collins et al. 2001; Garcia et al. 1998; Kuo 1999; Collins et al. 2005; Goswami et al. 1996).

Periodic locomotion is primarily studied by a Poincaré map analysis. Obtaining a periodic motion is accomplished by a numerical search for fixed points of the Poincaré map (a.k.a. stride function) such that the eigenvalues of the linearization of the Poincaré map are within the unit circle (McGeer 1990; Grizzle et al. 2001; Wisse et al. 2005; Geng et al. 2006; Gregg and Righetti 2013; Dingwell and Kang 2007).

A downside of numerical search methods is their high computational cost because in each trial the equations of motion have to be integrated to check if the solution returns back to the starting point.

In contrast to numerical search methods, this paper proposes a new method for obtaining periodic walking without having to rely on any kind of offline or online search for fixed points in the Poincaré map’s domain. Our method is based on producing a type of symmetry in the system dynamics, so that the resulting system, which is called a symmetric hybrid system (SHS), possesses an infinite number of periodic orbits which are neutrally stable. It is then explained how by introducing asymmetries such periodic orbits can be modified to become asymptotically stable limit cycles. In addition, by adjusting the amount of asymmetry, different stable periodic orbits (e.g. with different average walking speeds) can be achieved.

The notion of symmetry presented in this paper, has been noted in Raibert (1986b) and Altendorfer et al. (2004) for planar walking. The contribution of the current paper is the extension of the work to 3D legged locomotion while building a mathematical basis by introducing the notion of SHS, a general analysis of the stability with symmetry method in 3D legged locomotion, and finally, proposing a method for stabilization of the neutrally stable (i.e., neither asymptotically stable nor unstable) periodic orbits of an SHS.

While we believe that our method can be applied to fully actuated legged robots as well as underactuated robots, in this paper, for the numerical examples, only underactuated bipedal robots (where the number of actuators is fewer than the degrees of freedom of the system) have been studied.

The study of underactuated legged systems allows us to understand how the notions of symmetry and asymmetry can lead to self-stabilization of periodic orbits of legged systems and, at the same time, provides a way to understand the natural dynamics of legged locomotion. In particular, the notion of self-synchronization, which was first introduced in (Razavi et al. 2015), will be defined and discussed for a general SHS.

We note that throughout this paper we assume that models of legged locomotion are hybrid. In hybrid systems the continuous time vector field which describes the evolution of the system change at discrete times or events (Holmes et al. 2006).

The rest of the paper is organized as follows. Section 2 introduces the 3D linear inverted pendulum (LIP) as a gateway to introducing the notion of SHSs. Section 3 presents the most important results of this paper. It begins with the definition of an SHS and then presents some important properties of such a system. In particular, the concept of a synchronized solution of an SHS is introduced, and it is shown that an SHS has infinitely many synchronized solutions that can become periodic orbits. The structure of the restricted Poincaré map is then derived, and the notion of self-synchronization is introduced. Many examples of SHSs are discussed in this section. In particular, an 8-DOF 3D biped is studied, whereby it is shown how a set of virtual constraints can render this system an SHS and hence lead to periodic walking. In Sect. 4 we discuss how adding asymmetries, such as energy loss at impact, can lead to asymptotic stability of periodic orbits of an SHS. Based on the results from the preceding sections, Sect. 5 summarizes a design method for obtaining stable periodic gaits for legged robots. Section 6 presents the concluding remarks.

2 3D linear inverted pendulum

In order to better understand the concept of an SHS (which will be introduced in the next section), this section discusses the 3D LIP, which is an example of an SHS. A 3D LIP is a 3D inverted pendulum (IP), where its point mass is constrained to move in a plane of constant height. Figure 1 shows the schematic of a 3D LIP. A telescopic leg with an actuator constrains the motion of the point mass M to a plane \(z = z_0\).

Notation The world coordinate frame is denoted by W. We assume that the coordinate frame I is parallel to W, but its origin is located at the support point (see Fig. 1).

Fig. 1
figure 1

3D LIP models

Even though the 3D LIP equations have been already discussed in other papers [e.g., Kajita et al. (2001)], to discuss the 3D LIP biped, its transition surface and transition map, and the notion of alternating coordinates, we develop the equations here; this will be found helpful when we discuss the notion of SHS in the next section as an extension of the 3D LIP biped.

Let \({\varvec{H}}\) denote the total angular momentum of the point mass M about the support point. Since the support point is stationary, the time derivative of \({\varvec{H}}\) is equal to the moment of external forces about the support point. Therefore, because in the LIP (as in the IP) the only external force applied to mass M is the gravitational force, we have

$$\begin{aligned} \frac{d {\varvec{H}}}{dt} = M{\varvec{r}}\times {\varvec{g}}, \end{aligned}$$

where \({\varvec{g}}\) is the vector of gravity and \({\varvec{r}}\) is the position vector of M in I. At the same time,

$$\begin{aligned} {\varvec{H}} = M{\varvec{r}}\times {\dot{{\varvec{r}}}}. \end{aligned}$$

Combining the last two equations results in

$$\begin{aligned} \frac{d}{dt}({\varvec{r}}\times {\dot{{\varvec{r}}}}) = {\varvec{r}}\times {\varvec{g}}. \end{aligned}$$

Assuming a Cartesian coordinate system in I with z pointing in the opposite direction of the gravitational field, we have \({\varvec{g}} = (0, 0, -g)\), where g is the gravitational acceleration. Therefore, denoting the coordinates of the position vector \({\varvec{r}}\) by (xyz), from the equation above

$$\begin{aligned} z {\ddot{x}} - x {\ddot{z}} = g x, ~y {\ddot{z}} - z {\ddot{y}} = -g y, ~x {\ddot{y}} - y {\ddot{x}} = 0. \end{aligned}$$
(1)

From this system, after applying the kinematic constraints, the equations of motion of the IP and LIP can be derived. In the IP \(x^2+y^2+z^2\) is constant, while in the LIP, z is assumed to be constant. Here, we derive the equations of motion of the 3D LIP. If we set \(z = z_0 >0\) in the equations above, we obtain

$$\begin{aligned} {\ddot{x}}= & {} \omega ^2 x, ~{\ddot{y}} = \omega ^2 y, \end{aligned}$$
(2)

where \(\omega ^2 = g/z_0\). Equation (2) describes the equations of motion of the 3D LIP. Note that the third equation in (1) follows from (2).

Although for the purpose of the current paper the actuator force, \({\varvec{f}}\), required for reinforcing the constraint \(z = z_0\), need not be calculated, it is worth deriving a formula to describe this force. The actuator force (see Fig. 1) is always in the direction of \({\varvec{r}}\); therefore, \({\varvec{f}} = k {\varvec{r}}\) for some k. In our Cartesian coordinate system, \({\varvec{f}} = k (x, y, z)\). However, since \(z = z_0\), we have \({\ddot{z}} = 0\). Therefore, if \(f_z\) denotes the z component of \({\varvec{f}}\), from Newton’s equations of motion, \(f_z - Mg = 0\). Thus, because \(f_z = k z\) and \(z = z_0\), \(k = \frac{Mg}{z_0}\). As a result,

$$\begin{aligned} {\varvec{f}} = \left( Mg\frac{x}{z_0}, Mg \frac{ y}{z_0}, Mg\right) . \end{aligned}$$

Note that here we assumed that the actuator can always provide the exact force above. Hence, assuming that initially \(z = z_0\) and \({\dot{z}} = 0\), the equation \(z = z_0\) holds throughout the motion. However, if the 3D LIP is used as a pattern generator for walking, then a controller is required to enforce the constraint \(z = z_0\) (Kajita et al. 2001).

The 3D LIP discussed above is a monoped, which, without assuming a flight phase, is incapable of providing legged locomotion. Therefore, to produce walking, the 3D LIP requires a swing leg to be able to switch the legs while walking. As shown in Fig. 1b, this 3D LIP biped is, in fact, the exact same as that of the 3D LIP except for the massless swing leg that allows to switch legs one after another, enabling it to walk. It should be noted that, since the swing leg is massless, similar to the 3D LIP, the 3D LIP biped has two degrees of freedom. Below we discuss the equations of motion of the 3D LIP biped.

No matter which leg is the stance leg, the equations of motion in the coordinate system attached to the support point remain the same:

$$\begin{aligned} {\ddot{x}}= \omega ^2 x, ~{\ddot{y}} = \omega ^2 y. \end{aligned}$$
(3)

Since the roles of the legs will be swapped at the end of each step, we need to define a transition map.

Transition map To derive an expression for the transition map (also called the impact map), we make two assumptions:

  1. 1.

    The legs are swapped instantaneously, with the result that only one leg is the stance leg at a time.

  2. 2.

    During the switching of the legs, mass M remains in the plane \(z = z_0\) and \({\dot{z}} = 0\).

By assumption (1) above, the force generated at the swing leg end at the time of impact is an impulsive force. Since this force is the only impulsive force present, the total angular momentum of the system about the swing leg end right before the impact and right after it is the same. Therefore,

$$\begin{aligned} {\varvec{H}}_o^- = {\varvec{H}}_o^+, \end{aligned}$$
(4)

where \(H_o\) denotes the total angular momentum of mass M at the time of impact about the swing leg end, denoted by o. By definition of angular momentum,

$$\begin{aligned} {\varvec{H}}^-_o = M {\varvec{r}}_{FM}^- \times {\dot{{\varvec{r}}}}^-, ~{\varvec{H}}^+_o = M ({\varvec{r}}^+ \times {\dot{{\varvec{r}}}}^+), \end{aligned}$$

where \({\varvec{r}}_{FM} = {\varvec{r}}-{\varvec{r}}_F\), and \({\varvec{r}}_F\) is the position vector of the swing leg end in the coordinate frame I whose origin is at the stance leg’s point of contact (see Fig. 1b, c). Therefore, by Eq. (4)

$$\begin{aligned} {\varvec{r}}^+ \times {\dot{{\varvec{r}}}}^+= & {} {\varvec{r}}_{FM}^-\times {\dot{{\varvec{r}}}}^-. \end{aligned}$$

Clearly, \({\varvec{r}}^+={\varvec{r}}_{FM}^-\), where \({\varvec{r}}^+\) is represented in the coordinate frame attached to the support point after the transition. So, from the equation above

$$\begin{aligned} {\varvec{r}}_{FM}^- \times ({\dot{{\varvec{r}}}}^+-{\dot{{\varvec{r}}}}^- )= & {} 0. \end{aligned}$$

Therefore, from this equation, denoting \({\varvec{r}} = (x, y, z)\) and \({\varvec{r}}_F = (x_F, y_F, z_F)\),

$$\begin{aligned} y_{FM}^-\left( {\dot{z}}^+-{\dot{z}}^-\right) -z_{FM}^-\left( {\dot{y}}^+-{\dot{y}}^-\right)= & {} 0,\\ z_{FM}^-\left( {\dot{x}}^+-{\dot{x}}^-\right) -x_{FM}^-\left( {\dot{z}}^+-{\dot{z}}^-\right)= & {} 0,\\ x_{FM}^-\left( {\dot{y}}^+-{\dot{y}}^-\right) -y_{FM}^-\left( {\dot{x}}^+-{\dot{x}}^-\right)= & {} 0. \end{aligned}$$

By assumption (2), \(z^+ = z^- = z_0\) and \({\dot{z}}^+ = {\dot{z}}^- =0\). In addition, because we assume walking takes place on flat ground, \(z_F^- = 0\). Substituting these equalities into the equations above gives us

$$\begin{aligned} z_{0}({\dot{y}}^+-{\dot{y}}^-)= & {} 0,\\ \quad -z_0({\dot{x}}^+-{\dot{x}}^-)= & {} 0. \end{aligned}$$

From these equations, since \(z_0 \ne 0\), \({\dot{x}}^+ = {\dot{x}}^-\), and \({\dot{y}}^+ = {\dot{y}}^-\). In sum, we obtain the following transition map:

$$\begin{aligned} x^+= & {} x_{FM}^-, y^+ = y_{FM}^-,~ {\dot{x}}^+ = {\dot{x}}^-, {\dot{y}}^+ = {\dot{y}}^-. \end{aligned}$$

Next, we need to define when the transition should occur.

Transition surface We define a transition surface assuming the following:

  1. 1.

    At the time of impact, \(z_F = 0\).

  2. 2.

    At the time of impact, the swing leg length is equal to the stance leg length.

By assumptions (1) and (2) above,

$$\begin{aligned} (x_{FM}^-)^2+(y_{FM}^-)^2+(z_0)^2 = (x^-)^2+(y^-)^2+(z_0)^2. \end{aligned}$$

Canceling \(z_0^2\),

$$\begin{aligned} (x_{FM}^-)^2+(y_{FM}^-)^2 = (x^-)^2+(y^-)^2. \end{aligned}$$

Therefore, under assumptions (1) and (2) above, switching occurs when \((x,y, {\dot{x}}, {\dot{y}})\) belongs to the following surface:

$$\begin{aligned} {\mathcal {S}} = \left\{ (x,y, {\dot{x}}, {\dot{y}}) \vert x^2+y^2 = (x_{FM}^-)^2+(y_{FM}^-)^2 \right\} . \end{aligned}$$

Based on the discussion above, the equations of motion of the 3D LIP consist of a continuous phase and a discrete phase. In the continuous phase, the equations of motion are

$$\begin{aligned} {\ddot{x}}= \omega ^2 x, ~{\ddot{y}} = \omega ^2 y, \end{aligned}$$

and the discrete phase starts when \((x,y,\dot{x}, \dot{y}) \in \mathcal {S}\), and finally the transition map is

$$\begin{aligned} x^+= & {} x_{FM}^-, y^+ = y_{FM}^-,~{\dot{x}}^+ = {\dot{x}}^-, {\dot{y}}^+ = {\dot{y}}^-. \end{aligned}$$

The coordinate frame used in the equations above is I, which is attached to the support point. For later reference, we introduce an alternating coordinate system where we assume that the Cartesian coordinate system associated with I is right-handed when the right leg is the stance leg and left-handed when the left leg is the stance leg. In this left-handed coordinate system, we assume that the y-axis is in the opposite direction of the y-axis of the coordinate system associated with the world frame. In this alternating coordinate system, the equations of the continuous phase remain unchanged but the transition map becomes:

$$\begin{aligned} x^+= & {} x_{FM}^-, y^+ = -y_{FM}^-,~{\dot{x}}^+ = {\dot{x}}^-, {\dot{y}}^+ = -{\dot{y}}^-. \end{aligned}$$
(5)

Remark 1

As we shall see later, the importance of this coordinate system is that it enables us to study a certain class of 2-periodic motions as being 1-periodic. From now on, we assume the alternating coordinate system.

The following definition is helpful when we study the SHSs in the next section.

Definition 2

Let \(x_0>0\) and \(y_0>0\). The 3D LIP is said to be \((x_0, y_0)\)-invariant if

$$\begin{aligned} x_{FM}^- = -x_0\quad \mathrm {and} \quad y_{FM}^- = -y_0 \end{aligned}$$

at the end of each step.

From the above definition, in the \((x_0, y_0)\)-invariant 3D LIP,

$$\begin{aligned} x^+= & {} -x_0, y^+ = y_0,~ {\dot{x}}^+ = {\dot{x}}^-, {\dot{y}}^+ = -{\dot{y}}^-, \end{aligned}$$

the switching surface is

$$\begin{aligned} {\mathcal {S}} = \left\{ (x,y,{\dot{x}},{\dot{y}}) | x^2+y^2 = x_0^2+y_0^2\right\} , \end{aligned}$$

and the impact occurs when \((x,y,{\dot{x}},{\dot{y}})\in {\mathcal {S}}\).

Although here we assumed that the swing leg is massless and hence did not assume any dynamics for the swing leg, for an actual robot, as we will discuss later, to reach an \((x_0, y_0)\)-invariant gait, the swing leg controllers must drive \((x_{FM}, y_{FM})\) to \((-x_0, -y_0)\) before the impact occurs.

3 Symmetric hybrid systems

The 3D LIP introduced in the previous section is an example of a larger class of systems we call SHSs. This section introduces the notion of an SHS and will present some of their properties. In particular, it will be shown that an SHS can have infinitely many periodic orbits. A form of the linearized Poincaré map for these periodic orbits is derived. In addition, the concept of self-synchronization for a periodic orbit of an SHS is introduced. As a numerical example, we show that a given biped can become an SHS when proper controllers are used.

We begin with some preliminary definitions and notations. Suppose that \({\mathcal {Q}}\) is a k-dimensional smooth manifold. We will refer to \({\mathcal {Q}}\) as the configuration space. Assume that \({\mathcal {S}}\) is a co-dimension one submanifold of \({\mathcal {TQ}}\), the tangent bundle of \({\mathcal {Q}}\). A smooth k-dimensional second order hybrid system denoted by \(\varSigma = (X, \Delta , {\mathcal {Q}},{\mathcal {S}})\) can be written as

$$\begin{aligned} \left\{ \begin{array}{lclc} {\ddot{q}} &{}=&{} X_{{\dot{q}}}(q,{\dot{q}}) &{} (q^-,{\dot{q}}^-) \notin {\mathcal {S}},\\ q^+ &{}= &{}\Delta _q(q^-,{\dot{q}}^-) &{} (q^-,{\dot{q}}^-) \in {\mathcal {S}},\\ {\dot{q}}^+&{}=&{} \Delta _{{\dot{q}}} (q^-,{\dot{q}}^-) &{} (q^-,{\dot{q}}^-)\in {\mathcal {S}}, \end{array}\right. \end{aligned}$$
(6)

where \(X = (X_q, X_{{\dot{q}}})\) is a smooth vector field on \({\mathcal {TQ}}\), and \(\Delta = (\Delta _q, \Delta _{{\dot{q}}})\) is a smooth reset map such that \(\Delta _q:{\mathcal {S}} \rightarrow {\mathcal {Q}}\) and \(\Delta _{{\dot{q}}}:{\mathcal {S}} \rightarrow {\mathcal {T}}_{q^+}{\mathcal {Q}}\), where \({\mathcal {T}}_{q^+}{\mathcal {Q}}\) is the tangent space of \({\mathcal {Q}}\) at \(q^+\).

Figure 2 shows how a solution of a hybrid system is re-initialized after crossing the surface \({\mathcal {S}}\).

The 3D LIP studied in the previous section is an example of a 2-dimensional second order hybrid system.

Fig. 2
figure 2

A solution q(t) of a hybrid system, starting from the point \((q_0, {\dot{q_0}})\)

Definition 3

Let \({\mathcal {Q}}\) be a smooth manifold. Suppose that \(q = (\phi ,\psi )\) is a local coordinate system defined on an open set \({\mathcal {N}} \subset {\mathcal {Q}}\) such that \(\phi \in {\mathbb {R}}^m\) and \(\psi \in {\mathbb {R}}^n\). The neighborhood \({\mathcal {N}}\) is said to be a symmetric neighborhood for the coordinate system \(q = (\phi ,\psi )\) if for every point with coordinates \((\phi ,\psi )\) in \({\mathcal {N}}\), a point with coordinates \((-\phi ,\psi )\) is in \({\mathcal {N}}\) as well.

Definition 4

Let \(\varSigma = (X,\Delta , {\mathcal {Q}},{\mathcal {S}})\) be a smooth k-dimensional second order hybrid system on the configuration space \({\mathcal {Q}}\). Suppose that \(q = (\phi ,\psi )\), where \(\phi \) is \(m\times 1\) and \(\psi \) is \(n \times 1\) for \(m\ge 1\) and \(n\ge 1\), is a local coordinate system defined on a symmetric neighborhood \({\mathcal {N}} \subset {\mathcal {Q}}\) which contains a point with coordinates \((0,\varPsi )\) such that \((0,\varPsi ) \notin {\mathcal {S}}\). Suppose that in this coordinate system, \(X_{{\dot{q}}} = (f,g)\), where \(f(\phi ,\psi ,{\dot{\phi }},{\dot{\psi }}) \in {\mathbb {R}}^m\) and \(g(\phi ,\psi ,{\dot{\phi }},{\dot{\psi }}) \in {\mathbb {R}}^n\). Let \(q_0 = (\phi _0,\psi _0)\in {\mathcal {N}}\) such that \(\phi _0\ne 0\). The hybrid system \(\varSigma \) is said to be an (mn)-dimensional \((\phi _0,\psi _0)\)-invariant SHS in the coordinate system \(q = (\phi ,\psi )\) if the following conditions hold:

  1. 1.

    Invariance in the impact map If \((q^-,{\dot{q}}^-) \in {\mathcal {S}}\),

    $$\begin{aligned} \Delta _q(q^-,{\dot{q}}^-)= & {} \left( -\phi _0, \psi _0 \right) . \end{aligned}$$
    (7)
  2. 2.

    Symmetry in the vector field f is an odd function with respect to \((\phi , {\dot{\psi }})\), that is,

    $$\begin{aligned} f(-\phi , \psi , {\dot{\phi }}, -{\dot{\psi }})= & {} -f(\phi , \psi , {\dot{\phi }}, {\dot{\psi }}), \end{aligned}$$
    (8)

    and function g is even with respect to \((\phi ,{\dot{\psi }})\), that is,

    $$\begin{aligned} g(-\phi , \psi , {\dot{\phi }}, -{\dot{\psi }})= & {} g(\phi , \psi , {\dot{\phi }}, {\dot{\psi }}). \end{aligned}$$
    (9)
  3. 3.

    Symmetry in the impact map For every \(({\dot{\phi }},{\dot{\psi }})\in {\mathcal {T}}_{(\phi _0,\psi _0)}{\mathcal {Q}}\), \((\phi _0, \psi _0, {\dot{\phi }}, {\dot{\psi }}) \in {\mathcal {S}}\), and if \((q^-,{\dot{q}}^-) = (\phi _0,\psi _0,{\dot{\phi }}^-,{\dot{\psi }}^-) \in {\mathcal {S}}\), then

    $$\begin{aligned} \Delta _{{\dot{q}}}(q^-,{\dot{q}}^-) = ( {\dot{\phi }}^-, -{\dot{\psi }}^- ). \end{aligned}$$
    (10)

    In the above definition, the local coordinate system \((\phi ,\psi )\) is said to be a symmetric coordinate system for \((f,g,\Delta , {\mathcal {Q}}, {\mathcal {S}})\). If f and g satisfy the odd-even symmetries above, then the continuous system \((f,g,{\mathcal {Q}})\) is said to be an (mn)-dimensional symmetric system.

In an SHS, the equations of motion in the coordinate system \(q = (\phi ,\psi )\) in the continuous phase can be written in the form

$$\begin{aligned} \begin{aligned} {\ddot{\phi }}= & {} f(\phi , \psi , {\dot{\phi }}, {\dot{\psi }}),\\ {\ddot{\psi }}= & {} g(\phi ,\psi ,{\dot{\phi }}, {\dot{\psi }}). \end{aligned} \end{aligned}$$
(11)

Example 5

(3D LIP) From the results of Section I, the \((x_0,y_0)\)-invariant 3D LIP is an \((x_0,y_0)\)-invariant SHS in the coordinate system \(q = (x,y)\) , \(m = 1\), \(n = 1\),

$$\begin{aligned} f(x,y,{\dot{x}},{\dot{y}}) = \omega ^2 x, ~g(x,y,{\dot{x}},{\dot{y}}) = \omega ^2 y, \end{aligned}$$

and

$$\begin{aligned} \Delta _q(x,y,{\dot{x}},{\dot{y}}) = (-x_0,y_0), ~\Delta _{{\dot{q}}}(x,y,{\dot{x}}, {\dot{y}}) = ({\dot{x}},-{\dot{y}}). \end{aligned}$$

From Definition 4, in a \((\phi _0, \psi _0)\)-invariant SHS at the beginning of each step, \((\phi , \psi ) = (-\phi _0, \psi _0)\). For the 3D LIP, this means that the biped takes constant swing leg end to hip steps (see Fig. 3). By the definition above, in a \((\phi _0, \psi _0)\)-invariant SHS, if \((\phi ^-, \psi ^-, {\dot{\phi }}^-, {\dot{\psi }}^-)\) \(= (\phi _0, \psi _0, {\dot{\phi }}^-, {\dot{\psi }}^-)\), then

$$\begin{aligned} \phi ^+ = -\phi _0, \psi ^+ = -\psi ^-, ~{\dot{\phi }}^+ = {\dot{\phi }}^-, {\dot{\psi }}^+ = -{\dot{\psi }}^-. \end{aligned}$$
Fig. 3
figure 3

3D linear inverted pendulum in an \((x_0,y_0)\)-invariant gait

Proposition 6

Let \(\varSigma = (f,g,\Delta , {\mathcal {Q}},{\mathcal {S}})\) be a \((\phi _0,\psi _0)\)-invariant SHS in a local coordinate system \((\phi ,\psi )\) defined on a symmetric neighborhood \({\mathcal {N}} \subset {\mathcal {Q}}\). Suppose that \(({\bar{\phi }},{\bar{\psi }})\) is another coordinate system defined on \({\mathcal {N}}\) such that

$$\begin{aligned} {\bar{\phi }}(-\phi ,\psi ) = - {\bar{\phi }}(\phi ,\psi ),~{\bar{\psi }}(-\phi ,\psi ) = {\bar{\psi }}(\phi ,\psi ). \end{aligned}$$

Then \(({\bar{\phi }},{\bar{\psi }})\) is a symmetric coordinate system for \(\varSigma \), which is also a \(({\bar{\phi }}_0,{\bar{\psi }}_0)\)-invariant SHS, where

$$\begin{aligned} {\bar{\phi }}_0 = {\bar{\phi }}(\phi _0,\psi _0), ~{\bar{\psi }}_0 = {\bar{\psi }}(\phi _0,\psi _0). \end{aligned}$$

The proof is straightforward. It immediately follows from the above proposition that if \((f,g, {\mathcal {Q}})\) is symmetric in \((\phi ,\psi )\), it is also symmetric in \(({\bar{\phi }},{\bar{\psi }})\). The coordinates \((\phi ,\psi )\) and \(({\bar{\phi }},{\bar{\psi }})\) are said to be equivalent coordinates for the SHS \(\varSigma \).

Definition 7

Suppose that \(\varSigma \) is an SHS in the local coordinate system \((\phi ,\psi )\). A solution \((\phi (t), \psi (t))\) of \(\varSigma \) defined on an open neighborhood \(I\subset {\mathbb {R}}\) is said to be synchronized if

  1. 1.

    \(\exists t_m \in I\) such that \(\phi (t_m) = 0\).

  2. 2.

    For any \({\bar{t}} \in I\) such that \(\phi ({\bar{t}}) = 0\), \({\dot{\psi }}({\bar{t}}) = 0\).

Figure 4 shows a synchronized solution of a 3D LIP model. Time \(t_m\) corresponds to the mid-step, where \(x = 0\).

The importance of the synchronized solutions is that they can be periodic orbits.

Fig. 4
figure 4

A synchronized solution vs. an asynchronized solution of a 3D LIP biped model

Definition 8

A solution q(t) of a hybrid system \((f,g,\Delta ,{\mathcal {Q}},{\mathcal {S}})\) is said to be 1-periodic with period \(T>0\) if there exists \(t_0 \in {\mathbb {R}}\) such that \((q^-(t_0),{\dot{q}}^-(t_0)) \in {\mathcal {S}}, (q^-(t_0+T),{\dot{q}}^-(t_0+T)) \in {\mathcal {S}}\), \(q(t) \notin {\mathcal {S}}\) for \(t\in (t_0,t_0+T)\) and \(q(t+T) = q(t)\) for every \(t\in {\mathbb {R}}\).

Figure 5 shows a 1-periodic solution of a hybrid system.

Fig. 5
figure 5

A 1-periodic solution, q(t), of a hybrid system

The next proposition presents the main property of an SHS, which will frequently be used in this paper.

Proposition 9

An SHS with symmetric coordinate system \(q = (\phi ,\psi )\) has infinitely many synchronized solutions \((\phi (t),\psi (t))\) for which \(\phi (t)\) is odd and \(\psi (t)\) is even, where \(t = 0\) corresponds to the mid-step.

Proof

Let \(\varSigma = (f,g,\Delta , {\mathcal {Q}}, {\mathcal {S}})\) be an SHS. By Definition 4, there exists an open set \({\mathcal {O}}\subset {\mathcal {Q}}\) that includes a point \((0, \varPsi )\), and \({\mathcal {O}}\cap {\mathcal {S}} = \emptyset \). Therefore, for any \(\varPsi _0\) for which \((0,\varPsi _0)\in {\mathcal {O}}\) and for any \({\dot{\varPhi }}_0\), there exists a solution \((\phi (t), \psi (t))\) such that

$$\begin{aligned} \phi (0)= & {} 0,{\dot{\phi }}(0) = {\dot{\varPhi }}_0,\psi (0) = \varPsi _0,{\dot{\psi }}(0) = 0. \end{aligned}$$

This solution is synchronized because \(\phi \) and \({\dot{\psi }}\) are simultaneously zero. Define \({\hat{\phi }}(t) = -\phi (-t)\) and \({\hat{\psi }}(t) = \psi (-t)\). From the odd-even symmetry properties of (fg), it can be easily checked that \({\hat{\phi }}(t)\) and \({\hat{\psi }}(t)\) satisfy the same initial value problem as \((\phi (t), \psi (t))\). Since the solution to such an initial value problem is unique, we conclude that \({\hat{\phi }}(t) = \phi (t)\) and \({\hat{\psi }}(t) = \psi (t)\). Thus, by definition of \({\hat{\phi }}(t)\) and \({\hat{\psi }}(t)\),

$$\begin{aligned} -\phi (-t) = \phi (t),~\psi (-t) = \psi (t), \end{aligned}$$
(12)

which proves that \(\phi (t)\) is an odd function and \(\psi (t)\) is an even function.\(\square \)

In the above proposition, it was assumed that \(\phi (0) = 0\); however, in general, if \((\phi (t), \psi (t))\) is a synchronized solution such that \(\phi (t_m) = 0\), then \(\phi (t+t_m)\) is an odd function and \(\psi (t+t_m)\) is an even function.

Following are some examples that fall into the category of SHSs.

Example 10

(3D inverted pendulum biped) In this example, we develop the equations of motion of the 3D IP biped with massless legs similar to the 3D LIP biped discussed in Sect. 2. Let W and I be coordinate frames defined in Sect. 2. In the Cartesian coordinate system associated with I, the mass position is denoted by (xyz). The equations of motion of this mass are given in Eq. (1), that is,

$$\begin{aligned} z {\ddot{x}} - x {\ddot{z}}= & {} g x,~y {\ddot{z}} - z {\ddot{y}} = -g y,~x {\ddot{y}} - y {\ddot{x}} = 0. \end{aligned}$$
(13)
Fig. 6
figure 6

3D inverted pendulum biped with massless legs

Let L denote the length of the 3D IP leg (see Fig. 6). We have \(x^2+y^2+z^2 = L^2\), which after being differentiated results in

$$\begin{aligned} x{\ddot{x}}+y{\ddot{y}}+z{\ddot{z}} + 2K = 0, \end{aligned}$$

where \(K = (1/2)({\dot{x}}^2+{\dot{y}}^2+{\dot{z}}^2)\). Finding \({\ddot{z}}\) from the equation above and substituting it back into the system of equations (13), we obtain

$$\begin{aligned} \begin{aligned} z^2{\ddot{x}} =&-x (x{\ddot{x}}+y{\ddot{y}}+2K)+gxz,\\ z^2{\ddot{y}} =&-y (y{\ddot{y}}+x{\ddot{x}}+2K)+gyz. \end{aligned} \end{aligned}$$
(14)

From the last equation in system (13), \(x{\ddot{y}} = y {\ddot{x}}\). Using this equality, Eq. (14) reduces to

$$\begin{aligned} {\ddot{x}} = gx\frac{z}{L^2}-\frac{2K}{L^2}x,~{\ddot{y}}= gy\frac{z}{L^2}-\frac{2K}{L^2}y. \end{aligned}$$

In the notation of Definition 4,

$$\begin{aligned} f(x,y,{\dot{x}},{\dot{y}}) = gx\frac{z}{L^2}-\frac{2K}{L^2}x,\\ g(x,y,{\dot{x}},{\dot{y}}) = gy\frac{z}{L^2}-\frac{2K}{L^2}y. \end{aligned}$$

This system is clearly a (1, 1)-dimensional symmetric system in the coordinate system (xy) on an open subset \({\mathcal {Q}}\) of \({\mathbb {R}}^2\). Similar to the 3D LIP biped introduced in Sect. 2, we can study the 3D IP biped. To this end, we can find the impact map from the conservation of angular momentum about the impact point. Although, the real impact map will not give rise to an SHS, as we shall see later in this paper, by defining a hypothetical impact map, we can make the 3D IP an SHS. For example, if \(\Delta = (\Delta _q, \Delta _{{\dot{q}}})\) with \(\Delta _q(x^-,y^-) = (-x_0,y_0)\) and \(\Delta _{{\dot{q}}}\) defined as

$$\begin{aligned} \Delta _{{\dot{q}}}(x^-,y^-,{\dot{x}}^-,{\dot{y}}^-) = ( {\dot{x}}^-, -{\dot{y}}^- ), \end{aligned}$$
(15)

with the switching surface

$$\begin{aligned} {\mathcal {S}} = \left\{ (x,y,{\dot{x}},{\dot{y}}) | x^2+y^2 = x_0^2+y_0^2\right\} , \end{aligned}$$

then \((f,g,\Delta , {\mathcal {Q}},{\mathcal {S}})\) becomes an \((x_0,y_0)\)-invariant SHS, which we will refer to as an SHS ally of the 3D IP biped.

Example 11

In this example, we present an abstract example of an SHS that does not necessarily have a physical counterpart.

$$\begin{aligned} \begin{aligned} {\ddot{x}}=&10x+(\tan (x)-\sin (x))K+xe^{y}+xe^{{\dot{x}}}+y{\dot{y}},\\ {\ddot{y}}=&10y^2+e^{x^2}+x{\dot{y}}, \end{aligned} \end{aligned}$$
(16)

with \(K = {\dot{x}}^2+{\dot{y}}^2\). It immediately follows that this system is symmetric (i.e., odd-even conditions of Definition 4 are satisfied). If we define the impact map as in Definition 4, it becomes an SHS. Figure 7 shows some of the synchronized solutions of this system, where the impact map is assumed to be trivial (i.e., the impact map of the 3D LIP).

Fig. 7
figure 7

Three synchronized solutions of system (16). In this simulation \(x_0 = 0.3, y_0=0.35\). The dotted line is part of the circle \(x^2+y^2 = x_0^2+y_0^2\)

Corollary 12

Let \((\phi (t), \psi (t))\) be a synchronized solution of a \((\phi _0, \psi _0)\)-invariant SHS \((f,g, \Delta , {\mathcal {Q}},{\mathcal {S}})\) defined on an interval \([0,2t_m]\) for some \(t_m>0\) such that \((\phi (0),\psi (0)) = (-\phi _0,\psi _0)\) and \(\phi (t_m) = 0\). If \((\phi (t), \psi (t))\notin {\mathcal {S}}\) for \(t \in (0,2t_m)\), then the solution \((\phi (t), \psi (t))\) is 1-periodic with period \(T = 2t_m\).

Proof

Let \(({\dot{\phi }}(0),{\dot{\psi }}(0)) = ({\dot{\phi }}_0, {\dot{\psi }}_0)\). By Proposition 9, \(\phi (t+t_m)\) is an odd function and \(\psi (t+t_m)\) is an even function. Therefore,

$$\begin{aligned} \phi (2t_m)= & {} -\phi (0) = \phi _0,\quad {\dot{\phi }}(2t_m) = {\dot{\phi }}(0) = {\dot{\phi }}_0,\\ \psi (2t_m)= & {} \psi (0) = \psi _0,\quad {\dot{\psi }}(2t_m) = -{\dot{\psi }}(0) = -{\dot{\psi }}_0. \end{aligned}$$

Thus, since \(\phi (2t_m) = \phi _0\) and \(\psi (2t_m) = \psi _0\), by the third condition in Definition 4, the solution crosses the switching surface \({\mathcal {S}}\) at \(t = 2t_m\). Hence, since \({\dot{\phi }}(2t_m) = {\dot{\phi }}_0\) and \({\dot{\psi }}(2t_m) = -{\dot{\psi }}_0\), by Eq. (10), at the beginning of the next step \({\dot{\phi }} = {\dot{\phi }}_0\) and \({\dot{\psi }} = {\dot{\psi }}_0\). That is, the velocities at the beginning of the next step are the same as those of the current step. Therefore, \((\phi (t),\psi (t))\) is 1-periodic.\(\square \)

Raibert (1986b) has noted similar symmetry conditions for planar legged robots. Assuming certain odd-even conditions for the motor torques in a planar monoped, he shows that the motion of the biped will be in steady state (i.e., periodic). The present work extends this previous work in the following ways: 1) Extension to 3D legged locomotion; 2) Building a rigorous mathematical theory based on this notion of symmetry; 3) Discussion of the problem of stability, where the notion of self-synchronization is introduced; and 4) Presenting a design method based on symmetry and asymmetry to obtain asymptotically stable limit cycles for legged robots.

Figure 8 shows how synchronized solutions of the 3D LIP lead to periodic motions.

Fig. 8
figure 8

Foot-print of the point mass, M, of the \((x_0,y_0)\)-invariant 3D LIP in the \(x-y\) plane for a synchronized solution. In this graph, for demonstration, the left leg and right leg stance phases are distinguished by a solid line and a dotted line, respectively

Thus far we have shown that an SHS has an infinite number of synchronized solutions. However, for a general SHS, we do not know whether these synchronized solutions will cross the impact surface. In general, we would like to know, if the system starts from a fixed configuration \((-\phi _0, \psi _0)\), what the initial velocities \(({\dot{\phi }}_0, {\dot{\psi }}_0)\) should be so that the solution is synchronized. These synchronized solutions are of interest because they lead to periodic orbits. Below we determine such synchronized solutions for the 3D LIP and then generalize the discussion for an SHS.

Example 13

(3D LIP) The equations of motion of the 3D LIP are

$$\begin{aligned} {\ddot{x}}=\omega ^2x,~{\ddot{y}}=\omega ^2y. \end{aligned}$$
(17)

With the initial conditions

$$\begin{aligned} x(0) = -x_0, ~y(0) = y_0, ~{\dot{x}}(0) = {\dot{x}}_0, ~{\dot{y}}(0) = {\dot{y}}_0, \end{aligned}$$
(18)

the solution of system (17) is

$$\begin{aligned} x(t)= & {} -x_0\cosh (\omega t)+\frac{{\dot{x}}_0}{\omega } \sinh (\omega t),\end{aligned}$$
(19)
$$\begin{aligned} y(t)= & {} y_0\cosh (\omega t)+\frac{{\dot{y}}_0}{\omega } \sinh (\omega t). \end{aligned}$$
(20)

We want to find \(({\dot{x}}_0, {\dot{y}}_0)\) such that the solution that starts from \((-x_0, y_0)\) is synchronized. Therefore, if we set the derivative of the second equation above to zero, we find the time, \(t_y\), that it takes for \({\dot{y}}\) to become zero:

$$\begin{aligned} \tanh (\omega t_y)=-\frac{{\dot{y}}_0}{y_0\omega }. \end{aligned}$$
(21)

Similarly, from Eq. (19), the time \(t_x\) at which \(x=0\) is found from the following equation:

$$\begin{aligned} \tanh (\omega t_x)=\frac{x_0 \omega }{{\dot{x}}_0}. \end{aligned}$$
(22)

According to the definition of synchronization, synchronization occurs if \(t_x = t_y\). Therefore, from Eqs. (21) and (22), the motion of the 3D LIP in this step is synchronized if and only if

$$\begin{aligned} {\dot{x}}_0{\dot{y}}_0+\omega ^2 x_0 y_0 = 0. \end{aligned}$$

Thus, if we define \(L:{\mathcal {T}}_{(-x_0, y_0)}{\mathcal {Q}}\rightarrow {\mathbb {R}}\) by

$$\begin{aligned} L({\dot{x}}_0, {\dot{y}}_0) = {\dot{x}}_0{\dot{y}}_0+\omega ^2 x_0 y_0, \end{aligned}$$
(23)

the solution starting from \((-x_0, y_0)\) with initial velocity \(({\dot{x}}_0, {\dot{y}}_0)\) is synchronized if \(L({\dot{x}}_0, {\dot{y}}_0) = 0\).

Function L defined in Eq. (23) is called the synchronization measure of the \((x_0,y_0)\)-invariant 3D LIP. In fact, \(L({\dot{x}}_0, {\dot{y}}_0)=0\) defines a one-dimensional submanifold, \({\mathcal {K}}\), of \({\mathcal {T}}_{(-x_0, y_0)}{\mathcal {Q}}\). Any solution starting from this submanifold is synchronized and leads to periodic motion.

By Proposition 32 in Appendix 1, for a general \((\phi _0,\psi _0)\)-invariant SHS, under some conditions, there exists a function \(L:{\mathcal {T}}_{(-\phi _0,\psi _0)}{\mathcal {Q}}\rightarrow {\mathbb {R}}^{m+n-1}\) with rank \(m+n-1\) such that if \(L({\dot{\phi }}_0, {\dot{\psi }}_0) = 0\), then the solution starting from \((-\phi _0,\psi _0)\) with initial velocity \(({\dot{\phi }}_0, {\dot{\psi }}_0)\) is synchronized. Function L is called the synchronization measure of the \((\phi _0, \psi _0)\)-invariant SHS. If

$$\begin{aligned} {\mathcal {K}} = \left\{ (q,{\dot{q}}) \in {\mathcal {T}}_{(-\phi _0,\psi _0)}{\mathcal {Q}} | L({\dot{q}}) = 0\right\} , \end{aligned}$$

then \({\mathcal {K}}\) is a one-dimensional submanifold of \({\mathcal {T}}_{(-\phi _0,\psi _0)}{\mathcal {Q}}\) and is called the synchronization submanifold of the SHS at \((-\phi _0, \psi _0)\). Any solution starting from the synchronization manifold is synchronized. Since \({\mathcal {K}}\) is an embedded submanifold of \({\mathcal {T}}_{(-\phi _0,\psi _0)}{\mathcal {Q}}\), we can define a local coordinate system (LK) such that (0, K) is a local coordinate system on \({\mathcal {K}}\). In the rest of this paper, we assume that such a coordinate system exists.

Corresponding to an (mn)-dimensional \((\phi _0, \psi _0)\)-invariant SHS, there exists an \((m+n)\)-dimensional restricted Poincaré map \(P: {\mathcal {T}}_{(-\phi _0,\psi _0)}{\mathcal {Q}}\rightarrow {\mathcal {T}}_{(-\phi _0,\psi _0)}{\mathcal {Q}}\) that maps \(({\dot{\phi }},{\dot{\psi }})\) at the beginning of a step to its value at the beginning of the next step. In the coordinate system (LK), P is denoted by \((P_{L}, P_{K})\).

If \(L=0\), the solution is synchronized; therefore, in the coordinate system (LK), P has fixed points of the form \((0, K^*)\) for some \(K^*\in {\mathbb {R}}\). In the following proposition, a general form for the Jacobian of P at \((0,K^*)\) is derived.

Proposition 14

Let \(P: {\mathcal {T}}_{(-\phi _0,\psi _0)}{\mathcal {Q}}\rightarrow {\mathcal {T}}_{(-\phi _0,\psi _0)}{\mathcal {Q}}\) denote the restricted Poincaré map corresponding to a \((\phi _0, \psi _0)-\)invariant SHS. Let \((0, K^*)\) be a fixed point of P. In the coordinate system (LK) of \({\mathcal {T}}_{(-\phi _0, \psi _0)}{\mathcal {Q}}\), we have

$$\begin{aligned} DP(0,K^*) = \left( \begin{array}{c@{\quad }c} \frac{\partial P_L}{\partial _L}(0,K^*) &{} 0\\ \star &{} 1 \end{array}\right) . \end{aligned}$$
(24)

Proof

If \(k = m+n\),

$$\begin{aligned} DP_{{1:k-1,k}}(0, K^*)= & {} \frac{\partial P_L}{\partial K}(0,K^*)\\= & {} \lim \nolimits _{\delta K_0\rightarrow 0} \frac{P_L(0,K^*+\delta K_0)-P_L(0,K^*)}{\delta K_0}. \end{aligned}$$

However, for small enough \(\delta K_0\), when \(L = 0\) the solution is periodic; therefore,

$$\begin{aligned} P_L(0,K^*+\delta K_0) = 0, ~P_L(0,K^*) = 0. \end{aligned}$$

From the above equation for \(DP_{{1:k-1,k}}(0, K^*)\), we have

$$\begin{aligned} DP_{{1:k-1,k}}(0, K^*)= & {} 0, \end{aligned}$$

as desired. Similarly,

$$\begin{aligned} P_K(0,K^*+\delta K_0) = K^*+\delta K_0,~P_K(0,K^*) = K^*. \end{aligned}$$

Therefore,

$$\begin{aligned} DP_{{k,k}}(0, K^*)= & {} \frac{\partial P_K}{\partial K}(0,K^*)\\= & {} \lim \nolimits _{\delta K_0\rightarrow 0} \frac{P_K(0,K^*+\delta K_0)-P_K(0,K^*)}{\delta K_0}\\= & {} \lim \nolimits _{\delta K_0\rightarrow 0} \frac{K^*+\delta K_0-K^*}{\delta K_0}\\= & {} 1. \end{aligned}$$

Thus, the last column of the matrix \(DP(0,K^*)\) is \([0,1]^T\) as desired.\(\square \)

Equation (24) shows that the Jacobian of the restricted Poincaré map P at \((0,K^*)\) necessarily has an eigenvalue of 1. This result was, in fact, expected, as by Proposition 9, an SHS has an infinite number of synchronized orbits.

Corollary 15

In the case where \(m=n=1\),

$$\begin{aligned} DP(0,K^*) = \left( \begin{array}{cc} \lambda &{} 0\\ \star &{} 1 \end{array}\right) , \end{aligned}$$
(25)

where \(\lambda = \partial P_L/\partial L(0,K^*)\). Therefore, the eigenvalues of \(DP(0,K^*)\) are \(\{\lambda , 1\}\).

In general, even for 2-dimensional SHSs, we cannot find a closed form formula for \(\lambda \). However, in the 3D LIP, as the following proposition states, we can find a closed form formula for \(\lambda \) (see Razavi et al. 2015).

Proposition 16

Suppose that a symmetric periodic orbit of the \((x_0,y_0)\)-invariant 3D LIP biped model has velocities \({\dot{x}} = {\dot{x}}_0>0\) and \({\dot{y}} = {\dot{y}}_0<0\) when \(x = -x_0\). Suppose that \(K_0\) is the kinetic energy of the 3D LIP on the periodic orbit at \(x = -x_0\) and \(K_0 - \omega ^2 x_0 y_0>0\). We have

$$\begin{aligned} \lambda = -1 + \frac{2\omega ^2 (y_0^2 - x_0^2)}{\omega ^2 (y_0^2 - x_0^2)+2\sqrt{K_0^2-\omega ^4x_0^2 y_0^2}}. \end{aligned}$$
(26)

According to Eq. (26) for the 3D LIP, \(|\lambda |<1\) if \(y_0 > x_0\).

Proposition 33 in Appendix 1 generalizes this proposition to a class of switching surfaces. In particular, it is shown that by modifying the switching surface, \(\vert \lambda \vert \) can become smaller than 1 for values of \(x_0\) and \(y_0\), where \(y_0\) is not necessarily greater than \(x_0\).

Definition 17

The SHS is said to be self-synchronized at \(K^*\) if the eigenvalues of the \((m+n-1)\)-dimensional matrix \(\partial P_L/\partial L (0,K^*)\) are within the unit circle.

Figure 9 shows a simulation of the 3D LIP, demonstrating its self-synchronization property under an \((x_0, y_0)\)-invariant gait, where \(x_0 = 0.2\) and \(y_0 = 0.22\). In this simulation, the initial velocities \(({\dot{x}}_0, {\dot{y}}_0)\) are such that \(L({\dot{x}}_0, {\dot{y}}_0)\ne 0\), but eventually L converges to zero, and the solution approaches a (synchronized) periodic orbit.

Fig. 9
figure 9

Self-synchronization of the 3D LIP for \(x_0 = 0.2\) and \(y_0 = 0.22\). The numbers on the graph refer to the step number

Fig. 10
figure 10

Two synchronized solutions of the 3D LIP with two different kinetic energies for \(x_0 = 0.3\) and \(y_0 = 0.35\). The top curve corresponds to a higher kinetic energy

Remark 18

(Synchronization and Kinetic Energy) For the 3D LIP it was shown that the eigenvalues of the Poincaré map at the fixed points \((K_*,0)\) are \(\{\lambda , 1\}\), and if \(|\lambda |<1\), then the symmetric periodic orbits are self-synchronized. This means that the period of oscillations in the x direction eventually matches that in the y direction, and the 3D LIP biped follows a periodic orbit. The other eigenvalue, which is 1, corresponds to neutral stability in kinetic energy. That is, if a small perturbation is applied to the 3D LIP, it will still become synchronized but will eventually follow a periodic orbit with a different level of kinetic energy. For instance, Fig. 10 shows two periodic orbits of a 3D LIP with two different levels of kinetic energy. In Sect. 4, we illustrate how judiciously chosen asymmetries, such as loss of energy at impact in combination with energy gain over a step, may move the eigenvalues within the unit circle. With this approach, the stability problem in 3D legged locomotion is viewed as synchronization plus the convergence of the kinetic energy. Of course, in 2D legged locomotion, synchronization is not an issue.

In the next example, as an application of the notion of the SHS in legged locomotion, we study an 8-DOF 3D biped. In particular, controllers are found such that the zero dynamics of the system together with a trivial impact map becomes an SHS, thus guaranteeing the existence of an infinite number of periodic orbits.

Example 19

(8-DOF 3D biped zero dynamics) Consider the 3D biped described in Figs. 11 and 12. This simplified model has 8 degrees of freedom and 6 actuators, 3 in each leg. Consequently, this biped has 2 degrees of underactuation. The COM height and mass distribution of this model match those of ATRIAS (Ramezani et al. 2014), however, this model has less degrees of freedom, which helps us better explain the theory.

We denote the generalized coordinates by \((q,{\dot{q}})\), with \(q = (\theta _r, \theta _p, q_1, q_2, q_3, q_4, q_5, q_6)\), where \((\theta _r, \theta _p)\) is the roll and pitch angle of the torso in the inertial frame. These two angles describe the orientation of the torso, which consists of a point mass, in the inertial frame. The other angles are defined in Fig. 12.

Fig. 11
figure 11

8-DOF 3D biped

Fig. 12
figure 12

Angle definitions. Left Sagittal Plane, Right Frontal Plane. Knee angles \(q_3\) and \(q_6\) are assumed to be non-negative, the rest of angles are positive in the counter clock wise direction

Our goal is to find periodic orbits for this biped. To this end, controllers are found such that the zero dynamics, in the sense of Byrnes and Isidori (1985), together with a trivial impact map becomes a (1, 1)-dimensional \((x_0,y_0)\)-invariant SHS. Once the hybrid system becomes an SHS, the existence of an infinite number of synchronized solutions is guaranteed. As discussed in the previous section, these synchronized solutions can become periodic orbits if they cross the switching surface.

To make the zero dynamics a symmetric system, the outputs must be properly defined so that the desired symmetry exists in the system. Compared with the 3D LIP, an odd symmetry in the sagittal plane and an even symmetry in the frontal plane could make the resulting zero dynamics a symmetric system. To this end, the torso is kept upright, the stance leg knee angle is kept at zero, and the swing leg moves in symmetry with the stance leg. Therefore, the outputs that define the zero dynamics are assumed to be

$$\begin{aligned} y_1 = \left( \begin{array}{c} \theta _r\\ \theta _p\\ q_3 \end{array} \right) , ~ y_2 = \left( \begin{array}{c} q_4+q_1\\ q_5+q_2\\ q_6 \end{array}\right) . \end{aligned}$$
(27)

Let \(u_{s}\) be the controllers that keep these outputs zero (Isidori 1995). Straightforward calculations show that \((q_1, q_2)\) and their first derivatives are valid coordinates for the zero dynamics manifold. The following proposition shows that the associated zero dynamics is a symmetric system.

Proposition 20

Let \({\mathcal {Q}}\) denote the configuration space of the 8-DOF 3D biped, and let \(y_1\) and \(y_2\) be defined as in Eq. (27). Define

$$\begin{aligned} {\mathcal {Z}} = \{(q,{\dot{q}})\in {\mathcal {TQ}} | y = 0 , {\dot{y}} = 0 \}, \end{aligned}$$

where \(y = [y_1; y_2]\). Then \((q_1, q_2, {\dot{q}}_1, {\dot{q}}_2)\) can be viewed as a coordinate system for \({\mathcal {Z}}\) under the diffeomorphism on \({\mathcal {Z}}\) that maps \((0, 0, q_1, q_2, 0, -q_1, -q_2, 0)\) to \((q_1,q_2)\) and \((0, 0, {\dot{q}}_1, {\dot{q}}_2, 0, -{\dot{q}}_1, -{\dot{q}}_2, 0)\) to \(({\dot{q}}_1,{\dot{q}}_2)\). Moreover, the zero dynamics can be written in the form

$$\begin{aligned} {\ddot{q}}_1 = f(q_1, q_2, {\dot{q}}_1, {\dot{q}}_2), ~{\ddot{q}}_2 = g(q_1, q_2, {\dot{q}}_2, {\dot{q}}_2), \end{aligned}$$

where f and g satisfy the odd-even properties of Definition 4 in the coordinates \((q_1, q_2)\); that is, \((f,g,{\mathcal {Q}})\) is a symmetric system in the coordinate system \((q_1,q_2)\).

Proof

See Appendix 2.\(\square \)

Our goal is to achieve a stable periodic orbit for this 8-DOF 3D biped by first analyzing an SHS ally of the system and then breaking the existing symmetry by judiciously chosen “asymmetries” as shall be discussed in the next section. However, to obtain an SHS ally of the 8-DOF 3D biped, we need to define an impact map of the form of Definition 4, for example, similar to the one in Example 10. In particular, we assume that, at impact, the system remains on the zero dynamics, and

$$\begin{aligned} (x^+,y^+) = (-x_0,y_0),~({\dot{x}}^+,{\dot{y}}^+) = ({\dot{x}}^-,-{\dot{y}}^-) \end{aligned}$$
(28)

for some \(x_0\) and \(y_0\), where \((x(q_1,q_2),y(q_1,q_2))\) is the position of the hip in the \(x-y\) plane, and the switching surface is

$$\begin{aligned} {\mathcal {S}} = \left\{ (q, {\dot{q}}) | x^2(q)+y^2(q) = x_0^2+y_0^2\right\} . \end{aligned}$$
(29)

On the zero dynamics, the switching surface defined in Eq. (29) is equivalent to \({\mathcal {S}} = \{(q, {\dot{q}}) | z_{F}(q) = 0\}\), where \(z_F\) is the height of the swing leg end (Razavi et al. 2015).

One can check that the change of coordinates \(x = x(q_1,q_2)\), \(y = y(q_1,q_2)\) satisfies the conditions of Proposition 6. Therefore, the zero dynamics of the 8-DOF 3D biped defined in Proposition 20 with the impact map defined in Eq. (28) is an \((x_0, y_0)\)-invariant SHS.

Fig. 13
figure 13

8-DOF 3D biped on the zero dynamics

Figure 13 shows a schematic of the biped when it is on the zero dynamics. By Proposition 9, this zero dynamics has infinitely many synchronized solutions, and by Corollary 12, under the \((x_0, y_0)\)-invariant gait, it has infinitely many periodic orbits if these synchronized solutions cross the switching surface. Figure 14 shows a periodic orbit of the zero dynamics of the 8-DOF 3D biped. This solution corresponds to the periodic walking of the 8-DOF 3D biped with the trivial impact map and is self-synchronized and neutrally stable in kinetic energy.

Fig. 14
figure 14

8-DOF periodic orbit under the \((x_0, y_0)\)-invariant gait with \(x_0 = 0.2\) and \(y_0 =0.21\). As it is seen in this graph, this periodic orbit is self-synchronized

Remark 21

While the outputs defined above result in an SHS, they must be modified to ensure that an \((x_0, y_0)\)-invariant gait occurs. To this end, the swing leg needs to be positioned such that at the beginning of the next step, \(x = -x_0\) and \(y = y_0\). This swing leg placement will be discussed in the next section, where the notion of “asymmetries” is introduced.

4 Obtaining asymptotically stable periodic orbits by adding asymmetry to a symmetric hybrid system

In Sect. 3 we saw that the restricted Poincaré map in an SHS necessarily has an eigenvalue of 1, which in the case of legged systems corresponds to the neutral stability of kinetic energy. This neutral stability is in part due to the structure of the impact map in an SHS. For instance, in the 3D IP or the 8-DOF 3D biped, we assumed a hypothetical trivial impact map by which the system becomes an SHS. In fact, on a synchronized periodic orbit of an SHS, kinetic energy is conserved upon impact. In practice, however, a legged machine typically loses kinetic energy upon impact or due to friction. Thus, to compensate for these losses, which we call energy dissipating asymmetry, some positive energy, or energy injecting asymmetry, needs to be added to the system. In the following definition, these asymmetries are modeled as perturbations to an SHS.

Definition 22

Let \(\varSigma _\epsilon = (X_\epsilon , Q, \Delta _\epsilon , {\mathcal {S}})\) be a class of second order hybrid systems systems indexed by \(\epsilon \in O\subset {\mathbb {R}}^k\) such that \(\varSigma _s := \varSigma _0\) is a \(q_0\)-invariant SHS for \(q_0\in {\mathcal {Q}}\), and O is an open set containing \(\epsilon = 0\). Then \(\varSigma _\epsilon \) is said to be a \(q_0\)-invariant Perturbed Symmetric Hybrid System (PSHS) with perturbation \(\epsilon \).

We assume that \(\varSigma _\epsilon \) is smooth, that is, \(X_\epsilon (x) = X(\epsilon , x)\) and \(\Delta _\epsilon (x) = \Delta (\epsilon , x)\) for some smooth functions X and \(\Delta \).

Below we present three examples to show how adding asymmetries, which according to the above definition are quantified by \(\epsilon \), can turn infinitely many periodic orbits of an SHS into an isolated limit cycle. If the asymmetries are appropriately introduced, for each set of asymmetries there is a stable limit cycle. Therefore, we end up having a family of stable limit cycles, which can be classified based on the amount of asymmetry. Moreover, by changing the asymmetries (for instance, the average pitch angle) during walking, the legged system can move from one periodic orbit to another. The effect of introducing asymmetries to symmetric walking gaits for a spring-leg biped is studied in Merker et al. (2011) and Merker et al. (2015), and it is shown that an appropriate choice of asymmetries can result in stability.

4.1 Planar examples

Definition 4 can be modified to include the case where \(n = 0\), that is, the case in which the manifold \({\mathcal {Q}}\) is m-dimensional and \(q = \phi \) is a coordinate system on \({\mathcal {Q}}\), where \(\phi \) is \(m \times 1\). Such an SHS is said to be (m, 0)-dimensional in which case, clearly, the synchronization is not relevant; however, one can easily check that with obvious modifications, Proposition 9, Corollary 12 and Proposition 14 hold true.

Example 23

(2D LIP with External Force) For the first example, we discuss a 2D LIP biped. The 2D LIP biped is a (1, 0)-dimensional SHS. In a 2D LIP, the synchronization measure L is always 0 simply because the problem is planar (thus, synchronization is not an issue). However, we can still apply the results discussed in Sect. 3 because all the arguments hold true for a (1, 0)-dimensional system as well. The equations of motion of an \(x_0\)-invariant 2D LIP are

$$\begin{aligned} {\ddot{x}} = \omega ^2 x, \end{aligned}$$

where \(\omega ^2 = g/M\) with M as the point mass, and

$$\begin{aligned} x^+ = -x_0,~{\dot{x}}^+ = {\dot{x}}^-, \end{aligned}$$

with the switching surface

$$\begin{aligned} {\mathcal {S}} = \{ (x,{\dot{x}}) | x = x_0\}, \end{aligned}$$

for some \(x_0>0\). According to Definition 4, this is clearly an SHS with \(m = 1\) and \(n = 0\). From Proposition 9, this system possesses infinitely many synchronized 1-periodic orbits. Thus, for these periodic orbits, according to Proposition 14, the derivative of the restricted Poincaré map is 1. We now add energy injecting and energy dissipating asymmetries and investigate the stability of the periodic orbits. The energy injecting asymmetry we add is a positive external force applied to mass M, and the energy dissipating asymmetry added is the kinetic energy loss at impact. We model such asymmetries as follows. In the continuous phase,

$$\begin{aligned} {\ddot{x}} = \omega ^2 x + \frac{c_1}{M}F_0(x) , \end{aligned}$$
(30)

for a constant \(c_1>0\) and a smooth function \(F_0(x)>0\), and in the discrete phase,

$$\begin{aligned} x^+ = -x_0, ~{\dot{x}}^+ = c_2{\dot{x}}{\bar{~,}} \end{aligned}$$
(31)

for a constant \(0<c_2<1\) with the switching surface

$$\begin{aligned} {\mathcal {S}} = \{ (x,{\dot{x}}) | x = x_0\}. \end{aligned}$$

Then the above hybrid system is an \(x_0\)-invariant PSHS with \(\epsilon = (c_1, 1-c_2)\). Since the problem is planar, to study stability, all we need to check is whether the kinetic energy is stable, that is, if after adding the above asymmetries, the eigenvalue 1 moves within the unit circle. If we multiply both sides of Eq. (30) by \({\dot{x}}\) and integrate with respect to time from \(t =0\), where \(x = -x_0\), to \(t=T\), where \(x = x_0\), we obtain

$$\begin{aligned} \int _0^T {\ddot{x}} {\dot{x}} dt = \omega ^2 \int _0^T x {\dot{x}} dt+ \int _0^T \frac{c_1}{M}F_0(x) {\dot{x}} dt. \end{aligned}$$

From this equation,

$$\begin{aligned} \int _0^T {\ddot{x}} {\dot{x}} dt = \omega ^2 \int _{-x_0}^{x_0} x dx+ \int _{-x_0}^{x_0} \frac{c_1}{M}F_0(x) dx. \end{aligned}$$

Simplifying this equation results in

$$\begin{aligned} \frac{1}{2} (({\dot{x}}^-)^2-({\dot{x}}^+)^2) = 0+ \frac{c_1}{M}W_0, \end{aligned}$$
(32)

where

$$\begin{aligned} W_0 = \int _{-x_0}^{x_0} F_0(x) dx, \end{aligned}$$
(33)

and \(c_1W_0\) is the work done by the external force \(c_1F_0(x)\) in one step. Since by assumption \(F_0(x)>0\), we have \(W_0>0\). Moreover, from Eq. (32), we have

$$\begin{aligned} K_0^- - K_0^+ = c_1 W_0, \end{aligned}$$
(34)

where \(K_0^+\) is the kinetic energy at the beginning of the step and \(K_0^-\) is the kinetic energy at the end of the step. From Eq. (31), if \(K_1^+\) is the kinetic energy at the beginning of the next step, we have

$$\begin{aligned} K_1^+ = c^2_2 K_0^-. \end{aligned}$$
(35)

Combining this equation with Eq. (34),

$$\begin{aligned} K_1^+ = c^2_2 K_0^+ +c^2_2 c_1 W_0. \end{aligned}$$
(36)

This equation is, in fact, the equation for the Poincaré map in terms of kinetic energy. If we set \(K_1^+ = K_0^+ \), for \(c = (c_1, c_2)\) we find the unique fixed point \(K^*_c\) of the Poincaré map of the PSHS:

$$\begin{aligned} K^*_c= \frac{c^2_2 c_1W_0}{1-c^2_2}. \end{aligned}$$
(37)

From Eq. (36), the eigenvalue of the linearized Poincaré map is \(\lambda = c^2_2\), which is clearly in the unit circle, since \(0< c_2 < 1\).

In the above example, before adding asymmetries, the Poincaré map has infinitely many fixed points that are neutrally stable; whereas after adding appropriate asymmetries, the system has one single asymptotically stable limit cycle. In fact, based on Eq. (37), each value of \(c_1\) and \(c_2\) results in a different limit cycle. That is, we obtain a family of stable limit cycles that can be indexed by \((c_1,c_2)\).

We note that a general criterion for stability of hybrid systems with one degree of underactuation is given in (Chevallereau et al. 2003), which for this example will yield the same results as above.

It is immediate to generalize the above example to the following proposition.

Proposition 24

Consider the PSHS

$$\begin{aligned} {\ddot{x}} = f_s(x) + c_1F(x), \end{aligned}$$

where F(x) is a smooth function, \(f_s(x)\) is a smooth odd function, and \(c_1 > 0\), with the impact map

$$\begin{aligned} x^+ = -x_0, ~{\dot{x}}^+ = c_2{\dot{x}}^-, \end{aligned}$$

and the switching surface

$$\begin{aligned} {\mathcal {S}} = \{ (x,{\dot{x}}) | x = x_0\}, \end{aligned}$$

where \(0< c_2 < 1\). Let \(W_0 = \int _{-x_0}^{x_0} F(x) dx\) and define \(K = (1/2) {\dot{x}}^2\). If \(W_0>0\), then the system has an asymptotically stable periodic orbit such that

$$\begin{aligned} K^* = \frac{c^2_2 c_1 W_0}{1-c^2_2} \end{aligned}$$

is a fixed point of the Poincaré map and

$$\begin{aligned} \lambda = c^2_2 \end{aligned}$$
(38)

is its derivative at \(K^*\).

Example 25

(2D inverted pendulum on slope) Another example in 2D that illustrates the introduction of asymmetries to an SHS is the IP biped on a slope, as described in Fig. 15. If we assume that the slope is zero and the impact map is trivial, that is, \({\dot{\theta }}^+ = {\dot{\theta }}^-\), the system is an SHS and has infinitely many periodic orbits with neutrally stable kinetic energy. With slope \(\alpha > 0\), which is acting as a perturbation to this SHS, the equation of motion in the continuous phase is

$$\begin{aligned} {\ddot{\theta }} = \omega ^2 \cos (\alpha ) \sin (\theta ) + \omega ^2 \sin (\alpha ) \cos (\theta ), \end{aligned}$$

where \(\omega ^2 = g/l\). Using the conservation of angular momentum at impact, the impact map is found to be

$$\begin{aligned} {\dot{\theta }}^+= \cos (2 \theta _0){\dot{\theta }}^-, \end{aligned}$$
(39)

where \(-\theta _0\) is the initial value of \(\theta \) in each step. The step length will then be \(d = 2 l \sin (\theta _0)\). Using the terminology of Proposition 24, \(f_s(\theta ) = \omega ^2 \cos (\alpha ) \sin (\theta )\), \(F(\theta ) = \cos (\theta )\), \(c_1 = \omega ^2 \sin (\alpha )\) and \(c_2 = \cos (2\theta _0)\). Therefore, the PSHS is described by the following equations:

$$\begin{aligned} {\ddot{\theta }} = f_s(\theta ) + c_1 F(\theta ), \end{aligned}$$
(40)

where \(f_s\) is an odd function of \(\theta \), and

$$\begin{aligned} \theta ^+ = - \theta _0, ~{\dot{\theta }}^+ = c_2{\dot{\theta }}^-. \end{aligned}$$
(41)

Define

$$\begin{aligned} W_0= & {} \int _{-\theta _0}^{\theta _0} f_a(\theta ) d\theta \nonumber \\= & {} \omega ^2 \sin (\alpha ) \int _{-\theta _0}^{\theta _0} \cos (\theta ) d\theta \nonumber \\= & {} 2 \omega ^2 \sin (\alpha ) \sin (\theta _0). \end{aligned}$$
(42)

From Proposition 24, the fixed point of the Poincaré map in terms of \(K = (1/2) {\dot{\theta }}^2\) is

$$\begin{aligned} K^* = \frac{2\omega ^2\cos ^2(2\theta _0)\sin (\theta _0)\sin (\alpha )}{1-\cos ^2(2\theta _0)}, \end{aligned}$$
(43)

and the derivative of the Poincaré map at this point is \(\lambda = \cos ^2(2\theta _0)\), which has an absolute value of less than one for \(0<\theta _0 <\pi /4\); hence, the periodic orbit is stable.

We note that in contrast to the passive compass gait models such as Garcia et al. (1998) and Goswami et al. (1997), we assume that the initial configuration of the biped at the beginning of each step is fixed. This condition in an actual biped can be achieved by swing leg control.

Fig. 15
figure 15

Simple Planar Biped on Slope. The time that center of mass spends before the support point (i.e., the deceleration period) is less than the time it spends after the support point (i.e., acceleration period)

4.2 3D examples

In this subsection we present three examples of 3D legged locomotion and will show how adding asymmetries could affect the solutions of the corresponding SHSs. In the first two examples, to simplify the analysis, we have considered simple impact maps, whereas in the final example, which studies the 8-DOF 3D biped, the actual impact map is used.

Example 26

(3D LIP with External Force) Consider the \((x_0, y_0)\)-invariant 3D LIP biped with a constant positive external force \(F_0 > 0\) in the x-direction. The equations of motion are

$$\begin{aligned} {\ddot{x}} = \omega ^2 x + F_0, ~{\ddot{y}} = \omega ^2 y, \end{aligned}$$
(44)

with the impact map

$$\begin{aligned} x^+ = -x_0, y^+ = y_0, ~{\dot{x}}^+ = c_1 {\dot{x}}^-,~{\dot{y}}^+ = -c_2 {\dot{y}}^-, \end{aligned}$$
(45)

for \(0<c_1<1\) and \(0<c_2< 1\). Also, the switching surface is assumed to be

$$\begin{aligned} {\mathcal {S}} = \left\{ (x,y,{\dot{x}},{\dot{y}}) | x^2+y^2 = x_0^2+ y_0^2\right\} . \end{aligned}$$
(46)

for \(x_0>0\) and \(y_0>0\). Clearly, this is a PSHS with \(\epsilon = (F_0, 1-c_1, 1-c_2)\); that is, if \(\epsilon = 0\), the system becomes an SHS. To study the existence and stability of the periodic orbits of this PSHS, we find the fixed points of the restricted Poincaré map \(P: {\mathcal {T}}_{(-x_0,y_0)}{\mathcal {Q}} \rightarrow {\mathcal {T}}_{(-x_0,y_0)}{\mathcal {Q}}\) and the eigenvalues of its Jacobian. One can check that the above system has the following integrals:

$$\begin{aligned} {\dot{x}}^2-\omega ^2x^2-2F_0x= & {} C_1,\\ {\dot{y}}^2-\omega ^2y^2= & {} C_2,\\ {\dot{x}}{\dot{y}}-\omega ^2xy-F_0y= & {} C_3. \end{aligned}$$

Let \((-x_0, y_0, {\dot{x}}_0, {\dot{y}}_0)\) be the state at the beginning of the current step and \((x_1, y_1, {\dot{x}}_1^-, {\dot{y}}_1^-)\) be the state at the end of the step. By the equations above,

$$\begin{aligned} {\dot{x}}_0^2-\omega ^2x_0^2+2F_0x_0= & {} ({\dot{x}}_1^-)^2-\omega ^2x_1^2-2F_0x_1,\\ {\dot{y}}_0^2-\omega ^2y_0^2= & {} ({\dot{y}}_1^{-})^2-\omega ^2y_1^2,\\ {\dot{x}}_0{\dot{y}}_0+\omega ^2x_0y_0-F_0y_0= & {} {\dot{x}}_1^-{\dot{y}}_1^--\omega ^2x_1y_1-F_0y_1. \end{aligned}$$

Based on the definition of the impact map, we have \({\dot{x}}_1^+ = c_1{\dot{x}}_1^-\) and \({\dot{y}}_1^+ = -c_2 {\dot{y}}_1^-\). If we substitute these into the equations above, then

$$\begin{aligned} {\dot{x}}_0^2-\omega ^2x_0^2+2F_0x_0= & {} d_1({\dot{x}}_1^+)^2-\omega ^2x_1^2-2F_0x_1, \\ {\dot{y}}_0^2-\omega ^2y_0^2= & {} d_2({\dot{y}}_1^{+})^2-\omega ^2y_1^2,\\ {\dot{x}}_0{\dot{y}}_0+\omega ^2x_0y_0-F_0y_0= & {} d_3{\dot{x}}_1^+{\dot{y}}_1^+-\omega ^2x_1y_1-F_0y_1, \end{aligned}$$

where \(d_1 = \frac{1}{c_1^2}, d_2 = \frac{1}{c_2^2}\) and \(d_3 = \frac{-1}{c_1c_2}\). Also, according to the definition of the switching surface,

$$\begin{aligned} x_1^2+y_1^2 = x_0^2 + y_0^2. \end{aligned}$$
(47)

The last four equations implicitly define the restricted Poincaré map \(({\dot{x}}_0, {\dot{y}}_0) \mapsto ({\dot{x}}_1^+, {\dot{y}}_1^+)\). Setting \({\dot{x}}_* = {\dot{x}}_0 = {\dot{x}}_1^+\) and \({\dot{y}}_* = {\dot{y}}_0 = {\dot{y}}_1^+\) in these equations, we can find the fixed point, \(({\dot{x}}_*, {\dot{y}}_*)\), of the Poincaré map. Let \(x_1^*\) and \(y_1^*\) be the values of the \(x_1\) and \(y_1\) on this periodic orbit. If we linearize the equations above around \(({\dot{x}}_*, {\dot{y}}_*)\), we can find the Jacobian of the restricted Poincaré map. Let \((-x_0, y_0, {\dot{x}}_*+\delta {\dot{x}}_0, {\dot{y}}_*+\delta {\dot{y}}_0)\) be the perturbed initial state and let \(x_1 = x_1^* + \delta x_1\), \(y_1 = y_1^*+\delta y_1\) and \(({\dot{x}}_1^+, {\dot{y}}_1^+) = ({\dot{x}}_* + \delta {\dot{x}}_1, {\dot{y}}_* + \delta {\dot{y}}_1)\). From the equations above,

$$\begin{aligned} 2{\dot{x}}_* \delta {\dot{x}}_0= & {} 2d_1 {\dot{x}}_* \delta {\dot{x}}_1-(2\omega ^2 x_1^* +2F_0) \delta x_1,\\ 2{\dot{y}}_* \delta {\dot{y}}_0= & {} 2d_2 {\dot{y}}_* \delta {\dot{y}}_1 - 2\omega ^2 y_1^* \delta y_1,\\ {\dot{y}}_* \delta {\dot{x}}_0 + {\dot{x}}_* \delta {\dot{y}}_0= & {} d_3 ({\dot{y}}_* \delta {\dot{x}}_1 + {\dot{x}}_* \delta {\dot{y}}_1),\\&- \omega ^2 y_1^* \delta x_1 - (\omega ^2 x_1^* +F_0)\delta y_1,\\ 0= & {} x_1^* \delta x_1 + y_1^* \delta y_1. \end{aligned}$$

These equations implicitly define the Jacobian of the Poincaré map. For simplicity, we write them in matrix form. Define

$$\begin{aligned} A = \left( \begin{array}{cc} 2{\dot{x}}_* &{} 0\\ 0 &{} 2{\dot{y}}_*\\ {\dot{y}}_* &{} {\dot{x}}_*\\ 0&{}0 \end{array}\right) , \end{aligned}$$

and

$$\begin{aligned} B =\left( \begin{array}{cccc} 2d_1 {\dot{x}}_* &{} 0 &{} -\left( 2\omega ^2 x_1^* +2F_0\right) &{} 0\\ 0 &{} 2d_2 {\dot{y}}_* &{} 0 &{} - 2\omega ^2 y_1^* \\ d_3 {\dot{y}}_* &{} d_3 {\dot{x}}_* &{} - \omega ^2 y_1^* &{} - \left( \omega ^2 x_1^* +F_0\right) \\ 0 &{} 0 &{} x_1^* &{} y_1^* \end{array}\right) . \end{aligned}$$

Then

$$\begin{aligned} A \left[ \begin{array}{c} \delta {\dot{x}}_0\\ \delta {\dot{y}}_0 \end{array} \right] = B \left[ \begin{array}{c} \delta {\dot{x}}_1\\ \delta {\dot{y}}_1\\ \delta x_1\\ \delta y_1 \end{array} \right] . \end{aligned}$$

From this equation,

$$\begin{aligned} \left[ \begin{array}{c} \delta {\dot{x}}_1\\ \delta {\dot{y}}_1\\ \delta x_1\\ \delta y_1 \end{array} \right] = B^{-1} A \left[ \begin{array}{c} \delta {\dot{x}}_0\\ \delta {\dot{y}}_0 \end{array} \right] . \end{aligned}$$

The first two rows of the equation above define the linearized Poincaré map at \(({\dot{x}}_*,{\dot{y}}_*)\); thus, if \(C = B^{-1} A\), then

$$\begin{aligned} DP({\dot{x}}_*, {\dot{y}}_*) = \left( \begin{array}{cc} C_{1,1} &{} C_{1,2} \\ C_{2,1} &{} C_{2,2} \end{array} \right) . \end{aligned}$$

These results are used below to numerically study the \((x_0, y_0)\)-invariant PSHS described in Eqs. (44) and (45) with

$$\begin{aligned} x_0 = 0.3, ~y_0 = 0.4, ~\omega ^2 = 9. \end{aligned}$$

The fixed points are found in the (LK) coordinates, where L is the synchronization measure of the 3D LIP, that is, \(L = {\dot{x}}{\dot{y}}+\omega ^2 x_0 y_0\) and \(K = (1/2)({\dot{x}}^2+{\dot{y}}^2)\). The fixed points of the restricted Poincaré map are denoted by \((L^*,K^*)\). We know that for the associated SHS, that is, when the perturbation is zero, \(L^* =0\); however, for the PSHS, as it can be seen in Table 2, \(L^*\) is nonzero, but as long as asymmetries (i.e., \(F_0\), \(1-c_1\) and \(1-c_2\)) are small, \(L^*\) remains small.

Figure 16 illustrates how the eigenvalues change with the addition of asymmetries. From the bottom graph, one can see how the asymmetries turn the neutrally stable periodic orbits into asymptotically stable limit cycles. Again, we end up with a family of limit cycles, which can be indexed by \((F_0, c_1, c_2)\).

Table 1 Different Numerical Cases of the PSHS with \(\epsilon = (F_0, 1-c_1, 1-c_2)\)
Table 2 The cases are defined in Table 1. \(\lambda _{s}\) denotes the eigenvalue of the corresponding SHS evaluated at \(K^* = 0.5(({\dot{x}}_*)^2+({\dot{y}}_*)^2)\). As seen in the table, the eigenvalue 1 of the SHS becomes smaller than 1 once the asymmetries are added
Fig. 16
figure 16

Eigenvalues of the PSHS vs. SHS when \(F_0 = 1\) and \(c_1 = c_2 = c\) is changing from 0.99 to 0.85. In these graphs, for each value of c there exists a fixed point \(({\dot{x}}_*,{\dot{y}}_*)\) for the PSHS. At this fixed point, the eigenvalues of the corresponding SHS is found from Eq. (26) with \(K_0 = (1/2)({\dot{x}}_*^2+{\dot{y}}_*^2)\). From the bottom graph it is clear that after adding asymmetries the neutral stability of kinetic energy is turned into asymptotic stability

For our next example, we revisit Example 19, this time adding asymmetries to the system.

Example 27

(8-DOF 3D Biped Zero Dynamics with Asymmetries) In Example 19, we studied the 8-DOF 3D biped zero dynamics under the outputs defined in Eq. (27). We saw that if these outputs are zero, the zero dynamics becomes an SHS, and the system has infinitely many synchronized solutions. Now we introduce asymmetries, including the loss at impact, to this idealized example. To this end, rather than zero, we drive output \(y_1\) defined in Eq. (27) to

$$\begin{aligned} y_1^d = \left( \begin{array}{c} 0\\ \theta _p^d\\ 0 \end{array}\right) , \end{aligned}$$
(48)

for \(\theta _p^d >0\). In other words, with this output, the biped’s torso is leaned forward by an angle \(\theta _p^d\) to produce an energy injecting asymmetry so that the COM of the biped spends more time in front of the support point. This approach is similar to that of the 2D biped walking downhill (see Fig. 15), where the positive slope produces an energy injecting asymmetry. For the swing leg motion, as in Example 19, we use scissor symmetry. Thus, in sum, the following outputs must be driven to zero:

$$\begin{aligned} y_1 = \left( \begin{array}{c} \theta _r\\ \theta _p\\ q_3 \end{array} \right) , y_2 = \left( \begin{array}{c} q_4+q_1\\ q_5+q_2\\ q_6 \end{array} \right) , \end{aligned}$$
(49)

with \(y_1^d\) defined in Eq. (48) and \(y_2^d = [-2\theta _p^d, 0, 0]^T\). The reason that \(y_2^d\) is not zero as in Example 19 is that, in order for the scissor symmetry to occur when we have nonzero pitch angle, we should have \((q_4+\theta _p)+(q_1+\theta _p) = 0\). For later use, we define new coordinates \(({\hat{q}}, {\dot{{\hat{q}}}})\), which are identical to \((q,{\dot{q}})\) except for \({\hat{q}}_1\) and \({\hat{q}}_4\), which are defined as follows:

$$\begin{aligned} {\hat{q}}_1 = q_1 + \theta _p, ~{\hat{q}}_4 = q_4 + \theta _p. \end{aligned}$$

In this coordinate system, we update \(y_1\) and \(y_2\) as follows:

$$\begin{aligned} y_1 = \left( \begin{array}{c} {\hat{\theta }}_r\\ {\hat{\theta }}_p\\ {\hat{q}}_3 \end{array} \right) , y_2 = \left( \begin{array}{c} {\hat{q}}_4+{\hat{q}}_1\\ {\hat{q}}_5+{\hat{q}}_2\\ {\hat{q}}_6 \end{array} \right) . \end{aligned}$$
(50)

Then the desired outputs are \(y_1^d = [0, \theta _p^d, 0]^T\) and \(y_2^d = [0, 0, 0]\). We can write the output \( y := [y_1; y_2]\) in the form

$$\begin{aligned} y = A ~{\hat{q}}, \end{aligned}$$

where A is a \(6\times 8\) matrix such that \(A(1,1) = A(2,2) = A(3,5) = A(4,3) = A(4,6) = A(5,4) = A(5,7) = A(8,8) = 1\), and all other elements of A are zero. Since the equations of motion in the continuous phase are in the form

$$\begin{aligned} M({\hat{q}}) {\ddot{{\hat{q}}}} + H({\hat{q}},{\dot{{\hat{q}}}}) = B u, \end{aligned}$$
(51)

using the zero dynamics method,

$$\begin{aligned} u = (AM^{-1}B)^{-1} (AM^{-1}H-K_d {\dot{y}} - K_p (y-y_d)). \end{aligned}$$
(52)

Define

$$\begin{aligned} u_s = (AM^{-1}B)^{-1} (AM^{-1}H-K_d {\dot{y}} - K_p y), \end{aligned}$$
(53)

and

$$\begin{aligned} u_a = (AM^{-1}B)^{-1} (K_p y_d). \end{aligned}$$
(54)

Clearly, \(u = u_s+u_a\). Then \({\mathcal {Z}}_s = \{(q,{\dot{q}}) | y = 0 , {\dot{y}} = 0 \}\) is the zero dynamics manifold of the system

$$\begin{aligned} M({\hat{q}}) {\ddot{{\hat{q}}}} + H({\hat{q}},{\dot{{\hat{q}}}}) = B u_s, \end{aligned}$$
(55)

and \({\mathcal {Z}}_a = \{(q,{\dot{q}}) | y = y_d , {\dot{y}} = 0 \}\) is the zero dynamics manifold of

$$\begin{aligned} M({\hat{q}}) {\ddot{{\hat{q}}}} + H({\hat{q}},{\dot{{\hat{q}}}}) = B (u_s+u_a), \end{aligned}$$
(56)

In Sect. 3 we saw that the zero dynamics of the 8-DOF 3D biped on \({\mathcal {Z}}_s\) with the impact map defined in Eq. (28) is an SHS. From the definition of \(u_a\), the zero dynamics on \({\mathcal {Z}}_a\) is an SHS if \(\theta _p^d = 0\). Now we study how having a \(\theta _p^d > 0\) and adding impact loss could affect the periodic orbits of the corresponding SHS. To initially illustrate mathematically how asymmetries may result in stability, a simplified (non-physical) impact map is used that results both in energy loss and in hybrid invariance of the zero dynamics manifold, that is, points on the switching surface are mapped back to the zero dynamics manifold by the impact map. A physically correct impact map is considered in Example 28.

Therefore, in the current example we need an impact map of the form

$$\begin{aligned} \left( \begin{array}{lll} {\dot{{\hat{q}}}}_1^+ \\ {\dot{{\hat{q}}}}_2^+ \end{array} \right) = A({\hat{q}}_1, {\hat{q}}_2) \left( \begin{array}{lll} {\dot{{\hat{q}}}}_1^- \\ {\dot{{\hat{q}}}}_2^- \end{array} \right) , \end{aligned}$$

such that

$$\begin{aligned} \Vert A({\hat{q}}_1, {\hat{q}}_2) \Vert< k <1, \end{aligned}$$
(57)

for some \(k>0\). The map that we use here is

$$\begin{aligned} A({\hat{q}}_1, {\hat{q}}_2) = \left( \begin{array}{cc} c_1 &{} 0\\ 0 &{} -c_2 \end{array} \right) , \end{aligned}$$

for \(0<c_1<1\) and \(0<c_2<1\), which clearly satisfies (57). The switching surface is that of Eq. (29). With these assumptions, the zero dynamics together with the impact map defined above is a PSHS with \(\epsilon = (\theta _p^d, 1-c_1, 1-c_2)\).

Fig. 17
figure 17

The top figure shows hip position in the x direction vs y direction. The SHS has infinitely many periodic orbits, five of which are graphed here. However, as seen in this figure, the PSHS, with \(\theta _p^d = 0.2\) and \(c_1 = c_2 = 0.95\), has one single limit cycle. The bottom figures shows the kinetic energies associated with these periodic orbits. All five kinetic energies converge to a unique kinetic energy, which is the kinetic energy of the limit cycle of the PSHS

Figure 17 shows the simulation results of the 8-DOF 3D biped with the above asymmetries. In the top graph of Fig. 17, five periodic orbits of the SHS (out of its infinitely many periodic orbits) are shown. These five graphs have five different levels of kinetic energy, which are sketched in the bottom figure. As the top graph shows under the specific \((x_0, y_0)\)-invariant gait used, the PSHS has only one periodic orbit, which is in fact a stable limit cycle. Unlike the SHS, in the PSHS, the kinetic energy is asymptotically stable, and the zero dynamics possesses an asymptotically stable limit cycle.

It should be noted that in this example, it was assumed that the system remains on the zero dynamics all the time. In practice, however, this assumption may not hold. Moreover, here it was assumed that at the beginning of the step \(x = -x_0\) and \(y = y_0\). However, this assumption depends on how accurate the swing leg placement is. In the next example, we study the 8-DOF 3D biped, relaxing all these simplifying assumptions.

Example 28

(8-DOF 3D Full Model) The equations of motion in the continuous phase are derived as discussed earlier. For the impact map in this example, rather than using simple models, we use the actual impact map using the methodology of (Hurmuzlu and Marghitu 1994), which for legged robots is illustrated in (Westervelt et al. 2007, Chap. 3). Under this impact map,

$$\begin{aligned} {\dot{q}}^+ = A(q) {\dot{q}}^-, \end{aligned}$$

for some matrix A(q) with the switching surface

$$\begin{aligned} {\mathcal {S}} = \{(q,{\dot{q}}) | z_F(q) = 0\}, \end{aligned}$$

where \(z_F\) is the height of the swing leg end. For the posture control we choose the same output as that in Example 27:

$$\begin{aligned} y_1 = \left( \begin{array}{c} \theta _r\\ \theta _p\\ q_3 \end{array} \right) , y_1^d = \left( \begin{array}{c} 0\\ \theta _p^d\\ 0 \end{array} \right) . \end{aligned}$$

In Example 27, we used scissor symmetry for the swing leg motion. However, since the conditions \(x = -x_0\) and \(y = y_0\) must hold at the beginning of each step, we cannot use scissor symmetry during the entire step. Therefore, as it follows, the swing leg is controlled differently. Let \((x_F, y_F,z_F)\) denote the position of the swing leg end and (xyz) denote the position of the hip. Define \(x_{FH} = x-x_F\) and \(y_{FH} = y-y_F\). If \(t_I\) is the time of impact, we should have

$$\begin{aligned} x_{FH}(t_I) = -x_0, ~y_{FH}(t_I) = -y_0. \end{aligned}$$

We note that these two conditions are similar to those in the definition of the \((x_0,y_0)\)-invariant 3D LIP model in Section I. To satisfy the above two conditions, one can choose from many different outputs; however, here we use perhaps the simplest output as defined below:

$$\begin{aligned} y_2 = \left( \begin{array}{c} x_{FH}+x_0\\ y_{FH}+y_0\\ q_6-q_6^d \end{array} \right) , \end{aligned}$$
(58)

where \(q_6^d\) is the desired swing knee angle. The desired output, \(y_2^d\), is \([0, 0, 0]^T\) and \({\dot{y}}_2^d = k(y_2-y_2^d)\) for some \(k>0\); that is, the controllers are found to drive \(y_2\) to \(y_2^d\) at a rate \({\dot{y}}_2^d = k(y_2-y_2^d)\). With this choice of outputs, the farther \(y_2\) is from its desired value, the faster it moves to reach the desired value.

To prevent the swing leg from scuffing the ground, \(q_6^d\) is set to be greater than zero in the first half of the step and set to zero in the second half.

Figure 18 shows the simulation results for the full model of the 8-DOF 3D biped for which the existence of an asymptotically stable periodic orbit is verified numerically.

Fig. 18
figure 18

The top figure shows the hip position (xy) for the SHS and PSHS. The SHS has infinitely many periodic orbits, five of which are graphed here. However, as seen in this figure, the PSHS has one single limit cycle. The bottom figure shows the kinetic energies associated with these periodic orbits at the beginning of each step. In the PSHS, all five solutions with different initial kinetic energies eventually converge to a limit cycle with a unique kinetic energy

Fig. 19
figure 19

This graph shows the COM position, \((r_{G_x}, r_{G_y})\), for the 8-DOF full model versus the SHS. The SHS COM is symmetric while that of the 8-DOF full model (i.e, the PSHS) is asymmetric with \({\bar{r}}_{G_x} > 0\)

Remark 29

To improve stability in kinetic energy, we can add the following event-based controller:

$$\begin{aligned} x_0 = x_0^{shs} + k(K-K_0), \end{aligned}$$
(59)

where \(x_0^{shs}\) is the \(x_0\) used in the corresponding SHS, K is the kinetic energy at the beginning of the step, and \(K_0\) is a constant value. A numerical analysis shows that that this controller improves the stability of the kinetic energy and enlarges the basin of attraction of the limit cycle.

Remark 30

In Fig. 19, the COM curves of the SHS and the PSHS (i.e, biped’s full model) are graphed. From this figure, the COM footprint in the SHS is symmetric while that of the 8-DOF 3D biped after adding asymmetries is skewed to the right. In other words, the COM of the PSHS spends more time in front of the support point. This asymmetry produces an overall positive acceleration in the continuous phase of the motion. In particular, in this numerical example, for the 8-DOF 3D SHS \({\bar{r}}_{G_x} = 0\), and for the full model \({\bar{r}}_{G_x} = 0.01\).

5 A design process for obtaining stable gaits for legged robots

In the previous sections, we discussed how by selecting appropriate outputs, the zero dynamics of a bipedal robot can become an SHS, and how by adding asymmetries, stable periodic walking can be achieved. In this section, we summarize this process for achieving stable periodic walking, given a legged system. The process includes three steps.

  1. (i)

    Find a set of outputs that can make the zero dynamics of the system symmetric.

  2. (ii)

    Study the zero dynamics of the system (i.e., the obtained symmetric system) assuming an impact map of the form of Definition 4, that is, an impact map that makes the symmetric zero dynamics an SHS.

  3. (iii)

    Add asymmetries (could be done step by step). The asymmetries include a set of positive asymmetries and a set of negative asymmetries. Positive asymmetries are those that result in feeding energy to the system, for example, by leaning the torso forward or by ankle push-off for robots with actuated feet. In contrast, negative asymmetries can include losses due to impact or friction. In a point-foot legged robot, the design parameters for achieving stability of the periodic orbit of the PSHS (i.e., the biped with asymmetries) include \(\theta _p^d\) and step lengths \((x_0, y_0)\), by which the amount of energy gain and loss can be adjusted.

One advantage of this process is that while the given robot might be very complex, the SHS corresponding to the robot, where the existence of synchronized solutions that could lead to periodic walking is guaranteed, is typically much easier to study.

Remark 31

We note that in our design process, unlike Grizzle et al. (2008), Chevallereau et al. (2009) and Hamed et al. (2014), we do not perform any offline or online search for periodic orbits. Instead, by defining proper outputs, we first study an SHS ally of the given legged system. This SHS necessarily has infinitely many synchronized periodic orbits. Then, once the asymmetries are introduced, all these periodic orbits can turn into one stable limit cycle. In other words, the resulting limit cycle is the “natural selection” of the system. Moreover, adjusting the asymmetries (for instance, choosing a different desired pitch angle, \(\theta _p^d\), or \(x_0\) and \(y_0\)) will produce many limit cycles of the legged system, which could correspond to different walking speeds or levels of energy efficiency. This feature of having multiple stable limit cycles can be exploited as a way to adjust the walking speed.

Finally, we remark that this approach is not limited to a specific legged robot. For instance, this design method has been successfully tested on different scales of a 9-DOF 3D biped, a simplified model of ATRIAS (Ramezani et al. 2014).

6 Conclusion and future work

In this paper we present a method for obtaining stable periodic orbits for legged robots modeled as hybrid systems. This method is based on the notion of a SHS, also introduced in this paper. An SHS possesses certain odd-even symmetries, a notion that is a generalization of the work of Raibert (1986a) to 3D legged locomotion.

It is shown that an SHS has an infinite number of synchronized solutions that become periodic orbits if they cross the switching surface. For these periodic orbits, the notion of self-synchronization is defined, and a form for the Jacobian of the restricted Poincaré map is derived. At any of the synchronized periodic orbits, this Jacobian necessarily has an eigenvalue of 1.

Given a legged robot, to generate stable periodic walking, we define outputs such that the zero dynamics together with a trivial impact map turn into an SHS with infinitely many periodic orbits. It is shown that these periodic orbits can be self-synchronized; however, in terms of kinetic energy they are neutrally stable.

The idealized model of the legged robot (i.e., the symmetric zero dynamics) enables us to define, for 3D legged locomotion, the notion of self-synchronization, which means that the periods of oscillation in the sagittal and frontal plane eventually tend to a common period. This notion, first introduced for the 3D LIP in an earlier paper (Razavi et al. 2015), is generalized to an SHS.

While the idealized models of legged robots give us insight into how symmetry could lead to neutrally stable steady state walking, they must be modified to obtain asymptotically stable periodic orbits. To this end, the notion of introducing asymmetries to an SHS is discussed. The asymmetries include the energy gains and losses in the continuous and discrete phases of motion. Through several examples, we show that the proper choice of asymmetries could turn the synchronized solutions of the SHS into a stable limit cycle. This process suggests that the stability problem in 3D legged locomotion might be viewed as a problem of self-synchronization plus stability of the kinetic energy.

An advantage of the controllers that are found based on this process is that their structure is fixed, and only a few parameters (such as the desired pitch angle and step length), which correspond to asymmetries, need to be set.

In this paper, apart from the last example, the gaits with a fixed step length, that is, the \((x_0, y_0)\)-invariant gaits, were studied. Although this gait could lead to self-synchronization and stability of the kinetic energy, in practice, the step length does not have to remain fixed and could vary step by step. For instance, in the 8-DOF 3D biped, an event-based controller was used to adjust the step length, leading to better stabilization of kinetic energy. For future work, we intend to study how actively adjusting the step length could help both the synchronization and the stability of the kinetic energy. We believe that using the \((x_0, y_0)\)-invariant gait as a nominal gait and equipping it with active foot positioning algorithms (Raibert 1984; Seipel and Holmes 2005; Peuker et al. 2012; Rezazadeh et al. 2015) can greatly increase the robustness and basin of attraction of the resulting limit cycle, particularly important for walking or running on rough terrain.