remove all reward “projected_gravity_b scale” to align with go2_rl_gym.
This commit is contained in:
@@ -31,7 +31,7 @@ def track_lin_vel_xy_exp(
|
|||||||
dim=1,
|
dim=1,
|
||||||
)
|
)
|
||||||
reward = torch.exp(-lin_vel_error / std**2)
|
reward = torch.exp(-lin_vel_error / std**2)
|
||||||
reward *= torch.clamp(-env.scene["robot"].data.projected_gravity_b[:, 2], 0, 0.7) / 0.7
|
# reward *= torch.clamp(-env.scene["robot"].data.projected_gravity_b[:, 2], 0, 0.7) / 0.7
|
||||||
return reward
|
return reward
|
||||||
|
|
||||||
|
|
||||||
@@ -44,7 +44,7 @@ def track_ang_vel_z_exp(
|
|||||||
# compute the error
|
# compute the error
|
||||||
ang_vel_error = torch.square(env.command_manager.get_command(command_name)[:, 2] - asset.data.root_ang_vel_b[:, 2])
|
ang_vel_error = torch.square(env.command_manager.get_command(command_name)[:, 2] - asset.data.root_ang_vel_b[:, 2])
|
||||||
reward = torch.exp(-ang_vel_error / std**2)
|
reward = torch.exp(-ang_vel_error / std**2)
|
||||||
reward *= torch.clamp(-env.scene["robot"].data.projected_gravity_b[:, 2], 0, 0.7) / 0.7
|
# reward *= torch.clamp(-env.scene["robot"].data.projected_gravity_b[:, 2], 0, 0.7) / 0.7
|
||||||
return reward
|
return reward
|
||||||
|
|
||||||
|
|
||||||
@@ -487,7 +487,7 @@ def base_height_l2(
|
|||||||
adjusted_target_height = target_height
|
adjusted_target_height = target_height
|
||||||
# Compute the L2 squared penalty
|
# Compute the L2 squared penalty
|
||||||
reward = torch.square(asset.data.root_pos_w[:, 2] - adjusted_target_height)
|
reward = torch.square(asset.data.root_pos_w[:, 2] - adjusted_target_height)
|
||||||
reward *= torch.clamp(-env.scene["robot"].data.projected_gravity_b[:, 2], 0, 0.7) / 0.7
|
# reward *= torch.clamp(-env.scene["robot"].data.projected_gravity_b[:, 2], 0, 0.7) / 0.7
|
||||||
return reward
|
return reward
|
||||||
|
|
||||||
|
|
||||||
@@ -496,7 +496,7 @@ def lin_vel_z_l2(env: ManagerBasedRLEnv, asset_cfg: SceneEntityCfg = SceneEntity
|
|||||||
# extract the used quantities (to enable type-hinting)
|
# extract the used quantities (to enable type-hinting)
|
||||||
asset: RigidObject = env.scene[asset_cfg.name]
|
asset: RigidObject = env.scene[asset_cfg.name]
|
||||||
reward = torch.square(asset.data.root_lin_vel_b[:, 2])
|
reward = torch.square(asset.data.root_lin_vel_b[:, 2])
|
||||||
reward *= torch.clamp(-env.scene["robot"].data.projected_gravity_b[:, 2], 0, 0.7) / 0.7
|
# reward *= torch.clamp(-env.scene["robot"].data.projected_gravity_b[:, 2], 0, 0.7) / 0.7
|
||||||
return reward
|
return reward
|
||||||
|
|
||||||
|
|
||||||
@@ -505,7 +505,7 @@ def ang_vel_xy_l2(env: ManagerBasedRLEnv, asset_cfg: SceneEntityCfg = SceneEntit
|
|||||||
# extract the used quantities (to enable type-hinting)
|
# extract the used quantities (to enable type-hinting)
|
||||||
asset: RigidObject = env.scene[asset_cfg.name]
|
asset: RigidObject = env.scene[asset_cfg.name]
|
||||||
reward = torch.sum(torch.square(asset.data.root_ang_vel_b[:, :2]), dim=1)
|
reward = torch.sum(torch.square(asset.data.root_ang_vel_b[:, :2]), dim=1)
|
||||||
reward *= torch.clamp(-env.scene["robot"].data.projected_gravity_b[:, 2], 0, 0.7) / 0.7
|
# reward *= torch.clamp(-env.scene["robot"].data.projected_gravity_b[:, 2], 0, 0.7) / 0.7
|
||||||
return reward
|
return reward
|
||||||
|
|
||||||
|
|
||||||
@@ -518,7 +518,7 @@ def undesired_contacts(env: ManagerBasedRLEnv, threshold: float, sensor_cfg: Sce
|
|||||||
is_contact = torch.max(torch.norm(net_contact_forces[:, :, sensor_cfg.body_ids], dim=-1), dim=1)[0] > threshold
|
is_contact = torch.max(torch.norm(net_contact_forces[:, :, sensor_cfg.body_ids], dim=-1), dim=1)[0] > threshold
|
||||||
# sum over contacts for each environment
|
# sum over contacts for each environment
|
||||||
reward = torch.sum(is_contact, dim=1).float()
|
reward = torch.sum(is_contact, dim=1).float()
|
||||||
reward *= torch.clamp(-env.scene["robot"].data.projected_gravity_b[:, 2], 0, 0.7) / 0.7
|
# reward *= torch.clamp(-env.scene["robot"].data.projected_gravity_b[:, 2], 0, 0.7) / 0.7
|
||||||
return reward
|
return reward
|
||||||
|
|
||||||
|
|
||||||
@@ -530,7 +530,7 @@ def flat_orientation_l2(env: ManagerBasedRLEnv, asset_cfg: SceneEntityCfg = Scen
|
|||||||
# extract the used quantities (to enable type-hinting)
|
# extract the used quantities (to enable type-hinting)
|
||||||
asset: RigidObject = env.scene[asset_cfg.name]
|
asset: RigidObject = env.scene[asset_cfg.name]
|
||||||
reward = torch.sum(torch.square(asset.data.projected_gravity_b[:, :2]), dim=1)
|
reward = torch.sum(torch.square(asset.data.projected_gravity_b[:, :2]), dim=1)
|
||||||
reward *= torch.clamp(-env.scene["robot"].data.projected_gravity_b[:, 2], 0, 0.7) / 0.7
|
# reward *= torch.clamp(-env.scene["robot"].data.projected_gravity_b[:, 2], 0, 0.7) / 0.7
|
||||||
return reward
|
return reward
|
||||||
|
|
||||||
|
|
||||||
@@ -603,7 +603,7 @@ def feet_regulation(
|
|||||||
* torch.exp(-feet_height / (0.025 * base_height_target))
|
* torch.exp(-feet_height / (0.025 * base_height_target))
|
||||||
).sum(dim=-1)
|
).sum(dim=-1)
|
||||||
|
|
||||||
reward *= torch.clamp(-env.scene["robot"].data.projected_gravity_b[:, 2], 0, 0.7) / 0.7
|
# reward *= torch.clamp(-env.scene["robot"].data.projected_gravity_b[:, 2], 0, 0.7) / 0.7
|
||||||
|
|
||||||
return reward
|
return reward
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user