habitat-lab icon indicating copy to clipboard operation
habitat-lab copied to clipboard

Control humanoid velocity from config.

Open 0mdc opened this issue 5 months ago • 0 comments

Motivation and Context

WIP - Open for discussion.

In the current state of the code, the humanoid speed is capped by the estimated speed of the animation. This is cosmetic - it prevents the walking animation to have a gliding appearance. I believe that this comes from early VR integrations.

In practice, this means that the lin_speed config field has no effect past a certain value.

This brings the following issues:

  • The humanoid speed is not driven by config.
  • Many experiments must cherry-pick this hack to work as intended.
  • In HITL, the humanoid is too slow, which greatly increases episode completion speed.

Proposed change:

  • By default, the humanoid should follow lin_speed perfectly, like the other agent types.
    • This may impact training.

Proposed BE Improvements:

  • To keep the animation in-sync with the humanoid velocity, the animation framerate should change.
  • Refactors:
    • This class should get its configuration from a single source of truth.
    • Calculations should be simplified.

How Has This Been Tested

Tested on HITL application.

Types of changes

  • [Development]

Checklist

  • [ ] My code follows the code style of this project.
  • [ ] I have updated the documentation if required.
  • [ ] I have read the CONTRIBUTING document.
  • [ ] I have completed my CLA (see CONTRIBUTING)
  • [ ] I have added tests to cover my changes if required.

0mdc avatar Aug 31 '24 23:08 0mdc