unilab.envs.motion_tracking.g1.box_tracking¶
G1 box tracking environment with object-aware motion imitation.
Classes
Reward config extended with object-tracking terms. |
|
Configuration for the G1 large-box tracking task. |
|
Reset provider that restores both robot and object state from motion data. |
|
Motion tracking env extended with large-box state and rewards. |
|
Registered config for G1 box tracking. |
- class unilab.envs.motion_tracking.g1.box_tracking.BoxRewardConfig[source]¶
Bases:
RewardConfigReward config extended with object-tracking terms.
- Parameters:
- __init__(scales=<factory>, std_root_pos=0.3, std_root_ori=0.4, std_body_pos=0.3, std_body_ori=0.4, std_body_lin_vel=1.0, std_body_ang_vel=3.14, std_joint_pos=0.2, std_joint_vel=1.0, std_object_pos=0.3, std_object_ori=0.4)¶
- class unilab.envs.motion_tracking.g1.box_tracking.G1BoxTrackingCfg[source]¶
Bases:
G1MotionTrackingCfgConfiguration for the G1 large-box tracking task.
- Parameters:
scene (SceneCfg)
sim_dt (float)
max_episode_seconds (float)
ctrl_dt (float)
render_spacing (
float)render_offset_mode (
str)post_step_forward_sensor (
bool)control_config (ControlConfig)
noise_config (NoiseConfig)
sensor (Sensor)
asset (Asset)
motion_file (str | list[str])
anchor_body_name (str)
body_names (tuple[str, …])
sampling_mode (Literal[‘start’, ‘clip_start’, ‘uniform’, ‘adaptive’, ‘mixed’])
sampling_start_ratio (float)
truncate_on_clip_end (bool)
reward_config (BoxRewardConfig)
pose_randomization (PoseRandomization)
velocity_randomization (VelocityRandomization)
domain_rand (Domain_Rand)
joint_position_range (tuple[float, float])
anchor_pos_z_threshold (float)
anchor_ori_threshold (float)
ee_body_pos_z_threshold (float)
ee_body_names (tuple[str, …])
undesired_contact_z_threshold (float)
terminate_on_undesired_contacts (bool)
object_body_name (str)
object_pos_threshold (float)
object_ori_threshold (float)
- motion_file: str | list[str] = '/home/admin1/ws/Eric/UniLab/src/unilab/assets/motions/g1/sub3_largebox_003_boxconverted.npz'¶
- object_body_name: str = 'largebox'¶
- object_pos_threshold: float = 0.25¶
- object_ori_threshold: float = 0.8¶
- reward_config: BoxRewardConfig¶
- __init__(scene=<factory>, sim_dt=0.006666666666666667, max_episode_seconds=10.0, ctrl_dt=0.02, render_spacing=1.0, render_offset_mode='grid', motrix_max_iterations=None, post_step_forward_sensor=False, control_config=<factory>, noise_config=<factory>, sensor=<factory>, asset=<factory>, motion_file='/home/admin1/ws/Eric/UniLab/src/unilab/assets/motions/g1/sub3_largebox_003_boxconverted.npz', anchor_body_name='torso_link', body_names=('pelvis', 'left_hip_roll_link', 'left_knee_link', 'left_ankle_roll_link', 'right_hip_roll_link', 'right_knee_link', 'right_ankle_roll_link', 'torso_link', 'left_shoulder_roll_link', 'left_elbow_link', 'left_wrist_yaw_link', 'right_shoulder_roll_link', 'right_elbow_link', 'right_wrist_yaw_link'), sampling_mode='adaptive', sampling_start_ratio=0.0, truncate_on_clip_end=False, reward_config=<factory>, pose_randomization=<factory>, velocity_randomization=<factory>, domain_rand=<factory>, joint_position_range=(-0.1, 0.1), anchor_pos_z_threshold=0.25, anchor_ori_threshold=0.8, ee_body_pos_z_threshold=0.25, ee_body_names=('left_ankle_roll_link', 'right_ankle_roll_link', 'left_wrist_yaw_link', 'right_wrist_yaw_link'), undesired_contact_z_threshold=0.05, terminate_on_undesired_contacts=False, object_body_name='largebox', object_pos_threshold=0.25, object_ori_threshold=0.8)¶
- Parameters:
scene (SceneCfg)
sim_dt (float)
max_episode_seconds (float)
ctrl_dt (float)
render_spacing (
float)render_offset_mode (
str)post_step_forward_sensor (
bool)control_config (ControlConfig)
noise_config (NoiseConfig)
sensor (Sensor)
asset (Asset)
motion_file (str | list[str])
anchor_body_name (str)
body_names (tuple[str, …])
sampling_mode (Literal[‘start’, ‘clip_start’, ‘uniform’, ‘adaptive’, ‘mixed’])
sampling_start_ratio (float)
truncate_on_clip_end (bool)
reward_config (BoxRewardConfig)
pose_randomization (PoseRandomization)
velocity_randomization (VelocityRandomization)
domain_rand (Domain_Rand)
joint_position_range (tuple[float, float])
anchor_pos_z_threshold (float)
anchor_ori_threshold (float)
ee_body_pos_z_threshold (float)
ee_body_names (tuple[str, …])
undesired_contact_z_threshold (float)
terminate_on_undesired_contacts (bool)
object_body_name (str)
object_pos_threshold (float)
object_ori_threshold (float)
- pose_randomization: PoseRandomization¶
- velocity_randomization: VelocityRandomization¶
- domain_rand: Domain_Rand¶
- noise_config: NoiseConfig¶
- control_config: ControlConfig¶
- sensor: Sensor¶
- asset: Asset¶
- class unilab.envs.motion_tracking.g1.box_tracking.G1BoxTrackingEnvCfg[source]¶
Bases:
G1BoxTrackingCfgRegistered config for G1 box tracking.
- Parameters:
scene (SceneCfg)
sim_dt (float)
max_episode_seconds (float)
ctrl_dt (float)
render_spacing (
float)render_offset_mode (
str)post_step_forward_sensor (
bool)control_config (ControlConfig)
noise_config (NoiseConfig)
sensor (Sensor)
asset (Asset)
motion_file (str | list[str])
anchor_body_name (str)
body_names (tuple[str, …])
sampling_mode (Literal[‘start’, ‘clip_start’, ‘uniform’, ‘adaptive’, ‘mixed’])
sampling_start_ratio (float)
truncate_on_clip_end (bool)
reward_config (BoxRewardConfig)
pose_randomization (PoseRandomization)
velocity_randomization (VelocityRandomization)
domain_rand (Domain_Rand)
joint_position_range (tuple[float, float])
anchor_pos_z_threshold (float)
anchor_ori_threshold (float)
ee_body_pos_z_threshold (float)
ee_body_names (tuple[str, …])
undesired_contact_z_threshold (float)
terminate_on_undesired_contacts (bool)
object_body_name (str)
object_pos_threshold (float)
object_ori_threshold (float)
- __init__(scene=<factory>, sim_dt=0.006666666666666667, max_episode_seconds=10.0, ctrl_dt=0.02, render_spacing=1.0, render_offset_mode='grid', motrix_max_iterations=None, post_step_forward_sensor=False, control_config=<factory>, noise_config=<factory>, sensor=<factory>, asset=<factory>, motion_file='/home/admin1/ws/Eric/UniLab/src/unilab/assets/motions/g1/sub3_largebox_003_boxconverted.npz', anchor_body_name='torso_link', body_names=('pelvis', 'left_hip_roll_link', 'left_knee_link', 'left_ankle_roll_link', 'right_hip_roll_link', 'right_knee_link', 'right_ankle_roll_link', 'torso_link', 'left_shoulder_roll_link', 'left_elbow_link', 'left_wrist_yaw_link', 'right_shoulder_roll_link', 'right_elbow_link', 'right_wrist_yaw_link'), sampling_mode='adaptive', sampling_start_ratio=0.0, truncate_on_clip_end=False, reward_config=<factory>, pose_randomization=<factory>, velocity_randomization=<factory>, domain_rand=<factory>, joint_position_range=(-0.1, 0.1), anchor_pos_z_threshold=0.25, anchor_ori_threshold=0.8, ee_body_pos_z_threshold=0.25, ee_body_names=('left_ankle_roll_link', 'right_ankle_roll_link', 'left_wrist_yaw_link', 'right_wrist_yaw_link'), undesired_contact_z_threshold=0.05, terminate_on_undesired_contacts=False, object_body_name='largebox', object_pos_threshold=0.25, object_ori_threshold=0.8)¶
- Parameters:
scene (SceneCfg)
sim_dt (float)
max_episode_seconds (float)
ctrl_dt (float)
render_spacing (
float)render_offset_mode (
str)post_step_forward_sensor (
bool)control_config (ControlConfig)
noise_config (NoiseConfig)
sensor (Sensor)
asset (Asset)
motion_file (str | list[str])
anchor_body_name (str)
body_names (tuple[str, …])
sampling_mode (Literal[‘start’, ‘clip_start’, ‘uniform’, ‘adaptive’, ‘mixed’])
sampling_start_ratio (float)
truncate_on_clip_end (bool)
reward_config (BoxRewardConfig)
pose_randomization (PoseRandomization)
velocity_randomization (VelocityRandomization)
domain_rand (Domain_Rand)
joint_position_range (tuple[float, float])
anchor_pos_z_threshold (float)
anchor_ori_threshold (float)
ee_body_pos_z_threshold (float)
ee_body_names (tuple[str, …])
undesired_contact_z_threshold (float)
terminate_on_undesired_contacts (bool)
object_body_name (str)
object_pos_threshold (float)
object_ori_threshold (float)
- class unilab.envs.motion_tracking.g1.box_tracking.G1BoxTrackingDomainRandomizationProvider[source]¶
Bases:
G1MotionTrackingDomainRandomizationProviderReset provider that restores both robot and object state from motion data.
- Parameters:
- class unilab.envs.motion_tracking.g1.box_tracking.G1BoxTrackingEnv[source]¶
Bases:
G1MotionTrackingEnvMotion tracking env extended with large-box state and rewards.
- Parameters:
cfg (
G1BoxTrackingCfg)
- __init__(cfg, num_envs=1, backend_type='mujoco')[source]¶
- Parameters:
cfg (
G1BoxTrackingCfg)