Abstract
Bipedal robots can be better alternatives to other robots in certain applications, but their full potential can only be used if their entire kinematic range is cleverly exploited. Generating motions that are not only dynamically feasible but also take into account the kinematic limits as well as collisions in real time is one of the main challenges towards that goal. We present an approach to generate adaptable torso height trajectories to exploit the full kinematic range in bipedal locomotion. A simplified 2D model approximates the robot’s full kinematic model for multiple steps ahead. It is used to optimize the torso height trajectories while taking future motion kinematics into account. The method significantly improves the robot’s motion not only while walking in uneven terrain, but also during normal walking. Furthermore, we integrated the method in our framework for autonomous walking and we validated its real-time character in successfully conducted experiments.
Introduction
The capability to step up and down platforms or stairs is the main advantage of legged over wheeled locomotion. Bipedal robots show impressive results in terms of walking and running in even terrain. 1,2 But legged locomotion allows for much more complex movement than just following a continuous path. 3 Motion generation for stepping up and down is directly coupled with the open question of how the height of the robot’s center of mass with respect to the height of the torso has to be designed. A variable torso height can result in several advantages for bipedal walking. Humans make great use of the advantage of a variable torso height during walking. Imitating a human-like walking may improve the energy efficiency. 4 Adapting the torso height to the current walking situation and terrain yields a greater kinematic versatility: larger strides are possible 5 and the maneuverability on stairs and on uneven terrain is improved. 3 Kinematic constraints such as joint limits can be avoided. Furthermore, recent publications have even showed a self-stabilization influence by applying a well-designed torso height trajectory. 6,7
In this article, we focus on methods to improve the kinematic versatility of bipedal walking by tightly integrating a new torso height trajectory in our framework for bipedal locomotion. Furthermore, we present an optimization technique to reduce joint velocities and to avoid reaching kinematic constraints. In the next section, we present related works and highlight the originality of our contribution. The following section provides an overview of the experimental platform used in this work—the robot

Photo and kinematic structure of the humanoid robot
Literature review
Motion generation for humanoid robots often follows a hierarchical approach. 1 –3,9 A navigation module determines desired foothold positions depending on the environment and user input. Based on the foothold positions, a walking pattern generation calculates a set of reference trajectories using simplified models which approximate the robot’s multibody system. Usually, these trajectories include the center of mass (CoM) trajectories to allow the robot for dynamically feasible walking. Over the last decades, a large variety of models and methods have been presented to derive dynamically feasible CoM trajectories in the literature 1 –3,9 , among others. Often the robot is represented by an inverted pendulum where the height is considered as constant. Variable CoM height in motion generation is taken into account in the literature, 1,10,11 among others. Few approaches take into account kinematic and dynamic feasibility constraints in an integrated manner. 12 Brasseur et al. formulate linear constraints that guarantee dynamic feasibility and allow efficient solving and, thus, achieving online generation of 3-D trajectories. Nevertheless, their approach was only applied in simulation and not integrated in a whole framework for motion generation in cluttered environments. However, in humanoid robotics, vertical CoM trajectories are often generated in a heuristic manner and without considering their influence on the overall motion.
The authors of previous studies, 5,6,13 for example, propose to use a cosine oscillation around an average height. The choice is motivated by observation of human walking. All works analyze the effects of vertical oscillations only in simulation.
To allow climbing of stairs, Park et al. 14 use a sixth-order polynomial to generate the CoM height trajectory. They define boundary conditions and design parameters that are tuned in simulation to reduce the deviation of the real from the ideal planned zero moment point (ZMP). This yields an almost linear function, which the authors used for simplicity. Drawbacks of this simplification are not examined.
Hong and Lee 15 deploy varying trajectories in dual and single stance. While a constant CoM height is assumed in single stance, cubic splines are used for the double support phase. This interpolation allows a transition to different CoM heights. The authors do not provide a rationale to motivate their approach, but they demonstrate in simulations the ability to walk stably in uneven terrain.
Miura et al. 16 always set the robot’s waist height as high as possible. When the legs are fully stretched and therefore reach their limit, the waist height is lowered. The resultant trajectory suffers from non-smooth transitions between double and single stance phase. The authors therefore smooth the trajectory in an optimization with respect to a cost function constraining joint angles and velocities. The objective of the publication was to accurately imitate human-like motion, which was demonstrated on even terrain.
Similar to Miura et al., Griffin et al. 17 favor walking with straightened legs over bent legs in their approach. Instead of planning torso height trajectories directly, they propose to project leg joint angle objectives into the null-space of the quadratic optimization problem which is solved by a whole-body controller. The resulting deviation of the CoM height from the reference trajectory introduce additional perturbations which have to be handled by the walking controller. Trying to imitate the human walking, Hu et al. 18 generate the CoM height motion indirectly by introducing angle objectives in the quadratic optimization program which is solved by their motion controller as well. Both publications 17,18 do not take into account future motion limits. They consider only the current controller time step, and they do not optimize over a motion sequence as, for example, a physical step of the robot. Nishiwaki 10 proposed a similar approach as well. Keeping the torso height as high as possible while taking into account the solvability of the inverse kinematics and joint limits. First, they calculate the maximum feasible torso height based on the maximum joint velocities and maximum kinematically adjusted torso height. Second, the torso trajectory is designed iteratively. In difference to the previous publications, they take into account future upper limit of waist height, vertical velocity, and acceleration limits. The torso height is then set as high as possible within these constraints, neglecting lower limits of the waist height.
In the study by Nishiwaki et al., 3 the approach was modified using cubic splines which are defined by three heuristically defined support points per step. These points are chosen in such a way that the torso height stays close to its maximum, avoiding knee singularities.
Recently, optimization frameworks have been presented which generate the robots motion for long walking sequences while taking dynamics as well as kinematic constraints into account. 19,20 These approaches are either pure off-line methods 20 or still need initially long calculation times. 19
Our approach differs from the previous ones. We present a new parametrization for the torso height based on a cubic spline representation. It can be configured by a variable number of control points. This trajectory representation allows us to extend the set of parameters used in our method for model-predictive kinematic optimization. 21 Using the strategy presented by Buschmann et al., 22 the torso height is explicitly taken into account to generate dynamically feasible CoM motions.
In contrast to the study by Nishiwaki, 10 not only constraints are avoided in that way but also the joint velocities are optimized.
Furthermore, we target a real-time solution. Our robot should walk with normal human walking speed, and it should be able to react to changing user commands or changing environment within one step. For this reason, the optimization of the large number of free parameters cannot be performed using the full kinematic model. Therefore, we introduce a simplified model approximating the kinematics. This model is used to separately solve a parameter optimization for the torso height trajectory with respect to an objective function, taking into account kinematic limitations and joint velocities. The model is verified and the optimization is analyzed in simulations and validated in experiments.
Control architecture
We use our humanoid robot
Control architecture
An overview of our hierarchical walking control system is depicted in Figure 2. The

CoM trajectory generation
The horizontal CoM trajectories are generated as part of the walking pattern generation using a three-mass model to account for dynamic effects caused by fast leg movements (see Figure 3). It has one lumped mass

Three-mass model used for CoM trajectory calculation. 24 CoM: center of mass.
Thus, the equation of motion (EOM) results in a linear and time variant differential equation for the horizontal upper body mass trajectories
The equation for the sagittal plane can be derived analogously. We use the method based on spline collocation proposed in the study by Buschmann et al.
22
to solve for
The
Kinematic evaluation and parameter optimization
The parameter set
Limitations of the current approach
Currently
The
Proposed method
This approach extends the
Figure 4 gives an overview of how the proposed method extends the current pattern generation procedure. To maintain the real-time capability, we divide the trajectory generation into two parts. First, we separately calculate an optimized torso height trajectory, as described in this section. The new torso height trajectory parametrization can be configured with more than one parameter per step. We use a simplified kinematic model which is introduced in the following. This model is then employed to obtain an initial solution and to finally perform the optimization. Second, we use the resulting optimized torso height trajectory in the

Overview of the proposed method in the context of the pattern generation process. This figure focuses on the optimization process of the torso height.
Parameterization of torso height trajectory
Currently, the torso height trajectory is composed of quintic polynomials with two control points at the start and end of each step (see Figure 6). This representation provides
Simplified kinematic model
During the optimization, the underlying model is evaluated frequently. To maintain real-time capability, a low complexity of the model is desirable. The robot’s kinematics are approximated with a simple kinematic 2-D model in the sagittal plane. Thus, the 2-D kinematic chain of each leg is fully determined with the trajectories

2-D kinematic model approximating robot’s full kinematics. Input trajectories:
Initial solution
The optimization problem requires an accurate initial solution

Walking up a platform with
The minimum feasible torso height
Timing of set points
In the course of simulations, we found that the points in time of the control points are crucial for finding a feasible and optimal torso height trajectory. The torso height trajectory consists of four control points per step. The first and the last control points are set to the beginning and end of each step (see Figure 6). Due to limited calculation time, we also predefine the timing of two remaining control points. We identified two characteristic points in time for these control points inherent to each step that achieved satisfying results for our purposes: at the time of liftoff of the swing foot for upstairs or touchdown during downstairs movement (see Figure 6 for time
The second intermediate control point considers the human ideal. In human walking, the torso is at the highest point during the single stance phase. This maximum occurs when the CoM is approximately above the swing foot
5
(see Figure 6 for time
Constraints for initial solution
The trajectory with

Range of feasible solutions
We impose the constraints sequentially one step after another:
(1) To avoid the joint limits, a sufficient slope of the torso height trajectory is necessary. The minimum in
The tuning parameter
(2) Two more constraints are imposed onto the control point at the end of each step (i.e. at
(3) We constrain the slope at the end points to achieve periodicity in the initial solution. In case neither step length nor height changed from the previous step, the slope at the end is constrained to the slope at the start of the step; otherwise, the slope is set to zero since no further insight about the slope is available.
The resultant cubic spline is uniquely defined with the complete set of
Optimization
The previously defined initial trajectory serves as the starting point for a parameter optimization. Constraints imposed on the initial solution are omitted for the optimization. Only, the
Cost function
The cost function
The first term takes into account the joint velocities derived from the simplified 2-D model.
The kinematic constraints are not included in the optimization problem as hard constraints due to real-time requirements. Since the 2-D model represents a conservative estimate of the real robot, violations of the kinematic constraints of the optimization model are acceptable for the full robot. Nevertheless, the optimization requires a well-chosen initial solution, which we are able to provide as explained in the previous section. The overall cost is obtained by numeric integration of the 2-D geometric model over a time horizon
Time horizon
The time horizon of the optimization problem is coupled to the robot’s physical steps. By taking into account more than one step, future kinematic limits can be avoided. In this work,
Algorithm and real-time constraints
The optimization problem is solved using the open-source library for nonlinear optimization Nlopt (http://ab-initio.mit.edu/nlopt). The software package comes with a number of both global and local optimization routines. Experiments with different available algorithms showed that the sequential least squares programming (SLSQP) algorithm 25 and a sequential quadratic programming (SQP) gradient-based optimization algorithm, yields the best results for our purposes.
The torso height trajectory generation must be considerably shorter than one walking step. In the experiments, we limited the run-time to
Results
We have assessed the performance of the newly proposed torso height trajectory generation using the dynamics simulation framework described in the work by Buschmann et al.
2
and validated our approach in experiments (a video of our experiments is available: https://youtu.be/ayj95PVvq0 M). Our approach shows improved performance in challenging stepping scenarios involving obstacles, platforms, or stairs compared with our previous results. Even walking, especially fast walking, also yielded cost reductions for the full robot motions. The presented simulation results compare the newly proposed method to generate
Platform
In this scenario, a platform of height

Platform test case: snapshots showing

Validation of kinematic model: left knee joint model comparison.
Validation of kinematic model
The performance of the proposed trajectory optimization strongly depends on the validity of the presented 2-D kinematic model. The ankle joint angles of the simple 2-D model follow the full kinematics well. Comparing the knee joint angles in Figure 10 shows that the 2-D model differs by more than 15° compared to the 3-D model when the robot steps onto the platform (compare time approximately 10.5 s). During this movement, the DoFs in the hip and pelvis, which are not represented in the reduced model, play an important role. Regarding the knee joint angle, the 2-D model approximation is conservative toward the lower joint limit. The simplified model angle could run into the limits while the real joint angle is still in the working range. To exploit this open optimization potential, we reduce the weight factor

Platform test case: torso height trajectories.
Results of simulation and experiment
Figure 11 shows the resulting torso height trajectories using the proposed method “on” and “off.” Furthermore, the upper and lower limits of the torso height trajectory calculated with the 2-D model are shown. It is clearly visible, how the torso trajectory with optimization of the support points outperforms the former torso height trajectory by abiding the kinematic constraints. When stepping down the platform, the ankle joint limit of the back leg is reached when only the final torso position

Platform test case: left ankle angle with optimization of final torso height position (“off”) and with proposed method (“on”)

Experiment-stepping up and down: snapshots showing Lola stepping dynamically up and down a platform using the proposed method.
Podium
This test case consists of a podium with two consecutive stairs of height

Podium test case: snapshots showing

Podium test case: torso height trajectories.

Comparison of integration step size of 2-D kinematic model.
Fast walking
The third test case is a simple walking scenario. It consists of a sequence of steps with a step size of up to

Fast walking test case: torso height trajectories.

Experiment—fast walking test case: joint velocity costs with optimization of final torso height position (“off”) and with proposed method (“on”).
Contribution and outlook
In this article, we focus on methods to improve the kinematic versatility of bipedal walking. We modify the collocation method presented by Buschmann et al.
22
to introduce a more generally shaped trajectory for the torso height for bipedal locomotion. The torso height is taken into account explicitly in the CoM trajectory generation and, therefore, does not diminish the robot’s stability. A new parametrization for the torso height based on cubic spline representation is applied. For real-time application, the robot’s full kinematic model is approximated by a simplified 2-D model that allows us for a larger number of optimization parameters and a longer time horizon of multiple walking steps. The model is verified in simulations for different walking scenarios. In combination with our methods for collision avoidance, it also allows for collision-free motions. It is verified in simulations and validated in experiments. Using the presented strategy, the robot is able to walk in complex scenarios (e.g. platforms, obstacles) with reduced joint velocities and safer joint movement ranges (with respect to joint limits). In future work, we want to analyze the presented method in more complex scenarios. We aim to overcome current real-time constraints, to combine the presented vertical trajectory optimization with the
Footnotes
Acknowledgements
This work was supported by the German Research Foundation (DFG) and the Technical University of Munich (TUM) in the framework of the Open Access Publishing Program.
Declaration of conflicting interests
The author(s) declared no potential conflicts of interest with respect to the research, authorship, and/or publication of this article.
Funding
The author(s) disclosed receipt of following financial support for the research, authorship, and/or publication of this article: This work is supported by the German Academic Exchange Service (DAAD), the German Research Foundation (DFG)—project BU 2736/1-1- and the Technical University of Munich (TUM) in the framework of the Open Access Publishing Program.
Appendix 1
The 2-D kinematic model is best understood as a triangle with hip, knee, and ankle in the corners. The lengths of two of the edges are fixed by the robot’s dimensions. The third edge is the distance
