Abstract
For many planar bipedal models, each step is divided into a finite time single support period and an instantaneous double support period. During single support, the biped is typically underactuated and thus has limited ability to reject disturbances. The instantaneous nature of the double support period prevents nonimpulsive control during this period. However, if the double support period is expanded to finite time, it becomes overactuated. While it has been hypothesized that this overactuation during a finite-time double support period may improve disturbance rejection capabilities, this has not yet been tested. This paper presents a refined biped model by developing a finite-time, adaptive double support controller capable of handling the overactuation and limiting slip. Using simulations, we quantify the disturbance rejection capabilities of this controller and directly compare them to a typical, instantaneous double support model for a range of gait speeds and perturbations. We find that the finite-time double support controller increased the walking stability of the biped in approximately half of the cases, indicating that a finite-time double support period does not automatically increase disturbance rejection capabilities. We also find that the timing and magnitude of the perturbation can affect if a finite-time double support period enhances stability. Finally, we demonstrate that the adaptive controller reduces slipping.
1 Introduction
An open challenge for bipedal gait is how to best increase robustness of gait to disturbances and how to best prevent falls. For robots, this can improve performance and allow for more extensive applications of bipedal robots. For humans, understanding how to achieve this can improve the quality of life for elderly adults by reducing injuries due to falls [1–3]. The easiest and safest method to answer this question is to study gait through simulations and robotics. In this work, we compare how an instantaneous versus finite-time double support period affects the ability of planar bipedal simulations to avoid falls due to external disturbances. While a biped can (and will) fall due to internal perturbations, such as sensor or actuator noise, or due to improper control, this work focuses on how including a finite-time double support period can handle the introduction of external disturbances.
While there are several different ways to model bipedal walking, one energetically efficient approach that can mimic human walking utilizes the passive dynamics of the biped [4]. These models typically divide the step into a finite-time single support period, when only one leg is in contact with the ground, and an instantaneous double support period, when both legs are in contact with the ground (e.g., Refs. [5–9]). These models typically have N rigid links connected by (N − 1) revolute joints with actuators at each joint and may include a torso. They typically have point [5,8,9] or curved [10,11] feet, so the foot cannot apply a moment to the ground. Therefore, the model has N degrees-of-freedom (DOF) and (N − 1) actuators during single support and is thus underactuated. Because of this underactuation, these biped models cannot easily control their global orientation during single support, which limits their ability to quickly reject disturbances. Hybrid zero dynamic (HZD) control is a control method developed for such planar bipeds and combines hybrid models with the use of zero dynamics through feedback linearization [5,6,11]. With standard HZD-based control, if the biped is perturbed forward or backward, the coordination between limbs is kept consistent with an unperturbed step [12]. However, this joint coordination does not ensure that the velocity of the biped is consistent with an unperturbed step, and incorrect velocity often causes falls. Because the double support period is instantaneous, it is uncontrollable with non-impulsive actuators and cannot be used to reject disturbances.
There are several approaches to correct these velocity disturbances and prevent falls. One is to adjust the single support controller based on error in the unactuated velocity [11,13,14]. Another is to alter the step length through foot placement [15,16]. The approach investigated here is to use a finite-time double support period to take advantage of the overactuation during double support. This overactuation occurs due to the additional foot contact, causing the biped to have (N − 2) DOF and (N − 1) actuators. Overactuation may be useful because it provides an infinite number of ways to accomplish a task, so a secondary goal, such as rejecting disturbances, can be specified in addition to maintaining joint coordination. While there has been limited work comparing the disturbance rejection capabilities of bipeds with instantaneous versus finite-time double support periods, it is typically assumed to be advantageous in all cases. There is some support for this. Lengthening the double support period in human gait (typically by walking more slowly) may improve stability [17]. Further, increasing step length has been shown to increase the stability of the double support period [18]. Recent work has also shown that humans struggle to voluntarily lengthen double support duration when forced to maintain a constant walking speed, suggesting that they use the longest possible double support duration for a given speed [19]. This may suggest that a long double support duration increases stability. Further, for very simple models with variability, a flat-foot model with finite-time double support periods [20] was able to walk with much higher levels of variability than a passive point-foot model [21]. Therefore, we formally evaluate if a finite-time double support period increases disturbance rejection capabilities in planar biped models.
To evaluate this, a finite-time double support controller is needed. A finite-time double support period can be included for any biped model with at least four links, regardless of the foot model, by modeling the period as a closed-loop kinematic chain. Because the system is overactuated during the double support period, not all coordinates can be defined independently. Instead, additional conditions are required to uniquely define the joint torques. One common approach is to track a ground reaction force (GRF) to reduce the chance of slipping [22–24]. However, it may be unnecessary to directly control the GRF as long as the resulting GRF keep the feet firmly planted on the ground. Alternatively, the norm of the joint torques can be minimized to reduce energy expenditure [25–33]. Minimizing the joint torques is not trivial because they are derived as a function of the GRF, which are in turn dependent on the joint torques. Unfortunately, preliminary work using this method indicated that the biped often slipped during double support following perturbations [34]. This could be addressed by solving a quadratic programming problem [35], but this can be computationally expensive. In this work, an HZD-based adaptive controller that modifies the joint torques to prevent slipping was developed to reduce slipping while still minimizing joint torques.
To quantify disturbance rejection capabilities, the system can be evaluated through brute force by applying random perturbations until the biped falls or through more sophisticated techniques. One such technique is local perturbation analysis, which applies small perturbations and quantifies how quickly the biped returns to the nominal gait [36,37]. However, this focuses on local stability, which may not correlate with falling [38,39]. A second popular technique is to ensure the center of pressure remains within the base of support [40,41], which is a very conservative stability metric. Human gait, which is usually quite robust, is typically unstable with respect to this stability criteria [42]. Another popular technique is to look at N-step capturability, or the ability of a biped to come to a stop without falling while taking N-steps or fewer [43,44]. However, this considers the ability of the biped to come to a complete stop, rather than the ability to keep walking in the presence of disturbances. Finally, another technique that has been used is to treat the biped as a metastable system and estimate the number of steps before failure using a Markov chain [45]. A metastable system is one that exhibits locally stable behavior in the presence of small perturbation, but is guaranteed to eventually fail [46]. As such, it possesses qualities of both a stable and unstable system. This technique is best suited to discrete perturbations [34] instead of continuous perturbations [47]. By treating the system as metastable, we were able to test the robustness of the system to random perturbations in a computationally feasible manner even when the biped was able to walk for millions of steps before failing. By comparing the number of steps to fail, we can ascertain if a finite-time double support period is useful.
To evaluate the effect of a finite-time double support period on disturbance rejection capabilities, two double support controllers were developed and tested in simulation. The first “controller” was simply an instantaneous, unactuated impact mapping, as is common for HZD-based controllers. The second controller was a finite-time double support controller. We chose to deal with the overactuation by minimizing the norm of the joint torques rather than controlling one of the GRF. For both double support scenarios, HZD control was used for the single support period. This paper expands on our preliminary work in Ref. [34] by refining the model and controller and performing substantially more testing to determine if a finite-time double support period enhances stability. The refined model introduced a compliant ground which improved the ability to find valid finite-time double support controllers. An additional adaptive controller was developed to prevent excessive slipping during double support. Finally, a broader range of gait speeds and perturbations were used to quantify how stability changes with a finite-time versus instantaneous double support period. Section 2 provides an overview of the bipedal model with the added compliant ground model. Section 3 provides a derivation of the controllers. Section 4 describes how the gaits were chosen and compared. Finally, Sec. 5 compares the different double support controllers and discusses the results.
2 Model
Parameter | Value | Description |
---|---|---|
Mh | 53.8 | Hip mass (kg) |
Lt | 0.431 | Thigh length (m) |
Lc,t | 0.185 | Thigh COM distance (m) |
Mt | 10.4 | Thigh mass (kg) |
Jt | 0.106 | Thigh moment of inertia (kg·m2) |
Ls | 0.433 | Shank length (m) |
Lc,s | 0.177 | Shank COM distance (m) |
Ms | 4.07 | Shank mass (kg) |
Js | 0.175 | Shank moment of inertia (kg·m2) |
R | 0.300 | Foot radius (m) |
fy | 0.075 | Vertical foot COM distance (m) |
fx | 0.075 | Horizontal foot COM distance (m) |
fc,x | 0.075 | Foot rotation distance (m) |
Mf | 2.00 | Foot mass (kg) |
Jf | 0.100 | Foot moment of inertia (kg·m2) |
kp | 100 | Proportional control gain |
kd | 10.0 | Derivative control gain |
Parameter | Value | Description |
---|---|---|
Mh | 53.8 | Hip mass (kg) |
Lt | 0.431 | Thigh length (m) |
Lc,t | 0.185 | Thigh COM distance (m) |
Mt | 10.4 | Thigh mass (kg) |
Jt | 0.106 | Thigh moment of inertia (kg·m2) |
Ls | 0.433 | Shank length (m) |
Lc,s | 0.177 | Shank COM distance (m) |
Ms | 4.07 | Shank mass (kg) |
Js | 0.175 | Shank moment of inertia (kg·m2) |
R | 0.300 | Foot radius (m) |
fy | 0.075 | Vertical foot COM distance (m) |
fx | 0.075 | Horizontal foot COM distance (m) |
fc,x | 0.075 | Foot rotation distance (m) |
Mf | 2.00 | Foot mass (kg) |
Jf | 0.100 | Foot moment of inertia (kg·m2) |
kp | 100 | Proportional control gain |
kd | 10.0 | Derivative control gain |
Note: The values were the same for both legs. Here, COM indicates the center of mass.
Parameter | Value | Description |
---|---|---|
kn | 1 × 103 | Vertical spring stiffness (N/m) |
kt | 1 × 102 | Horizontal spring stiffness (N/m) |
cn | 1 × 104 | Vertical damping (Ns/m) |
ct | 1 × 104 | Horizontal damping (Ns/m) |
Nk | 1.5 | Nonlinear stiffness coefficient |
Nc | 0 | Nonlinear damping coefficient |
Parameter | Value | Description |
---|---|---|
kn | 1 × 103 | Vertical spring stiffness (N/m) |
kt | 1 × 102 | Horizontal spring stiffness (N/m) |
cn | 1 × 104 | Vertical damping (Ns/m) |
ct | 1 × 104 | Horizontal damping (Ns/m) |
Nk | 1.5 | Nonlinear stiffness coefficient |
Nc | 0 | Nonlinear damping coefficient |
Note: The values were constant for all simulations.
A full step consisted of four parts—a single support period, an instantaneous smooth transition to double support, a double support period, and an instantaneous smooth transition to single support. Both the single and double support periods were modeled with Eq. (1). The double support period can either be instantaneous [7] or finite time. The transition to double support always occurred when the swing foot contacted the ground. During this transition, the coordinates were relabeled so that the same set of angles always referred to the stance and swing legs. The transition to single support always began at the end of the double support period. For the instantaneous double support model, this occurred immediately after the double support period. For the finite-time double support model, the transition occurred when the vertical GRF for the trailing leg equaled 0. Both the transition to single support and the transition to double support were smooth and instantaneous. They were modeled as algebraic mappings—either the identity matrix I for the transition to single support, or a relabeling matrix, R, where RR = I for the transition to double support.
3 Control
Both an instantaneous impact with no double support controller and a finite-time double support controller were examined, and the following sections will derive each controller and outline the differences between them.
3.1 Single Support.
The following assumptions must hold during the single support period to ensure that the gait was valid:
S1. The swing leg began behind the hip and ended in front of the hip;
S2. the single support phase ended when the swing foot made contact with the ground; and
S3. the phase variable was strictly monotonic and uncontrolled.
3.2 Instantaneous Double Support Model.
3.3 Finite-Time Double Support Controller.
For the next scenario, the double support period was finite time and was an extension of the controller given in Ref. [34]. As with the single support controller, the finite-time double support controller assumed that the compliant ground was rigid for the purpose of finding joint torque. With this fixed-ground assumption, the controller behaved as if the biped was overactuated because the feet cannot move independently. Thus, the biped effectively only has four DOF during double support, so attempting to track five independent joint trajectories generally results in incompatible prescribed motion. Because of this, the output function could only define the trajectory of four DOF independently. The remaining two DOF were defined by the assumption that the feet neither slid or lifted up, other than to end the double support period. Given that there were five actuators and only four independent coordinates, the equations could be manipulated to minimize the norm of u, thereby reducing energy expenditure. This section derives the time-based double support controller.
Phase-Based Finite-Time Double Support Controller.
An alternative option was a phase-based double support controller [34]. In contrast to the time-based finite-time double support controller, this controller parameterizes the progression of the biped through the double support period independently from time. Parameterizing the gait this way improves the robustness of gait when implemented during the single support period [12]. As discussed in Ref. [34], using a phase variable during double support necessitates the control of joint velocities instead of joint positions, as was done with the other controllers in this work.
While it was theoretically possible to implement this type of controller, finding a set of desired joint velocity trajectories was prohibitively difficult. After adding compliant ground, we were unable to find a successful gait via either hand-tuning or optimization without also changing the ground parameters. Any gaits we found had invalid GRF which forced the feet to lift up at the beginning of double support or to slip. Because of these challenges with the phase-based controller, the following results only compare a time-based finite-time double support controller with an instantaneous double support model.
3.4 Adaptive Controller.
During double support, the biped became prone to slipping [34]. This was due to the fact that both feet were in contact with the ground and any actuation could easily cause the feet to move antagonistically. Additionally, any tracking error at the beginning of double support would cause the controller to force the feet to slip to correct the error. Therefore, an additional controller was used to detect when the feet were about to slip and adjust the torques in order to obtain valid GRF and prevent slipping. However, by using a compliant ground model (2), the GRF were a function of the joint positions and velocities–which the controller was unable to directly affect. Thus, the controller was unable to correct slipping instantaneously and needed to look ahead to prevent slipping before it occurred.
4 Simulation Generation
Once the controllers for the single and double support periods were developed, simulations were created to evaluate if a finite-time double support period enhanced stability. To do so, gaits were found via optimization, then perturbation testing was performed.
4.1 Optimizing Gait.
For all simulations, the joint angle trajectories were parameterized by Bézier polynomials with order 5 for single support and order 4 for double support. When a finite-time double support controller is used, the gait is defined by two Bézier polynomials—one for the double support period and one for the single support period—defined such that the desired positions and velocities were continuous between phases. When the instantaneous double support model is used, only one Bézier polynomial is required to define the gait. For the single support period, all actuated joints, q2 · · · q6 were tracked using Eq. (5). For the finite-time double support period, the knee and ankle joints q3 · · · q6 were tracked and controlled using Eq. (13). Six gaits were found for each double support condition spanning a range of speeds from 0.8 m/s to 1.2 m/s (Table 3, Fig. 3). In some cases, multiple gaits were found for a given speed to evaluate the fall risk sensitivity on the Bézier polynomial choice.
Parameter | Instantaneous | Finite-time |
---|---|---|
Gait 1 (v ≈ 0.8m/s) | ||
Gait speed (m/s) | 0.800 | 0.807 |
Step length (m) | 1.053 | 0.973 |
Step time (s) | 1.316 | 1.205 |
f | 0.208 | 0.377 |
Gait 2 (v ≈ 0.8m/s) | ||
Gait speed (m/s) | 0.783 | 0.789 |
Step length (m) | 1.052 | 0.985 |
Step time (s) | 1.344 | 1.249 |
f | 0.197 | 0.406 |
Gait 3 (v ≈ 0.9m/s) | ||
Gait speed (m/s) | 0.905 | 0.876 |
Step length (m) | 1.041 | 0.969 |
Step time (s) | 1.151 | 1.106 |
f | 0.204 | 0.469 |
Gait 4 (v ≈ 1.0m/s) | ||
Gait speed (m/s) | 1.001 | 0.979 |
Step length (m) | 1.039 | 0.974 |
Step time (s) | 1.038 | 0.995 |
f | 0.222 | 0.478 |
Gait 5 (v ≈ 1.1m/s) | ||
Gait speed (m/s) | 1.099 | 1.100 |
Step length (m) | 1.038 | 0.979 |
Step time (s) | 0.945 | 0.890 |
f | 0.197 | 0.519 |
Gait 6 (v ≈ 1.2m/s) | ||
Gait speed (m/s) | 1.200 | 1.132 |
Step length (m) | 1.024 | 0.949 |
Step time (s) | 0.853 | 0.838 |
f | 0.246 | 0.766 |
Parameter | Instantaneous | Finite-time |
---|---|---|
Gait 1 (v ≈ 0.8m/s) | ||
Gait speed (m/s) | 0.800 | 0.807 |
Step length (m) | 1.053 | 0.973 |
Step time (s) | 1.316 | 1.205 |
f | 0.208 | 0.377 |
Gait 2 (v ≈ 0.8m/s) | ||
Gait speed (m/s) | 0.783 | 0.789 |
Step length (m) | 1.052 | 0.985 |
Step time (s) | 1.344 | 1.249 |
f | 0.197 | 0.406 |
Gait 3 (v ≈ 0.9m/s) | ||
Gait speed (m/s) | 0.905 | 0.876 |
Step length (m) | 1.041 | 0.969 |
Step time (s) | 1.151 | 1.106 |
f | 0.204 | 0.469 |
Gait 4 (v ≈ 1.0m/s) | ||
Gait speed (m/s) | 1.001 | 0.979 |
Step length (m) | 1.039 | 0.974 |
Step time (s) | 1.038 | 0.995 |
f | 0.222 | 0.478 |
Gait 5 (v ≈ 1.1m/s) | ||
Gait speed (m/s) | 1.099 | 1.100 |
Step length (m) | 1.038 | 0.979 |
Step time (s) | 0.945 | 0.890 |
f | 0.197 | 0.519 |
Gait 6 (v ≈ 1.2m/s) | ||
Gait speed (m/s) | 1.200 | 1.132 |
Step length (m) | 1.024 | 0.949 |
Step time (s) | 0.853 | 0.838 |
f | 0.246 | 0.766 |
Note: Here, fobj is approximately the non-dimensional energy consumption of the gait.
To find the Bézier polynomials for the finite-time double support model, simulated annealing was used to find gaits at approximately 0.8 m/s (gait 1), 1.0 m/s (gait 4), and 1.2 m/s (gait 6). An initial, hand-tuned Bézier polynomial was used as the starting point for the gait at approximately 1.0 m/s. This optimized Bézier polynomial was then used as the starting point for the optimizations to find gaits 1 and 6. To compare the controllers, the gaits should be as similar as possible. To help ensure this, the optimal gaits for the finite-time double support model were used as the initial point for the instantaneous double support model optimization. The finite-time double support gait was simulated for one step to determine the joint angle trajectories over the entire step. These trajectories were then parameterized in the phase domain using the single support phase variable (3). This resulted in usable gaits for the instantaneous double support controller, which were then optimized using simulated annealing in order to minimize the objective function (25) and meet the step constraints. To determine how sensitive the stability of each controller was to the specific gait, three additional gaits were generated using a gradient descent algorithm. These were found by starting with an average speed gait of 1.0 m/s (gait 4) for each controller and optimizing the gait while slowly reducing or increasing the constrained walking speed. By doing this, we found gaits at approximately 0.9 m/s (gait 3), 0.8 m/s (gait 2), and 1.1 m/s (gait 5).
In total, six valid gaits were found for each controller. The structure of a step was fundamentally different for the instantaneous double support model compared with the finite-time double support model (Fig. 4). Primarily, during a finite-time double support period, the joints are coordinated in order to reach the desired hip velocity at the beginning of single support. In contrast, the instantaneous double support period requires using the end of the single support period to modulate hip velocity in preparation for the next single support period. As a result, we could not match both the kinematic and spatio-temporal characteristics of the gaits. To allow the most direct comparison between different controllers, the spatio-temporal characteristics were matched while the kinematics were different. Despite the differences in the joint angles, step length and walking speed were very similar for all speed-matched scenarios (Table 3).
4.2 Perturbation Testing.
In order to determine the robustness of these controllers to disturbances, perturbations were applied to the biped during simulation. The system was metastable, meaning it will eventually, but not quickly, fail when experiencing small, random perturbations. Because of this, it was analyzed as a discrete-time Markov chain [45]. This technique, as outlined below, created a deterministic state-transition mesh using known perturbations. This mesh was then used to find the Markov chain from the nominal gait to the failure state (slipping or falling) when the distribution of random perturbations was known.
In this work, a comprehensive set of perturbations were tested. The perturbations simulated a horizontal push and were implemented in simulation using a horizontal impulse applied to the hip at a given time point during the gait. The three perturbation points were (1) just before the double support period, (2) just before the single support period, and (3) halfway through the single support period. For the instantaneous double support period, perturbations (1) and (2) occurred immediately before and after the impact mapping (11), respectively. The discrete set of perturbations over which the biped was tested was Sd = [−0.2, 0.2] m/s with a 0.002 m/s spacing. Three different normal stochastic distributions were used for testing—low variance with , medium variance with , and high variance with . All gaits and both double support models were tested. The adaptive controller was used with the finite-time double support controller during perturbation testing. A separate Ts and therefore MFPT was found for each perturbation point, walking speed, stochastic distribution, and double support model combination.
5 Results and Discussion
In general, the objective function cost increased with increasing speed and with a finite-time double support period (Table 3). However, for a given walking speed and double support model, there seems to be a tradeoff between gait stability and objective function cost (Tables 3,4). This is apparent when comparing gaits 1 and 2. For both the finite-time and instantaneous double support models walking at v ≈ 0.8 m/s, the more stable gait (gait 1 for the instantaneous double support model and gait 2 for the finite-time double support model) had a higher objective function cost than the less stable gait. Further supporting the trade-off, both objective function cost and stability generally increased with increasing speed. The increase in stability may be due to the fact that as the walking speed increases, a given velocity perturbation magnitude shrinks in relation to the velocity of the biped. However, this tradeoff between objective function cost and gait stability was not explored in depth.
Low variance | Medium variance | High variance | ||||
---|---|---|---|---|---|---|
Perturbation time | Instantaneous | Finite-time | Instantaneous | Finite-time | Instantaneous | Finite-time |
Gait 1 (v ≈ 0.8m/s) | ||||||
DS0 | 5.888 × 106 | 1.131 × 104 | 185.1 | 43.35 | 24.95 | 6.526 |
SS0 | 5.888 × 106 | 1.048 × 1011 | 185.1 | 2.571 × 103 | 24.95 | 20.24 |
SS0.5 | 4.174 × 107 | 3.217 × 1014 | 2.840 × 107 | 1.298 × 106 | 1.687 × 107 | 157.8 |
Gait 2 (v ≈ 0.8m/s) | ||||||
DS0 | 292.4 | 3.336 × 1014 | 43.99 | 2.545 × 104 | 21.53 | 40.93 |
SS0 | 295.5 | 1.321 × 108 | 44.01 | 449.0 | 21.54 | 13.55 |
SS0.5 | 6.719 × 109 | 9.007 × 1014 | 1.137 × 108 | 8.188 × 1014 | 1.903 × 103 | 8.188 × 1014 |
Gait 3 (v ≈ 0.9m/s) | ||||||
DS0 | 2.613 × 104 | 3.872 × 1011 | 154.3 | 3.655 × 103 | 34.21 | 21.56 |
SS0 | 1.637 × 106 | 3.853 × 1010 | 153.0 | 2.015 × 103 | 34.45 | 20.30 |
SS0.5 | 4.201 × 107 | 3.217 × 1014 | 9.037 × 1010 | 1.126 × 1015 | 1.180 × 104 | 2.002 × 1014 |
Gait 4 (v ≈ 1.0m/s) | ||||||
DS0 | 3.383 × 108 | 1.935 × 1012 | 472.7 | 5.275 × 103 | 54.74 | 25.74 |
SS0 | 1.586 × 108 | 2.002 × 1014 | 462.5 | 2.859 × 106 | 54.44 | 166.5 |
SS0.5 | 5.759 × 104 | 6.434 × 1014 | 4.403 × 1011 | 6.434 × 1014 | 2.503 × 104 | 3.002 × 1014 |
Gait 5 (v ≈ 1.1m/s) | ||||||
DS0 | 1.580 × 1014 | 2.824 × 1013 | 6.587 × 106 | 1.083 × 104 | 370.3 | 27.54 |
SS0 | 1.580 × 1014 | 6.344 × 106 | 6.587 × 106 | 194.1 | 370.3 | 7.604 |
SS0.5 | 3.464 × 1014 | 3.753 × 1014 | 3.753 × 1014 | 6.397 × 104 | 2.502 × 1014 | 55.31 |
Gait 6 (v ≈ 1.2m/s) | ||||||
DS0 | 2.537 × 1013 | 1.287 × 1015 | 6.367 × 104 | 6.770 × 104 | 208.6 | 54.12 |
SS0 | 3.264 × 1013 | 10.79 | 6.525 × 104 | 3.847 | 209.2 | 2.458 |
SS0.5 | 4.094 × 1014 | 46.68 | 5.630 × 1014 | 6.499 | 3.753 × 1014 | 3.122 |
Low variance | Medium variance | High variance | ||||
---|---|---|---|---|---|---|
Perturbation time | Instantaneous | Finite-time | Instantaneous | Finite-time | Instantaneous | Finite-time |
Gait 1 (v ≈ 0.8m/s) | ||||||
DS0 | 5.888 × 106 | 1.131 × 104 | 185.1 | 43.35 | 24.95 | 6.526 |
SS0 | 5.888 × 106 | 1.048 × 1011 | 185.1 | 2.571 × 103 | 24.95 | 20.24 |
SS0.5 | 4.174 × 107 | 3.217 × 1014 | 2.840 × 107 | 1.298 × 106 | 1.687 × 107 | 157.8 |
Gait 2 (v ≈ 0.8m/s) | ||||||
DS0 | 292.4 | 3.336 × 1014 | 43.99 | 2.545 × 104 | 21.53 | 40.93 |
SS0 | 295.5 | 1.321 × 108 | 44.01 | 449.0 | 21.54 | 13.55 |
SS0.5 | 6.719 × 109 | 9.007 × 1014 | 1.137 × 108 | 8.188 × 1014 | 1.903 × 103 | 8.188 × 1014 |
Gait 3 (v ≈ 0.9m/s) | ||||||
DS0 | 2.613 × 104 | 3.872 × 1011 | 154.3 | 3.655 × 103 | 34.21 | 21.56 |
SS0 | 1.637 × 106 | 3.853 × 1010 | 153.0 | 2.015 × 103 | 34.45 | 20.30 |
SS0.5 | 4.201 × 107 | 3.217 × 1014 | 9.037 × 1010 | 1.126 × 1015 | 1.180 × 104 | 2.002 × 1014 |
Gait 4 (v ≈ 1.0m/s) | ||||||
DS0 | 3.383 × 108 | 1.935 × 1012 | 472.7 | 5.275 × 103 | 54.74 | 25.74 |
SS0 | 1.586 × 108 | 2.002 × 1014 | 462.5 | 2.859 × 106 | 54.44 | 166.5 |
SS0.5 | 5.759 × 104 | 6.434 × 1014 | 4.403 × 1011 | 6.434 × 1014 | 2.503 × 104 | 3.002 × 1014 |
Gait 5 (v ≈ 1.1m/s) | ||||||
DS0 | 1.580 × 1014 | 2.824 × 1013 | 6.587 × 106 | 1.083 × 104 | 370.3 | 27.54 |
SS0 | 1.580 × 1014 | 6.344 × 106 | 6.587 × 106 | 194.1 | 370.3 | 7.604 |
SS0.5 | 3.464 × 1014 | 3.753 × 1014 | 3.753 × 1014 | 6.397 × 104 | 2.502 × 1014 | 55.31 |
Gait 6 (v ≈ 1.2m/s) | ||||||
DS0 | 2.537 × 1013 | 1.287 × 1015 | 6.367 × 104 | 6.770 × 104 | 208.6 | 54.12 |
SS0 | 3.264 × 1013 | 10.79 | 6.525 × 104 | 3.847 | 209.2 | 2.458 |
SS0.5 | 4.094 × 1014 | 46.68 | 5.630 × 1014 | 6.499 | 3.753 × 1014 | 3.122 |
Note: The finite-time double support controller used the adaptive controller. DS0, SS0, and SS0.5 indicate that the perturbation is applied at the beginning of double support, beginning of single support, or halfway through the single support period, respectively.
In three out of the six gaits tested, the finite-time double support model generally had greater MFPT than the instantaneous double support model (gaits 2-4), while the converse was true for the other gaits (gaits 1, 5, and 6, Table 4, Fig. 5). When counting individual conditions, a finite-time double support period had a greater MFPT in 29 out of the 54 cases. There was considerable variance and overlap in the MFPT between controller types. The instantaneous double support gaits had a MFPT range from ∼10 to ∼1014 with a median of 6.063 × 104 steps, while the finite-time double support gaits had an almost identical MFPT range of ∼1 to ∼1015 and a median of 1.107 × 104 steps. Thus, different gaits can have different stability, and a finite-time double support controller does not always help. Unfortunately, there were no obvious kinematic or kinetic features that could identify which controller was more stable which could make it difficult to optimize a gait for stability. Instead, it appears that there is some non-obvious aspect(s) of gait that largely govern the inherent stability of a gait, rather than obvious features such as the presence of a finite-time double support period.
Nevertheless, as expected, increasing the variance of the perturbations decreased the MFPT, and more stable gaits generally remained more stable as the distribution changed (Fig. 5). For low variance perturbations, the median MFPT was 7.167 × 1010 steps, for medium variance perturbations, the median MFPT was 1.814 × 104 steps, and for high variance perturbations, the median MFPT was 54.28 steps. Similar to the MFPT ranges for controller types, there was considerable overlap in the MFPT ranges for each perturbation distribution, with all three perturbation conditions yielding MFPT ranges from ∼1 to ∼1015. This appears to be partly driven by differences in the inherent stability of each gait and partly driven by the effect of perturbation timing. The point in the gait at which the perturbation was applied affected the likelihood that the biped would slip or fall, in some cases by many orders of magnitude. In general, gait stability increased as the perturbation time became later (true for of comparisons). For perturbations at the beginning of double support (DS0), the median MFPT was 2.064 × 103 steps. This decreased for perturbations at the beginning of single support (SS0) to a median MFPT of 409.7 steps. Gaits had a substantially higher MFPT when the perturbation was applied in the middle of the single support period (SS0.5), with the median MFPT rising to 2.653 × 1011 steps. Thus, the biped was generally the most stable when perturbations were introduced in the middle of the single support period regardless of the controller type.
The timing also affected if the biped was more likely to fail due to forward or backward perturbations. When applied at the beginning of the single support period (SS0), backward perturbations caused the most gait failures in all cases. This was because a backward perturbation at this point in the gait cycle robbed the biped of the necessary forward momentum to complete a step, causing the biped to fall over backward. This was also the case for perturbations at the beginning of the double support period (DS0) with an instantaneous double support period. Because the perturbation and the instantaneous double support period (Sec. 3.2) are both impacts, there was little difference between perturbations just before and after the double support period. Thus, stability between these two perturbation points was very similar. On the other hand, when perturbations were applied at the beginning of the double support period with a finite time double support period, forward perturbations contributed to most to gait failures at all speeds. This may be because forward perturbations sped the biped up just before it needed to decelerate and redirect the center of mass (COM) [52]. This increased the required horizontal GRF, which in turn increased slipping. When the perturbation was applied in the middle of the single support period (SS0.5), the direction of the perturbation had little effect on when the biped failed.
In general, when the instantaneous double support model was used, the gait failed due to the biped falling over. However, when the finite-time double support controller was used, the gaits failed due to the biped slipping, usually during double support. Although we considered both of these conditions to be failures causing the gait to end, it may be possible to recover from slipping. This was done to a limited extent with the adaptive controller. The adaptive controller was able to limit slipping and greatly increase the MFPT in all perturbation conditions (Table 5). However, this adaptive controller is limited. As derived in Sec. 3.4, the adaptive controller attempts to predict and prevent future slipping, meaning it cannot correct for any slipping that occurs at the very beginning of the double support period. Because of this, if the initial conditions of the double support period cause slipping, the adaptive controller is not able to prevent it. It may be possible to further augment the double support controller to correct for slip and return the biped to a non-slipping state once slip starts [53]. This would allow the finite-time double support controller to walk for longer than the MFPT in Table 4 suggests.
Perturbation time | With adaptive | Without adaptive |
---|---|---|
Gait 1 (v ≈ 0.8m/s) | ||
DS0 | 43.35 | 18.46 |
SS0 | 2.571 × 103 | 2.136 |
SS0.5 | 1.298 × 106 | 2.425 × 103 |
Perturbation time | With adaptive | Without adaptive |
---|---|---|
Gait 1 (v ≈ 0.8m/s) | ||
DS0 | 43.35 | 18.46 |
SS0 | 2.571 × 103 | 2.136 |
SS0.5 | 1.298 × 106 | 2.425 × 103 |
Note: These results are typical and show the benefit of including an adaptive controller.
In summary, a finite-time double support period does not always increase disturbance rejection capabilities as previously assumed. Nevertheless, it appears that a finite-time double support period may be useful for bipedal gait because it changes how a bipedal gait fails—from falling over to slipping—and because it can sometimes increase the stability of the gait. It is not clear however, how to fully take advantage of the finite-time double support period to increase the stability in all gaits.2
Footnote
An example bipedal gait using the time-based finite-time double support controller is provided as an additional material at https://youtu.be/dOfmu82KWwM.
Acknowledgment
This work was supported by the NSF under award 1727540.
Conflict of Interest
There are no conflicts of interest.
Data Availability Statement
The datasets generated and supporting the findings of this article are obtainable from the corresponding author upon reasonable request.