Page 1 of 1

Static optimization and CMC

Posted: Wed Feb 17, 2010 11:59 am
by hanghang500
Hi,all
When I try to run static optimization step, the message always tell me
"The model appears too weak for static optimization.Try increasing the strength and/or range of the following actuator(s):bifemsh_l approaching upper bound of 1
iliacus_l approaching upper bound of 1
psoas_l approaching upper bound of 1
intobl_r approaching upper bound of 1
extobl_l approaching upper bound of 1"
what does this mean? my understanding is the forces reach the max but opensim still cannot find a solution, is that right? what can I do to deal with this problem except change the max value of each muscle.

the second problem I met is when I ran CMC, opensim indicated me that fast target failed, so I
changed to slow target. it can run but the motion is extremely distorted, even after I lock all the body parts, the result is the same.
so how to solve this problem? I noticed that all the steps include ID, OS, CMC use the motion file generated by IK. Does that mean perfect IK step can solve this problem?

RE: Static optimization and CMC

Posted: Wed Feb 17, 2010 4:04 pm
by aymanh
Hang,

Static Optimization solves for activations. If these are close to 1.0 then you get the message. It could be many things but most commonly one of the following:
- The activity you're trying to solve requires a stronger model, in which case increasing the max-isometric-force for the indicated muscles would be justified (e.g. the model gait2354 that we distribute does OK on walking but not on more demanding activities)
- External forces not applied correctly which requires unjustified large muscle forces.
- Missing residuals at the base segment.

You can try running Inverse Dynamics and inspecting the results to figure which is the case.

Hope this helps,
-Ayman


RE: Static optimization and CMC

Posted: Mon Feb 22, 2010 11:05 am
by hanghang500
hi,Habib
Thank you for your ideas. do you have some ideas about my second problem of CMC?

RE: Static optimization and CMC

Posted: Tue Feb 23, 2010 11:48 am
by aymanh
Hang,

Did you run RRA? How big were the residuals? and how was the kinematics. Surely a better IK solution would help but also RRA would give you an indication about how good is the experimental data and GRF you're trying to use.

Good luck,
-Ayman

RE: Static optimization and CMC

Posted: Wed Feb 24, 2010 10:34 am
by hanghang500
Hi,Habib
First,thanks for your help.
I should explain my situation clearly.I try to test a gait simulation like the example 2354. the only different is my model is go forward but 2354 seems walking in a place.
In fact, I check the ID and compared with example 2354 file. the scale of the values are almost same. But I don't know how to find the abnormal value.
For the IK. I inspected the record, the weight set is the same with 2354, and the part result like below:
Frame 7 (t=0.03): total weighted squared error = 0.0454223, marker error: RMS=0.036111, max=0.0702757 (R.Midfoot.Superior), coord error: RMS=2.81101e-006, max=5.5513e-006 (subtalar_angle_l)
Frame 8 (t=0.035): total weighted squared error = 0.0463252, marker error: RMS=0.0364298, max=0.0730258 (R.Midfoot.Superior), coord error: RMS=2.92291e-006, max=5.78625e-006 (subtalar_angle_l)
Frame 9 (t=0.04): total weighted squared error = 0.0470909, marker error: RMS=0.0367255, max=0.0756137 (R.Midfoot.Superior), coord error: RMS=2.99233e-006, max=5.93726e-006 (subtalar_angle_l)
Frame 10 (t=0.045): total weighted squared error = 0.0478232, marker error: RMS=0.0370414, max=0.0783998 (R.Midfoot.Superior), coord error: RMS=3.03538e-006, max=6.03428e-006 (subtalar_angle_l)
Frame 11 (t=0.05): total weighted squared error = 0.0484855, marker error: RMS=0.0373775, max=0.0813788 (R.Midfoot.Superior), coord error: RMS=3.01729e-006, max=6.00262e-006 (subtalar_angle_l)
Frame 12 (t=0.055): total weighted squared error = 0.0490113, marker error: RMS=0.037704, max=0.0842526 (R.Midfoot.Superior), coord error: RMS=2.97684e-006, max=5.92561e-006 (subtalar_angle_l)
Frame 13 (t=0.06): total weighted squared error = 0.0493644, marker error: RMS=0.0379931, max=0.0867715 (R.Midfoot.Superior), coord error: RMS=2.86812e-006, max=5.7178e-006 (subtalar_angle_l)
Frame 14 (t=0.065): total weighted squared error = 0.0495875, marker error: RMS=0.0382479, max=0.0889348 (R.Midfoot.Superior), coord error: RMS=2.71406e-006, max=5.41213e-006 (subtalar_angle_l)
Frame 15 (t=0.07): total weighted squared error = 0.0497212, marker error: RMS=0.0385032, max=0.0910219 (R.Midfoot.Superior), coord error: RMS=2.51672e-006, max=5.01943e-006 (subtalar_angle_l)
Frame 16 (t=0.075): total weighted squared error = 0.0497472, marker error: RMS=0.038757, max=0.0929781 (R.Midfoot.Superior), coord error: RMS=2.3069e-006, max=4.60402e-006 (subtalar_angle_l)
Frame 17 (t=0.08): total weighted squared error = 0.0496734, marker error: RMS=0.0389755, max=0.0945366 (R.Midfoot.Superior), coord error: RMS=2.02424e-006, max=4.04066e-006 (subtalar_angle_l)
I also compared it with 2354, the marker error and coord error are all in same order of magnitude.(the RMS=0.02 and max=0.06 in the example). If I want to improve the IK result, how can I do, I try to change the weight, but I didn't know the rule.
I ran the RRA. The part record is below:
requested COM adjustment time range 1.2 - 1.5 clamped to nearest available data times 1.2 - 1.5

Computing average residuals between 1.2 and 1.5
Average residuals before adjusting torso COM:
FX=4.89258 FY=5.95372 FZ=-2.18293
MX=-7.70293 MY=-2.98601 MZ=-25.2984

CMCTool.adjustCOMToReduceResiduals:
torso weight = 288.556
dx=-0.0876723, dz=0.0266947

dmass = -0.60711

Recommended mass adjustments:
ground: orig mass = 0, new mass = 0
pelvis: orig mass = 10.1217, new mass = 10.0266
femur_r: orig mass = 7.99406, new mass = 7.91893
tibia_r: orig mass = 3.1864, new mass = 3.15645
talus_r: orig mass = 0.0859447, new mass = 0.085137
calcn_r: orig mass = 1.07431, new mass = 1.06421
toes_r: orig mass = 0.186156, new mass = 0.184407
femur_l: orig mass = 7.99406, new mass = 7.91893
tibia_l: orig mass = 3.1864, new mass = 3.15645
talus_l: orig mass = 0.0859447, new mass = 0.085137
calcn_l: orig mass = 1.07431, new mass = 1.06421
toes_l: orig mass = 0.186156, new mass = 0.184407
torso: orig mass = 29.4245, new mass = 29.148

Computing average residuals between 1.2 and 1.5
Average residuals after adjusting torso COM:
FX=4.93206 FY=3.80924 FZ=0.317625
MX=0.846216 MY=-1.53532 MZ=-2.39234
...........
at the end
Average residuals:
FX=1.24718 FY=4.859 FZ=-0.377369
MX=0.872912 MY=-1.477 MZ=-2.72785


RE: Static optimization and CMC

Posted: Fri Feb 26, 2010 5:35 pm
by aymanh
Dear Hang,

You can change the weights in the corresponding tasks file for the tool.

Nothing stands out as particularly off, so please report a bug and associate all needed models/data and setup files and we'll investigate.

-Ayman

RE: Static optimization and CMC

Posted: Fri Feb 26, 2010 9:20 pm
by hanghang500
Thank you.I find something you suggest us before doing the RRA and CMC.
2. Check your ground reaction force, does it align up with the correct time frame (you can read the mot file into matlab).
Do you have some materials that can tell me how to check GRF with matlab? Thank you very much!

RE: Static optimization and CMC

Posted: Fri Feb 26, 2010 11:34 pm
by aymanh
Hang,

You can use the motion data previewer (release 1.9 or 2.0) to load and visualize the data in OpenSim (File->Preview Motion Data...)

-Ayman