IEEE Robotics & Automation Magazine - June 2020 - 98

Table 2. The average coefficient of determination (R2) over 2,000 trials between DRL and robot
trajectories for the ankle, hip, toe, and stepping
strategies.
Mean R 2
Axis

Ankle

Hip

Toe

Step

Total

X

0.97

0.94

0.93

0.96

0.95

Z

0.9

0.91

0.96

0.88

0.91

height. This is possible if the gait is not performed with
stretched knees as is mostly the case in robot control tasks
that aim to prevent singularities in a stretched knee pose.

(a)

(b)

Figure 10. The system models used for control design. (a) A
point-mass model with a free-moving CoM independent of
actuation. This model is used for our proposed MJMPC. (b) The
IP model with actuated ankle torque and kick force and freemoving CoM according to the IP motions. This model is used to
validate and verify that the controller generated a feasible and
implementable trajectory.

tf (s)

0.6
0.4
0.2
0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5 5.5 6
Displacement (cm)

Real Data
Piecewise Linear Approximation
Quadratic Approximation

Figure 11. The CoM displacement from a nominal pose over tf
for the robot.

produce a ground contact force of fmax = 2, 500 N and
torque of x max = 1, 000 Nm. Using the IP model, the required
ground contact forces and torques for tracking the CoM
reference can be calculated and are shown in Figure 8(a)
and (b). For all four push recovery scenarios, the required
force and torques are well below the maximal generatable
ground contact force and torque of fmax = 2, 500 N and
x max = 1, 000 Nm, respectively.
In summary, feasible and stable motions are enabled using
this proposed control framework to first generate push recovery motions via MJMPC and then track the motions using a
whole-body controller. The inequality constraint (5) of the
MJMPC optimization problem explicitly considers at which
speed the whole-body controller can track a reference
motion; therefore, the trackability of the reference motion is
guaranteed. Furthermore, for the whole-body controller, the
CoM height modulation does not necessarily come from a
toe lift but can be any leg extension that increases the CoM
98

*

IEEE ROBOTICS & AUTOMATION MAGAZINE

*

JUNE 2020

Benchmarking Between Human and AI Policies
To this point, we have shown that methods of policy extraction can be used to estimate and reconstruct control policies
from DRL. Interestingly, when these methods are applied to
human movements, similar strategies are revealed [12]. In
this section, we compare the findings from our previous work
with those based on the AI policy to highlight the similarities
between policies extracted from humans and DRL. This will
demonstrate that, even though training in DRL can take just
hours, the emergent behaviors are similar to human behaviors, which are highly successful only after being refined over
months. These similarities show that DRL can be a high-quality source of inspiration for control design because it can
closely match human-level behavior.
Data Collection
To compare human and DRL push recovery policies, human
data was recorded in 60 trials while short impulses were
applied close to their CoM [Figure 13(a)], analogous to those
applied to robots during DRL testing. After the push ends
[Figure 13(b)], the subject takes a recovery action [e.g., stepping in Figure 13(c)]. Different impulse magnitudes were
applied to obtain a wide range of push recovery behavior.
Impulses were measured by a force/torque sensor. Movement
was measured via a Vicon motion-tracking system, and the
data were postprocessed using OpenSim and gait analysis
tools, as discussed in [17].
Push Recovery Strategies in Humans
and AI Policies
An analysis of the human data [12] shows that various strategies are used for push recovery, as depicted in Figure 1. Each
strategy is associated with a control action such as the modulation of CoP, angular momentum, CoM height, or support
polygon. Interestingly, a very similar structure also emerges in
the AI policy, which demonstrates the similarities between
DRL and human policies.
Control Strategy
We find that a single controller implementing the MJMPC
scheme in the "Understanding and Learning the Fundamental



IEEE Robotics & Automation Magazine - June 2020

Table of Contents for the Digital Edition of IEEE Robotics & Automation Magazine - June 2020

Contents
IEEE Robotics & Automation Magazine - June 2020 - Cover1
IEEE Robotics & Automation Magazine - June 2020 - Cover2
IEEE Robotics & Automation Magazine - June 2020 - Contents
IEEE Robotics & Automation Magazine - June 2020 - 2
IEEE Robotics & Automation Magazine - June 2020 - 3
IEEE Robotics & Automation Magazine - June 2020 - 4
IEEE Robotics & Automation Magazine - June 2020 - 5
IEEE Robotics & Automation Magazine - June 2020 - 6
IEEE Robotics & Automation Magazine - June 2020 - 7
IEEE Robotics & Automation Magazine - June 2020 - 8
IEEE Robotics & Automation Magazine - June 2020 - 9
IEEE Robotics & Automation Magazine - June 2020 - 10
IEEE Robotics & Automation Magazine - June 2020 - 11
IEEE Robotics & Automation Magazine - June 2020 - 12
IEEE Robotics & Automation Magazine - June 2020 - 13
IEEE Robotics & Automation Magazine - June 2020 - 14
IEEE Robotics & Automation Magazine - June 2020 - 15
IEEE Robotics & Automation Magazine - June 2020 - 16
IEEE Robotics & Automation Magazine - June 2020 - 17
IEEE Robotics & Automation Magazine - June 2020 - 18
IEEE Robotics & Automation Magazine - June 2020 - 19
IEEE Robotics & Automation Magazine - June 2020 - 20
IEEE Robotics & Automation Magazine - June 2020 - 21
IEEE Robotics & Automation Magazine - June 2020 - 22
IEEE Robotics & Automation Magazine - June 2020 - 23
IEEE Robotics & Automation Magazine - June 2020 - 24
IEEE Robotics & Automation Magazine - June 2020 - 25
IEEE Robotics & Automation Magazine - June 2020 - 26
IEEE Robotics & Automation Magazine - June 2020 - 27
IEEE Robotics & Automation Magazine - June 2020 - 28
IEEE Robotics & Automation Magazine - June 2020 - 29
IEEE Robotics & Automation Magazine - June 2020 - 30
IEEE Robotics & Automation Magazine - June 2020 - 31
IEEE Robotics & Automation Magazine - June 2020 - 32
IEEE Robotics & Automation Magazine - June 2020 - 33
IEEE Robotics & Automation Magazine - June 2020 - 34
IEEE Robotics & Automation Magazine - June 2020 - 35
IEEE Robotics & Automation Magazine - June 2020 - 36
IEEE Robotics & Automation Magazine - June 2020 - 37
IEEE Robotics & Automation Magazine - June 2020 - 38
IEEE Robotics & Automation Magazine - June 2020 - 39
IEEE Robotics & Automation Magazine - June 2020 - 40
IEEE Robotics & Automation Magazine - June 2020 - 41
IEEE Robotics & Automation Magazine - June 2020 - 42
IEEE Robotics & Automation Magazine - June 2020 - 43
IEEE Robotics & Automation Magazine - June 2020 - 44
IEEE Robotics & Automation Magazine - June 2020 - 45
IEEE Robotics & Automation Magazine - June 2020 - 46
IEEE Robotics & Automation Magazine - June 2020 - 47
IEEE Robotics & Automation Magazine - June 2020 - 48
IEEE Robotics & Automation Magazine - June 2020 - 49
IEEE Robotics & Automation Magazine - June 2020 - 50
IEEE Robotics & Automation Magazine - June 2020 - 51
IEEE Robotics & Automation Magazine - June 2020 - 52
IEEE Robotics & Automation Magazine - June 2020 - 53
IEEE Robotics & Automation Magazine - June 2020 - 54
IEEE Robotics & Automation Magazine - June 2020 - 55
IEEE Robotics & Automation Magazine - June 2020 - 56
IEEE Robotics & Automation Magazine - June 2020 - 57
IEEE Robotics & Automation Magazine - June 2020 - 58
IEEE Robotics & Automation Magazine - June 2020 - 59
IEEE Robotics & Automation Magazine - June 2020 - 60
IEEE Robotics & Automation Magazine - June 2020 - 61
IEEE Robotics & Automation Magazine - June 2020 - 62
IEEE Robotics & Automation Magazine - June 2020 - 63
IEEE Robotics & Automation Magazine - June 2020 - 64
IEEE Robotics & Automation Magazine - June 2020 - 65
IEEE Robotics & Automation Magazine - June 2020 - 66
IEEE Robotics & Automation Magazine - June 2020 - 67
IEEE Robotics & Automation Magazine - June 2020 - 68
IEEE Robotics & Automation Magazine - June 2020 - 69
IEEE Robotics & Automation Magazine - June 2020 - 70
IEEE Robotics & Automation Magazine - June 2020 - 71
IEEE Robotics & Automation Magazine - June 2020 - 72
IEEE Robotics & Automation Magazine - June 2020 - 73
IEEE Robotics & Automation Magazine - June 2020 - 74
IEEE Robotics & Automation Magazine - June 2020 - 75
IEEE Robotics & Automation Magazine - June 2020 - 76
IEEE Robotics & Automation Magazine - June 2020 - 77
IEEE Robotics & Automation Magazine - June 2020 - 78
IEEE Robotics & Automation Magazine - June 2020 - 79
IEEE Robotics & Automation Magazine - June 2020 - 80
IEEE Robotics & Automation Magazine - June 2020 - 81
IEEE Robotics & Automation Magazine - June 2020 - 82
IEEE Robotics & Automation Magazine - June 2020 - 83
IEEE Robotics & Automation Magazine - June 2020 - 84
IEEE Robotics & Automation Magazine - June 2020 - 85
IEEE Robotics & Automation Magazine - June 2020 - 86
IEEE Robotics & Automation Magazine - June 2020 - 87
IEEE Robotics & Automation Magazine - June 2020 - 88
IEEE Robotics & Automation Magazine - June 2020 - 89
IEEE Robotics & Automation Magazine - June 2020 - 90
IEEE Robotics & Automation Magazine - June 2020 - 91
IEEE Robotics & Automation Magazine - June 2020 - 92
IEEE Robotics & Automation Magazine - June 2020 - 93
IEEE Robotics & Automation Magazine - June 2020 - 94
IEEE Robotics & Automation Magazine - June 2020 - 95
IEEE Robotics & Automation Magazine - June 2020 - 96
IEEE Robotics & Automation Magazine - June 2020 - 97
IEEE Robotics & Automation Magazine - June 2020 - 98
IEEE Robotics & Automation Magazine - June 2020 - 99
IEEE Robotics & Automation Magazine - June 2020 - 100
IEEE Robotics & Automation Magazine - June 2020 - 101
IEEE Robotics & Automation Magazine - June 2020 - 102
IEEE Robotics & Automation Magazine - June 2020 - 103
IEEE Robotics & Automation Magazine - June 2020 - 104
IEEE Robotics & Automation Magazine - June 2020 - 105
IEEE Robotics & Automation Magazine - June 2020 - 106
IEEE Robotics & Automation Magazine - June 2020 - 107
IEEE Robotics & Automation Magazine - June 2020 - 108
IEEE Robotics & Automation Magazine - June 2020 - 109
IEEE Robotics & Automation Magazine - June 2020 - 110
IEEE Robotics & Automation Magazine - June 2020 - 111
IEEE Robotics & Automation Magazine - June 2020 - 112
IEEE Robotics & Automation Magazine - June 2020 - 113
IEEE Robotics & Automation Magazine - June 2020 - 114
IEEE Robotics & Automation Magazine - June 2020 - 115
IEEE Robotics & Automation Magazine - June 2020 - 116
IEEE Robotics & Automation Magazine - June 2020 - 117
IEEE Robotics & Automation Magazine - June 2020 - 118
IEEE Robotics & Automation Magazine - June 2020 - 119
IEEE Robotics & Automation Magazine - June 2020 - 120
IEEE Robotics & Automation Magazine - June 2020 - 121
IEEE Robotics & Automation Magazine - June 2020 - 122
IEEE Robotics & Automation Magazine - June 2020 - 123
IEEE Robotics & Automation Magazine - June 2020 - 124
IEEE Robotics & Automation Magazine - June 2020 - 125
IEEE Robotics & Automation Magazine - June 2020 - 126
IEEE Robotics & Automation Magazine - June 2020 - 127
IEEE Robotics & Automation Magazine - June 2020 - 128
IEEE Robotics & Automation Magazine - June 2020 - 129
IEEE Robotics & Automation Magazine - June 2020 - 130
IEEE Robotics & Automation Magazine - June 2020 - 131
IEEE Robotics & Automation Magazine - June 2020 - 132
IEEE Robotics & Automation Magazine - June 2020 - 133
IEEE Robotics & Automation Magazine - June 2020 - 134
IEEE Robotics & Automation Magazine - June 2020 - 135
IEEE Robotics & Automation Magazine - June 2020 - 136
IEEE Robotics & Automation Magazine - June 2020 - 137
IEEE Robotics & Automation Magazine - June 2020 - 138
IEEE Robotics & Automation Magazine - June 2020 - 139
IEEE Robotics & Automation Magazine - June 2020 - 140
IEEE Robotics & Automation Magazine - June 2020 - 141
IEEE Robotics & Automation Magazine - June 2020 - 142
IEEE Robotics & Automation Magazine - June 2020 - 143
IEEE Robotics & Automation Magazine - June 2020 - 144
IEEE Robotics & Automation Magazine - June 2020 - 145
IEEE Robotics & Automation Magazine - June 2020 - 146
IEEE Robotics & Automation Magazine - June 2020 - 147
IEEE Robotics & Automation Magazine - June 2020 - 148
IEEE Robotics & Automation Magazine - June 2020 - 149
IEEE Robotics & Automation Magazine - June 2020 - 150
IEEE Robotics & Automation Magazine - June 2020 - 151
IEEE Robotics & Automation Magazine - June 2020 - 152
IEEE Robotics & Automation Magazine - June 2020 - 153
IEEE Robotics & Automation Magazine - June 2020 - 154
IEEE Robotics & Automation Magazine - June 2020 - 155
IEEE Robotics & Automation Magazine - June 2020 - 156
IEEE Robotics & Automation Magazine - June 2020 - 157
IEEE Robotics & Automation Magazine - June 2020 - 158
IEEE Robotics & Automation Magazine - June 2020 - 159
IEEE Robotics & Automation Magazine - June 2020 - 160
IEEE Robotics & Automation Magazine - June 2020 - 161
IEEE Robotics & Automation Magazine - June 2020 - 162
IEEE Robotics & Automation Magazine - June 2020 - 163
IEEE Robotics & Automation Magazine - June 2020 - 164
IEEE Robotics & Automation Magazine - June 2020 - 165
IEEE Robotics & Automation Magazine - June 2020 - 166
IEEE Robotics & Automation Magazine - June 2020 - 167
IEEE Robotics & Automation Magazine - June 2020 - 168
IEEE Robotics & Automation Magazine - June 2020 - 169
IEEE Robotics & Automation Magazine - June 2020 - 170
IEEE Robotics & Automation Magazine - June 2020 - 171
IEEE Robotics & Automation Magazine - June 2020 - 172
IEEE Robotics & Automation Magazine - June 2020 - 173
IEEE Robotics & Automation Magazine - June 2020 - 174
IEEE Robotics & Automation Magazine - June 2020 - 175
IEEE Robotics & Automation Magazine - June 2020 - 176
IEEE Robotics & Automation Magazine - June 2020 - 177
IEEE Robotics & Automation Magazine - June 2020 - 178
IEEE Robotics & Automation Magazine - June 2020 - 179
IEEE Robotics & Automation Magazine - June 2020 - 180
IEEE Robotics & Automation Magazine - June 2020 - 181
IEEE Robotics & Automation Magazine - June 2020 - 182
IEEE Robotics & Automation Magazine - June 2020 - 183
IEEE Robotics & Automation Magazine - June 2020 - 184
IEEE Robotics & Automation Magazine - June 2020 - Cover3
IEEE Robotics & Automation Magazine - June 2020 - Cover4
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2023
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2023
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2023
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2023
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2022
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2022
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2022
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2022
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2021
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2021
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2021
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2021
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2020
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2020
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2020
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2020
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2019
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2019
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2019
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2019
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2018
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2018
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2018
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2018
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2017
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2017
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2017
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2017
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2016
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2016
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2016
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2016
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2015
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2015
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2015
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2015
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2014
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2014
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2014
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2014
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2013
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2013
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2013
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2013
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2012
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2012
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2012
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2012
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2011
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2011
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2011
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2011
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2010
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2010
https://www.nxtbookmedia.com