Distributed Bio-inspired Humanoid Posture Control
Vittorio Lippi, Fabio Molinari, Thomas Seel

TL;DR
This paper introduces a distributed bio-inspired posture control method for humanoids that uses a consensus protocol to coordinate modules, reducing conflicts and saving energy, demonstrated through simulations with a triple inverted pendulum model.
Contribution
It proposes a novel distributed control strategy that coordinates modules via max-consensus, improving posture stability and energy efficiency in humanoid robots.
Findings
Reduces conflicts among modules during posture control
Achieves desired posture with energy savings
Increases rise time in response to control
Abstract
This paper presents an innovative distributed bio-inspired posture control strategy for a humanoid, employing a balance control system DEC (Disturbance Estimation and Compensation). Its inherently modular structure could potentially lead to conflicts among modules, as already shown in literature. A distributed control strategy is presented here, whose underlying idea is to let only one module at a time perform balancing, whilst the other joints are controlled to be at a fixed position. Modules agree, in a distributed fashion, on which module to enable, by iterating a max-consensus protocol. Simulations performed with a triple inverted pendulum model show that this approach limits the conflicts among modules while achieving the desired posture and allows for saving energy while performing the task. This comes at the cost of a higher rise time.
Click any figure to enlarge with its caption.
Figure 1
Figure 2
Figure 3
Figure 4
Figure 5| Segment/joint | Parameter | value | |
|---|---|---|---|
| Trunk/hip | 73.57 | N*m/rad | |
| 18.394 | N*m*s/rad | ||
| mass | 30 | Kg | |
| length | 0.5 | m | |
| center of mass | 0.25 | m | |
| kp passive | 0 | N*m/rad | |
| kd passive | 0 | N*m*s/rad | |
| 1 | |||
| Lumped Delay | 10 | ms | |
| Thigh/knee | 220.72 | N*m/rad | |
| 16.55 | N*m*s/rad | ||
| mass | 10 | Kg | |
| length | 0.5 | m | |
| center of mass | 0.25 | m | |
| passive | 0 | N*m/rad | |
| passive | 0 | N*m*s/rad | |
| 1 | N*m*s/rad | ||
| Lumped Delay | 10 | ms | |
| Shank/ankle | 465.98 | N*m/rad | |
| 116.49 | N*m*s/rad | ||
| mass | 10 | Kg | |
| length | 0.5 | m | |
| center of mass | 0.25 | m | |
| passive | 0 | N*m/rad | |
| passive | 0 | N*m*s/rad | |
| 1 | |||
| Lumped Delay | 10 | ms |
| Variable | Index | Original | Distributed |
|---|---|---|---|
| TS | overshoot | 2.5118° | 2.1166° |
| rise time | 0.80 s | v 0.84 s | |
| settling time | 9.99 s | 9.99 s | |
| KNEE | overshoot | 3.4765° | 0° |
| rise time | 0.07 s | 0.31 | |
| settling time | 9.99 s | 9.99 s | |
| BS | overshoot | 0.0961° | 0.3075° |
| rise time | 0.81 s | 0.86 s | |
| settling time | 9.99 s | 9.99 s | |
| energy | 196.72 J | 68.25 J |
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Distributed Bio-inspired Humanoid Posture Control
Vittorio Lippi1, Fabio Molinari1, Thomas Seel1 1Technische Universität Berlin, Fachgebiet Regelungssysteme, Sekretariat EN11, Einsteinufer 1, D-10587 Berlin, Germany [email protected], [email protected], [email protected] .
Abstract
This paper presents an innovative distributed bio-inspired posture control strategy for a humanoid, employing a balance control system DEC (Disturbance Estimation and Compensation). Its inherently modular structure could potentially lead to conflicts among modules, as already shown in literature. A distributed control strategy is presented here, whose underlying idea is to let only one module at a time perform balancing, whilst the other joints are controlled to be at a fixed position. Modules agree, in a distributed fashion, on which module to enable, by iterating a max-consensus protocol. Simulations performed with a triple inverted pendulum model show that this approach limits the conflicts among modules while achieving the desired posture and allows for saving energy while performing the task. This comes at the cost of a higher rise time.
I Introduction
I-A Overview
Humanoid legged robots require bipedal balancing as base requisite to perform tasks. Since, at the state of the art, humans are still considered superior to robots at controlling posture [1], there has been much interest in implementing human inspired humanoid control systems. Nowadays, human-likeness of bipedal control is an ongoing research topic, see, e.g., [2, 3, 4]. The model proposed in this paper is the so-called DEC (disturbance estimation and compensation) [5], which is based on a neurological model of human posture. This model uses sensor fusion-derived internal reconstructions of the external disturbances affecting body posture. Issues of a modular control system are conflicts among joints, as extensively shown in [6]. In this work, we show how distributed control theory can be applied to such a framework. In fact, a discrete-time max-consensus algorithm is used to define priorities between DEC modules in a distributed way, so that conflicts can be prevented. Furthermore, this solution is compatible with plug-and-play frameworks, which may be relevant for future system reconfiguration.
I-B Notation
In the remainder of this paper, and denote, respectively, the set of positive integers and the set of real numbers. Nonnegative integers and nonnegative real numbers are and . The indicator function is defined as follows
[TABLE]
II Problem Description
II-A The DEC concept
The DEC concept provides a descriptive and predictive model of how human postural control mechanisms interact with movement execution control in producing a desired movement [5, 7]. A schema of the DEC control is shown in Fig. 1 and can be summarized as follows:
- •
A servo control loop for each degree of freedom (DoF). The servo is implemented as a PD controller, it is addressed in Fig. 1 (above) as neural controller. The controlled variable consists either of the joint angle, the orientation in space of the above joint, or the orientation in space of the center of mass of the whole body above the controlled joint. Variables are reconstructed locally using the exchanged sensory input;
- •
Multisensory estimation of the physical factors affecting the servo. These disturbances are rotation and translation of the supporting link or support, contact forces (e.g., push) and field forces (e.g., gravity impacting the supported link). Sensory channels are shown in Fig. 1 as Vest, Prop, and Force, representing, respectively, the vestibular (IMU), proprioceptive (encoders), and force (joint torque sensors) inputs;
- •
The disturbance estimates are fed into the servo so that the joint torque compensates on-line for the disturbances while executing the desired movements.
The lumped delay in Fig. 1 (above) accounts for all the delay effects that, in general, are distributed. In particular, in robots, the main sources of delay are sampling rates in both sensors and computer-controlled system, see [8]. In humans, different control loops (e.g., proprioceptive feedback and disturbance compensation) are associated with different delays (see [9]) and the transport time within the nervous system creates differences in delay due to the different distances that the neural signal has to cover in order to reach different joint positions, i.e. lumped delay is estimated to be for ankle joint control and for hip joint control, see [10]. The disturbance compensation mechanism allows the system to maintain a low loop gain and thus stable control in face of neural time delays. A further, indirect limitation to the gain is represented by the maximum torque that the foot can produce on the ground without losing contact. The DEC concept can be generalized to a modular control architecture, where estimators in each module treat disturbances acting on all supported links as if affecting a single inverted pendulum, see [11]. This approach has been applied to multiple DoF robots [12, 8, 13, 14]. The reference input to each module determines its postural function, e.g. maintaining a given orientation of the supported link (either in space or with respect to the supporting link), or maintaining the center of mass (CoM) above its supporting joint. Modules exchange information with neighboring modules, i.e. those mechanically interconnected.
II-B Modularity, Coupling Forces and Delays
Since, in DEC control, each DoF of the humanoid is controlled by one DEC module, this results in control modularity. Each module commands the torque to be applied to the controlled DoF. In previous work on the topic, the desired trajectory is specified as an input to each module, specifically in the form of a reference for a desired variable, i.e. a joint angle, an orientation in space of the link supported by the controlled joint, or the orientation in space of the center of mass of the whole set of links above the supported joint (e.g. for the ankle joint it would be BS in Fig. 1), see [8].
The multitasking capability of the DEC control consists of using each DoF to perform a different task, see [15]. All modules have the same structure and there is no centralized model of the whole system. Modules operate not completely independently of each other, since they exchange sensory information, i.e. coordinate transformation across the joints that interconnect the body segments. The DEC model can be defined as a low level control system taking care of the fundamental task of posture control and acting at the level of joint kinematics. Coordination between joints emerges from the interaction between different modules and between the modules and the body mechanics. At the level of modules, no kinematic synergy is explicitly specified.
In [6], it is shown how the modular structure of the DEC can lead to conflicts between modules: an example is the circular overshoot exhibited in body posture’s transient behavior, as shown in Fig. 2. Specifically, the knee module commands an extension of the leg. As the upper body is also perturbed forward, an extension of the knees produces a disturbance for the ankle joints, which try to move the CoM back to the vertical equilibrium position. In general, coupling forces between body segments are a challenge for distributed modular controllers, especially considering the presence of delays, see e.g. [16]. In Fig. 2, the transient behavior of body posture is shown. Similarly to [6], the control parameters and the joint passive stiffness were chosen to produce a compliant behavior to emphasize the effect of competing controllers. Nevertheless, the used parameters are realistic in the sense that are able to stabilize the body. The absence of passive stiffness is common in humanoids robots actuated with DC motors. The parameters used in the simulation are reported in Table I.
It should be noticed that the original formulation of the DEC model was designed to describe steady state behavior in human subjects. The distributed control proposed in this work is thought as a possible solution to humanoid control. The comparison with human experiments is beyond the scope of this work.
II-C Distributed control problem
The main contribution of this work is the design of a distributed control approach, which harnesses the modular nature of the DEC control while trying to reduce conflicts among joints. This approach is innovative in the field of bio-inspired humanoid posture control. The underlying idea is to enable only one module at a time to change its positional reference. This strategy claims to prevent the circular overshoot of the CoM trajectory of Fig. 2. Starting at time , every seconds, a new control module is enabled and all the others are disabled. Precisely, disabled modules implement only the gravity compensation control on torque and are controlled to be at the current fixed position, as it will be explained in Section IV. Switching between controlled modules would traditionally require a central decision. However, the absence of any centralized control structure results in the need of an agreement among modules. Traditionally, in those cases where a multi-agent system is seeking an agreement on a variable of common interest, consensus-based strategies are employed, see [17]. In Section III-C, the mentioned consensus protocol is analyzed. Consensus has been used in robotics for inter-robot and inter-vehicular coordination, see [18] (rendezvous), [19] (task assignment), or [20] (conflict resolution); in this paper, the paradigm changes, since consensus is here exploited for intra-robot coordination. This approach is suitable for plug-and-play modules where initialization is not required, since the parameters of each module are defined independently of the ones of the other modules, only on the basis of body anthropometrics.
III Control Design
III-A Posture Control Scenario
Humanoid balance in the sagittal plane can be modeled as the control of a multiple inverted pendulum by means of joint torques, on the basis of sensor inputs, i.e. encoders and inertial measurement units. The body is modeled as a triple inverted pendulum, following the robot configuration used in the robotic experiment presented in [6] where ankle, knee and hip were actuated. The model used in the simulation is implemented in Matlab/Simulink, and it is the same used in [21] and [11].
III-B Control implementation
Let be the set of all modules. They can exchange information via a wired communication network. Under a graph-theoretical point of view, let the directed graph model the wired network topology, with being the set of nodes and the respective set of arcs. For any pair , if node receives information from node .
Assumption 1
Each module can retrieve information from all the modules connected to it by a body segment (see Figure 1).
By Assumption 1, it can be easily shown that presents a connected topology (further details in [22, A Tutorial on Graph Theory]). In the following, , let be the set of modules sending information to node , i.e.
[TABLE]
We consider the problem of controlling body posture and equilibrium in the body sagittal plane. The body is represented as a triple inverted pendulum standing on a fixed support surface. The state of the system is described by the joint angle of ankles, hips and knees, or, equivalently, by the orientation in space of body segments or CoM. In particular, each module, say , is associated to a different task, meaning that it is controlling a specific variable :
- •
the ankle module controls the body in space variable, , i.e. the CoM sway respect to the foot;
- •
the knee module controls the knee joint angle ;
- •
the trunk is controlling the trunk orientation in space .
In Figure 1, the general structure of each controller is shown above and the relationship between modules is shown beneath. The controlled variable is constructed in the ankle module using the down-channeled signal.
Let,
[TABLE]
be a binary variable, referred to as enabling variable, defined as follows: module is enabled in the continuous time interval
[TABLE]
and a real-valued time, if and only if . Moreover,
[TABLE]
The enabling variables are initialized as, . Disabled modules are controlled to the current position, see Figure 3.
Modules run a consensus protocol which let them agree on which one is the enabled module. At each time , , each module has a state , that quantifies the need for that module to be enabled. The value of is defined as the error on the controlled variable, i.e.
- •
the CoM sway for the ankle joint;
- •
the knee joint angle for the knee joint;
- •
the trunk sway for the hip joint.
Intuitively, the enabled module during interval will be the one retaining the highest . That is to say, ,
[TABLE]
Assumption 2
, .
Clearly, by Assumption 2, (4) implies (3). One way nodes can achieve the solution in (4) – without the presence of any central element – is by running a distributed max-consensus protocol.
III-C Max Consensus
In the following, a discrete-time max-consensus protocol is presented, which will iterate at every instant , , thus allowing for distributively retrieving , . Initially, all modules have their respective . Let an iteration variable be defined for each module as , such that . All modules iterate the following protocol:
[TABLE]
where denotes the iteration index.
Proposition 1
Given a connected network topology , if all modules in iterate (5), then consensus is achieved at , such that
[TABLE]
Proof:
Protocol (5) is a traditional max-consensus protocol. By **[23]**, consensus in connected network topologies is reached on the max-value in a number of steps depending only on the network topology. By Assumption 1, the communication network topology is connected, therefore max-consensus is achieved in the sense of (6). Moreover, by **[23]**, with the given topology, . ∎
As soon as consensus is achieved, modules can compute their respective as follows:
[TABLE]
Proposition 2
Under Assumption 2, (7) implies (3).
Proof:
By Assumption 2, there is only one module, say , such that . By (7),
[TABLE]
from which (3) immediately follows. ∎
As mentioned above, this solution is compatible with a plug-and-play framework. In this context, letting modules communicate over a wireless network can speed up the set-up of the system. However, traditionally, wired communication is sensibly faster than the wireless one. Convergence speed of the consensus protocol (5) can be improved in the wireless framework by using the strategy presented in [24].
IV Validation Experiment
The system is tested with the task shown in Fig. 2. The parameters are shown in Table I. They are the same for both the presented cases. In particular, passive stiffness and damping have been set to [math] and the delay to , i.e. a small delay (compared, for example to the presented in [10]) that anyway poses realistic limitations on the servo controller gain. This choice was made because in this work we do not want to examine the relationship between delay and passive stiffness studied in [6], but we want to emphasize the relationship between competing modules. In Figure 1, both the disturbances estimators and the proprioceptive signals are fed as inputs to the neural controller. This is performed by setting the proportional gain to , where is the mass of the body above the controlled joint, is the gravity acceleration and the height of the CoM. The derivative component is set to a fraction of the proportional one. This way, the gravity error is expressed as the CoM sway angle and the other estimators are expressed as an “angle equivalent”, in the sense that the desired corrective torque is divided by . This implies that, for the controller and all the compensated disturbances, the ratio between and is fixed, while each signal can be associated with a specific gain.
In this work, the DEC has been implemented as shown in [6] with a separate neural controller for each signal. A PID controller is designed for the servo and a PD controller for disturbance compensation (with gravity compensation an integrative action is not desired). Body segment positions and velocities are assumed to be known exactly. Since we consider only gravity as external disturbance, the control torque is expressed by:
[TABLE]
where is the error on the controlled variable and the angle of the CoM with respect to the controlled joint. The used depends on as follows:
[TABLE]
where is the respective controlled variable. The value is set to the value of at the instant of deactivation, when makes a transition from to [math], as modeled by the block in Fig. 3.
V Results
In order to evaluate the impact of the designed distributed control strategy, the transient behavior of the DEC Control is compared, with and without distributed control policy, in response to a sudden change of reference. The results are shown, respectively, in Figure 2 and Figure 4. Performances are summarized in Table II.
The dynamic performances for the two controllers are comparable. The CoM trajectory does not produce any circular (or overshooting) movement but it is rather described by straight lines, clearly due to the switching behavior. While for TS and KNEE there is a substantial drop of the overshoot measure, a slight increase of this measure affects BS. As it clearly emerges from the table, the cost to pay for a decreased overshoot is an increase of the rise time. Energy is intended as the integral of the mechanical power provided at the joints; on a real robot, the power consumption can be heavily influenced by the actuation (e.g. DC motors require power in order to hold static positions). In this scenario, the max-consensus algorithm makes the DEC control more energy efficient.
VI Discussion
This work has discussed a distributed control approach for the modular bio-inspired DEC controller, where modules negotiate their authorization to move. The DEC original formulation (in Figure 2) is compared to the designed distributed control strategy (in Figure 4).
The simulated humanoid was initialized from an initial position, from which it had to reach the upright pose; trajectories of body segments and of the CoM position in the sagittal plane were recorded. Traditionally, DEC system exhibits a mutual obstruction between modules, resulting in a circular (overshooting) CoM trajectory.
This work’s novelty lies in the fact that modules distributively agree on a common strategy. By doing so, within a DEC framework, conflicts between modules are avoided by having only one of the modules enabled at a time. With the addition of this distributed agreement strategy, the transient response does not show circular CoM trajectories anymore (see Figure 4). Moreover, our proposed distributed control strategy appears to be more energy efficient. Such improvements come at expenses of a small delay on the settling time, due to the modules’ inactivity when disabled.
ACKNOWLEDGMENT
We gratefully acknowledge financial support for the project MTI-engAge (16SV7109) by BMBF.
This work was also funded by the German Research Foundation (DFG) within their priority programme SPP 1914 ”Cyber-Physical Networking (CPN)”, RA516/12-1.
The reference list from the paper itself. Each links out to its DOI / PubMed record.
- 1[1] F. Nori, J. Peters, V. Padois, J. Babic, M. Mistry, S. Ivaldi et al. , “Whole-body motion in humans and humanoids,” in Workshop on New Research Frontiers for Intelligent Autonomous Systems , 2014.
- 2[2] D. Torricelli, R. S. Mizanoor, J. Gonzalez, V. Lippi, G. Hettich, L. Asslaender, M. Weckx, B. Vanderborght, S. Dosen, M. Sartori et al. , “Benchmarking human-like posture and locomotion of humanoid robots: A preliminary scheme,” in Biomimetic and Biohybrid Systems . Springer, 2014, pp. 320–331.
- 3[3] V. Lippi, D. Torricelli, G. Hettich, and T. Mergner, “Benchmarking human-likeness of robot postural control–suggestions from human experiments,” in Benchmarking of Human-like Robotic Locomotion, Humanoids 2013 Conference, Atlanta (USA) , 2013.
- 4[4] T. Mergner and V. Lippi, “Posture control human-inspired approaches for humanoid robot benchmarking: Conceptualizing tests, protocols and analyses,” Frontiers in Neurorobotics , vol. 12, p. 21, 2018.
- 5[5] T. Mergner, “A neurological view on reactive human stance control,” Annual Reviews in Control , vol. 34, p. 77 198, 2010.
- 6[6] C. Ott, B. Henze, G. Hettich, T. N. Seyde, M. A. Roa, V. Lippi, and T. Mergner, “Good posture, good balance: Comparison of bioinspired and model-based approaches for posture control of humanoid robotsg,” IEEE Robotics & Automation Magazine , vol. 23, no. 1, pp. 22–33, 2016.
- 7[7] T. Mergner and V. Lippi, “Human movement execution control combined with posture control—a neurorobotics approach,” in Converging Clinical and Engineering Research on Neurorehabilitation II , J. Ibáñez, J. González-Vargas, J. M. Azorín, M. Akay, and J. L. Pons, Eds. Cham: Springer International Publishing, 2017, pp. 243–247.
- 8[8] V. Lippi, T. Mergner, M. Szumowski, M. S. Zurawska, and T. Zielińska, “Human-inspired humanoid balancing and posture control in frontal plane,” in ROMANSY 21-Robot Design, Dynamics and Control . Springer, Cham, 2016, pp. 285–292.
