Design of Personalized Surgery and Gait Modifications for Knee Osteoarthritis
Tutorial Developers: B.J. Fregly, Robert Salati, Rice Computational Neuromechanics Lab, Rice University
Simulation Project Overview
The goal of this simulation project is to teach you the Neuromusculoskeletal Modeling (NMSM) Pipeline’s computational treatment design process for clinical applications (Fregly, 2021; Hammond et al., 2025) where use of a personalized torque-driven skeletal model would be sufficient and modeling of muscles or neural control would not be needed. Specifically for this project, you will a) develop a personalized torque-driven three-dimensional skeletal model and then b) use the personalized model to design a modified walking motion as well as a high tibial osteotomy surgical plan to reduce both peak adduction moment peaks for a subject with bilateral medial compartment knee osteoarthritis. This project will involve similar tasks to those performed by Prof. Fregly in his 2007 journal article “Design of Patient-specific Gait Modifications for Knee Osteoarthritis Rehabilitation” (Fregly et al., 2007), where the peak knee adduction moment was used as a surrogate measure for medial knee contact force. The specific treatment design goals for the modified walking motion and high tibial osteotomy surgery are provided in the project details below.
The five tools that you will use within the NMSM Pipeline are indicated in the table below, along with the abbreviations used to reference each tool and required supporting OpenSim tools:
| Toolset | NMSM Pipeline Tool | Performed |
|---|---|---|
| NMSM Pipeline Model Personalization | Joint Model Personalization (JMP) | Performed |
| Ground Contact Personalization (GCP) | Performed | |
| Muscle-tendon Personalization (MTP) | - | |
| Neural Control Personalization (NCP) | - | |
| NMSM Pipeline Treatment Optimization | Tracking Optimization (TO) | Performed |
| Verification Optimization (VO) | Performed | |
| Design Optimization (DO) | Performed | |
| OpenSim | Scale Model | Performed |
| Inverse Kinematics (IK) | Performed | |
| Inverse Dynamics (ID) | Performed | |
| Muscle Analysis (MA) | - |
For the Model Personalization toolset, since this simulation lab will require only a personalized skeletal model without including personalized models of muscle-tendon actuators or neural control, you will need only the Joint Model Personalization tool and the Ground Contact Model Personalization tool. In contrast, for the Treatment Optimization toolset, you will still need all three available tools, where your personalized model will be controlled by torque actuators due to the omission of muscles.
This simulation project is broken down into three modules, one for each Model Personalization tool and a third for all three Treatment Optimization tools. For each module, detailed instructions are provided below to walk you through all the necessary steps. To ensure that poor results for one module do not affect your ability to complete subsequent modules, final results for each module are provided to use as the starting point for the next module if necessary.
To run each required OpenSim or NMSM Pipeline tool, you will generate an initial xml settings file using the appropriate tool selection within the OpenSim GUI Tools menu. Once you have generated an initial tool settings file in the OpenSim GUI, you can edit the settings file for subsequent tool runs either within the OpenSim GUI or using a text editor. Runs for OpenSim tools will be performed through the OpenSim GUI, while runs for NMSM Pipeline tools will be performed in Matlab.
The full-body OpenSim model Full_Body_Walking_Model.osim that you will use for this project contains slightly modified knee joint models. Instead of having the knee joint connect the femur body to the tibia body, the knee joint in the slightly modified model connects the femur body to a non-standard proximal tibia body. The proximal tibia body is then connected to the tibia body via a custom joint that allows only X axis rotation, which is locked. OpenSim can calculate inverse dynamics loads only about joint axes present in the model. Since the knee adduction moment should be calculated about the X axis of the tibia body, adding this locked custom joint provides the correct joint axis direction for calculating the adduction moment for each knee.
All experimental marker motion and ground reaction data needed to complete this simulation project have been pre-processed for you and are ready to use without further modification. The experimental data that you will need for this project come from the following trials summarized below:
- Trial04_Static – standing static trial
- Trial06_AnkleR – isolated right ankle motion trial
- Trial07_KneeR – isolated right knee motion trial
- Trial08_HipR – isolated right hip motion trial
- Trial09_AnkleL – isolated left ankle motion trial
- Trial10_KneeL – isolated left knee motion trial
- Trial11_HipL – isolated left hip motion trial
- Trial12_Gait – walking trial collected at self-selected speed of 1.2 m/s
Marker motion data were collected using a Vicon video-based motion capture system (Vicon Corporation, Oxford, United Kingdom), while ground reaction data were collected using a Bertec split-belt instrumented treadmill (Bertec Corporation, Columbus, OH, United States) with belts tied to the same speed. The experimental data from each trial above have already been converted so that all length data are in units of meters, all moment data are in units of Newton-meters, and all data are reported using coordinate axes consistent with OpenSim model conventions (i.e., +X is directed anteriorly, +Y is directed superiorly, and +Z is directed out to the right).
The specific datafiles that you need to complete the project are organized for you in the Data folder. For each OpenSim or NMSM Pipeline tool run that you need to perform, a sub-directory within the Data folder is provided containing all of the pre-processed data that you will need. For example, for the OpenSim Scale Model tool run described below, all necessary data are provided in the Scale Model folder.