Optimization-Based Quadrupedal Hybrid Wheeled-Legged Locomotion

Hybrid wheeled-legged locomotion is a navigation paradigm only recently opened up by novel robotic designs,e.g. the centaur-type humanoid CENTAURO [1] or the quadruped ANYmal [2] in its configuration featuring non-steerable wheels. The term Hybrid Locomotion is hereafter used to indicate a particular type of locomotion, achieved with simultaneous and coordinate use of legs and wheels,see Fig. 1. Such choice stems at the intersection between legged locomotion and the simpler wheeled navigation, in order to get the best from both techniques: agility and ability to traverse uneven terrains from the first, speed and stability from the second. As a consequence, the problem of planning feasible trajectories for a hybrid robot shares many similarities with the legged locomotion problem: also in the hybrid case the motion of the base is reached through contact of the feet with the environment, taking into account that the wheeled feet can just push on the ground and not pull it. Forces compatible with friction cones have to be considered, while the contacts can slide just along the direction prescribed by the orientation of the wheels.



page 1

page 6


Optimal Motion Planning for Multi-Modal Hybrid Locomotion

Hybrid locomotion, which combines multiple modalities of locomotion with...

Unilateral Ground Contact Force Regulations in Thruster-Assisted Legged Locomotion

In this paper, we study the regulation of the Ground Contact Forces (GRF...

Anytime Hybrid Driving-Stepping Locomotion Planning

Hybrid driving-stepping locomotion is an effective approach for navigati...

Body Lift and Drag for a Legged Millirobot in Compliant Beam Environment

Much current study of legged locomotion has rightly focused on foot trac...

Hybrid aerial ground locomotion with a single passive wheel

Exploiting contacts with environment structures provides extra force sup...

Lyapunov-Stable Orientation Estimator for Humanoid Robots

In this paper, we present an observation scheme, with proven Lyapunov st...

Scales and Locomotion: Non-Reversible Longitudinal Drag

Locomotion requires that an animal or robot be able to move itself forwa...
This week in AI

Get the week's most popular data science and artificial intelligence research sent straight to your inbox every Saturday.

I Introduction

Hybrid wheeled-legged locomotion is a navigation paradigm only recently opened up by novel robotic designs, e.g. the centaur-type humanoid CENTAURO [kashiri2019centauro] or the quadruped ANYmal [keeprollin] in its configuration featuring non-steerable wheels. The term Hybrid Locomotion is hereafter used to indicate a particular type of locomotion, achieved with simultaneous and coordinate use of legs and wheels, see Fig. 1. Such choice stems at the intersection between legged locomotion and the simpler wheeled navigation, in order to get the best from both techniques: agility and ability to traverse uneven terrains from the first, speed and stability from the second. As a consequence, the problem of planning feasible trajectories for a hybrid robot shares many similarities with the legged locomotion problem: also in the hybrid case the motion of the base is reached through contact of the feet with the environment, taking into account that the wheeled feet can just push on the ground and not pull it. Forces compatible with friction cones have to be considered, while the contacts can slide just along the direction prescribed by the orientation of the wheels.

Fig. 1: RViz visualization and experimental validation on the robotic platform CENTAURO of a hybrid locomotion trajectory produced by the proposed approach. In this snapshot the rear right foot is lifted, while wheeled navigation is simultaneously performed.

I-a Related works

Despite the possibilities unfolded by hybrid wheeled-legged robots, the research community has started to explore this field only in very recent years, thus comparatively few works can be found in the literature. The works in [justin, suzumura2013real, GRAND2010477] focus on hybrid robots where the legs are used just for active suspension during statically-stable driving motions. The work in [drcHubo] presented one of the first legged robots that could exploit wheels to locomote: DRC-HUBO+. With this platform the two types of locomotion are achievable in different configurations of the robot (erect or crunched), hence limiting the motion possibilities. This is also the disadvantage of RoboSimian platform [robosimian]. The centaur-like robot Momaro [momaro] instead has proved to be capable of hybrid locomotion and motion planning, achieved through A-search on a pose grid and relying on height maps of the environment. The recent works in [keeprollin, rollingInTheDeep] address Trajectory Optimization (TO) for the quadrupedal robot ANYmal [anymal] featuring it with actuated non-steerable wheels and taking into account the whole-body dynamic model, wheels included. While in [keeprollin] the robot still performs switches between driving and stepping, in [rollingInTheDeep] coordinate movements are achieved with an online TO framework capable of running in a Model Predictive Control (MPC) fashion, by breaking down the problem into separate wheel and base optimizations. While being computationally efficient, this approach decouples two inherently related quantities (base and feet positions) whose evolution is instead strictly linked. A second issue with this approach is related to the contact forces, that are not decision variables of the problem and hence are not guaranteed to be dynamically consistent. This is solved by the very recent work in [bjelonic2020whole], that treats the hybrid locomotion problem altogether in a single task. Another interesting work is [pholus], featuring the robot Pholus (a robotic twin of CENTAURO), that addresses a topic very similar to the one we present in this paper. While being able to produce different hybrid movements on the real robot, this approach too suffers from the fact that the optimization of the foothold positions is performed before the one for the center of mass (CoM). In addition, the angular momentum is ignored and the whole trajectory of the CoM along the z axis is assumed to be known in advance, thus greatly limiting the variety of the motions produced and preventing the optimization to run in more general environment. For completeness, note that similar TO considerations pertain also to pure quadrupedal legged locomotion, a field in which impressive results have been achieved, e.g. [kalakrishnan2011learning], [wink1stpaper], [wink3rdpaper].

I-B Contributions

The main contributions of this paper are listed in the following:

  • TO is formulated offline for the locomotion problem of a quadrupedal robot with steerable wheels, which is able to produce hybrid gaits as well as pure driving and legged locomotion with minimum effort for the user;

  • Single Rigid Body Dynamics (SRBD) is employed, aiming at meeting computational efficiency, and combined with a unicycle model for each leg, in order to account for the presence of steerable wheels;

  • A detailed description of the constraints to which the system is subject to, including pure rolling conditions, is presented, together with the suitable cost terms that guarantee smooth motion profiles;

  • Execution of the planned motion, by feeding the optimal trajectories to a Hierarchical Inverse Kinematic (HIK) engine, is experimentally performed on CENTAURO.

Ii Modelling of Quadruped Hybrid System

Ii-a Robot Dynamic Model

Reasoning about the full hybrid dynamics of a legged system remains computationally expensive for high-dimensional systems. Reduced order models, such as centroidal dynamics [orin2013centroidal] or SRBD [wink3rdpaper]

(the approach that will be adopted in this paper), conveniently offer the possibility to reduce computational complexity and to reason in Cartesian coordinates, although preventing to account for joint limits. The ordinary differential equations (ODEs) describing the SRBD evolution of the system are:


where (1a) is concerned with the evolution of the CoM coordinate and (1b) describes how the angular momentum changes as function of the contact points and contact forces. (1a) involves , representing the overall mass of the robot,

is the gravitational acceleration vector, and

is the contact force at the foot. On the other hand, (1b) includes the full-body inertia matrix , the base angular velocity and acceleration , as well as the foot Cartesian position . Adoption of this model requires the following assumptions: the robotic links are rigid, the wheeled feet interact with the ground via point-like contacts, the full-body inertia is constant throughout the motion and, finally, the momentum produced by the joint velocities is negligible.

Ii-B Wheels’ Kinematic Model

The steerable wheels are modelled with a classical unicycle. This means that each foot is completely described by its Cartesian position and the related steering angle , see Fig. 2.

Fig. 2: The unicycle kinematic model for each steerable wheel.

Pure rolling condition is assumed when the foot is touching flat ground, hence introducing constraints of nonholonomic nature in the system. Considering the foot, its velocity along the x-y world axes must be coherent with the wheel steering set by the value of :


The presence of this constraint allows the solver to consider just velocities that do not involve lateral slippage of the feet. The rolling speed of the wheel can be computed based on the x-velocity of the contact point in the contact frame as: , being the wheel radius.

Iii Motion Generation for Hybrid Locomotion

In the following, we formulate and discuss the Optimal Control Problem (OCP) conceived to drive as desired the evolution of the system described in Sec. II. Key elements in this process are the definition of the state variables, the control variables, the constraints and the cost function, that allows one to set the optimality criterion with respect to which the best sequence of values for the control inputs is found.

Iii-a State Variables

Given the modelling choice, the hybrid system is fully defined by the following set of variables: 111For ease of notation,the transpose sign of each quantity has been omitted.


where collects the Cartesian position and steering angle of each wheel, i.e. , for , while collects the Euler angles describing the orientation of the base of the robot (order of application: yaw-pitch-roll). It has to be noted that, while this definition of the state vector appears convenient, Eq. (1b) involves angular velocities and accelerations expressed in a fixed world frame, hence a mapping between and is required, also for what concerns the time derivatives of those. Such a mapping is readily provided in [gehring2016kindr].

Iii-B Control Inputs

In our framework, we split the control vector as follows:



Here collects the contact forces of each foot, collects the scalars describing the velocity of each wheel along its direction of rolling, collects the yaw rate of each wheel, and collects the vertical component of the speed of each wheeled-foot. The partition of into two distinct sub-vectors will become clearer in the following, but can be explained here as necessary to identify the control inputs that directly act on the dynamical evolution of the system (grouped in ), separating them from the inputs that are used to achieve a good vertical shape of the feet trajectories during the flight phases (namely ) but do not interfere with the dynamics.

Iii-C Constraints

To guide the solver towards a feasible solution, some constraints are needed. They contribute to make explicit all the physical limitations proper of CENTAURO that are not dealt with by the aforementioned SRBD model, or are used to select desired behaviours leading to smooth trajectories. In the following we list them, explaining their role.

  • Gait sequence: a classical crawl gait [mcghee1968stability] is used, but a main property of hybrid locomotion is that the goal can be reached also with very different gaits. Even pure driving mode could be used, where the robot just utilizes its wheels without lifting any feet.

  • Contact constraints: given the time interval in which a foot is in contact with the ground, the following level constraint is needed:


    When foot is lifted, we make sure that no contact force coming from that specific foot is present, imposing:


    By indicating explicitly with the interval in which a foot is lifted, we also shape the vertical trajectory prescribing its maximum height :

  • Kinematic constraints: they link the evolution of the CoM position to the feet positions, hence ensuring feasibility of both the motions together. As the joint limits are not explicitly considered in our model, we translate them into a Cartesian constraint for the relative position of the feet with respect to the CoM. Each foot workspace is approximated with a cuboid of dimensions that is centered in the nominal position of the foot . The constraint for foot is written as:


    Note that in principle taking into account is required, but restricting the rotation to the base yaw angle alone is appropriate when focusing on hybrid locomotion, as it generally happens over reasonably flat environments. If other factors, such as the presence of stairs, impose higher pitch or roll angles, one can always resort to the more general . Another constraint coming from the mechanical structure of the robot involves the wheel steering angles (in world reference frame), bounded to be inside a range of values:


    where and come from the fact that CENTAURO steering motors are characterized by hard stops.

  • Friction cones: they introduce the physical limitations acting on the contact forces. Indeed, the desired motion for the CoM is achieved by controlling the contact forces between the feet and the ground, coherently with the floating-base model described by (1). Following classical Coulomb friction model, it is necessary that the components of the forces lying on the ground do not exceed a certain threshold, defined by a suitable friction coefficient and by the magnitude of the force projection on an axis that is normal to the ground itself. Even in case of wheeled locomotion, the instantaneous velocity between the feet and the ground is zero (as no slippage is allowed), hence the problem of limiting the values of the forces can be treated as in the legged case. The three components of each force must be related by the following inequalities:


    where the considered axis are those of the contact surface, and we adopt linearized friction cones to avoid time consuming computations while introducing only negligible errors, as in [wink3rdpaper]. In short, we can state that each contact force must belong to a set of admissible values:

  • Initial and final constraints: the initial and final value for the state must be given to the algorithm. The initial position, named , is a hard equality constraint:


    while the goal constraint can be suitably enforced in terms of zero final speed (that regards both the CoM and the wheels) as well as final position of the feet:


    where is the length of the optimization horizon. Even if it appears desirable to enforce a constraint directly on the final position of the CoM, this choice would lead the optimization to fail in unforeseen situations. As a consequence, the task of moving the CoM towards the goal position is left to the cost function alone.

Iii-D Cost Terms

The cost function required to achieve the desired task with smooth and well-behaved trajectory is crucial and must be defined carefully. In our framework it is composed of several terms, listed in the following:

  • , accounting for the system acceleration, whose minimization is required in order to produce smooth motions, to facilitate tracking as well as to reduce joint torques and energy consumption. A positive semidefinite matrix allows to consider just the CoM accelerations .

  • , accounting for the distance to the desired goal position and orientation. Again, a positive semidefinite matrix is used to select the CoM position vector and orientation . Therefore just the Cartesian and angular distance to are weighted, while the rates of variation of these quantities are not considered to leave the solver free to adjust them as required.

  • , accounting for the variation of the contact forces over time. Preventing the contact forces from varying too suddenly allows the feet to be able to actually exert the correct force at every time instant. The implementation of this cost term is done, when the continuous OCP is cast into discrete time, by computing the difference between the force at the and time intervals.

  • , accounting for the distance of each foot from its nominal position with respect to the CoM. The distance is evaluated in the world reference frame and then expressed in the robot base reference frame to compare it with the nominal one. To achieve faster computation, we consider again just the base yaw angle , similarly to what was done in (8).

  • , accounting for the linear speed of each rolling wheel. It is added, usually with a small weight, for preventing the feet from moving too fast, reducing the torque required for the driving motors, as well as for penalizing the swinging motion of the wheels arising when the robot CoM has already reached its final goal. Interestingly, if considered just for the feet that are in contact with the ground, it represents a powerful tuning element to span between car-like and pure walking behaviours.

  • , accounting for the steering speed of each wheel, that is the velocity with which it reorients when required. Intuitively, steering the wheels too fast is not recommendable as it might hinder the stability of the robotic platform, whose inertia is such that sudden variations in the direction of the motion could even lead the robot to fall.

A weighted sum of all the terms above builds up the cost function that is used in the current paper.

Iii-E OCP Formulation

The overall OCP we address in this Section reads as:

subject to
initial state
final velocity
final position
kin. limits
kin. limits
actuator limits
final velocity
foot level
friction cone
actuator limits
no force
foot level

Iii-F OCP Transcription

Once the overall OCP has been defined in continuous time, it has to be effectively solved. To do so, it is necessary to cast it into discrete time, transcribing the OCP into an equivalent Non-Linear Programming (NLP) problem that can be solved by structure-exploiting solvers. In the present work, this is achieved with orthogonal collocation techniques

[orthogonal], hence approximating the state trajectories with suitable -order polynomial splines. The overall optimization horizon is broken down into intervals of equal length, and inside the generic interval we select Gauss-Legendre collocation points at which the dynamics as in (1) is enforced. In particular, we choose -order polynomials to represent the vertical trajectories of the feet, and let free to vary at every collocation point in order to achieve a good shape of such trajectories (as shown in Fig. 4). All the other state variables are approximated with -order polynomials , keeping the control vector constant throughout the whole interval. These choices grant an accurate approximation of the real dynamics while reducing the computational effort required. Also, the lifted method [lifted] is used, integrating the system dynamics independently on each interval and enforcing continuity of the solution only at solution time.

Iv Experimental Validation

The experimental validation has been performed on the CENTAURO platform [kashiri2019centauro] powered by the XBotCore framework [muratore2017xbotcore]. Different navigation patterns have been produced in order to highlight the variety of behaviours that can be generated by the proposed TO framework with minimum authoring effort. The transcribed OCP has been implemented in CasADi [casadi]

interfaced with Python, and solved employing the open-source solver Ipopt

[ipopt]. The performance of the algorithm on an Intel Core i7/1.8 GHz laptop for the different navigation patterns are shown in Table I. Once a solution for the OCP is produced, the optimal Cartesian references are fed to the CartesI/O framework [laurenzi2019cartesi], which relies on the hierarchical Inverse Kinematics library OpenSoT [OpenSot17], to track the planned trajectories. The considered SoT can be written using the Math of Task (MoT) formalism [OpenSot17] as follows:


The cost function weights remain constant in all the experiments performed. They have been tuned heuristically, to accommodate for the different orders of magnitude of the objectives’ variables, as follows:

, , , , .

Iv-a Legged Locomotion

Our framework can be used to produce pure legged locomotion by simply considering a lower order model discarding the wheel’s steering angle, while constraining the foot sliding velocity. For this scenario, the cost function in III-D does not comprise the last two terms. Due to space limitation, the resulting behaviour is shown in the accompanying video, setting a goal 70 cm in front with 8 steps.

Iv-B Wheeled Navigation

If no flight phase is allowed for the feet, the overall behaviour is similar to the one achievable with a car-like robot, as in [laurenzi2019augmented], but each wheel can be steered autonomously and their relative position can change. With a CoM goal that is placed 100 cm ahead and 60 cm to the left, and a final yaw orientation for the base set to be counterclockwise, a smooth wheeled motion is performed, see Fig. 5.(a).

Iv-C Hybrid Wheeled-Legged Locomotion

Here the presented framework shows all its potential: forward hybrid locomotion as well as a hybrid go&back behaviour is achieved. In the first case the robot moves to a goal 200 cm far, in the second case also the base orientation must change (by rotating counterclockwise) and halfway through the goal is switched so that the robot must go back to the origin while maintaining the same orientation. The behaviours achieved can be seen in Fig. 5.(c). Fig. 3 and Fig. 4 show time histories of relevant quantities.

width= Navigation type prediction horizon computation time #iterations Legged 10s 19.0s 37 Wheeled 15s 20.0s 21 Hybrid-forward 10s 98.0s 60 Hybrid-go&back 16s 63.0 170

TABLE I: Overview of the performances of the proposed algorithm
Fig. 3: Results for IV-C go&back. The optimized trajectories for CoM (blue) and feet (green=front, red=hind) are shown, together with the initial position (black) and initial goal (red)
Fig. 4: Results for IV-C go&back. Contact force in its 3D components is shown together with the vertical trajectory of the left hind foot.
Fig. 5: RViz visualization and experimental validation on CENTAURO of different locomotion gaits generated by the proposed TO framework.

V Conclusion and future works

In this paper, we presented the formulation, transcription and solution of an OCP capable of generating varied locomotion on the robot CENTAURO, focusing in particular on the integration of steerable wheels. Hybrid locomotion is achieved with the proposed approach, enabling the robot to perform fast and stable motions. The results have been experimentally validated on the real robot system, providing satisfactory results. As future works, reducing the TO computation time required would enable MPC approaches to the hybrid locomotion problem. Interesting extensions of our work include the automatic generation of the gait sequence, see [wink3rdpaper], providing the algorithm with the flexibility to optimize over the duration of each lift phase of the feet. Ultimately, sensor integration would enable to apply the proposed locomotion strategy e.g. in a gap crossing task.