unilab.envs.motion_tracking.g1.tracking.G1MotionTrackingEnvCfg

class unilab.envs.motion_tracking.g1.tracking.G1MotionTrackingEnvCfg[source]

Bases: G1MotionTrackingCfg

Registered configuration for G1 motion tracking.

Parameters:
  • scene (SceneCfg)

  • sim_dt (float)

  • max_episode_seconds (float)

  • ctrl_dt (float)

  • render_spacing (float)

  • render_offset_mode (str)

  • motrix_max_iterations (Optional[int])

  • 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 (RewardConfig)

  • 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)

Methods

__init__([scene, sim_dt, ...])

validate()

validate the config

Attributes

__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/dance1_subject2_part.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)
Parameters:
  • scene (SceneCfg)

  • sim_dt (float)

  • max_episode_seconds (float)

  • ctrl_dt (float)

  • render_spacing (float)

  • render_offset_mode (str)

  • motrix_max_iterations (Optional[int])

  • 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 (RewardConfig)

  • 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)

anchor_body_name: str = 'torso_link'
anchor_ori_threshold: float = 0.8
anchor_pos_z_threshold: float = 0.25
body_names: tuple[str, ...] = ('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')
ctrl_dt: float = 0.02
ee_body_names: tuple[str, ...] = ('left_ankle_roll_link', 'right_ankle_roll_link', 'left_wrist_yaw_link', 'right_wrist_yaw_link')
ee_body_pos_z_threshold: float = 0.25
joint_position_range: tuple[float, float] = (-0.1, 0.1)
max_episode_seconds: float = 10.0
property max_episode_steps: int | None

return the max episode steps

motion_file: str | list[str] = '/home/admin1/ws/Eric/UniLab/src/unilab/assets/motions/g1/dance1_subject2_part.npz'
motrix_max_iterations: Optional[int] = None
post_step_forward_sensor: bool = False
render_offset_mode: str = 'grid'
render_spacing: float = 1.0
sampling_mode: Literal['start', 'clip_start', 'uniform', 'adaptive', 'mixed'] = 'adaptive'
sampling_start_ratio: float = 0.0
scene: SceneCfg = None
sim_dt: float = 0.006666666666666667
property sim_substeps: int

return the number of simulation steps per control step

terminate_on_undesired_contacts: bool = False
truncate_on_clip_end: bool = False
undesired_contact_z_threshold: float = 0.05
validate()

validate the config

reward_config: RewardConfig
pose_randomization: PoseRandomization
velocity_randomization: VelocityRandomization
domain_rand: Domain_Rand
noise_config: NoiseConfig
control_config: ControlConfig
sensor: Sensor
asset: Asset