Team Member

  • Jaehyun Bae



This project is motivated by DARPA Warrior Web Program.

  • There has been a lot of research into exoskeletons over the years to alleviate heavy loads that soldiers carry, but strapping a person into a robotic outfit just isn't practical in a combat zone yet.
  • DARPA's Warrior Web program aims to build a lightweight suit that improves a soldier's endurance and overall effectiveness, while preventing injuries.
  • The main goals by developing the warrior web are:
    1. To prevent and reduce musculoskeletal injuries.
    2. To augment positive work done by the muscles and reduce the physical burden.

Harvard Exosuit

In order to develop an under-suit that doesn’t hinder the wearer’s free movement, researchers are trying to make it soft and deformable, but still capable of applying force to body joints. The Harvard exosuit is an example of a new approach to creating an under-suit in a soft and deformable manner.











  • Experimental data proved that it can help loaded walking by reducing metabolic cost.
  • This suit applies force to lower limb joints through cables driven by actuators in the backpack.


As the exosuit tries to assist human gait with a deformable structure, there are many challenges in its development. The challenges are:

  • It is difficult to analyze the effectiveness of the suit.
  • It is difficult to find the optimal input force for actuators to reduce the metabolic cost.
  • It is difficult to identify the effect of changes in design parameters.

The reasons for the challenges are:

  • The suit is deformable and closely attached to the body.
  • We cannot predict how external actuation assists muscles during loaded walking, as the human body is highly redundant.
  • Experimental data is inconsistent case-by-case.


This project attempts to tackle the challenges of developing a wearable device for supporting loaded gait with OpenSim simulations. Simulation can help develop the wearable device, as it can give an intuition on how the device helps muscles and how metabolic cost changes during loaded walking. We can also find the key features that one should account for in order to make the device more efficient. I hope this project will provide a systematic way of analyzing and designing a soft wearable device. The initial goals of this project are:
  • Evaluate the effectiveness of wearing active actuators on metabolic cost reduction.
  • Explain how the exosuit can help loaded gait.
  • Verify the impact of changes in design parameters.
  • Find optimal control inputs for active actuators.


Experimental data

  • Two sets of data were collected from the same subject:
    1. One gait cycle of loaded walking (from left toe-off to next left toe-off).
    2. One gait cycle of unloaded walking (again, from left toe-off to next left toe-off).
  • The subject didn't wear a suit and walked freely.
  • Walking speeds were identical.
  • Mass of the load was 38 kg.


To simulate the movement of the exosuit wearer, the first thing to do is to create a model which can replicate a real subject as realistically as possible. Before I created the simulation model with active actuators on it, I used the generic gait model to go through the basic steps in the OpenSim simulation pipeline. By doing so, I could make my model dynamically consistent to the experimental data. I then added actuators and metabolic cost probes to the model.

Modeling a subject wearing an active actuator

The diagram above describes the procedure used to simulate the generic gait model.

  • The first three steps comprise the basic modeling procedure in OpenSim to make a model dynamically and kinematically consistent with the experimental data. For more information, see the following pages on Confluence:
    1. How Scaling Works
    2. How Inverse Kinematics Works
    3. How RRA Works
  • Finally, I added active actuators to the model. Here, I used the PathActuator class to simulate the active actuators of the exosuit, as they are cable-driven actuators. If you are interested in how the PathActuator works, see OpenSIm::PathActuator Class.

Sample models

Here are the figures of sample simulation models. I modified the RRA-adjusted model to create several different types of models for comparison.

Loaded gait models

Three types of models were created for loaded gait simulations:

  • A model without any additional actuators
  • A model with path actuators supporting plantarflexion
  • A model with path actuators supporting hip extension

The path actuator supporting plantarflexion is attached to the heel and tibia, and the path actuator supporting hip extension is attached to the backpack and femur. For simplicity, the loaded mass was added directly to the torso.

Unloaded gait models

The same types of models were created for unloaded gait simulations.

Optimization methodology

The idea to optimize the control input force for the actuators is to take advantage of the Computed Muscle Control (CMC) tool. The main reason we use CMC in OpenSim is to find the most suitable excitations for muscles to create body movement while minimizing muscle activations. To see how it works, see How CMC Works.

In this project, I make different use of the optimization process in CMC in order to optimize the control input force for active actuators.

  • CMC procedure is static optimization process, and it minimizes the cost function J which can be represented as  

    \[ J = \sum_{i=1}^{n_x} x_i^2 + \sum_{j=1}^{n_q} w_j \left( \ddot{q}_j\,^* - \ddot{q}_j \right)^2\]
  • When we add active actuators to an OpenSim model, the activation term in the cost function becomes 

    \[ x = \begin{bmatrix} x_{\mathrm{muscle}} \\ x_{\mathrm{actuator}} \end{bmatrix}\]

where Xmuscle is muscle control and Xactuator is actuator control. As Xactuator is part of activation states, it is also adjusted after the optimization process.

  • Now, if we diminish the influnece of Xactuator on J and run CMC, the optimizer tries to find Xactuator in the manner of minimizing muscle activations.
  • We know that minimizing muscle activation correponds to minimizing metabolic cost, so we can conclude that the actuator input force resulting from CMC if we diminish the influence of Xactuator on objective function J is the optimal actuator input for metabolic cost reduction.
  • Muscle force is constructed from the equation Factuator =  Factuatormax * Xactuator. If we assign a large maximum force to each actuator, the actuator control Xactuator decreases, so the influence of the actuator on J is decreased.
  • Using this idea, I found an optimal input for each actuator, and also found the metabolic cost reduction after running CMC with a model where active actuators were added.

Results and Discussion

Metabolic cost change when active actuators are added to the model

I investigated how much metabolic cost is reduced when optimal input force is applied to a model by active actuators. I simulated both loaded and unloaded walking cases, and I compared the influence of the hip and ankle actuators on metabolic cost. I used 10,000 N as the maximum active actuator force (Factuatormax) for these simulations.


Loaded walkingUnloaded walking
  • Metabolic cost reduction when active actuators are added to the loaded gait model:
    1. Ankle actuator: 10.35%
    2. Hip actuator: 6.62%
  • Metabolic cost reduction when active actuators are added to the unloaded gait model:
    1. Ankle actuator: 10.62%
    2. Hip actuator: 1.04%
  • Things to notice:
    1. The metabolic cost is much lower during unloaded walking than loaded walking. Unloaded walking costs only 75% of the metabolic energy spent during loaded walking.
    2. The ankle actuator works better at reducing metabolic cost than the hip actuator when we can apply the optimal input force.
    3. The hip actuator is not assistive during unloaded gait.

Therefore, we can say that the ankle actuator helps reduce metabolic cost better than the hip actuator if we have ideal actuators with no maximum force limitation.

Optimal actuator input force

 Loaded walkingUnloaded walking
Ankle actuator
Hip actuator

Optimal input force for the ankle actuator:

  • Actuation begins right after toe-off of the foot on the opposite side, and the peak force happens between heal-strike of the foot on the opposite side and toe-off of the foot on the same side.
  • The same actuation strategy is valid for both loaded gait and unloaded gait.
  • The force signal is clear and easy to implement in the real world.
  • However, the maximum actuation force is about 2500 N, which is too high to achieve in reality.

Optimal input force for the hip actuator:

  • The hip actuator can reduce the metabolic cost with lower maximum force than the ankle actuator.
  • However, it is hard to identify how the actuator assists walking.
  • Also, it is difficult to implement the optimal control input for the hip actuator in the real world.

How the ankle actuator assists loaded gait

We can explain how the optimal actuation input for the ankle actuator helps loaded gait by investigating the change of plantarflexor muscle forces.

  • The gastrocnemius muscle forces barely change.
  • Other plantarflexor muscle forces, including soleus muscle forces, are significantly decreased.
  • If we compare the active actuator input force with the sum of the baseline uniarticular forces, we can see that the active actuator force follows the sum of the baseline uniarticular muscle forces.
To sum up, the ankle actuator assists uniarticular muscles during loaded walking.

Optimal input force for ankle actuator when actuation force is limited to 400 N (i.e., realistic actuation limit)

  • From the previous results, we found that the optimal input force for the hip actuator is small enough to be achieved by a real actuator, while the optimal input force for ankle actuator is not realistic (> 2000 N). Therefore, I tried different types of input forces for ankle actuators up to 400 N, and compared the results to the optimal control input case.
    1. My initial guess was to saturate the optimal input force that I found earlier at 400 N. I generated an new input force which is identical to the optimal input force up to 400 N, and saturated once the optimal input force exceeded 400 N.
    2. The second input force I tried was a new result from my CMC simulations. The new CMC result was acquired by assigning 4000 N to the maximum actuation force and bounding the control input between 0 and 0.1. In other words,


\[ F_{\mathrm{actuator}}^{\mathrm{max}} = 400 N, \quad 0 \leq x_{\mathrm{actuator}} \leq 0.1\]

According to the formula Factuator =  Factuatormax * Xactuator, the new CMC result also has a maximum force of 400 N. As Xactuator is bounded between 0 and 0.1 and Xmuscle is chosen between 0 and 1, the influence of Xactuator to the objective function of the CMC procedure is relatively lower than that of Xmuscle, so we can use this idea to create an optimal input for the ankle actuator when the maximum actuation force is limited.

When we compare the saturated optimal input and the result from the new CMC procedure, we find similarity. Now, let's compare the metabolic cost reduction when each control input is applied to ankle actuators.

Metabolic cost reduction

Loaded walkingUnloaded walking
  • Metabolic cost reduction when active actuators are added to loaded gait model:
    1. Optimal: 10.35% reduction
    2. Saturated: 1.84% reduction
    3. New CMC: 2.68% reduction
  • Metabolic cost reduction when active actuators are added to unloaded gait model:
    1. Optimal: 10.62% reduction
    2. Saturated: 3.46% reduction
    3. New CMC: 3.82% reduction
  • The result from the new CMC procedure reduces metabolic cost more efficiently.
  • However, the reduction is not significant, and it is much lower than the optimal case.
  • The interesting thing is that the realistic actuation input force works better in the unloaded walking case than the loaded walking case. It makes sense because we require lower force to assist unloaded walking than to assist loaded walking.

Biarticular actuator

Now that we know both the ankle actuator and the hip actuator can reduce metabolic cost during loaded walking, a natural progression is to test actuators which can affect both ankle plantarflexion and hip extension. To reduce the number of actuators, I added single-degree-of-freedom biarticular actuators affecting ankle plantarflexion and hip extension to legs on both sides, and investigate the metabolic cost. The main idea in creating a biarticular actuator is to let the path actuator go through the axis of ankle joint rotation. I chose the attachment points of the ankle and hip actuators as the via points and end points of the biarticular actuator line, and also set the origin of the ankle joint rotation as one of the via points. By doing so, I created a biarticular actuator which combines the effects of the ankle and hip actuators.

Simulation result

I ran CMC on the loaded gait model with the biarticular actuator. I set the maximum force of the biarticular actuator to be 10,000N in order to see the optimal input force and the best possible metabolic cost reduction.

Optimal inputMetabolic cost reduction
  • Metabolic cost reduction when biarticular actuators are added to loaded gait is 3.12% from baseline. It is much lower than the reduction observed using either the ankle or hip actuator.
  • Control input is complex, which makes it hard to realize.
  • The biarticular actuator is not as effective as the uniarticular actuators in terms of metabolic cost reduction.


  • Three types of active actuators are evaluated in terms of metabolic cost reduction and controllability:
    1. If we can apply a sufficient amount of force, it is better to apply force to the ankle joint.
    2. If not, the hip actuator is a good alternative, though it is difficult to control.
    3. The biarticular actuator doesn’t assist loaded walking very well and the force input is not consistent.
  • Active actuators offer greater assist for loaded walking than unloaded walking when we can apply a sufficient amount of force.
  • The optimal input for the ankle actuator is consistent with gait cycle and muscle force data, in contrast to the optimal input for the hip and biarticular actuators.
  • The optimal input force for the ankle actuator when its maximum force is bounded is similar to the general optimal input force when it is saturated at the maximum force.


  • The experimental data was obtained from a subject without an exosuit. The exosuit may change the kinematics of a subject as well as the ground-reaction forces.
  • The simulation methodology to use CMC as an optimization tool works, but more improvement is needed.
  • The CMC process doesn’t minimize metabolic cost. Instead, it minimizes the 2-norm of activation.
  • The experimental data involved only one gait cycle.
  • More realistic actuator simulations are needed (e.g., a combination of passive and active actuators).

Source Code

You can find the simulation models that I created on my Simtk project page.