Skip to content

Question about rotation representation choice in franka_env.py #48

Description

@Triple-ROCK

In the latest issuse fixed, franka_env.py's step calculates nextpos using rotation vector instead of Euler angles, which said euler angles as delta action failed to converge. But why representing state using eulers instead of quat? I believe quaternions would actually be suitable for state representation (as network input), since:

  • The double cover issue (q and -q representing the same rotation) only affects network outputs, not inputs
  • As observations, quaternions are already normalized and singularity-free
  • The network can naturally learn the symmetry between q and -q

Additionally, delta action is supposed to be small increments, which is fine to use euler angles I think, because it will never reach singularity in 1/10 second.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions