RE: Static optimization failure
Posted: Mon Nov 29, 2010 2:49 am
Hi Max,
You can think of StaticOptimization as 2 steps:
1. Solving for joint torques (ala Inverse Dynamics) to reproduce a motion.
2. Solving for Muscle forces/activations to produce the torques in 1.
The current formulation of StaticOptimization solves 1. & 2. simultaneously by imposing (1.) as a set of constraints on joint accelerations, so the constraint violations you see are joint accelerations that couldn't be matched. If these violations are not close to zero then I'd ignore the results for this timestep.
To resolve this issue I'd step backward and try Inverse Dynamics (which uses inputs very similar to StaticOptimization) to see what are the required joint torques and if they are reasonable for the muscles to generate. If these torques turn out to be too large, consider these possible issues:
1. Fast motion, or activity that the model wasn't designed for (I'd contact the model authors if in doubt).
2. Noisy data that causes large accelerations when differentiated (filtering may fix this).
3. Issues with external forces not applied correctly (if any).
4. Related to 1, can you use a simplified model instead?
Hope this helps and please let me know how it goes,
-Ayman
You can think of StaticOptimization as 2 steps:
1. Solving for joint torques (ala Inverse Dynamics) to reproduce a motion.
2. Solving for Muscle forces/activations to produce the torques in 1.
The current formulation of StaticOptimization solves 1. & 2. simultaneously by imposing (1.) as a set of constraints on joint accelerations, so the constraint violations you see are joint accelerations that couldn't be matched. If these violations are not close to zero then I'd ignore the results for this timestep.
To resolve this issue I'd step backward and try Inverse Dynamics (which uses inputs very similar to StaticOptimization) to see what are the required joint torques and if they are reasonable for the muscles to generate. If these torques turn out to be too large, consider these possible issues:
1. Fast motion, or activity that the model wasn't designed for (I'd contact the model authors if in doubt).
2. Noisy data that causes large accelerations when differentiated (filtering may fix this).
3. Issues with external forces not applied correctly (if any).
4. Related to 1, can you use a simplified model instead?
Hope this helps and please let me know how it goes,
-Ayman