Towards Variable Assistance for Lower Body Exoskeletons
This paper presents and experimentally demonstrates a novel framework for variable assistance on lower body exoskeletons, based upon safety-critical control methods. Existing work has shown that providing some freedom of movement around a nominal gait, instead of rigidly following it, accelerates the spinal learning process of people with a walking impediment when using a lower body exoskeleton. With this as motivation, we present a method to accurately control how much a subject is allowed to deviate from a given gait while ensuring robustness to patient perturbation. This method leverages controlled set invariance tools to force certain joints to remain inside predefined trajectory tubes in a minimally invasive way. The effectiveness of the method is demonstrated experimentally with able-bodied subjects and the Atalante lower body exoskeleton.
Active lower-limb exoskeleton technology has the potential to benefit approximately 6.4 million people in the United States who are limited by the effects of stroke, polio, multiple sclerosis, spinal cord injury, and cerebral palsy. . The term ”exoskeleton” is traditionally associated with devices that assist people with physical disabilities [13, 15, 24, 27]. However, exoskeleton can also be designed to improve strength and endurance of able-bodied persons [22, 34].
The main focus of this paper is exoskeleton technology aimed at restoring locomotion for people with a leg pathology. While mechanical design is an important consideration for the development of exoskeleton devices, this paper focuses on the control methodology. A general review of control strategies for lower-limb assistive devices is given in [21, 5, 28]. Most current approaches to control powered leg devices are driven by finite-state machines with each phase defined using heuristic parameters. This approach typically requires the use of additional stability aids such as arm-crutches. Recently, dynamically stable crutch-less exoskeleton walking has been demonstrated for patients with paraplegia by leveraging the full nonlinear dynamics of the system and generating a dynamically stable gaits . The exoskeleton is then driven to follow these fixed trajectories.
While this full assistance approach enables crutch-less exoskeleton walking, it is no longer optimal when exoskeleton technology is extended to patients who are recovering muscle functionality. For patients who are trying to strengthen recovering muscles, partial assistance would be more appropriate than full assistance. A previous study showed that permitting partial assistance and variability during step training enhanced stepping recovery after a complete spinal cord transection in adult mice . The study also hypothesized that a fixed trajectory training strategy would drive the spinal circuitry toward a state of learned helplessness. These ”assist-as-needed” algorithms, which have also been explored in other publications [26, 11, 33], utilize velocity field control to provide gentle guidance at a constant rate towards the desired walking trajectory.
The algorithm presented in this paper proposes a complementary approach that leverages tools from controlled set invariance – as seen with control barrier functions [7, 4, 3] – to enable assist-as-needed strategies while guaranteeing coherence of the walking pattern. The method allows users to control their own motions when they are performing well (i.e. staying in a tube around a nominal trajectory) but intervene when they are not, so as to maintain a functional walking pattern. This approach, therefore, takes motivation from the growing area of safety-critical control [9, 2, 30].
In summary, this paper proposes a variable assistance framework targeted for patients who are in the process of recovering muscle functionality. Section III discusses the mathematical theory behind the variable assistance framework. Section IV presents and discusses the experimental results. Lastly, Section V discusses the conclusions.
Ii Variable Assistance Framework
Ii-a The Atalante Exoskeleton Platform
The exoskeleton used for this work, named Atalante, was developed by the French startup company Wandercraft and has already demonstrated its ability to perform crutch-less dynamic walking with patients with paraplegia . As shown in Fig. 2, Atalante has a total of 12 actuated joints. Each leg has three actuated joints at the hip which control the spherical motion of the hip, one actuated joint at the knee, and two actuated joints at the ankle. The terms and abbreviations for the joints are as follows: frontal hip (FH), transverse hip (TH), sagittal hip (SH), sagittal knee (SK), sagittal ankle (SA), and henke ankle (HA). As for the sensing capabilities of Atalante, the position and velocity of each joint is measured using a digital encoder mounted on the motor. Additional attitude estimations are obtained using four Inertial Measurement Units (IMUs) that are located on the torso, the pelvis, the left tibia, and the right tibia. Finally, ground force information is obtained using eight 3-axis force sensors, four located on the bottom of each foot. The controller is run on a central processing unit running a real-time operating system.
Ii-B Baseline Walking Approach
The baseline walking approach used in this work consists of four separate components (cf. Fig. 3). The first component, patient-exoskeleton model generation, entails the creation of a patient-specific dynamical model. The patient-exoskeleton model is created by fusing the mass and inertia of each link of a simplified human model with that of each link of the exoskeleton. The simplified human model is created using the patient mass, height, thigh length, and shank length. The human model generation process is based off of the anthropometric data presented in . The thigh and shank length of the exoskeleton are adjusted to match those of the patient.
Next, dynamically stable walking gaits are generated for the patient-exoskeleton model using the Partial Hybrid Zero Dynamics (PHZD) method [20, 1, 16, 19, 31]. Multiple gaits are generated over a grid of parameters such as patient mass, patient height, step length, step duration, etc. These gaits comprised together form a gait library which is then fitted using a neural network. Once trained, the neural network takes the parameters as inputs and outputs a joint-level trajectory for each of the 12 joints. The final component of the baseline walking approach is tracking of the joint-level trajectories which is achieved through basic PID control. A deadbeat is implemented to account for early impacts. The desired trajectory each joint is tracking is given by
where is the time of the latest impact and is a cubic polynomial satisfying
with the nominal duration of a step and a scalar between 0 and 1.
Additional features were also implemented to improve the performance of nominal exoskeleton walking on hardware. First, flat-foot ankle control was implemented to to ensure that the swing foot always remain parallel to the ground. This ensures a flat foot at impact regardless of the time of impact. The flat-foot controller works by using inverse kinematics based on the swing leg tibia IMU to find the ankle joint angles that result in the foot being horizontal. These new swing ankle joint targets are then tracked by the same PID controller as the rest of the joints. Finally, a one degree offset was also added to sagittal ankle desired trajectories to compensate for the effect of hardware flexibilities.
Ii-C Variable Assistance Architecture
As discussed in , the correct muscle activation pattern it is an important criterion for the spinal learning process. It is also showed in the same work that having rigid tracking of the desired gait is sub-optimal in that regard. Leaving some room for the patient to actually be the one doing the movement yield better results. However, with lower-body exoskeletons like Atalante, there is a strong constraint of stability, which limits how much freedom of movement can be given to the user. But the better the motoricity of the patient, the more the patient can be relied on to execute a stable walking pattern.
To that end, we explore an approach to precisely control how much freedom is granted to the user. First, we chose joints that we want to let the user control: the assisted joints. All the other joints will be rigidly controlled as described in Sec. II-B. In this work, we choose to only assist the sagittal hip and sagittal knee of the swing leg (cf. Fig. 2).
The architecture of the variable assistance framework, as shown in Fig. 4, contains four main components. First, a trajectory is obtained from the neural network based on patient-specific model and desired gait parameters. This trajectory is modulated by the deadbeat mechanism describe in Sec. II-B. This deadbeat mechanism is critical in this case because the nominal joint trajectory will not be followed very accurately when the user is in control of the assisted joints.
The filtered trajectory is then fed into two separate controllers. One is the baseline controller presented in Sec. II-B. This controller plays back the trajectory and generates position and velocity targets and for the PID controllers that in turn generate tracking torques . The flatfoot ankle controller separately computes targets for the swing leg ankle that are then substituted in place of the nominal ones.
The other controller is the variable assistance controller. This controller is the heart of the variable assistance framework. The variable assistance controller has three subcomponents: joint idealization, feedforward assistance and virtual guide filter. The torques of these three subcomponents are summed together to form a holistic “assistive torque”:
Joint Idealization. The joint idealization component computes the torques required to compensate for gravity and friction in the assisted joints. The goal is to make these joints as transparent as possible such that when there is not assistance, the user does not feel any resistance that would impede his ability to walk freely. The idealization torques are given by
where is computed numerically using inverse dynamics on the model of the empty exoskeleton. The friction coefficients and were determined through system identification of the assisted joints.
Feedforward Assistance. The joint idealization component is not sufficient to make the exoskeleton fully transparent as the inertia of the exoskeleton is not compensated for, which makes the legs harder to move for the user. The feedforward assistance component therefore provides feedforward torques – calculated during the PHZD gait generation process  – to obtain a first order level of compensation for the inertia of the assisted joints. This does not truly compensate for inertia but at least provides enough assistance for the user to move the exoskeleton legs along the desired trajectory. The intensity of both idealization and feedforward components can be adjusted to generate varying levels of user effort.
Virtual Guide Filter. The virtual guide filter computes the joint torques required to limit the discrepancy between the actual and desired trajectory of the assisted joints. This discrepancy limit is described by a tube around the desired trajectory: a virtual guide. The use of virtual guides is most common in the field of human robot interaction . The shapes and sizes of the virtual guides can be chosen almost arbitrarily. Given a virtual guide shape, we will talk about “assistance factor” to describe size of the virtual guide. Specifically, the assistance factor, , is inversely proportional to the width of the guide. The inner working of this virtual guide filter will be presented in more details the next section.
The impact detection block, as previously introduced, also records which leg of the exoskeleton is in stance or swing, and generates an ”assisted joints selection matrix” which controls which joints are being assisted at a given instant. Only these joints are assigned the assistive torques. The remaining joints are assigned the baseline tracking torques. The merging of these torques comprise the final joint torques that are commanded to the exoskeleton.
Ii-D Haptic Feedback
On top of the variable assistance controller, real-time haptic feedback is provided to the user as an effort to increase his ability to track the desired walking trajectory. The haptic feedback consists of eight small vibration motors that are located on the front and back of the users thighs as well as the front and back of their shanks. Since the user only has control over the gait for , as is equivalent to the baseline controller, haptic feedback is only given for assistance factors below 1. The function used to scale the level of vibration with respect to the distance to the virtual guide as well as the assistance factor is given by:
As shown by the function, the amplitude of the vibration increases as the user approaches the virtual guide. The vibration activation is assigned to the vibration motor that is located on the side of the joint that matches direction of the tracking error. For example, if the user is at a joint angle above the desired target, the user feels a vibration on the front of the limb. Alternatively, if the user is below the desired target angle, the user would feel the vibration on the back of the limb. This way, the user has a physical intuition for where the joints are with respect to the virtual guides.
Iii Virtual Guide Filter
We now present the methodology underlying our approach to providing variable assistance in exoskeletons: the Virtual Guide Filter. The theory discussed in this section is covered in more detail in [7, 17, 18] and will be presented here without proofs.
Iii-a Sub-tangentiality Condition
Let’s consider continuous-time affine control systems of the form:
The functions and defined on a compact set are continuously differentiable. The control policies are restricted to be functions Lipschitz continuous in state over and piecewise continuous in time over . We furthermore define to be the compact and convex set of admissible inputs for this system, i.e. and , . Finally, we assume that system (5) has a unique solution over a time interval for any initial condition and with .
Let’s denote the tube we want the system to stay in for a duration by and require that it is compact. If is chosen arbitrarily, it will most certainly contain states that cannot be visited without leading to the system leaving before time . Therefore, in order to be able to steer the system to remain in , it has to be constrained to stay inside a tube such that and that has the property of being a viable tube. Such a subset does not contain any unsafe states and it is therefore possible to guarantee the finite time invariance of this new tube through the use of a local characterization of invariance (cf.  for more details). The description function of such a tube is called a control barrier function.
For that, let’s consider smooth practical sets as defined in . To describe such sets, one only needs to consider a continuously differentiable function such that 111See [8, p. 103] for all conditions under which is practical.:
From this theorem, it naturally follows that the regulation map defined by
is sufficient to capture the constraint that needs to be enforced on the control action to remain in until , and therefore remain in until . Indeed, guarantees the finite time invariance of .
Iii-B Safe Backward Image
Finding an explicit representation of viable tubes for even a simple system is hard and time consuming. To avoid these complexities, the work presented in  proposes to use sets that are implicitly defined as a function of the flow of the system under a backup policy, and evaluate directly online using numerical methods.
Let be the set of all continuously differentiable backup control laws taking values in the set of admissible inputs: . Under the assumptions on the control system, we know that for all there exists a solution to (5) that is unique and defined until . Therefore, one can define to be the flow of (5) under the control law . Under all these assumptions, the map defined by is a homeomorphism of (cf. ) for all . In that context we can define the following set.
The safe backward image of is defined to be the set:
It is then easy to show that if is non empty, it is a viability tube subset of and that for all and for all , . Furthermore, the set enjoy the following property:
is a control barrier function and we can define a filtering policy that guarantees that if the system will remain in , and thus in .
Given a smooth function , the control law defined by
is a smooth selection of if .
To be able to evaluate that policy online, one only has to be able to evaluate the flow of the system for all . Even though this cannot be done numerically for all , it can be approximated by numerically integrating the dynamics and evaluating the flow on a finite set of points in (see [17, 18]). Let’s now specialize these results for our specific application.
Iii-C Application to Joint Based Filtering
As presented in II, each joint is idealized and handled independently. We therefore consider the following dynamics for each joint:
where is the inertia of the joint, is the torque the virtual guide filter can apply, the feedfoward torque applied to the joint and the torque applied by the exoskeleton user on the joint.
The virtual guide we want to constraint the joint to stay in is characterized by:
for some properly chosen to achieve the desired shape of the guide (cf. Fig. 5 for examples of shapes).
Because is not known ahead of time, a robust version of the results presented before has to be actually used. These extensions are straightforward and will not be presented here due to space constraints, but one must note that they can be used here because system (13) is monotone . In this case, the safe backward image is characterized by
where and are the extreme values of the disturbance the user can generate. So in order to evaluate , the numerical integration of the dynamics only has to be performed twice each time assuming the extremal values of the disturbance. The backup policy is chosen to be
for some properly chosen gains and . For this work, these gains were chosen to be the same as the one used for the PIDs of the baseline controller.
Finally, the filtering law is given by
where and for some constant as it is easy to verify that for all . Note that for Sec. IV, is coupled with the assistance Factor by .
Iv Experimental Results
The variable assistance controller was demonstrated in three separate experiments. First, the virtual guide filter was demonstrated on the empty exoskeleton to verify its performance for various tube shapes. Second, the entire framework was tested with eight able-bodied human subjects (cf. Fig. 1 and Fig. 6). Lastly, the framework was demonstrated over a larger variation of assistance factors for one subject.
Demonstration of the Virtual Guide Filter. The initial validation experiments were performed on the empty exoskeleton as it hung in the air in an effort to show the behavior of the filter without user perturbations and without feedforward torque. The plots of the experimental results, shown in Fig. 5, illustrate the actual joint angles over 30 steps with each step overlaid on top of each other. It can be seen that for all tube shapes, the actual joint angles remained inside of the bounds and the filter only acted when necessary.
Full Assistance versus Partial Assistance. The experimental testing conducted for able-bodied subjects consisted of walking trials lasting five minutes each. The format of each trial is shown in Fig. 7 and is as follows. First, 90 seconds of walking with full assistance, then 30s of transitioning to the desired level of assistance and finally 180s of walking at that desired assistance factor. “Full Assistance” corresponds to the baseline controller and that “Partial Assistance” corresponds to a virtual guide of width (cf. Fig 9). Beside the patient model parameters, the gait parameters were the same for all subject. The step length and duration were chosen to be 0.16m and 0.8s respectively.
In order to demonstrate the effectiveness of the framework, four trials were conducted per subject. The first two trials were one with Full Assistance and one with Partial Assistance where the subjects were asked to be completely passive and let the exoskeleton do all the work. The same two trials were then repeated but this time asking the subjects to: ”Do whatever feels necessary to track the nominal gait”. The user was also provided haptic feedback on his performance as discussed in Sec. II-D.
The required assistive torque, as well as the trajectory tracking, for the four trials of one subject is presented in Fig. 8. The plots are separated by behavior of the user (active/passive) as well as assistance level (full/partial). It can be observed that when the subject is passive under partial assistance, the joint trajectories tend to group near the virtual guides as expected. Alternatively, when the subject is active under partial assistance the actual joint trajectories tend to span more of the virtual guide as the subject is actively trying to avoid hitting the bounds of the guide. In all cases, the trajectories stay contained within the virtual guides.
Human metabolic expenditure was recorded for all subjects since metabolic expenditure provides critical insight into how much effort the user is exerting. The metabolic rate was calculated from oxygen and carbon dioxide exchange rates as recorded by a COSMED K4b2 portable pulmonary gas exchange measurement instrument. The exchange rates, measured in , were then converted to a metabolic rate using the equation developed by Brockway et al. . When calculating the metabolic rate, the average metabolic rate recorded over the baseline part of every trial was subtracted from the average rate of the exercise part to isolate the part of the total metabolic power used for compensating for the varying levels of assistance. Also note that the first 30s of each phase was discarded to ensure that the results correspond to a steady state of metabolic rate (cf. lower plot in Fig. 7).
The results for all eight subjects is summarized in Fig. 9. This figure shows that when the subject was passive, the metabolic rate remained consistent between full assistance and partial assistance. The metabolic rate when passive also is consistently lower than the metabolic rate of the subjects when active at partial assistance. An interesting observation is that the metabolic rate of the subjects when active at full assistance is not much different from that of the subjects when passive. This suggests that the subjects do not feel the need to provide more energy than necessary when the exoskeleton is already providing full assistance. On the other hand, partial assistance incentivises users to contribute to the tracking of the gait which translates into an increase in metabolic rate as expected. Finally, note that on average, the subjects where able to improve the accuracy of tracking in Partial Assist when actively trying.
Varying Assistance Factors for One Subject. The testing procedure for the final experiment was the same as discussed previously and shown in Fig. 7 but was repeated with a larger set of assistance factors. The trials were done with assistance factors . The shape of the virtual guide is the same as shown in Fig. 8. The width of the virtual guide is then given by degrees. A five minute break was taken in between each trial to let the subject return to a resting metabolic rate. The subject also completed one five minute trial while walking on the treadmill at the same velocity as the exoskeleton walking to compare the subject’s nominal walking metabolic rate with that of the exoskeleton testing. This entire procedure was repeated on three consecutive days with the same subject.
The metabolic power consumption as well as the average tracking error for each segment is shown in Fig. 10. Note that in this figure, the baseline and exercise portion of every trial are plotted individually. Also, the subject’s average resting oxygen and carbon dioxide exchange rates, measured at the start of testing, are subtracted from the recorded exchange rates of each trial. Interestingly, it can be seen that the average metabolic rate for nominal walking has the same order of magnitude to that of exoskeleton walking at full assistance. It can also be seen that the baseline metabolic rate is relatively consistent between all trials and that the data is symmetric around the 0.00 assistance factor trial. This confirms that the increase in exercise metabolic rate for lower assistance factors is due to the lowered assistance and not the subject tiring.
Fig. 11 presents the metabolic rates of the exercise part normalized by the baseline ones for the different values of assistance factor, as well as the corresponding tracking errors. These normalized values indicate a clear trend: The normalized metabolic rate of exercise and the normalized tracking error increase as the assistance factor decreases.
In this paper we have presented and demonstrated a framework to achieve variable assistance of a lower body exoskeleton. This framework was achieved using tools from controlled set invariance that yield performance guarantees via the virtual guide filter. Through experimental results (cf. video ), it was found that the size of the virtual guide had a direct correlation with the amount of power subjects had to provide to track the nominal gait. The authors would also like to note a few additional takeaways from the experimental results. First, it was found that as the assistance level was decreased, the operator standing behind the exoskeleton had to help with the stability of the exoskeleton. The authors plan on addressing that issue by including some active stabilization layer into the framework. Second, it was hard for the users to track the generated gaits. This is mostly attributed to the fact that the gaits are not very anthropomorphic. Additionally, the naive haptic feedback was hard to interpret by the user and better feedback strategies are being investigated. Thus, future work includes adapting the walking gaits to match that of the user, as well as investigating how the variable assistance can be used in a true clinical rehabilitation setup.
The authors would like to thanks all the students, post-docs and volunteers that took part in the experiments we presented in this paper. The authors would also like to thank the entire Wandercraft team that designed Atalante and continues to provide technical support for this project.
-  (2017) First steps towards translating HZD control of bipedal robots to decentralized control of exoskeletons. IEEE Access 5, pp. 9919–9934. External Links: Cited by: §II-B.
-  (2017) Discrete control barrier functions for safety-critical control of discrete systems with application to bipedal robot navigation.. In Robotics: Science and Systems, Cited by: §I.
-  (2019) Control barrier functions: theory and applications. arXiv preprint arXiv:1903.11199. Cited by: §I.
-  (2016) Control barrier function based quadratic programs for safety critical systems. IEEE Transactions on Automatic Control 62 (8), pp. 3861–3876. Cited by: §I.
-  (2012) Active exoskeleton control systems: state of the art. Procedia Engineering 41, pp. 988–994. Cited by: §I.
-  (2003) Monotone control systems. IEEE Transactions on automatic control 48 (10), pp. 1684–1698. Cited by: §III-C.
-  (2009) Viability theory. Springer Science. Cited by: §I, §III-A, §III.
-  (2008) Set-theoretic methods in control. Springer. Cited by: §III-A, footnote 1.
-  (2015) Control barrier certificates for safe swarm behavior. IFAC-PapersOnLine 48 (27), pp. 68–73. Cited by: §I.
-  (1987) Derivation of formulae used to calculate energy expenditure in man.. Human nutrition. Clinical nutrition 41 (6), pp. 463–471. Cited by: §IV.
-  (2006) Assist-as-needed training paradigms for robotic rehabilitation of spinal cord injuries. In 2006 IEEE International Conference on Robotics and Automation (ICRA), pp. 3504–3511. Cited by: §I.
-  (2006) Implications of assist-as-needed robotic step training after a complete spinal cord injury on intrinsic strategies of motor learning. Journal of Neuroscience 26 (41), pp. 10564–10568. Cited by: §I, §II-C.
-  (2015) Design of a lower extremity exoskeleton for motion assistance in paralyzed individuals. In 2015 IEEE International Conference on Robotics and Biomimetics, pp. 144–149. Cited by: §I.
-  (2007) Active orthoses for the lower-limbs: challenges and state of the art. In 2007 IEEE 10th International Conference on Rehabilitation Robotics, pp. 968–977. Cited by: §I.
-  (2012) The rewalk powered exoskeleton to restore ambulatory function to individuals with thoracic-level motor-complete spinal cord injury. American journal of physical medicine & rehabilitation 91 (11), pp. 911–921. Cited by: §I.
-  (2018) Towards restoring locomotion for paraplegics: realizing dynamically stable walking on exoskeletons. In 2018 IEEE International Conference on Robotics and Automation (ICRA), pp. 2804–2811. Cited by: §I, §II-A, §II-B, §II-C.
-  (2018) An online approach to active set invariance. In 2018 IEEE Conference on Decision and Control (CDC), pp. 3592–3599. Cited by: §III-B, §III-B, §III.
-  (2019) A scalable controlled set invariance framework with practical safety guarantees. In 2019 IEEE Conference on Decision and Control (CDC), pp. n/a. Cited by: §III-B, §III.
-  (2018) Feedback control of an exoskeleton for paraplegics: toward robustly stable, hands-free dynamic walking. IEEE Control Systems Magazine 38 (6), pp. 61–87. Cited by: §II-B.
-  (2016) 3D dynamic walking with underactuated humanoid robots: a direct collocation framework for optimizing hybrid zero dynamics. In Robotics and Automation (ICRA), 2016 IEEE International Conference on, pp. 1447–1454. Cited by: §II-B.
-  (2012) Review of control algorithms for robotic ankle systems in lower-limb orthoses, prostheses, and exoskeletons. Medical engineering & physics 34 (4), pp. 397–408. Cited by: §I.
-  (2010) Moonwalker, a lower limb exoskeleton able to sustain bodyweight using a passive force balancer. In 2010 IEEE International Conference on Robotics and Automation, pp. 2215–2220. Cited by: §I.
-  (2003) Smooth manifolds. In Introduction to Smooth Manifolds, pp. 1–29. Cited by: §III-B.
-  (2011) Design and evaluation of mina: a robotic orthosis for paraplegics. In 2011 IEEE International Conference on Rehabilitation Robotics, pp. 1–8. Cited by: §I.
-  (2000) Active virtual guides as an apparatus for augmented reality based telemanipulation system on the internet. In Proceedings 33rd Annual Simulation Symposium (SS 2000), pp. 185–191. Cited by: §II-C.
-  (2014) Assist-as-needed robot-aided gait training improves walking function in individuals following stroke. IEEE Transactions on Neural Systems and Rehabilitation Engineering 23 (6), pp. 956–963. Cited by: §I.
-  (2011) Control and trajectory generation of a wearable mobility exoskeleton for spinal cord injury patients. Ph.D. Thesis, UC Berkeley. Cited by: §I.
-  (2015) Control strategies for active lower extremity prosthetics and orthotics: a review. Journal of neuroengineering and rehabilitation 12 (1), pp. 1. Cited by: §I.
-  Video of the experimental results.. Note: https://vimeo.com/358926878 Cited by: §V.
-  (2017) Safety barrier certificates for collisions-free multirobot systems. IEEE Transactions on Robotics 33 (3), pp. 661–674. Cited by: §I.
-  (2018) Feedback control of dynamic bipedal robot locomotion. CRC press. Cited by: §II-B.
-  (2009) Biomechanics and motor control of human movement. John Wiley & Sons. Cited by: §II-B.
-  (2014) Adaptive assist-as-needed controller to improve gait symmetry in robot-assisted gait training. In 2014 IEEE international conference on robotics and automation (ICRA), pp. 724–729. Cited by: §I.
-  (2006) Biomechanical design of the berkeley lower extremity exoskeleton (bleex). IEEE/ASME Transactions on mechatronics 11 (2), pp. 128–138. Cited by: §I.