Skip to content

A question about the process of action in BridgedataV2 #68

Description

@xianzeYao

Thank you for your work!It helps a lot.
But there's a question that i am confused about.

defbridge_orig_dataset_transform(trajectory: Dict[str, Any]) ->Dict[str, Any]:
"""
Applies to original version of Bridge V2 from the official project website.
Note =>> In original Bridge V2 dataset, the first timestep has an all-zero action, so we remove it!
"""
forkeyintrajectory.keys():
ifkey=="traj_metadata":
continue
elifkey=="observation":
forkey2intrajectory[key]:
trajectory[key][key2] =trajectory[key][key2][1:]
else:
trajectory[key] =trajectory[key][1:]
trajectory["action"] =tf.concat(
[
trajectory["action"][:, :6],
binarize_gripper_actions(trajectory["action"][:, -1])[:, None],
],
axis=1,
)
# print(trajectory.keys(), trajectory['observation'].keys())
trajectory=relabel_bridge_actions(trajectory)
trajectory["observation"]["EEF_state"] =trajectory["observation"]["state"][:, :6]
trajectory["observation"]["gripper_state"] =trajectory["observation"]["state"][:, -1:]
returntrajectory

# === Bridge-V2 =>> Dataset-Specific Transform ===
defrelabel_bridge_actions(traj: Dict[str, Any]) ->Dict[str, Any]:
"""Relabels actions to use reached proprioceptive state; discards last timestep (no-action)."""
movement_actions=traj["observation"]["state"][1:, :6] -traj["observation"]["state"][:-1, :6]
traj_truncated=tf.nest.map_structure(lambdax: x[:-1], traj)
traj_truncated["action"] =tf.concat([movement_actions, traj["action"][:-1, -1:]], axis=1)
returntraj_truncated

I'm using data from https://rail.eecs.berkeley.edu/datasets/bridge_release/data/tfds/bridge_dataset/1.0.0/.
I'd like to ask why state interpolation is used here to represent actions instead of directly using the action values?
I directly downloaded the data and retrieved state0, 1, 2, as well as action0, 1. I then calculated the difference between states and found the values aren't entirely consistent.

Image

Is my understanding incorrect, or is there another consideration at play? I'd be very grateful if you could clarify this.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

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