I have some questions regarding residual forces encountered in static optimization.
Context
I am trying to use OpenSim to predict the knee joint contact forces during walking. For this, I am using the CAMs Knee dataset, which includes kinematic data (optical motion markers) and ground reaction forces. We hope to use the OpenSim simulations as an additional comparison for a new method predicting the same forces.
Materials & Methods
Currently, I am using the standard gait2392 model. However, I have also been trying out the Rajagopal2023, Pelegrinelli2023 & Lerner2015 models.
- Using the CAMs Knee data, I scaled the basic model using 66 markers. For this, I extended the standard markers from the gait2392 model with additional markers based on the data documentation. I obtained a total squared error of 7cm, a marker RMS error of 3cm and a maximal error of 7cm.
- I then used Inverse Kinematics to track the marker data for one gait cycle.
Problem Description
After inspecting the SO results, it seems the residual actuators are quite high, as shown in the below figure:
I read about the process of improving the static optimization results here. Since the filtering of the kinematics data did not reduce the residuals as much as I hoped, I also tried using the RRA tool. After some playing around with the actuators file (increasing the control limits and limiting the optimal force), I obtained these results:
Although some improvements are certainly possible, the results seem to be below the limits given here, so I considered it to be sufficient for now. However, after applying static optimization again using the RRA-predicted kinematics I obtained these results:
The results are now much more noisy with some extreme values around t = 0.88s. I inspected both the kinematics & GRFs, but I didn't seem to find anything of notice around this time.
Questions
Thus, my questions are the following:
- Can I still use the results obtained by applying IK & SO, or are these residuals too large? The reserve actuators do seem fine and below 5% of the computed inverse dynamics results.
- I read the paper of Hicks et al. (2015), where a magnitude of 5% of the maximal external force is recommended. However, when I compute this value based on the GRF data, I would expect the residual forces to be below 70 N, which isn't the case for Fx & Fy. For the moments, I've computed a boundary of 13.30 Nm (1% of COM height * max external force), which is a problem for Mx & Mz.
- What is going wrong during the RRA step leading to such high noise & residuals?
- Finally, I performed Static Optimization, applying a 6Hz lowpass filter to the inverse kinematics result.
My problem seems similar to the following: