personalrobotics / aikido

Artificial Intelligence for Kinematics, Dynamics, and Optimization

Home Page:https://personalrobotics.github.io/aikido/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Mismatch in logmap representation of SE(2) states

aditya-vk opened this issue · comments

AIKIDO assumes [\theta, x, y] while DART assumes [x, y, theta]. Everytime the the skeleton is set to a position the coordinates are set incorrectly.

One clean solution would be to have the state representation to be equivalent to that of DART, OMPL:
[x, y, theta].

Is there any particular reason we chose this representation?

The general convention in DART is that angular terms come first followed by linear term like FreeJoint. PlanarJoint (SE(2) joint) complied the rule when it's created, and then for some reason "I" changed the order, which I don't remember the reason. 😞

I personally prefer angular term first, but this is just a matter of convention. So I'm open to follow DART's convention or OMPL's as long as we're consistent.

We do not have to follow OMPL's convention since we never use their states anyway. It'd be better to stick to DART's convention IMO. Can we change it in DART convention then (although I personally prefer angle at the end haha!)?