Static Optimization not working with just reserves

Provide easy-to-use, extensible software for modeling, simulating, controlling, and analyzing the neuromusculoskeletal system.
POST REPLY
User avatar
Brandon Brown
Posts: 30
Joined: Thu Jun 28, 2012 3:32 pm

Static Optimization not working with just reserves

Post by Brandon Brown » Sat May 02, 2015 10:30 am

Hello Everyone,

I had another question about static optimization and I wanted to see if anyone had any guesses on a solution. I am still using the upper body model doing a simple throwing motion. When I turn all the muscles off and rely only on reserves, static optimization never converges on a solution. My minimum and maximum control values are positive and negative infinity, and I've set the optimal force for all reserves to be 1. I have a reserve actuator for every degree of freedom in my model.

Has anyone encountered this problem or does anyone know of a solution? I am using OpenSim 3.1 because that is the only platform the model works on.

Thanks,
Brandon

User avatar
Dustin Crouch
Posts: 5
Joined: Tue Jan 05, 2010 11:56 am

Re: Static Optimization not working with just reserves

Post by Dustin Crouch » Wed May 06, 2015 12:50 pm

Hi Brandon,

To check the simpler things first, which upper limb model are you using? If it's not a dynamic model with segment masses and inertias defined, static optimization won't run properly, since it's doing an inverse dynamics analysis in the background.

In the past, the reserve actuators didn't always work as intended for me either (for simulations with muscles and reserves), but that was with CMC.

User avatar
jimmy d
Posts: 1375
Joined: Thu Oct 04, 2007 11:51 pm

Re: Static Optimization not working with just reserves

Post by jimmy d » Wed May 06, 2015 1:08 pm

Hi Brandon-

I tried to replicate your issue in a gait simulation. Mine seemed to work fine. Im not 100% sure what you mean by 'turn muscles off'. In the SO tool I attached a RRA actuator set and selected 'replace model's force set' rather than 'append..'. This replaced all the muscles with coordinate actuators and gave me fine results.

Hope that helps.

Cheers,
-james

User avatar
Brandon Brown
Posts: 30
Joined: Thu Jun 28, 2012 3:32 pm

Re: Static Optimization not working with just reserves

Post by Brandon Brown » Wed May 06, 2015 2:19 pm

Hey James,

What I mean by "turn muscles off" is that I disabled the muscles in the GUI. When I do that and select "append to model's force set" for the reserve actuators, static optimization doesn't work and wont give me solutions even at the very beginning of the motion.

However, I tried what you did and selected the other option of totally replacing the model's force set with just the reserve actuators and everything turned out fine.

The bigger issue I'm having is that when I try static optimization with the muscles enabled and with the actuator file (I have an actuator for every degree of freedom with minimum and maximum control values of negative infinity and positive infinity and a optimal force value of 1), static optimization doesn't converge on a solution for many time steps. I tried un-installing OpenSim 3.1 and re-installing it, but that only made the situation worse. Before, I was getting force values even though there were constraint violations, now OpenSim crashes. It seems that a solution should be found since I have reserve actuators, but that doesn't seem to help at all. Also, some of the reserves seem to increase linearly with time such that the reserve is equal to the time of the motion. That seems very strange to me.

Dustin,
The model I'm using is the upper extremity dynamic model that came out last year in July. I changed all the muscles in that model to thelen2003, so I'm curious if that has something to do with why a solution cannot be found.

User avatar
Brandon Brown
Posts: 30
Joined: Thu Jun 28, 2012 3:32 pm

Re: Static Optimization not working with just reserves

Post by Brandon Brown » Wed May 06, 2015 3:35 pm

Hello everyone,

I think I determined the source of my problem. I tried disabling the muscles again and simply appending the reserve actuators onto the force set of the model but I also got rid of the coordinate limit force. There are coordinate limit forces in the model, and they will have an effect on static optimization working properly.

Thanks,

Brandon

POST REPLY