myosuite icon indicating copy to clipboard operation
myosuite copied to clipboard

Updating & Testing 3CC-r Fatigue Model

Open fl0fischer opened this issue 1 year ago • 3 comments

  1. fixed bug in update formula of resting motor units (this might have caused fatigued motor units to not rest properly, and consequently MA, MR and MF not summing up to 1) -> if e.g. zero activations are used for a short period of time, fatigued units now rest, and can be activated shortly after again (see Figure below) fatigue_leg_test_bugfix1_2
  2. compute muscle force development and relaxation factors LD and LR based on the "effective time constants" internally used by MuJoCo (see https://mujoco.readthedocs.io/en/stable/modeling.html#muscles for details) -> peaks that previously occurred when the desired muscle activation changed rapidly are now smoothed out (see Figure below) fatigue_leg_test_bugfix1vs2_2

TODO:

  • test fatigue model for models other than myoElbowPose1D6MRandom
  • test whether including a smooth transition phase of length "tausmooth" as done by MuJoCo further improves the fatigue predictions
  • check whether the second change introduces a significant deterioration in running time (?)

fl0fischer avatar Feb 07 '24 18:02 fl0fischer

If needed, I can also provide the modified testing script with which the comparison plots were created.

fl0fischer avatar Feb 07 '24 18:02 fl0fischer

@fl0fischer let's merge your branch into the myosuite/fix_fatigue and we can then iterate directly there

Sounds good.

fl0fischer avatar Feb 07 '24 18:02 fl0fischer

  1. Modified clipping dynamics -> The muscle activation-deactivation drive C(t) is now clipped before the three motor unit compartments are updated. This ensures that the equation (MA + MF + MR = 1) is always satisfied.
    The resulting muscle activation trajectories are smooth now and do not exhibit the artefacts that previously occurred after a rapid change in control.

fatigue_leg_test_bugfix3

fl0fischer avatar Mar 08 '24 14:03 fl0fischer