Opensim description status and plans science advisor workshop june 1 2 2006
1 / 29

OpenSim Description, Status, and Plans Science Advisor Workshop June 1-2, 2006 - PowerPoint PPT Presentation

  • Uploaded on

OpenSim Description, Status, and Plans Science Advisor Workshop June 1-2, 2006. Clay Anderson , Ayman Habib, Pete Loan, and Scott Delp. What is OpenSim?. Object-Oriented Framework for the Simulation, Control, and Analysis. OpenSim, Gait Workflow. OpenSim API. CVODE, RootSolve, SQP, SA,

I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
Download Presentation

PowerPoint Slideshow about ' OpenSim Description, Status, and Plans Science Advisor Workshop June 1-2, 2006' - cally-rivera

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
Opensim description status and plans science advisor workshop june 1 2 2006

OpenSimDescription, Status, and PlansScience Advisor WorkshopJune 1-2, 2006

Clay Anderson, Ayman Habib, Pete Loan, and Scott Delp

What is opensim
What is OpenSim?

Object-Oriented Framework for the Simulation, Control, and Analysis

OpenSim, Gait Workflow

OpenSim API

CVODE, RootSolve, SQP, SA,

LAPACK, Simbody


Clay Anderson (Framework)

Ayman Habib (Applications)

Peter Loan (Musculographics / SIMM)

Saryn Goldberg, May Liu, Ilse Jonker, Jen Hicks, Chand John, … … … …

Chief design goals
Chief Design Goals

  • Speed

  • Shareable code

  • Extensibility

  • Different Entry Levels

    • Algorithms

    • Modeling API

    • Scripting

    • Graphical User Interface


Opensim description status and plans science advisor workshop june 1 2 2006

OpenSim API

RKF 5-6



Some code
Some Code

  • Like SIMM Dynamics Pipeline but using C++.

  • Platform independent

    • Windows

    • Mac

    • Linux

    • Other Unix flavors

  • CMake is a cross-platform compile system (

  • Swig is an automated wrapper generation facility

    • Java

Lowering the barrier for developers and users
Lowering the barrier for developers and users

  • Examples

    • Sample code

    • Templates for extending OpenSim (analyses, actuators, controllers)

  • Documentation

    • OpenSim Developer’s Guide

    • OpenSim API Reference (Doxygen)

  • Streamlined installation

  • Training

    • Workshops directed at solving your problems

  • Graphical User Interface (GUI)

Making simulation accessible opensim gui
Making Simulation Accessible- OpenSim GUI

Animation Playback

Data, Model,and SimulationNavigator

3D Visualization using VTK


Simulation Progress

Command and Scripting Window

Investigations and workflows
Investigations and Workflows

  • Investigation- equivalent to something you’d normally write in a main routine

    • Optimization study

    • Inverse dynamics study

  • Workflow- a set of investigations

    • Gait Workflow

    • Subject-specific Simulation Workflow

Gait workflow

Step -1

Preprocess Experimental Data

Gait Workflow

Execution of the gait workflow currently
Execution of the Gait Workflow currently

% scale –Setup 900045_setup_scale.xml (seconds)

% ik –Setup 900045_setup_ik.xml (minute)

% rra –Setup 900045_setup_rra.xml (10 minutes)

% cmc –Setup 900045_setup_cmc.xml (10 minutes)

% perturb –Setup 900045_setup_perturb.xml (hours)

Should we develop facilities for executing workflows in a GUI?

  • Main OpenSim GUI

  • Stand-alone wizard

Preliminary release schedule

April 2006 OpenSim 0.5 (alpha)

June 2006 OpenSim 0.6 (alpha)

Use of OpenSim name space

Consistency in class names and file storage

Dependent on SIMM and SDFast

Sept 2006 OpenSim 0.7 (alpha)

API supports SIMM modeling features, switching dynamics engines and integrators

SIMM muscles native

GUI for visualizing models with muscles

Wizard for executing the gait workflow

Dec 2006 OpenSim 0.8 (alpha)

Simbody and CVODE available in OpenSim

80% of SIMM modeling features in GUI

No more dependence on SIMM / SDFast

documenting and testing

Mar 2007 OpenSim 0.9 (beta)

Streamlined installation

documenting and broader testing

June 2007 OpenSim 1.0

80% SIMM functionality

Simbody, CVODE

Gait Workflow


Examples and pre-made simulations

Materials for a short course

August 2007 Dissemination Event

Tutorials adjunct to ASBAnnual Meeting

Preliminary Release Schedule

Some questions
Some Questions…

  • Do we need additional concepts in OpenSim?

    • sensors, contact, …

  • How important is interfacing with Matlab?

  • What SIMM features are priorities?

  • What new things would be most compelling to you?

    • control, dynamic optimization, speed, …

  • When should we engage users? Who?

  • Are we being too ambitious?

  • Are there some simple wins, killer apps?

  • What should we be thinking about beyond the next year?

    • “Directed Reductionism” and Sherm’s Modeling Layer


Supported by the National Institutes of Health

through the

NIH Roadmap for Medical Research Grant U54 GM072970.

NIH HD45109, HD38962, HD33929

Why use opensim
Why use OpenSim?

  • Many of the capabilities of SIMM

  • Choice of dynamics engines

    • SD/Fast (proven, but costs and requires compile step)

    • Simbody (free, no compile step, everything but loop joints)

  • Choice of integrators

    • RKF, CVODE, …

  • Pipeline for creating simulations from MoCap

    • CMC, …

  • Analyses

  • Extensible (plugins)

    • New actuators, controllers, analyses, …

Clinical importance
Clinical Importance

  • Movement disorders are a challenging problem.

  • The causes are not well understood.

  • Muscles are the targets of treatments.

  • Treatments are often unsuccessful.

Asakawa et al. (2004)

J Bone Jnt Surg

Subject specific simulation
Subject-Specific Simulation

1.18 m/s

78 kg, 1.78 m

19 DOF, 92 Muscles (Delp, 1990)

3 dofback

6 dofpelvis

3 dof


1 dof


1 dof


~1° Tracking Accuracy

~20 min computer time

Simulations generated with cmc
Simulations Generated with CMC

Each generated with less than 10 minutes of CPU time.

Limitations of cmc
Limitations of CMC

  • CMC is a tracking algorithm, not well suited for predicting emergent behavior.

    • Generating a simulation that replicates a subject’s gait cycle.

    • Solving for the theoretically most-efficient gait cycle.

  • CMC is dependent on the quality of the input data.

    • Kinematics

    • Ground reaction forces

Computed muscle control
Computed Muscle Control

Step 1:Compute Desired Accelerations (PD Control)



Computed muscle control1
Computed Muscle Control

Step 2:Solve for Muscle Excitations

a) Integrate forward by T (0.010) to compute and .

b) Solve static optimization problem to find to achieve .

c) Root solve to find the muscle excitations that will generate .

Computed muscle control2
Computed Muscle Control

Step 3: Integrate from t to t+T

Computed muscle control3
Computed Muscle Control

Step 1

Step 2

Step 3

Repeat Steps 1, 2, and 3, until the final time is reached.

Number of 3d muscle actuated simulations of gait
Number of 3D, Muscle-Actuated Simulations of Gait

Liu, Jonkers, Arnold,

Thelen, Anderson, Delp

(92 Muscles)


Hase et al.,

Sellers et at.

(~60 Muscles)

Yamaguchi & Zajac

(9 Muscles)

Anderson & Pandy

(54 Muscles)

Perturbation analysis
Perturbation analysis

*Hold other active forces constant

Knee extension in early swing for 6 subjects at 4 speeds

Average Knee Acceleration

Extension Phase

ext deg/s2flex

Knee Extension in Early Swing for 6 Subjects at 4 Speeds

All Subjects

All Speeds

% of total