MyoHub/myoconverter

range problem during MF optimization

Closed this issue · 5 comments

I get an error like this:
image

so I go and checked the cvt3.xml file and find the muscle parameters are like these:
image

the only difference between the Anconeus and other muscles are 2nd parameter in gainprm and biasprm are negative. It seems like this negative value affected the range, and then generate this error. But how can I fixed it? I also checked the original .osim file, all parameters for Anconeus seems reasonable compared to other muscles. So I wonder if you've ever seen this type of error, and do you have any suggestion what I should do to fix this error?

Another hint is this:

this is how the model looks like in OpenSim:
image

but this is how the cvt2.xml looks like in Mujoco:
f80cb05e06c3324f483c33020c9ac1a

There are clear discrepancy between .osim model and cvt2.xml. Would that affect the MF optimization process? and why cvt2.xml (and cvt1.xml looks similar with cvt2) has such huge discrepancy with original .osim model? Any suggestion to fix this?

Hi @Hippozhibos

Could you check the tendon slack length of that muscle? My understanding is that the tendon slack length is too large compared to the total muscle-tendon length, which caused the normalized fiber length range to be negative.

In terms of the discrepancy of the converted model. Please look at the limitation page of our document. My guess is that your model contains nonlinear joint dependency (limitation no. 6) which we cannot handle yet.

Thanks for your reply! @HuaweiWang

I checked the tendon slack length of the muscles. For some of the muscles, yes, the tendon slack length value is too large, and after revising it to a smaller value MyoConverter can process it. But there are still some muscles, even when I set tendon slack length near to zero, I still get the same error.
image

As to the limitation no.6, I'm sorry I don't really understand what the "nonlinear joint dependency" means. It seems that only occurred in CustomJoints, right? and what shall do to revise it?

And I'll email you the .osim file I used, maybe you can find more error that I made. Most of the parameters of muscles and bones are incorrect, since we are still trying to collect those data.

Thanks again for all your help!

It seems the optimal fiber length is very unrealistic (0.59m). I would suggest making sure all the parameters in osim model are realistic and then performing the conversion. MyoConverter does not have the ability to check/change unrealistic osim model parameters.

As for the nonlinear joint dependency. My suggestion is to remove them from the Osim model first. Then do the conversion. After conversion, you can add to the converted mujoco model manually.

Hope these can help your project!

Close the issue with no further questions related