-
Notifications
You must be signed in to change notification settings - Fork 4
Description
Hi, thank you very much for open-sourcing GGIK — it’s a great project!
I have a question about the dataset generation. In dataset_generation.py, inside the generate_data_point function (line 67), there is a line:
q[num_joints[0] - 1] = 0Similar lines also appear at line 221 and line 315. From my understanding, this forces the last movable joint of the robot arm to always be zero.
My guess is that the first 6 joints are already sufficient to cover the entire pose space, so the 7th joint is fixed to simplify the dataset. However, when I trained a model for the panda with the dataset where the 7th joint is always fixed at zero, and then tested it on data where the 7th joint is not fixed (i.e., commenting out line 67 in dataset_generation.py), I observed a noticeable performance drop compared to testing on the original dataset. (n_evals=2000 & num_samples=32)
Original test set
| Robot | Err. Pos. [mm] mean | min | max | Q1 | Q3 | Err. Rot. [deg] mean | min | max | Q1 | Q3 |
|---|---|---|---|---|---|---|---|---|---|---|
| panda | 6.103579 | 1.996867 | 14.718448 | 3.886037 | 7.619001 | 0.604586 | 0.209989 | 1.292011 | 0.415884 | 0.746376 |
Test set with non-zero last joint
| Robot | Err. Pos. [mm] mean | min | max | Q1 | Q3 | Err. Rot. [deg] mean | min | max | Q1 | Q3 |
|---|---|---|---|---|---|---|---|---|---|---|
| panda | 53.530277 | 26.866604 | 89.103055 | 40.962530 | 65.025451 | 6.349489 | 2.796354 | 10.919454 | 4.668156 | 7.922070 |
Could you clarify the motivation for fixing the last joint angle to zero during dataset generation? And do you think this design choice might affect generalization to robots (like Panda) that actually use the 7th joint?
Thanks a lot!