Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Additional information is also available in the section on OpenSim Models. A large repository of existing models is available (see curated list or do a search on SimTK ). These include models of the lower extremity, head and neck, spine, wrist, and many other musculoskeletal regions for both humans and other animals. We encourage you to contribute your own models to SimTK to enable other researchers to build on your work and further advance the field.

...

You can also use the questions below to guide you in selecting a suitable simulation pipeline.  The section below on Examples of Choosing a Simulation Pipeline also provides useful tips.

...

     If you answered “yes” to (a) and (b), you may have an Inverse Problem. See the Inverse Problem simulation options below. 

...

     If yes, you may have a Forward Problem. See the Forward Problem simulation options below.

...

     If yes, you may have a Forward Problem. See the Forward Problem simulation options below.

...

See the section on Scaling for more details. Tutorial 3 - Scaling, Inverse Kinematics, and Inverse Dynamics includes an example using the Scale Tool. This tutorial is also accessible from the OpenSim application Help menu.

...

METHODGOALKEY CONSIDERATIONSAVAILABLE INTERFACESRESOURCES
GUICommand Line*C++  & Scripting**Other
Inverse dynamicsCalculate joint torques from a measured motionStraightforward; minimal assumptionsXXX

Overview

User Guide: Inverse Dynamics

Hands-on Example (Beginner): Scaling, Inverse Kinematics, and Inverse Dynamics

Static optimization

Estimate muscle force/activations from a measured motion

Fast estimation; assumes rigid tendons; minimizes activation squared at each time step

XXX

Overview

User Guide: Static Optimization

Hands-on Example (Intermediate): Working with Static Optimization

Hands-on Example (Intermediate): Estimating Leg Muscle Forces in Stance and Swing

Computed muscle control (CMC)

Estimate muscle excitations from a measured motion

Excitation-activation dynamics; accounts for tendon stretch;  minimizes activation squared at each time step

XX

Overview

User Guide: Computed Muscle Control

Hands-on Example (Intermediate): Computed Muscle Control

Hands-on Example (Intermediate): Estimating Leg Muscle Forces in Stance and Swing

CMC Theory and Publications

EMG-informed methods

Estimate musculotendon parameters given a measured motion and muscle activity

Normalizing muscle activity is necessary




X

Overview

Calibrated EMG-Informed Neuromusculoskeletal Modeling (CEINMS) Toolbox

...

The Inverse Kinematics (IK) Tool in OpenSim finds values for the generalized coordinates (joint angles and positions) in the model that best match the experimental kinematics recorded for a particular subject (see figure below). The experimental kinematics targeted by IK can include experimental marker positions, as well as experimental generalized coordinate values (joint angles). The IK Tool goes through each time step of motion and computes generalized coordinate values which position the model in a pose that "best matches" experimental marker and coordinate values for that time step. Mathematically, the "best match" is expressed as a weighted least-squares problem, whose solution aims to minimize both marker and coordinate errors.



Experimental markers are matched by model markers throughout the motion by varying the generalized coordinates (e.g., joint angles) through time. See Inverse Kinematics for full documentation on running IK in OpenSim. Tutorial 3 - Scaling, Inverse Kinematics, and Inverse Dynamics walks through an example of using Inverse Kinematics for human walking.

...

See Inverse Dynamics for full documentation on running ID in OpenSim. Tutorial 3 - Scaling, Inverse Kinematics, and Inverse Dynamics walks through an example of using ID for human walking.

...

  1. EMG can be used as constraints to muscle excitations in Computed Muscle Control (see the Control Constraints section in our CMC documentation for more information).  This was used in work by Hamner et al. in simulations of running in order to constrain some muscle activity by EMG measured from the experiments. Their project page can be found here.
  2. Use the Calibrated EMG-Informed Neuromusculoskeletal Modeling (CEINMS) Toolbox (Pizzolato, et al., 2015) to calibrate subject-specific models and/or generate EMG-informed simulations

...

METHODGOALSPEEDKEY CONSIDERATIONSAVAILABLE INTERFACESRESOURCES
GUICommand Line*C++  & Scripting**Other

Forward dynamics with known controls

Generate a motion based on specified muscle excitations, joint torques, and/or other applied forces 

Fast (seconds to minutes)Easy to set up and can quickly get results; difficult to use for more complex motions (e.g., walking) without adding a controllerXXX

Overview

User Guide: Forward Dynamics

Shooting methods

Generate a motion based on high-level tasks quantified by an objective function

Slow (hours to days)

Model and controller simplifications are common; controllers are usually motion-specific; can support controllers based on realistic feedback loops (e.g., force)



XX

Overview

SCONE software

Webinar: Predictive Simulation of Biological Motion Using SCONE

Reinforcement learning (RL)

Generate a motion based on high-level tasks quantified by an objective function

Very slow (days to weeks)

Model simplifications are common;  may require very large amount of computing power; minimal input needed from user so workflow can be extended to many motions




X

Overview

osim-rl tool

Webinar: Robust Control Strategies for Musculoskeletal Models Using Deep Reinforcement Learning

Direct collocation

Quickly generate a motion based on high-level tasks quantified by an objective function; intermediate solutions do not necessarily satisfy physical constraints

Middling (minutes to hours)

Capacity to scale to more complicated models; difficult to implement (e.g., constraints, providing derivatives); difficult to add feedback loops (i.e., for reflexes)



XX

Overview

OpenSim Moco

Webinar: OpenSIm Moco: Software to Optimize the Motion and Control of OpenSim Models

...