transfer / actaug /code /configs /constrained.yaml
Ronaldo-GOAT's picture
actaug: simulator action-augmentation generation code, Table-2 eval protocol, raw dumps of the 256 prio episodes
bd08baf verified
Raw History Blame Contribute Delete
2.34 kB
# Constrained pipeline (the sim_action_aug algorithm, ROLLOUT_REPORT sec. 3):
# arm joints 1-6 + mobile base + torso are PINNED to the recorded MuJoCo state
# path for the whole episode; the policy owns ONLY the wrist (joint-7 servo
# around a searched dj7_init offset) and the gripper during the grasp window.
# Transport = relative replay with dj7 frozen + recorded opening schedule.
mode: constrained
# perturbation (NOTE: the pinned arm cannot chase a translated object -- this
# mode suits yaw-dominant perturbations and small translations)
n_perturbs: 5
rot_deg: 60.0
trans_m: 0.02
trans_min_m: 0.0
seed: 7
n_samples: 3 # N policy samples per (perturbation, dj7_init) cell
port: 8801
save: success
constrained:
dj7_init_deg: [0, 30, -30, 60, -60, 90, -90] # searched wrist offsets
pre_buffer: 4 # policy inference starts at grasp_t - pre_buffer (frames)
k_post: 12 # ... and keeps control this many frames after grasp_t
replan: 8 # re-query the policy every N control steps
# WHICH joints the policy controls (1-indexed Franka arm joints). Joints not
# listed stay pinned to the recording. The GRIPPER is always the policy's
# (unless gripper_mode: recorded).
policy_joints: [6, 7]
step_cap: 0.05 # rad per control step, every servoed joint
servo_caps: {6: 0.30, 7: 0.60} # total authority per joint (rad)
servo_cap_default: 0.30 # for listed joints missing from servo_caps
j7_total_cap: 3.14159 # |dj7_init + servo| (joint 7 only)
gripper_mode: threshold # bit | threshold | continuous
grip_tau: 0.35 # threshold mode: latch full close once policy asks >= tau
settle_frames: 30
qvel_mode: finitediff # finitediff | zero (pinned-joint qvel each substep)
# rel-6D weld (sim_action_aug simfix): weld the object rigidly to the eef once
# the grasp is real (both pads + lift >= weld_lift_m + commanded closed); drop
# it when the gripper is commanded open. Without it the pinned-arm carry slips
# (~33% ceiling in the old robocasa pin-sweep).
rel6d: true
weld_lift_m: 0.004 # engage EARLY: a 15mm gate let the object sag ~19mm in
# the jaw and catch the cabinet-shelf edge (ep0 finding)
weld_solref: "0.005 1" # stiff -- contact must not stretch the weld
weld_open_frac: 0.5
weld_open_floor: 0.10