I am simulating a stop-jump landing scaled from GAIT2392 and have a MATLAB script that runs RRA repeatedly to obtain pErrors and residuals under an assigned max value. If the pErrors are too high, the tracking weight is increased in the Task file (by a factor of 1.5) and if the residual forces and moments are too high, optimal force in the actuator file is decreased (by 0.75). This is looped until both pErrors and residuals have reached a value below my assigned maximum. My problem is that I can never achieve a solution where both the pErrors and the residuals are low, as one is increased while the other one is decreased, and the process goes in circles infinitely trying to reduce both types of errors, with ridiculously high tracking weights. In particular, I'm having issues with Pelvis Ty, Ankle Angle, and the Fy residual.
Are there any other ways to achieve a balance of low enough error values for both kinematic and residual errors, or is this approach supposed to work and I am missing something?
Many thanks!
Unable to reduce pErrors and residuals to acceptable level
Re: Unable to reduce pErrors and residuals to acceptable level
Hi Jin,
I think you've made a correct assumption that your process will put you in an endless loop. From what I understand, a specific part of RRA is that it will alter the kinematics in order to reduce your residuals - so if you tighten the weights on your kinematic tasks then they can't change and subsequently your residuals will remain high. An optimal solution is probably one that balances the two - in a sense that you allow a little bit of fluctuation in the kinematics to ensure the residuals can come to an appropriate level.
It's probably worthwhile noting to that the recommended residuals on the RRA help page are for walking (I think) - and given the stop-jump motion you're analysing will have higher accelerations and forces it may be difficult to achieve such low levels of residuals. You could also check out this SimTK project - https://simtk.org/projects/rra-opt-gui - for an RRA optimisation protocol.
Aaron
I think you've made a correct assumption that your process will put you in an endless loop. From what I understand, a specific part of RRA is that it will alter the kinematics in order to reduce your residuals - so if you tighten the weights on your kinematic tasks then they can't change and subsequently your residuals will remain high. An optimal solution is probably one that balances the two - in a sense that you allow a little bit of fluctuation in the kinematics to ensure the residuals can come to an appropriate level.
It's probably worthwhile noting to that the recommended residuals on the RRA help page are for walking (I think) - and given the stop-jump motion you're analysing will have higher accelerations and forces it may be difficult to achieve such low levels of residuals. You could also check out this SimTK project - https://simtk.org/projects/rra-opt-gui - for an RRA optimisation protocol.
Aaron
Re: Unable to reduce pErrors and residuals to acceptable level
Thanks a lot for the project link Aaron!
The issue I'm having with balancing the two is that it appears sometimes this balance can't be reached by simply decreasing optimal force and increasing tracking weight alternately. I am referring to the "Is My Model Good Enough" paper https://pdfs.semanticscholar.org/6222/1 ... ce4d0b.pdf as a reference for my max values. Otherwise I haven't come across other papers that mention how they went about reducing their residuals and kinematic errors, and am wondering if there is a more effective approach?
The issue I'm having with balancing the two is that it appears sometimes this balance can't be reached by simply decreasing optimal force and increasing tracking weight alternately. I am referring to the "Is My Model Good Enough" paper https://pdfs.semanticscholar.org/6222/1 ... ce4d0b.pdf as a reference for my max values. Otherwise I haven't come across other papers that mention how they went about reducing their residuals and kinematic errors, and am wondering if there is a more effective approach?
Re: Unable to reduce pErrors and residuals to acceptable level
I'm not aware of any additional specific approaches that would help with your problem. I believe a beneficial aspect of the project I referred you to (and other optimisation procedures I've used for reducing residuals) is that you can apply weights to the different aspects of the problem. For example, if maintaining kinematics is more important to you than minimising the residuals - you can place extra weighting on this aspect of the optimisation procedure. You can probably take these weights further as well and apply specific weights to the different components too (e.g. place a highweighting on keeping pelvis kinematics consistent but allow another joint coordinate to fluctuate a little more).
Aaron
Aaron
Re: Unable to reduce pErrors and residuals to acceptable level
It is also important to note that there are scenarios where it would be impossible to reach a specific residual value-- like when the masses of the model are too high/low. In that case, you could feasibly never reach some specific residual value.